drm/i915: Kick waiters on resetting legacy rings
authorChris Wilson <chris@chris-wilson.co.uk>
Tue, 14 Aug 2018 10:40:56 +0000 (11:40 +0100)
committerChris Wilson <chris@chris-wilson.co.uk>
Tue, 14 Aug 2018 11:42:29 +0000 (12:42 +0100)
commitd6fee0dee09317d5e83e9b855316cb779dd679cf
treed07f851a5e9f639ca2a433e174571aa7d1c7709f
parent61e1e376bb25095f741d3949e51eb557cc432dc2
drm/i915: Kick waiters on resetting legacy rings

This reapplies commit 39f3be162c46 ("drm/i915: Kick waiters on resetting
legacy rings") after the improved gem_eio was run across all machines we
found that gen3 and early gen4 still lost the immediate interrupt
following reset, and the HWSTAM w/a applied to gen6+ is inadequate.

Unlike the later gen, on gen3/4 the principle (and only tests to fail so
far) are the wait vs reset test cases, whereas the reset stress case
works fine (which was the predominantly failing case for gen6+). That is
enough to suggest the underlying issue is sufficiently different to
support the difference in HWSTAM efficacy.

Testcase: igt/gem_eio/wait-10ms
References: 39f3be162c46 ("drm/i915: Kick waiters on resetting legacy rings")
References: a69ab52b0358 ("drm/i915: Remove extra waiter kick on legacy resets")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Matthew Auld <matthew.auld@intel.com>
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20180814104056.27001-1-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/intel_ringbuffer.c