drm/i915: Wake up waiters after setting the WEDGED bit
authorChris Wilson <[email protected]>
Fri, 21 Jul 2017 12:32:27 +0000 (13:32 +0100)
committerDaniel Vetter <[email protected]>
Thu, 27 Jul 2017 07:38:46 +0000 (09:38 +0200)
After setting the WEDGED bit, make sure that we do wake up waiters as
they may not be waiting for a request completion yet, just for its
execution.

Signed-off-by: Chris Wilson <[email protected]>
Reviewed-by: Mika Kuoppala <[email protected]>
Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
Signed-off-by: Daniel Vetter <[email protected]>
drivers/gpu/drm/i915/i915_gem.c

index 8da1489913c2072ce6ecdd271e5331b41d20fdaa..a01176dd4bae3085a2cecfcece1e8284cee84f99 100644 (file)
@@ -3094,10 +3094,12 @@ static int __i915_gem_set_wedged_BKL(void *data)
        struct intel_engine_cs *engine;
        enum intel_engine_id id;
 
-       set_bit(I915_WEDGED, &i915->gpu_error.flags);
        for_each_engine(engine, i915, id)
                engine_set_wedged(engine);
 
+       set_bit(I915_WEDGED, &i915->gpu_error.flags);
+       wake_up_all(&i915->gpu_error.reset_queue);
+
        return 0;
 }