drm/i915: Remove irq-related FIXME in reset code
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Mon, 23 Feb 2015 11:03:28 +0000 (12:03 +0100)
committerDaniel Vetter <daniel.vetter@ffwll.ch>
Tue, 17 Mar 2015 21:29:49 +0000 (22:29 +0100)
With the two-step reset counter increments which braket the actual
reset code and the subsequent wake-up we're guaranteeing that all the
lockless waiters _will_ be woken up. And since we unconditionally bail
out of waits with -EAGAIN (or -EIO) in that case there is not risk of
lost interrupt enabling bits when the lockless wait code races against
a gpu reset.

Let's remove this FIXME as resolved then.

Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
drivers/gpu/drm/i915/i915_drv.c

index 0001642..15f58d0 100644 (file)
@@ -882,12 +882,6 @@ int i915_reset(struct drm_device *dev)
        }
 
        /*
-        * FIXME: This races pretty badly against concurrent holders of
-        * ring interrupts. This is possible since we've started to drop
-        * dev->struct_mutex in select places when waiting for the gpu.
-        */
-
-       /*
         * rps/rc6 re-init is necessary to restore state lost after the
         * reset and the re-install of gt irqs. Skip for ironlake per
         * previous concerns that it doesn't respond well to some forms