]> git.baikalelectronics.ru Git - kernel.git/commitdiff
drm/i915: Stop asserting on set-wedged vs nop_submit_request ordering
authorChris Wilson <chris@chris-wilson.co.uk>
Thu, 12 Oct 2017 20:40:19 +0000 (21:40 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Fri, 13 Oct 2017 19:57:29 +0000 (20:57 +0100)
Since the removal of the stop_machine(), it is allowed and expected for
the nop_submit_request() and nop_complete_submit_request() to run in
parallel to the i915_gem_set_wedged() processing. As such we can no
longer assert that i915_gem_set_wedged() has completed inside the
stop_machine prior to the individual nop_submit_request execution.

Fixes: af7a8ffad9c5 ("drm/i915: Use rcu instead of stop_machine in set_wedged")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Daniel Vetter <daniel.vetter@intel.com>
Cc: Mika Kuoppala <mika.kuoppala@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20171012204019.3557-1-chris@chris-wilson.co.uk
Reviewed-by: Daniel Vetter <daniel.vetter@intel.com>
Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com>
drivers/gpu/drm/i915/i915_gem.c

index 20fcac37c85a0f2332a84c8d4922e26dc88b7466..d9d39b309ce8689e917a3c38fca48a7848d2223d 100644 (file)
@@ -3087,7 +3087,6 @@ void i915_gem_reset_finish(struct drm_i915_private *dev_priv)
 
 static void nop_submit_request(struct drm_i915_gem_request *request)
 {
-       GEM_BUG_ON(!i915_terminally_wedged(&request->i915->gpu_error));
        dma_fence_set_error(&request->fence, -EIO);
 
        i915_gem_request_submit(request);
@@ -3097,7 +3096,6 @@ static void nop_complete_submit_request(struct drm_i915_gem_request *request)
 {
        unsigned long flags;
 
-       GEM_BUG_ON(!i915_terminally_wedged(&request->i915->gpu_error));
        dma_fence_set_error(&request->fence, -EIO);
 
        spin_lock_irqsave(&request->engine->timeline->lock, flags);