On Sat, Apr 14, 2012 at 09:55:49AM +0100, Chris Wilson wrote: > i915_gem_idle() is called when we need to suspend the GPU. If the GPU is > already suspended by this point due to being wedged, we can safely > continue. > > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk> Imo the right way to fix this case here is by checking this in gpu_idle and just not bothering to emit any flushes and request if the gpu is wedged already. -Daniel > --- > drivers/gpu/drm/i915/i915_gem.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c > index ffe0853..a6819c1 100644 > --- a/drivers/gpu/drm/i915/i915_gem.c > +++ b/drivers/gpu/drm/i915/i915_gem.c > @@ -3576,7 +3576,7 @@ i915_gem_idle(struct drm_device *dev) > } > > ret = i915_gpu_idle(dev, true); > - if (ret) { > + if (ret && ret != -EIO) { > mutex_unlock(&dev->struct_mutex); > return ret; > } > -- > 1.7.10 > > _______________________________________________ > Intel-gfx mailing list > Intel-gfx at lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx -- Daniel Vetter Mail: daniel at ffwll.ch Mobile: +41 (0)79 365 57 48