drm/i915: Check if the GPU hung whilst waiting for the ring to clear
authorChris Wilson <chris@chris-wilson.co.uk>
Fri, 29 Oct 2010 20:06:16 +0000 (21:06 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Fri, 29 Oct 2010 20:06:16 +0000 (21:06 +0100)
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
drivers/gpu/drm/i915/intel_ringbuffer.c

index 4d00da9..2e72d3a 100644 (file)
@@ -711,6 +711,8 @@ int intel_wait_ring_buffer(struct intel_ring_buffer *ring, int n)
                }
 
                msleep(1);
+               if (atomic_read(&dev_priv->mm.wedged))
+                       return -EAGAIN;
        } while (!time_after(jiffies, end));
        trace_i915_ring_wait_end (dev);
        return -EBUSY;