All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/i915: Check that the breadcrumb wasn't disarmed automatically before parking
@ 2017-10-31 12:22 Chris Wilson
  2017-10-31 12:49 ` ✗ Fi.CI.BAT: failure for " Patchwork
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Chris Wilson @ 2017-10-31 12:22 UTC (permalink / raw)
  To: intel-gfx

We will disarm the breadcrumb interrupt if we see a user interrupt
whilst no one is waiting. This may race with the call to
intel_engine_disarm_breadcrumbs() triggering an assert that we aren't
trying to do the same job twice. Prevent this by checking that the irq
is still armed after flushing the interrupt (for the irq spinlock).

Fixes: bcbd5c33a342 ("drm/i915/guc: Always enable the breadcrumbs irq")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Michał Winiarski <michal.winiarski@intel.com>
---
 drivers/gpu/drm/i915/intel_breadcrumbs.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/intel_breadcrumbs.c b/drivers/gpu/drm/i915/intel_breadcrumbs.c
index 1bd0a461d665..4de054f8c1ba 100644
--- a/drivers/gpu/drm/i915/intel_breadcrumbs.c
+++ b/drivers/gpu/drm/i915/intel_breadcrumbs.c
@@ -219,7 +219,8 @@ void intel_engine_disarm_breadcrumbs(struct intel_engine_cs *engine)
 
 	spin_lock(&b->irq_lock);
 	first = fetch_and_zero(&b->irq_wait);
-	__intel_engine_disarm_breadcrumbs(engine);
+	if (b->irq_armed)
+		__intel_engine_disarm_breadcrumbs(engine);
 	spin_unlock(&b->irq_lock);
 
 	rbtree_postorder_for_each_entry_safe(wait, n, &b->waiters, node) {
-- 
2.15.0.rc2

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* ✗ Fi.CI.BAT: failure for drm/i915: Check that the breadcrumb wasn't disarmed automatically before parking
  2017-10-31 12:22 [PATCH] drm/i915: Check that the breadcrumb wasn't disarmed automatically before parking Chris Wilson
@ 2017-10-31 12:49 ` Patchwork
  2017-11-01 13:38 ` [PATCH] " Joonas Lahtinen
  2017-11-01 14:54 ` ✗ Fi.CI.BAT: failure for " Patchwork
  2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2017-10-31 12:49 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Check that the breadcrumb wasn't disarmed automatically before parking
URL   : https://patchwork.freedesktop.org/series/32903/
State : failure

== Summary ==

Series 32903v1 drm/i915: Check that the breadcrumb wasn't disarmed automatically before parking
https://patchwork.freedesktop.org/api/1.0/series/32903/revisions/1/mbox/

Test chamelium:
        Subgroup dp-crc-fast:
                pass       -> FAIL       (fi-kbl-7500u) fdo#102514
Test drv_hangman:
        Subgroup error-state-basic:
                pass       -> DMESG-WARN (fi-bsw-n3050)
Test gem_exec_flush:
        Subgroup basic-wb-pro-default:
                pass       -> INCOMPLETE (fi-cnl-y)
Test pm_rpm:
        Subgroup basic-rte:
                skip       -> PASS       (fi-hsw-4770r)
Test drv_module_reload:
        Subgroup basic-reload-inject:
                incomplete -> DMESG-WARN (fi-cfl-s) fdo#103206

fdo#102514 https://bugs.freedesktop.org/show_bug.cgi?id=102514
fdo#103206 https://bugs.freedesktop.org/show_bug.cgi?id=103206

fi-bdw-5557u     total:289  pass:268  dwarn:0   dfail:0   fail:0   skip:21  time:435s
fi-bdw-gvtdvm    total:289  pass:265  dwarn:0   dfail:0   fail:0   skip:24  time:452s
fi-blb-e6850     total:289  pass:223  dwarn:1   dfail:0   fail:0   skip:65  time:373s
fi-bsw-n3050     total:289  pass:242  dwarn:1   dfail:0   fail:0   skip:46  time:514s
fi-bwr-2160      total:289  pass:183  dwarn:0   dfail:0   fail:0   skip:106 time:267s
fi-bxt-dsi       total:289  pass:259  dwarn:0   dfail:0   fail:0   skip:30  time:503s
fi-bxt-j4205     total:289  pass:260  dwarn:0   dfail:0   fail:0   skip:29  time:493s
fi-byt-j1900     total:289  pass:253  dwarn:1   dfail:0   fail:0   skip:35  time:497s
fi-byt-n2820     total:289  pass:249  dwarn:1   dfail:0   fail:0   skip:39  time:480s
fi-cfl-s         total:289  pass:253  dwarn:4   dfail:0   fail:0   skip:32  time:547s
fi-cnl-y         total:68   pass:51   dwarn:0   dfail:0   fail:0   skip:16 
fi-elk-e7500     total:289  pass:229  dwarn:0   dfail:0   fail:0   skip:60  time:422s
fi-gdg-551       total:289  pass:178  dwarn:1   dfail:0   fail:1   skip:109 time:256s
fi-glk-1         total:289  pass:261  dwarn:0   dfail:0   fail:0   skip:28  time:584s
fi-glk-dsi       total:289  pass:258  dwarn:0   dfail:0   fail:1   skip:30  time:488s
fi-hsw-4770      total:289  pass:262  dwarn:0   dfail:0   fail:0   skip:27  time:429s
fi-hsw-4770r     total:289  pass:262  dwarn:0   dfail:0   fail:0   skip:27  time:430s
fi-ilk-650       total:289  pass:228  dwarn:0   dfail:0   fail:0   skip:61  time:421s
fi-ivb-3520m     total:289  pass:260  dwarn:0   dfail:0   fail:0   skip:29  time:493s
fi-ivb-3770      total:289  pass:260  dwarn:0   dfail:0   fail:0   skip:29  time:460s
fi-kbl-7500u     total:289  pass:263  dwarn:1   dfail:0   fail:1   skip:24  time:478s
fi-kbl-7560u     total:289  pass:270  dwarn:0   dfail:0   fail:0   skip:19  time:576s
fi-kbl-7567u     total:289  pass:269  dwarn:0   dfail:0   fail:0   skip:20  time:473s
fi-kbl-r         total:289  pass:262  dwarn:0   dfail:0   fail:0   skip:27  time:585s
fi-pnv-d510      total:289  pass:222  dwarn:1   dfail:0   fail:0   skip:66  time:539s
fi-skl-6260u     total:289  pass:269  dwarn:0   dfail:0   fail:0   skip:20  time:448s
fi-skl-6600u     total:289  pass:262  dwarn:0   dfail:0   fail:0   skip:27  time:591s
fi-skl-6700hq    total:289  pass:263  dwarn:0   dfail:0   fail:0   skip:26  time:650s
fi-skl-6700k     total:289  pass:265  dwarn:0   dfail:0   fail:0   skip:24  time:523s
fi-skl-6770hq    total:289  pass:269  dwarn:0   dfail:0   fail:0   skip:20  time:499s
fi-skl-gvtdvm    total:289  pass:266  dwarn:0   dfail:0   fail:0   skip:23  time:454s
fi-snb-2520m     total:289  pass:250  dwarn:0   dfail:0   fail:0   skip:39  time:564s
fi-snb-2600      total:289  pass:249  dwarn:0   dfail:0   fail:0   skip:40  time:422s

dfe1410689e638c987b39e07288bc1951cb252f3 drm-tip: 2017y-10m-31d-09h-42m-59s UTC integration manifest
a0b17594f5c6 drm/i915: Check that the breadcrumb wasn't disarmed automatically before parking

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_6279/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] drm/i915: Check that the breadcrumb wasn't disarmed automatically before parking
  2017-10-31 12:22 [PATCH] drm/i915: Check that the breadcrumb wasn't disarmed automatically before parking Chris Wilson
  2017-10-31 12:49 ` ✗ Fi.CI.BAT: failure for " Patchwork
@ 2017-11-01 13:38 ` Joonas Lahtinen
  2017-11-01 13:53   ` Chris Wilson
  2017-11-01 14:54 ` ✗ Fi.CI.BAT: failure for " Patchwork
  2 siblings, 1 reply; 5+ messages in thread
From: Joonas Lahtinen @ 2017-11-01 13:38 UTC (permalink / raw)
  To: Chris Wilson, intel-gfx

On Tue, 2017-10-31 at 12:22 +0000, Chris Wilson wrote:
> We will disarm the breadcrumb interrupt if we see a user interrupt
> whilst no one is waiting. This may race with the call to
> intel_engine_disarm_breadcrumbs() triggering an assert that we aren't
> trying to do the same job twice. Prevent this by checking that the irq
> is still armed after flushing the interrupt (for the irq spinlock).
> 
> Fixes: bcbd5c33a342 ("drm/i915/guc: Always enable the breadcrumbs irq")
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> Cc: Michał Winiarski <michal.winiarski@intel.com>

Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>

Regards, Joonas
-- 
Joonas Lahtinen
Open Source Technology Center
Intel Corporation
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH] drm/i915: Check that the breadcrumb wasn't disarmed automatically before parking
  2017-11-01 13:38 ` [PATCH] " Joonas Lahtinen
@ 2017-11-01 13:53   ` Chris Wilson
  0 siblings, 0 replies; 5+ messages in thread
From: Chris Wilson @ 2017-11-01 13:53 UTC (permalink / raw)
  To: Joonas Lahtinen, intel-gfx

Quoting Joonas Lahtinen (2017-11-01 13:38:19)
> On Tue, 2017-10-31 at 12:22 +0000, Chris Wilson wrote:
> > We will disarm the breadcrumb interrupt if we see a user interrupt
> > whilst no one is waiting. This may race with the call to
> > intel_engine_disarm_breadcrumbs() triggering an assert that we aren't
> > trying to do the same job twice. Prevent this by checking that the irq
> > is still armed after flushing the interrupt (for the irq spinlock).
> > 
> > Fixes: bcbd5c33a342 ("drm/i915/guc: Always enable the breadcrumbs irq")
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> > Cc: Michał Winiarski <michal.winiarski@intel.com>
> 
> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>

I'm still kicking myself for missing this in the first place. Thanks,
and pushed. Sadly I can't find a bugzilla for the oops hit by CI.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 5+ messages in thread

* ✗ Fi.CI.BAT: failure for drm/i915: Check that the breadcrumb wasn't disarmed automatically before parking
  2017-10-31 12:22 [PATCH] drm/i915: Check that the breadcrumb wasn't disarmed automatically before parking Chris Wilson
  2017-10-31 12:49 ` ✗ Fi.CI.BAT: failure for " Patchwork
  2017-11-01 13:38 ` [PATCH] " Joonas Lahtinen
@ 2017-11-01 14:54 ` Patchwork
  2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2017-11-01 14:54 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Check that the breadcrumb wasn't disarmed automatically before parking
URL   : https://patchwork.freedesktop.org/series/32903/
State : failure

== Summary ==

Series 32903 revision 1 was fully merged or fully failed: no git log

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_6279/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2017-11-01 14:54 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-10-31 12:22 [PATCH] drm/i915: Check that the breadcrumb wasn't disarmed automatically before parking Chris Wilson
2017-10-31 12:49 ` ✗ Fi.CI.BAT: failure for " Patchwork
2017-11-01 13:38 ` [PATCH] " Joonas Lahtinen
2017-11-01 13:53   ` Chris Wilson
2017-11-01 14:54 ` ✗ Fi.CI.BAT: failure for " Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.