drm/i915/gem: Drop false !i915_vma_is_closed assertion
authorChris Wilson <chris@chris-wilson.co.uk>
Mon, 7 Dec 2020 19:38:05 +0000 (19:38 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Tue, 8 Dec 2020 14:01:51 +0000 (14:01 +0000)
Closed vma are protected by the GT wakeref held as we lookup the vma, so
we know that the vma will not be freed as we process it for the execbuf.
Instead we expect to catch the closed status of the context, and simply
allow the close-race on an individual vma to be washed away.

Longer term, the GT wakeref protection will be removed by explicit
vma.kref tracking.

Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/2245
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20201207193824.18114-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c

index b07dc1156a0e6ef383825a29236388706ae04ad1..193996144c845137cd9da338dc26ff5b619ad847 100644 (file)
@@ -534,8 +534,6 @@ eb_add_vma(struct i915_execbuffer *eb,
        struct drm_i915_gem_exec_object2 *entry = &eb->exec[i];
        struct eb_vma *ev = &eb->vma[i];
 
-       GEM_BUG_ON(i915_vma_is_closed(vma));
-
        ev->vma = vma;
        ev->exec = entry;
        ev->flags = entry->flags;