* [PATCH] drm/i915: Remove redundant check on execlists interrupt
@ 2018-02-08 15:12 Chris Wilson
2018-02-08 15:20 ` Mika Kuoppala
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Chris Wilson @ 2018-02-08 15:12 UTC (permalink / raw)
To: intel-gfx; +Cc: Mika Kuoppala
Since commit 4a118ecbe99c ("drm/i915: Filter out spurious execlists
context-switch interrupts") we probe execlists->active, and no longer
have to peek at the execlist interrupt to determine if the tasklet still
needs to be run to drain the ELSP.
References: 4a118ecbe99c ("drm/i915: Filter out spurious execlists context-switch interrupts")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Michal Winiarski <michal.winiarski@intel.com>
Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Cc: Mika Kuoppala <mika.kuoppala@intel.com>
---
drivers/gpu/drm/i915/intel_engine_cs.c | 4 ----
1 file changed, 4 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_engine_cs.c b/drivers/gpu/drm/i915/intel_engine_cs.c
index bf634432c9c6..0ad9184eba97 100644
--- a/drivers/gpu/drm/i915/intel_engine_cs.c
+++ b/drivers/gpu/drm/i915/intel_engine_cs.c
@@ -1503,10 +1503,6 @@ bool intel_engine_is_idle(struct intel_engine_cs *engine)
if (I915_SELFTEST_ONLY(engine->breadcrumbs.mock))
return true;
- /* Interrupt/tasklet pending? */
- if (test_bit(ENGINE_IRQ_EXECLIST, &engine->irq_posted))
- return false;
-
/* Waiting to drain ELSP? */
if (READ_ONCE(engine->execlists.active))
return false;
--
2.16.1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 6+ messages in thread* Re: [PATCH] drm/i915: Remove redundant check on execlists interrupt
2018-02-08 15:12 [PATCH] drm/i915: Remove redundant check on execlists interrupt Chris Wilson
@ 2018-02-08 15:20 ` Mika Kuoppala
2018-02-08 15:29 ` Chris Wilson
2018-02-08 15:46 ` ✓ Fi.CI.BAT: success for " Patchwork
2018-02-08 23:10 ` ✗ Fi.CI.IGT: failure " Patchwork
2 siblings, 1 reply; 6+ messages in thread
From: Mika Kuoppala @ 2018-02-08 15:20 UTC (permalink / raw)
To: Chris Wilson, intel-gfx
Chris Wilson <chris@chris-wilson.co.uk> writes:
> Since commit 4a118ecbe99c ("drm/i915: Filter out spurious execlists
> context-switch interrupts") we probe execlists->active, and no longer
> have to peek at the execlist interrupt to determine if the tasklet still
> needs to be run to drain the ELSP.
>
> References: 4a118ecbe99c ("drm/i915: Filter out spurious execlists context-switch interrupts")
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Michal Winiarski <michal.winiarski@intel.com>
> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
> Cc: Mika Kuoppala <mika.kuoppala@intel.com>
> ---
> drivers/gpu/drm/i915/intel_engine_cs.c | 4 ----
> 1 file changed, 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_engine_cs.c b/drivers/gpu/drm/i915/intel_engine_cs.c
> index bf634432c9c6..0ad9184eba97 100644
> --- a/drivers/gpu/drm/i915/intel_engine_cs.c
> +++ b/drivers/gpu/drm/i915/intel_engine_cs.c
> @@ -1503,10 +1503,6 @@ bool intel_engine_is_idle(struct intel_engine_cs *engine)
> if (I915_SELFTEST_ONLY(engine->breadcrumbs.mock))
> return true;
>
> - /* Interrupt/tasklet pending? */
> - if (test_bit(ENGINE_IRQ_EXECLIST, &engine->irq_posted))
> - return false;
> -
We assert that active is set on preempt so there should
be no window of idleness during that either.
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> /* Waiting to drain ELSP? */
> if (READ_ONCE(engine->execlists.active))
> return false;
> --
> 2.16.1
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread* Re: [PATCH] drm/i915: Remove redundant check on execlists interrupt
2018-02-08 15:20 ` Mika Kuoppala
@ 2018-02-08 15:29 ` Chris Wilson
2018-02-08 15:32 ` Chris Wilson
0 siblings, 1 reply; 6+ messages in thread
From: Chris Wilson @ 2018-02-08 15:29 UTC (permalink / raw)
To: Mika Kuoppala, intel-gfx
Quoting Mika Kuoppala (2018-02-08 15:20:30)
> Chris Wilson <chris@chris-wilson.co.uk> writes:
>
> > Since commit 4a118ecbe99c ("drm/i915: Filter out spurious execlists
> > context-switch interrupts") we probe execlists->active, and no longer
> > have to peek at the execlist interrupt to determine if the tasklet still
> > needs to be run to drain the ELSP.
> >
> > References: 4a118ecbe99c ("drm/i915: Filter out spurious execlists context-switch interrupts")
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > Cc: Michal Winiarski <michal.winiarski@intel.com>
> > Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
> > Cc: Mika Kuoppala <mika.kuoppala@intel.com>
> > ---
> > drivers/gpu/drm/i915/intel_engine_cs.c | 4 ----
> > 1 file changed, 4 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/i915/intel_engine_cs.c b/drivers/gpu/drm/i915/intel_engine_cs.c
> > index bf634432c9c6..0ad9184eba97 100644
> > --- a/drivers/gpu/drm/i915/intel_engine_cs.c
> > +++ b/drivers/gpu/drm/i915/intel_engine_cs.c
> > @@ -1503,10 +1503,6 @@ bool intel_engine_is_idle(struct intel_engine_cs *engine)
> > if (I915_SELFTEST_ONLY(engine->breadcrumbs.mock))
> > return true;
> >
> > - /* Interrupt/tasklet pending? */
> > - if (test_bit(ENGINE_IRQ_EXECLIST, &engine->irq_posted))
> > - return false;
> > -
>
> We assert that active is set on preempt so there should
> be no window of idleness during that either.
>
> Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
The other thing that crossed my mind was that we should drain the
tasklet during parking. But the above check already means the tasklet is
exiting -- one hopes. Still probably worth checking how horrible that
looks.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread* Re: [PATCH] drm/i915: Remove redundant check on execlists interrupt
2018-02-08 15:29 ` Chris Wilson
@ 2018-02-08 15:32 ` Chris Wilson
0 siblings, 0 replies; 6+ messages in thread
From: Chris Wilson @ 2018-02-08 15:32 UTC (permalink / raw)
To: Mika Kuoppala, intel-gfx
Quoting Chris Wilson (2018-02-08 15:29:29)
> Quoting Mika Kuoppala (2018-02-08 15:20:30)
> > Chris Wilson <chris@chris-wilson.co.uk> writes:
> >
> > > Since commit 4a118ecbe99c ("drm/i915: Filter out spurious execlists
> > > context-switch interrupts") we probe execlists->active, and no longer
> > > have to peek at the execlist interrupt to determine if the tasklet still
> > > needs to be run to drain the ELSP.
> > >
> > > References: 4a118ecbe99c ("drm/i915: Filter out spurious execlists context-switch interrupts")
> > > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > > Cc: Michal Winiarski <michal.winiarski@intel.com>
> > > Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
> > > Cc: Mika Kuoppala <mika.kuoppala@intel.com>
> > > ---
> > > drivers/gpu/drm/i915/intel_engine_cs.c | 4 ----
> > > 1 file changed, 4 deletions(-)
> > >
> > > diff --git a/drivers/gpu/drm/i915/intel_engine_cs.c b/drivers/gpu/drm/i915/intel_engine_cs.c
> > > index bf634432c9c6..0ad9184eba97 100644
> > > --- a/drivers/gpu/drm/i915/intel_engine_cs.c
> > > +++ b/drivers/gpu/drm/i915/intel_engine_cs.c
> > > @@ -1503,10 +1503,6 @@ bool intel_engine_is_idle(struct intel_engine_cs *engine)
> > > if (I915_SELFTEST_ONLY(engine->breadcrumbs.mock))
> > > return true;
> > >
> > > - /* Interrupt/tasklet pending? */
> > > - if (test_bit(ENGINE_IRQ_EXECLIST, &engine->irq_posted))
> > > - return false;
> > > -
> >
> > We assert that active is set on preempt so there should
> > be no window of idleness during that either.
> >
> > Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
>
> The other thing that crossed my mind was that we should drain the
> tasklet during parking. But the above check already means the tasklet is
> exiting -- one hopes. Still probably worth checking how horrible that
> looks.
Well, look at that, we do!
intel_engines_park() {
for_each_engine tasklet_kill(&engine->execlists.tasklet);
}
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread
* ✓ Fi.CI.BAT: success for drm/i915: Remove redundant check on execlists interrupt
2018-02-08 15:12 [PATCH] drm/i915: Remove redundant check on execlists interrupt Chris Wilson
2018-02-08 15:20 ` Mika Kuoppala
@ 2018-02-08 15:46 ` Patchwork
2018-02-08 23:10 ` ✗ Fi.CI.IGT: failure " Patchwork
2 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2018-02-08 15:46 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915: Remove redundant check on execlists interrupt
URL : https://patchwork.freedesktop.org/series/37923/
State : success
== Summary ==
Series 37923v1 drm/i915: Remove redundant check on execlists interrupt
https://patchwork.freedesktop.org/api/1.0/series/37923/revisions/1/mbox/
fi-bdw-5557u total:288 pass:267 dwarn:0 dfail:0 fail:0 skip:21 time:417s
fi-bdw-gvtdvm total:288 pass:264 dwarn:0 dfail:0 fail:0 skip:24 time:423s
fi-blb-e6850 total:288 pass:223 dwarn:1 dfail:0 fail:0 skip:64 time:375s
fi-bsw-n3050 total:288 pass:242 dwarn:0 dfail:0 fail:0 skip:46 time:491s
fi-bwr-2160 total:288 pass:183 dwarn:0 dfail:0 fail:0 skip:105 time:287s
fi-bxt-dsi total:288 pass:258 dwarn:0 dfail:0 fail:0 skip:30 time:483s
fi-bxt-j4205 total:288 pass:259 dwarn:0 dfail:0 fail:0 skip:29 time:487s
fi-byt-j1900 total:288 pass:253 dwarn:0 dfail:0 fail:0 skip:35 time:469s
fi-byt-n2820 total:288 pass:249 dwarn:0 dfail:0 fail:0 skip:39 time:456s
fi-cfl-s2 total:288 pass:262 dwarn:0 dfail:0 fail:0 skip:26 time:569s
fi-cnl-y3 total:288 pass:262 dwarn:0 dfail:0 fail:0 skip:26 time:582s
fi-elk-e7500 total:288 pass:229 dwarn:0 dfail:0 fail:0 skip:59 time:409s
fi-gdg-551 total:288 pass:179 dwarn:0 dfail:0 fail:1 skip:108 time:284s
fi-glk-1 total:288 pass:260 dwarn:0 dfail:0 fail:0 skip:28 time:509s
fi-hsw-4770 total:288 pass:261 dwarn:0 dfail:0 fail:0 skip:27 time:391s
fi-ilk-650 total:288 pass:228 dwarn:0 dfail:0 fail:0 skip:60 time:411s
fi-ivb-3520m total:288 pass:259 dwarn:0 dfail:0 fail:0 skip:29 time:465s
fi-ivb-3770 total:288 pass:255 dwarn:0 dfail:0 fail:0 skip:33 time:415s
fi-kbl-7500u total:288 pass:263 dwarn:1 dfail:0 fail:0 skip:24 time:455s
fi-kbl-7560u total:288 pass:269 dwarn:0 dfail:0 fail:0 skip:19 time:496s
fi-kbl-7567u total:288 pass:268 dwarn:0 dfail:0 fail:0 skip:20 time:455s
fi-kbl-r total:288 pass:261 dwarn:0 dfail:0 fail:0 skip:27 time:503s
fi-pnv-d510 total:288 pass:222 dwarn:1 dfail:0 fail:0 skip:65 time:595s
fi-skl-6260u total:288 pass:268 dwarn:0 dfail:0 fail:0 skip:20 time:430s
fi-skl-6600u total:288 pass:261 dwarn:0 dfail:0 fail:0 skip:27 time:511s
fi-skl-6700hq total:288 pass:262 dwarn:0 dfail:0 fail:0 skip:26 time:529s
fi-skl-6700k2 total:288 pass:264 dwarn:0 dfail:0 fail:0 skip:24 time:490s
fi-skl-6770hq total:288 pass:268 dwarn:0 dfail:0 fail:0 skip:20 time:491s
fi-skl-guc total:288 pass:260 dwarn:0 dfail:0 fail:0 skip:28 time:419s
fi-skl-gvtdvm total:288 pass:265 dwarn:0 dfail:0 fail:0 skip:23 time:430s
fi-snb-2520m total:288 pass:248 dwarn:0 dfail:0 fail:0 skip:40 time:518s
fi-snb-2600 total:288 pass:248 dwarn:0 dfail:0 fail:0 skip:40 time:399s
Blacklisted hosts:
fi-glk-dsi total:288 pass:258 dwarn:0 dfail:0 fail:0 skip:30 time:469s
ead13f6504ef40dfb905830e57360f461f6803c3 drm-tip: 2018y-02m-08d-13h-43m-51s UTC integration manifest
1f0add5df2af drm/i915: Remove redundant check on execlists interrupt
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7954/issues.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread
* ✗ Fi.CI.IGT: failure for drm/i915: Remove redundant check on execlists interrupt
2018-02-08 15:12 [PATCH] drm/i915: Remove redundant check on execlists interrupt Chris Wilson
2018-02-08 15:20 ` Mika Kuoppala
2018-02-08 15:46 ` ✓ Fi.CI.BAT: success for " Patchwork
@ 2018-02-08 23:10 ` Patchwork
2 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2018-02-08 23:10 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915: Remove redundant check on execlists interrupt
URL : https://patchwork.freedesktop.org/series/37923/
State : failure
== Summary ==
Test kms_cursor_legacy:
Subgroup cursor-vs-flip-legacy:
fail -> PASS (shard-apl) fdo#103355
Test kms_flip:
Subgroup 2x-plain-flip-fb-recreate-interruptible:
pass -> FAIL (shard-hsw)
Test kms_cursor_crc:
Subgroup cursor-64x64-suspend:
pass -> SKIP (shard-snb) fdo#102365
Test gem_exec_suspend:
Subgroup basic-s4:
fail -> SKIP (shard-snb) fdo#103375
fdo#103355 https://bugs.freedesktop.org/show_bug.cgi?id=103355
fdo#102365 https://bugs.freedesktop.org/show_bug.cgi?id=102365
fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375
shard-apl total:3354 pass:1738 dwarn:1 dfail:0 fail:20 skip:1594 time:12323s
shard-hsw total:3444 pass:1759 dwarn:1 dfail:0 fail:12 skip:1671 time:11827s
shard-snb total:3444 pass:1349 dwarn:1 dfail:0 fail:9 skip:2085 time:6524s
Blacklisted hosts:
shard-kbl total:3411 pass:1888 dwarn:12 dfail:0 fail:21 skip:1489 time:9492s
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_7954/shards.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2018-02-08 23:10 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-02-08 15:12 [PATCH] drm/i915: Remove redundant check on execlists interrupt Chris Wilson
2018-02-08 15:20 ` Mika Kuoppala
2018-02-08 15:29 ` Chris Wilson
2018-02-08 15:32 ` Chris Wilson
2018-02-08 15:46 ` ✓ Fi.CI.BAT: success for " Patchwork
2018-02-08 23:10 ` ✗ Fi.CI.IGT: failure " 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.