Skip to content

Commit 2e6ce83

Browse files
icklerodrigovivi
authored andcommitted
drm/i915/gt: Don't cancel the interrupt shadow too early
We currently want to keep the interrupt enabled until the interrupt after which we have no more work to do. This heuristic was broken by us kicking the irq-work on adding a completed request without attaching a signaler -- hence it appearing to the irq-worker that an interrupt had fired when we were idle. Fixes: 2854d86 ("drm/i915/gt: Replace intel_engine_transfer_stale_breadcrumbs") Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20201123113717.20500-3-chris@chris-wilson.co.uk (cherry picked from commit 3aef910) Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
1 parent eb0104e commit 2e6ce83

1 file changed

Lines changed: 1 addition & 1 deletion

File tree

drivers/gpu/drm/i915/gt/intel_breadcrumbs.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -229,7 +229,7 @@ static void signal_irq_work(struct irq_work *work)
229229
* interrupt draw less ire from other users of the system and tools
230230
* like powertop.
231231
*/
232-
if (b->irq_armed && list_empty(&b->signalers))
232+
if (!signal && b->irq_armed && list_empty(&b->signalers))
233233
__intel_breadcrumbs_disarm_irq(b);
234234

235235
list_for_each_entry_safe(ce, cn, &b->signalers, signal_link) {

0 commit comments

Comments
 (0)