drm/i915: Remove extra waiter kick on legacy resets
authorChris Wilson <chris@chris-wilson.co.uk>
Wed, 8 Aug 2018 10:51:01 +0000 (11:51 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Wed, 8 Aug 2018 16:08:08 +0000 (17:08 +0100)
Now with a more efficacious workaround for the lost interrupts after
reset, we can remove the hack of kicking the waiters after reset. The
issue was that the kick only worked for the immediate window after the
reset (those seqno that would complete in the time it took for the
waiter thread to perform its check) but miss any seqno that lacked an
interrupt afterwards.

References: 39f3be162c46 ("drm/i915: Kick waiters on resetting legacy rings")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Matthew Auld <matthew.auld@intel.com>
Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
Acked-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180808105101.913-3-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/intel_ringbuffer.c

index d40f55a8dc34a3ecb6e0463d3ddee1136dac1480..b65cf7832b3982b816a81cf0ca15ad961c372232 100644 (file)
@@ -537,8 +537,6 @@ static int init_ring_common(struct intel_engine_cs *engine)
        if (INTEL_GEN(dev_priv) > 2)
                I915_WRITE_MODE(engine, _MASKED_BIT_DISABLE(STOP_RING));
 
-       /* Papering over lost _interrupts_ immediately following the restart */
-       intel_engine_wakeup(engine);
 out:
        intel_uncore_forcewake_put(dev_priv, FORCEWAKE_ALL);