drm/i915/selftests: Attach the fence to the object when making busy
authorChris Wilson <chris@chris-wilson.co.uk>
Fri, 29 Jun 2018 13:37:17 +0000 (14:37 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Fri, 29 Jun 2018 20:07:39 +0000 (21:07 +0100)
make_obj_busy() makes a dummy busy object, but didn't attach the fence
to the reservation object, so it would not have registered as busy. For
completeness, attach the dummy request as the exclusive fence and mark
the object as written (in i915_vma_move_to_active)

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180629133717.11761-2-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/selftests/i915_gem_object.c

index 549707b..77dd7a5 100644 (file)
@@ -454,7 +454,12 @@ static int make_obj_busy(struct drm_i915_gem_object *obj)
                return PTR_ERR(rq);
        }
 
-       i915_vma_move_to_active(vma, rq, 0);
+       i915_vma_move_to_active(vma, rq, EXEC_OBJECT_WRITE);
+
+       reservation_object_lock(vma->resv, NULL);
+       reservation_object_add_excl_fence(vma->resv, &rq->fence);
+       reservation_object_unlock(vma->resv);
+
        i915_request_add(rq);
 
        i915_gem_object_set_active_reference(obj);