[Intel-gfx] [PATCH 3/5] drm/i915: don't return a spurious -EIO from intel_ring_begin
Chris Wilson
chris at chris-wilson.co.uk
Tue Jun 26 11:30:40 CEST 2012
On Tue, 26 Jun 2012 01:05:24 +0200, Daniel Vetter <daniel at ffwll.ch> wrote:
> it would
> inevitably die on the next gtt pagefault. But I guess we can etch out
> a bit more survivability in corner cases.
Yeah, we need to do something about that pagefault-of-doom after EIO,
regardless. :(
I believe to do so we need a lot of the buffer management to be
resilient to EIO. But for proposed change to
i915_mutex_lock_interruptible(), I suggest we do something like
int i915_mutex_lock_wedged()
{
ret = i915_mutex_lock_interruptible(dev);
if (ret) {
if (ret == -EIO) {
if (mutex_trylock(&dev->struct_mutex))
ret = 0;
else
ret = -EAGAIN;
}
}
return ret;
}
-Chris
--
Chris Wilson, Intel Open Source Technology Centre
More information about the Intel-gfx
mailing list