drm/nouveau: complain loudly if buffer is pinned during destruction
Shouldn't happen, and we invert the struct_mutex with reservation here, potentially leading to deadlocks. Once reservations become lockdep annotated, lockdep will go splat on this. Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com> Acked-by: Ben Skeggs <bskeggs@redhat.com> Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
Родитель
1e2bd5f53b
Коммит
27f06b2dbb
|
@ -50,7 +50,8 @@ nouveau_gem_object_del(struct drm_gem_object *gem)
|
||||||
return;
|
return;
|
||||||
nvbo->gem = NULL;
|
nvbo->gem = NULL;
|
||||||
|
|
||||||
if (unlikely(nvbo->pin_refcnt)) {
|
/* Lockdep hates you for doing reserve with gem object lock held */
|
||||||
|
if (WARN_ON_ONCE(nvbo->pin_refcnt)) {
|
||||||
nvbo->pin_refcnt = 1;
|
nvbo->pin_refcnt = 1;
|
||||||
nouveau_bo_unpin(nvbo);
|
nouveau_bo_unpin(nvbo);
|
||||||
}
|
}
|
||||||
|
|
Загрузка…
Ссылка в новой задаче