* [PATCH] drm/i915: Assert that we always complete a submission to guc/execlists
@ 2018-02-15 16:25 Chris Wilson
2018-02-15 17:00 ` ✓ Fi.CI.BAT: success for " Patchwork
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Chris Wilson @ 2018-02-15 16:25 UTC (permalink / raw)
To: intel-gfx
The continual resubmission model for execlists (and emulated over guc)
requires that we keep feeding requests into the HW in order to generate
more CS interrupts to drain the rest of the queue. Add a couple of
asserts to ensure that we don't skip a cycle and come to a grinding
halt.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Michał Winiarski <michal.winiarski@intel.com>
---
drivers/gpu/drm/i915/intel_guc_submission.c | 6 ++++++
drivers/gpu/drm/i915/intel_lrc.c | 6 ++++++
2 files changed, 12 insertions(+)
diff --git a/drivers/gpu/drm/i915/intel_guc_submission.c b/drivers/gpu/drm/i915/intel_guc_submission.c
index b43b58cc599b..946766b62459 100644
--- a/drivers/gpu/drm/i915/intel_guc_submission.c
+++ b/drivers/gpu/drm/i915/intel_guc_submission.c
@@ -747,6 +747,12 @@ static void guc_dequeue(struct intel_engine_cs *engine)
execlists_set_active(execlists, EXECLISTS_ACTIVE_USER);
guc_submit(engine);
}
+
+ /* We must always keep the beast fed if we have work piled up */
+ GEM_BUG_ON(port_isset(execlists->port) &&
+ !execlists_is_active(execlists, EXECLISTS_ACTIVE_USER));
+ GEM_BUG_ON(execlists->first && !port_isset(execlists->port));
+
unlock:
spin_unlock_irq(&engine->timeline->lock);
}
diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
index c2c8380a0121..6fbe1a8a37ad 100644
--- a/drivers/gpu/drm/i915/intel_lrc.c
+++ b/drivers/gpu/drm/i915/intel_lrc.c
@@ -642,6 +642,12 @@ static void execlists_dequeue(struct intel_engine_cs *engine)
execlists->first = rb;
if (submit)
port_assign(port, last);
+
+ /* We must always keep the beast fed if we have work piled up */
+ GEM_BUG_ON(port_isset(execlists->port) &&
+ !execlists_is_active(execlists, EXECLISTS_ACTIVE_USER));
+ GEM_BUG_ON(execlists->first && !port_isset(execlists->port));
+
unlock:
spin_unlock_irq(&engine->timeline->lock);
--
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
* ✓ Fi.CI.BAT: success for drm/i915: Assert that we always complete a submission to guc/execlists
2018-02-15 16:25 [PATCH] drm/i915: Assert that we always complete a submission to guc/execlists Chris Wilson
@ 2018-02-15 17:00 ` Patchwork
2018-02-16 15:28 ` Chris Wilson
2018-02-16 3:11 ` ✗ Fi.CI.IGT: warning " Patchwork
2018-02-16 13:42 ` [PATCH] " Mika Kuoppala
2 siblings, 1 reply; 6+ messages in thread
From: Patchwork @ 2018-02-15 17:00 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915: Assert that we always complete a submission to guc/execlists
URL : https://patchwork.freedesktop.org/series/38376/
State : success
== Summary ==
Series 38376v1 drm/i915: Assert that we always complete a submission to guc/execlists
https://patchwork.freedesktop.org/api/1.0/series/38376/revisions/1/mbox/
Test kms_pipe_crc_basic:
Subgroup suspend-read-crc-pipe-b:
pass -> INCOMPLETE (fi-snb-2520m) fdo#103713
fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
fi-blb-e6850 total:288 pass:223 dwarn:1 dfail:0 fail:0 skip:64 time:376s
fi-bwr-2160 total:288 pass:183 dwarn:0 dfail:0 fail:0 skip:105 time:290s
fi-byt-j1900 total:288 pass:253 dwarn:0 dfail:0 fail:0 skip:35 time:473s
fi-byt-n2820 total:288 pass:249 dwarn:0 dfail:0 fail:0 skip:39 time:467s
fi-elk-e7500 total:288 pass:229 dwarn:0 dfail:0 fail:0 skip:59 time:417s
fi-gdg-551 total:288 pass:179 dwarn:0 dfail:0 fail:1 skip:108 time:286s
fi-hsw-4770 total:288 pass:261 dwarn:0 dfail:0 fail:0 skip:27 time:394s
fi-ilk-650 total:288 pass:228 dwarn:0 dfail:0 fail:0 skip:60 time:414s
fi-ivb-3520m total:288 pass:259 dwarn:0 dfail:0 fail:0 skip:29 time:458s
fi-ivb-3770 total:288 pass:255 dwarn:0 dfail:0 fail:0 skip:33 time:418s
fi-pnv-d510 total:288 pass:222 dwarn:1 dfail:0 fail:0 skip:65 time:594s
fi-skl-guc total:288 pass:260 dwarn:0 dfail:0 fail:0 skip:28 time:418s
fi-snb-2520m total:245 pass:211 dwarn:0 dfail:0 fail:0 skip:33
fi-snb-2600 total:288 pass:248 dwarn:0 dfail:0 fail:0 skip:40 time:398s
6b3cedfad753bf87af8c6347cd8454808e969503 drm-tip: 2018y-02m-15d-15h-04m-33s UTC integration manifest
9a02fea77a6f drm/i915: Assert that we always complete a submission to guc/execlists
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_8050/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: warning for drm/i915: Assert that we always complete a submission to guc/execlists
2018-02-15 16:25 [PATCH] drm/i915: Assert that we always complete a submission to guc/execlists Chris Wilson
2018-02-15 17:00 ` ✓ Fi.CI.BAT: success for " Patchwork
@ 2018-02-16 3:11 ` Patchwork
2018-02-16 13:42 ` [PATCH] " Mika Kuoppala
2 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2018-02-16 3:11 UTC (permalink / raw)
To: Chris Wilson; +Cc: intel-gfx
== Series Details ==
Series: drm/i915: Assert that we always complete a submission to guc/execlists
URL : https://patchwork.freedesktop.org/series/38376/
State : warning
== Summary ==
Test kms_flip:
Subgroup modeset-vs-vblank-race:
pass -> FAIL (shard-hsw) fdo#103060
Test kms_chv_cursor_fail:
Subgroup pipe-b-64x64-bottom-edge:
pass -> SKIP (shard-snb)
Test kms_cursor_crc:
Subgroup cursor-256x256-suspend:
pass -> SKIP (shard-snb) fdo#103375
Test gem_eio:
Subgroup in-flight-external:
fail -> PASS (shard-hsw) fdo#104676 +1
Subgroup in-flight-contexts:
dmesg-warn -> PASS (shard-snb) fdo#104058
fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060
fdo#103375 https://bugs.freedesktop.org/show_bug.cgi?id=103375
fdo#104676 https://bugs.freedesktop.org/show_bug.cgi?id=104676
fdo#104058 https://bugs.freedesktop.org/show_bug.cgi?id=104058
shard-hsw total:3427 pass:1758 dwarn:1 dfail:0 fail:11 skip:1656 time:11859s
shard-snb total:3427 pass:1345 dwarn:1 dfail:0 fail:12 skip:2069 time:6602s
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_8050/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
* Re: [PATCH] drm/i915: Assert that we always complete a submission to guc/execlists
2018-02-15 16:25 [PATCH] drm/i915: Assert that we always complete a submission to guc/execlists Chris Wilson
2018-02-15 17:00 ` ✓ Fi.CI.BAT: success for " Patchwork
2018-02-16 3:11 ` ✗ Fi.CI.IGT: warning " Patchwork
@ 2018-02-16 13:42 ` Mika Kuoppala
2018-02-16 14:20 ` Chris Wilson
2 siblings, 1 reply; 6+ messages in thread
From: Mika Kuoppala @ 2018-02-16 13:42 UTC (permalink / raw)
To: Chris Wilson, intel-gfx
Chris Wilson <chris@chris-wilson.co.uk> writes:
> The continual resubmission model for execlists (and emulated over guc)
> requires that we keep feeding requests into the HW in order to generate
> more CS interrupts to drain the rest of the queue. Add a couple of
> asserts to ensure that we don't skip a cycle and come to a grinding
> halt.
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Michał Winiarski <michal.winiarski@intel.com>
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> ---
> drivers/gpu/drm/i915/intel_guc_submission.c | 6 ++++++
> drivers/gpu/drm/i915/intel_lrc.c | 6 ++++++
> 2 files changed, 12 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/intel_guc_submission.c b/drivers/gpu/drm/i915/intel_guc_submission.c
> index b43b58cc599b..946766b62459 100644
> --- a/drivers/gpu/drm/i915/intel_guc_submission.c
> +++ b/drivers/gpu/drm/i915/intel_guc_submission.c
> @@ -747,6 +747,12 @@ static void guc_dequeue(struct intel_engine_cs *engine)
> execlists_set_active(execlists, EXECLISTS_ACTIVE_USER);
> guc_submit(engine);
> }
> +
> + /* We must always keep the beast fed if we have work piled up */
> + GEM_BUG_ON(port_isset(execlists->port) &&
> + !execlists_is_active(execlists, EXECLISTS_ACTIVE_USER));
> + GEM_BUG_ON(execlists->first && !port_isset(execlists->port));
> +
> unlock:
> spin_unlock_irq(&engine->timeline->lock);
> }
> diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
> index c2c8380a0121..6fbe1a8a37ad 100644
> --- a/drivers/gpu/drm/i915/intel_lrc.c
> +++ b/drivers/gpu/drm/i915/intel_lrc.c
> @@ -642,6 +642,12 @@ static void execlists_dequeue(struct intel_engine_cs *engine)
> execlists->first = rb;
> if (submit)
> port_assign(port, last);
> +
> + /* We must always keep the beast fed if we have work piled up */
> + GEM_BUG_ON(port_isset(execlists->port) &&
> + !execlists_is_active(execlists, EXECLISTS_ACTIVE_USER));
> + GEM_BUG_ON(execlists->first && !port_isset(execlists->port));
> +
> unlock:
> spin_unlock_irq(&engine->timeline->lock);
>
> --
> 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: Assert that we always complete a submission to guc/execlists
2018-02-16 13:42 ` [PATCH] " Mika Kuoppala
@ 2018-02-16 14:20 ` Chris Wilson
0 siblings, 0 replies; 6+ messages in thread
From: Chris Wilson @ 2018-02-16 14:20 UTC (permalink / raw)
To: Mika Kuoppala, intel-gfx
Quoting Mika Kuoppala (2018-02-16 13:42:23)
> Chris Wilson <chris@chris-wilson.co.uk> writes:
>
> > The continual resubmission model for execlists (and emulated over guc)
> > requires that we keep feeding requests into the HW in order to generate
> > more CS interrupts to drain the rest of the queue. Add a couple of
> > asserts to ensure that we don't skip a cycle and come to a grinding
> > halt.
> >
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > Cc: Michał Winiarski <michal.winiarski@intel.com>
>
> Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Thanks for the review, pushed. Hopefully serves well as commentary.
-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: ✓ Fi.CI.BAT: success for drm/i915: Assert that we always complete a submission to guc/execlists
2018-02-15 17:00 ` ✓ Fi.CI.BAT: success for " Patchwork
@ 2018-02-16 15:28 ` Chris Wilson
0 siblings, 0 replies; 6+ messages in thread
From: Chris Wilson @ 2018-02-16 15:28 UTC (permalink / raw)
To: Patchwork; +Cc: intel-gfx
Quoting Patchwork (2018-02-15 17:00:18)
> == Series Details ==
>
> Series: drm/i915: Assert that we always complete a submission to guc/execlists
> URL : https://patchwork.freedesktop.org/series/38376/
> State : success
>
> == Summary ==
>
> Series 38376v1 drm/i915: Assert that we always complete a submission to guc/execlists
> https://patchwork.freedesktop.org/api/1.0/series/38376/revisions/1/mbox/
>
> Test kms_pipe_crc_basic:
> Subgroup suspend-read-crc-pipe-b:
> pass -> INCOMPLETE (fi-snb-2520m) fdo#103713
>
> fdo#103713 https://bugs.freedesktop.org/show_bug.cgi?id=103713
>
> fi-blb-e6850 total:288 pass:223 dwarn:1 dfail:0 fail:0 skip:64 time:376s
> fi-bwr-2160 total:288 pass:183 dwarn:0 dfail:0 fail:0 skip:105 time:290s
> fi-byt-j1900 total:288 pass:253 dwarn:0 dfail:0 fail:0 skip:35 time:473s
> fi-byt-n2820 total:288 pass:249 dwarn:0 dfail:0 fail:0 skip:39 time:467s
> fi-elk-e7500 total:288 pass:229 dwarn:0 dfail:0 fail:0 skip:59 time:417s
> fi-gdg-551 total:288 pass:179 dwarn:0 dfail:0 fail:1 skip:108 time:286s
> fi-hsw-4770 total:288 pass:261 dwarn:0 dfail:0 fail:0 skip:27 time:394s
> fi-ilk-650 total:288 pass:228 dwarn:0 dfail:0 fail:0 skip:60 time:414s
> fi-ivb-3520m total:288 pass:259 dwarn:0 dfail:0 fail:0 skip:29 time:458s
> fi-ivb-3770 total:288 pass:255 dwarn:0 dfail:0 fail:0 skip:33 time:418s
> fi-pnv-d510 total:288 pass:222 dwarn:1 dfail:0 fail:0 skip:65 time:594s
> fi-skl-guc total:288 pass:260 dwarn:0 dfail:0 fail:0 skip:28 time:418s
> fi-snb-2520m total:245 pass:211 dwarn:0 dfail:0 fail:0 skip:33
> fi-snb-2600 total:288 pass:248 dwarn:0 dfail:0 fail:0 skip:40 time:398s
Oh dear, what I did not notice due to the success report was that all the
execlists platforms are absent, and we can't even access their logs.
-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
end of thread, other threads:[~2018-02-16 15:28 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-02-15 16:25 [PATCH] drm/i915: Assert that we always complete a submission to guc/execlists Chris Wilson
2018-02-15 17:00 ` ✓ Fi.CI.BAT: success for " Patchwork
2018-02-16 15:28 ` Chris Wilson
2018-02-16 3:11 ` ✗ Fi.CI.IGT: warning " Patchwork
2018-02-16 13:42 ` [PATCH] " Mika Kuoppala
2018-02-16 14:20 ` Chris Wilson
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.