drm/i915: Check whether chip is wedged in i915_wait_request()
i915_wait_request() only checks mm.wedged after it interacts with the hardware, generally causing the driver to lock up waiting for a wedged chip. Make sure we check mm.wedged as the first thing we do. Reported-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Ben Gamari <bgamari.foss@gmail.com> Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
This commit is contained in:
parent
078a033f45
commit
ffed1d0920
@ -1751,6 +1751,9 @@ i915_wait_request(struct drm_device *dev, uint32_t seqno)
|
||||
|
||||
BUG_ON(seqno == 0);
|
||||
|
||||
if (dev_priv->mm.wedged)
|
||||
return -EIO;
|
||||
|
||||
if (!i915_seqno_passed(i915_get_gem_seqno(dev), seqno)) {
|
||||
if (IS_IGDNG(dev))
|
||||
ier = I915_READ(DEIER) | I915_READ(GTIER);
|
||||
|
Loading…
Reference in New Issue
Block a user