[PATCH 3/5] drm/i915: don't return a spurious -EIO from intel_ring_begin

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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


[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux