* [PATCH] drm/i915/guc: Ensure multi-lrc fini breadcrumb math is correct
@ 2022-01-13 5:59 ` Matthew Brost
0 siblings, 0 replies; 7+ messages in thread
From: Matthew Brost @ 2022-01-13 5:59 UTC (permalink / raw)
To: intel-gfx, dri-devel; +Cc: daniele.ceraolospurio, john.c.harrison
Realized that the GuC multi-lrc fini breadcrumb emit code is very
delicate as the math this code does relies on functions it calls to emit
a certain number of DWs. Add a few GEM_BUG_ONs to assert the math is
correct.
Signed-off-by: Matthew Brost <matthew.brost@intel.com>
---
.../gpu/drm/i915/gt/uc/intel_guc_submission.c | 32 +++++++++++++++----
1 file changed, 26 insertions(+), 6 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
index 3ae92260f8224..d562d85f96871 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
@@ -4493,27 +4493,31 @@ static inline bool skip_handshake(struct i915_request *rq)
return test_bit(I915_FENCE_FLAG_SKIP_PARALLEL, &rq->fence.flags);
}
+#define NON_SKIP_LEN 6
static u32 *
emit_fini_breadcrumb_parent_no_preempt_mid_batch(struct i915_request *rq,
u32 *cs)
{
struct intel_context *ce = rq->context;
+ __maybe_unused u32 *before_fini_breadcrumb_user_interrupt_cs;
+ __maybe_unused u32 *start_fini_breadcrumb_cs = cs;
GEM_BUG_ON(!intel_context_is_parent(ce));
if (unlikely(skip_handshake(rq))) {
/*
* NOP everything in __emit_fini_breadcrumb_parent_no_preempt_mid_batch,
- * the -6 comes from the length of the emits below.
+ * the NON_SKIP_LEN comes from the length of the emits below.
*/
memset(cs, 0, sizeof(u32) *
- (ce->engine->emit_fini_breadcrumb_dw - 6));
- cs += ce->engine->emit_fini_breadcrumb_dw - 6;
+ (ce->engine->emit_fini_breadcrumb_dw - NON_SKIP_LEN));
+ cs += ce->engine->emit_fini_breadcrumb_dw - NON_SKIP_LEN;
} else {
cs = __emit_fini_breadcrumb_parent_no_preempt_mid_batch(rq, cs);
}
/* Emit fini breadcrumb */
+ before_fini_breadcrumb_user_interrupt_cs = cs;
cs = gen8_emit_ggtt_write(cs,
rq->fence.seqno,
i915_request_active_timeline(rq)->hwsp_offset,
@@ -4523,6 +4527,12 @@ emit_fini_breadcrumb_parent_no_preempt_mid_batch(struct i915_request *rq,
*cs++ = MI_USER_INTERRUPT;
*cs++ = MI_NOOP;
+ /* Ensure our math for skip + emit is correct */
+ GEM_BUG_ON(before_fini_breadcrumb_user_interrupt_cs + NON_SKIP_LEN !=
+ cs);
+ GEM_BUG_ON(start_fini_breadcrumb_cs +
+ ce->engine->emit_fini_breadcrumb_dw != cs);
+
rq->tail = intel_ring_offset(rq, cs);
return cs;
@@ -4565,22 +4575,25 @@ emit_fini_breadcrumb_child_no_preempt_mid_batch(struct i915_request *rq,
u32 *cs)
{
struct intel_context *ce = rq->context;
+ __maybe_unused u32 *before_fini_breadcrumb_user_interrupt_cs;
+ __maybe_unused u32 *start_fini_breadcrumb_cs = cs;
GEM_BUG_ON(!intel_context_is_child(ce));
if (unlikely(skip_handshake(rq))) {
/*
* NOP everything in __emit_fini_breadcrumb_child_no_preempt_mid_batch,
- * the -6 comes from the length of the emits below.
+ * the NON_SKIP_LEN comes from the length of the emits below.
*/
memset(cs, 0, sizeof(u32) *
- (ce->engine->emit_fini_breadcrumb_dw - 6));
- cs += ce->engine->emit_fini_breadcrumb_dw - 6;
+ (ce->engine->emit_fini_breadcrumb_dw - NON_SKIP_LEN));
+ cs += ce->engine->emit_fini_breadcrumb_dw - NON_SKIP_LEN;
} else {
cs = __emit_fini_breadcrumb_child_no_preempt_mid_batch(rq, cs);
}
/* Emit fini breadcrumb */
+ before_fini_breadcrumb_user_interrupt_cs = cs;
cs = gen8_emit_ggtt_write(cs,
rq->fence.seqno,
i915_request_active_timeline(rq)->hwsp_offset,
@@ -4590,10 +4603,17 @@ emit_fini_breadcrumb_child_no_preempt_mid_batch(struct i915_request *rq,
*cs++ = MI_USER_INTERRUPT;
*cs++ = MI_NOOP;
+ /* Ensure our math for skip + emit is correct */
+ GEM_BUG_ON(before_fini_breadcrumb_user_interrupt_cs + NON_SKIP_LEN !=
+ cs);
+ GEM_BUG_ON(start_fini_breadcrumb_cs +
+ ce->engine->emit_fini_breadcrumb_dw != cs);
+
rq->tail = intel_ring_offset(rq, cs);
return cs;
}
+#undef NON_SKIP_LEN
static struct intel_context *
guc_create_virtual(struct intel_engine_cs **siblings, unsigned int count,
--
2.34.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Intel-gfx] [PATCH] drm/i915/guc: Ensure multi-lrc fini breadcrumb math is correct
@ 2022-01-13 5:59 ` Matthew Brost
0 siblings, 0 replies; 7+ messages in thread
From: Matthew Brost @ 2022-01-13 5:59 UTC (permalink / raw)
To: intel-gfx, dri-devel
Realized that the GuC multi-lrc fini breadcrumb emit code is very
delicate as the math this code does relies on functions it calls to emit
a certain number of DWs. Add a few GEM_BUG_ONs to assert the math is
correct.
Signed-off-by: Matthew Brost <matthew.brost@intel.com>
---
.../gpu/drm/i915/gt/uc/intel_guc_submission.c | 32 +++++++++++++++----
1 file changed, 26 insertions(+), 6 deletions(-)
diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
index 3ae92260f8224..d562d85f96871 100644
--- a/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
+++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
@@ -4493,27 +4493,31 @@ static inline bool skip_handshake(struct i915_request *rq)
return test_bit(I915_FENCE_FLAG_SKIP_PARALLEL, &rq->fence.flags);
}
+#define NON_SKIP_LEN 6
static u32 *
emit_fini_breadcrumb_parent_no_preempt_mid_batch(struct i915_request *rq,
u32 *cs)
{
struct intel_context *ce = rq->context;
+ __maybe_unused u32 *before_fini_breadcrumb_user_interrupt_cs;
+ __maybe_unused u32 *start_fini_breadcrumb_cs = cs;
GEM_BUG_ON(!intel_context_is_parent(ce));
if (unlikely(skip_handshake(rq))) {
/*
* NOP everything in __emit_fini_breadcrumb_parent_no_preempt_mid_batch,
- * the -6 comes from the length of the emits below.
+ * the NON_SKIP_LEN comes from the length of the emits below.
*/
memset(cs, 0, sizeof(u32) *
- (ce->engine->emit_fini_breadcrumb_dw - 6));
- cs += ce->engine->emit_fini_breadcrumb_dw - 6;
+ (ce->engine->emit_fini_breadcrumb_dw - NON_SKIP_LEN));
+ cs += ce->engine->emit_fini_breadcrumb_dw - NON_SKIP_LEN;
} else {
cs = __emit_fini_breadcrumb_parent_no_preempt_mid_batch(rq, cs);
}
/* Emit fini breadcrumb */
+ before_fini_breadcrumb_user_interrupt_cs = cs;
cs = gen8_emit_ggtt_write(cs,
rq->fence.seqno,
i915_request_active_timeline(rq)->hwsp_offset,
@@ -4523,6 +4527,12 @@ emit_fini_breadcrumb_parent_no_preempt_mid_batch(struct i915_request *rq,
*cs++ = MI_USER_INTERRUPT;
*cs++ = MI_NOOP;
+ /* Ensure our math for skip + emit is correct */
+ GEM_BUG_ON(before_fini_breadcrumb_user_interrupt_cs + NON_SKIP_LEN !=
+ cs);
+ GEM_BUG_ON(start_fini_breadcrumb_cs +
+ ce->engine->emit_fini_breadcrumb_dw != cs);
+
rq->tail = intel_ring_offset(rq, cs);
return cs;
@@ -4565,22 +4575,25 @@ emit_fini_breadcrumb_child_no_preempt_mid_batch(struct i915_request *rq,
u32 *cs)
{
struct intel_context *ce = rq->context;
+ __maybe_unused u32 *before_fini_breadcrumb_user_interrupt_cs;
+ __maybe_unused u32 *start_fini_breadcrumb_cs = cs;
GEM_BUG_ON(!intel_context_is_child(ce));
if (unlikely(skip_handshake(rq))) {
/*
* NOP everything in __emit_fini_breadcrumb_child_no_preempt_mid_batch,
- * the -6 comes from the length of the emits below.
+ * the NON_SKIP_LEN comes from the length of the emits below.
*/
memset(cs, 0, sizeof(u32) *
- (ce->engine->emit_fini_breadcrumb_dw - 6));
- cs += ce->engine->emit_fini_breadcrumb_dw - 6;
+ (ce->engine->emit_fini_breadcrumb_dw - NON_SKIP_LEN));
+ cs += ce->engine->emit_fini_breadcrumb_dw - NON_SKIP_LEN;
} else {
cs = __emit_fini_breadcrumb_child_no_preempt_mid_batch(rq, cs);
}
/* Emit fini breadcrumb */
+ before_fini_breadcrumb_user_interrupt_cs = cs;
cs = gen8_emit_ggtt_write(cs,
rq->fence.seqno,
i915_request_active_timeline(rq)->hwsp_offset,
@@ -4590,10 +4603,17 @@ emit_fini_breadcrumb_child_no_preempt_mid_batch(struct i915_request *rq,
*cs++ = MI_USER_INTERRUPT;
*cs++ = MI_NOOP;
+ /* Ensure our math for skip + emit is correct */
+ GEM_BUG_ON(before_fini_breadcrumb_user_interrupt_cs + NON_SKIP_LEN !=
+ cs);
+ GEM_BUG_ON(start_fini_breadcrumb_cs +
+ ce->engine->emit_fini_breadcrumb_dw != cs);
+
rq->tail = intel_ring_offset(rq, cs);
return cs;
}
+#undef NON_SKIP_LEN
static struct intel_context *
guc_create_virtual(struct intel_engine_cs **siblings, unsigned int count,
--
2.34.1
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915/guc: Ensure multi-lrc fini breadcrumb math is correct
2022-01-13 5:59 ` [Intel-gfx] " Matthew Brost
(?)
@ 2022-01-13 6:16 ` Patchwork
-1 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2022-01-13 6:16 UTC (permalink / raw)
To: Matthew Brost; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/guc: Ensure multi-lrc fini breadcrumb math is correct
URL : https://patchwork.freedesktop.org/series/98816/
State : warning
== Summary ==
$ dim checkpatch origin/drm-tip
cbc7f028c5ae drm/i915/guc: Ensure multi-lrc fini breadcrumb math is correct
-:109: CHECK:LINE_SPACING: Please use a blank line after function/struct/union/enum declarations
#109: FILE: drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c:4578:
}
+#undef NON_SKIP_LEN
total: 0 errors, 0 warnings, 1 checks, 91 lines checked
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915/guc: Ensure multi-lrc fini breadcrumb math is correct
2022-01-13 5:59 ` [Intel-gfx] " Matthew Brost
(?)
(?)
@ 2022-01-13 6:43 ` Patchwork
-1 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2022-01-13 6:43 UTC (permalink / raw)
To: Matthew Brost; +Cc: intel-gfx
[-- Attachment #1: Type: text/plain, Size: 6317 bytes --]
== Series Details ==
Series: drm/i915/guc: Ensure multi-lrc fini breadcrumb math is correct
URL : https://patchwork.freedesktop.org/series/98816/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_11075 -> Patchwork_21991
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/index.html
Participating hosts (44 -> 43)
------------------------------
Missing (1): fi-bsw-cyan
Known issues
------------
Here are the changes found in Patchwork_21991 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@amdgpu/amd_prime@amd-to-i915:
- fi-pnv-d510: NOTRUN -> [SKIP][1] ([fdo#109271]) +17 similar issues
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/fi-pnv-d510/igt@amdgpu/amd_prime@amd-to-i915.html
* igt@i915_selftest@live@hangcheck:
- bat-dg1-5: NOTRUN -> [DMESG-FAIL][2] ([i915#4494])
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/bat-dg1-5/igt@i915_selftest@live@hangcheck.html
* igt@i915_selftest@live@requests:
- fi-blb-e6850: [PASS][3] -> [DMESG-FAIL][4] ([i915#4610])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/fi-blb-e6850/igt@i915_selftest@live@requests.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/fi-blb-e6850/igt@i915_selftest@live@requests.html
* igt@kms_psr@primary_page_flip:
- fi-skl-6600u: [PASS][5] -> [FAIL][6] ([i915#4547])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/fi-skl-6600u/igt@kms_psr@primary_page_flip.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/fi-skl-6600u/igt@kms_psr@primary_page_flip.html
* igt@runner@aborted:
- fi-skl-6600u: NOTRUN -> [FAIL][7] ([i915#4312])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/fi-skl-6600u/igt@runner@aborted.html
- fi-bdw-5557u: NOTRUN -> [FAIL][8] ([i915#2426] / [i915#4312])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/fi-bdw-5557u/igt@runner@aborted.html
- fi-blb-e6850: NOTRUN -> [FAIL][9] ([fdo#109271] / [i915#2403] / [i915#2426] / [i915#4312])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/fi-blb-e6850/igt@runner@aborted.html
#### Possible fixes ####
* igt@core_auth@basic-auth:
- {bat-jsl-2}: [DMESG-WARN][10] ([i915#4562]) -> [PASS][11]
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/bat-jsl-2/igt@core_auth@basic-auth.html
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/bat-jsl-2/igt@core_auth@basic-auth.html
* igt@gem_exec_suspend@basic-s3@smem:
- fi-bdw-5557u: [INCOMPLETE][12] ([i915#146]) -> [PASS][13]
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/fi-bdw-5557u/igt@gem_exec_suspend@basic-s3@smem.html
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/fi-bdw-5557u/igt@gem_exec_suspend@basic-s3@smem.html
* igt@i915_selftest@live@gt_engines:
- bat-dg1-5: [INCOMPLETE][14] ([i915#4418]) -> [PASS][15]
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/bat-dg1-5/igt@i915_selftest@live@gt_engines.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/bat-dg1-5/igt@i915_selftest@live@gt_engines.html
* igt@i915_selftest@live@hangcheck:
- {fi-ehl-2}: [DMESG-FAIL][16] -> [PASS][17]
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/fi-ehl-2/igt@i915_selftest@live@hangcheck.html
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/fi-ehl-2/igt@i915_selftest@live@hangcheck.html
- bat-dg1-6: [DMESG-FAIL][18] ([i915#4494]) -> [PASS][19]
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/bat-dg1-6/igt@i915_selftest@live@hangcheck.html
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/bat-dg1-6/igt@i915_selftest@live@hangcheck.html
* igt@i915_selftest@live@hugepages:
- {bat-adlp-6}: [DMESG-WARN][20] ([i915#1888]) -> [PASS][21]
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/bat-adlp-6/igt@i915_selftest@live@hugepages.html
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/bat-adlp-6/igt@i915_selftest@live@hugepages.html
* igt@i915_selftest@live@requests:
- fi-pnv-d510: [DMESG-FAIL][22] ([i915#2927]) -> [PASS][23]
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/fi-pnv-d510/igt@i915_selftest@live@requests.html
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/fi-pnv-d510/igt@i915_selftest@live@requests.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[i915#146]: https://gitlab.freedesktop.org/drm/intel/issues/146
[i915#1888]: https://gitlab.freedesktop.org/drm/intel/issues/1888
[i915#2403]: https://gitlab.freedesktop.org/drm/intel/issues/2403
[i915#2426]: https://gitlab.freedesktop.org/drm/intel/issues/2426
[i915#2927]: https://gitlab.freedesktop.org/drm/intel/issues/2927
[i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
[i915#4418]: https://gitlab.freedesktop.org/drm/intel/issues/4418
[i915#4494]: https://gitlab.freedesktop.org/drm/intel/issues/4494
[i915#4547]: https://gitlab.freedesktop.org/drm/intel/issues/4547
[i915#4562]: https://gitlab.freedesktop.org/drm/intel/issues/4562
[i915#4610]: https://gitlab.freedesktop.org/drm/intel/issues/4610
[i915#4897]: https://gitlab.freedesktop.org/drm/intel/issues/4897
Build changes
-------------
* Linux: CI_DRM_11075 -> Patchwork_21991
CI-20190529: 20190529
CI_DRM_11075: 9b371f79eeb9a3867d2483e4038f22f89a854886 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_6326: ec75f64fcbcf4aac58fbf1bf629e8f59b19db4ce @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
Patchwork_21991: cbc7f028c5ae7962b9739f16521ef7c9eec50872 @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
cbc7f028c5ae drm/i915/guc: Ensure multi-lrc fini breadcrumb math is correct
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/index.html
[-- Attachment #2: Type: text/html, Size: 7514 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* [Intel-gfx] ✗ Fi.CI.IGT: failure for drm/i915/guc: Ensure multi-lrc fini breadcrumb math is correct
2022-01-13 5:59 ` [Intel-gfx] " Matthew Brost
` (2 preceding siblings ...)
(?)
@ 2022-01-13 8:04 ` Patchwork
-1 siblings, 0 replies; 7+ messages in thread
From: Patchwork @ 2022-01-13 8:04 UTC (permalink / raw)
To: Matthew Brost; +Cc: intel-gfx
[-- Attachment #1: Type: text/plain, Size: 30284 bytes --]
== Series Details ==
Series: drm/i915/guc: Ensure multi-lrc fini breadcrumb math is correct
URL : https://patchwork.freedesktop.org/series/98816/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_11075_full -> Patchwork_21991_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_21991_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_21991_full, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
Participating hosts (10 -> 10)
------------------------------
No changes in participating hosts
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_21991_full:
### IGT changes ###
#### Possible regressions ####
* igt@i915_pm_rpm@pm-caching:
- shard-iclb: [PASS][1] -> [INCOMPLETE][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-iclb6/igt@i915_pm_rpm@pm-caching.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb4/igt@i915_pm_rpm@pm-caching.html
Known issues
------------
Here are the changes found in Patchwork_21991_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@feature_discovery@psr2:
- shard-iclb: [PASS][3] -> [SKIP][4] ([i915#658])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-iclb2/igt@feature_discovery@psr2.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb6/igt@feature_discovery@psr2.html
* igt@gem_ctx_param@set-priority-not-supported:
- shard-tglb: NOTRUN -> [SKIP][5] ([fdo#109314])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb8/igt@gem_ctx_param@set-priority-not-supported.html
* igt@gem_exec_balancer@parallel:
- shard-iclb: [PASS][6] -> [SKIP][7] ([i915#4525]) +1 similar issue
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-iclb4/igt@gem_exec_balancer@parallel.html
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb5/igt@gem_exec_balancer@parallel.html
* igt@gem_exec_capture@pi@vcs0:
- shard-skl: NOTRUN -> [INCOMPLETE][8] ([i915#4547])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl9/igt@gem_exec_capture@pi@vcs0.html
* igt@gem_exec_fair@basic-none@vecs0:
- shard-kbl: [PASS][9] -> [FAIL][10] ([i915#2842])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-kbl3/igt@gem_exec_fair@basic-none@vecs0.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-kbl3/igt@gem_exec_fair@basic-none@vecs0.html
* igt@gem_exec_fair@basic-pace-share@rcs0:
- shard-glk: [PASS][11] -> [FAIL][12] ([i915#2842])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-glk6/igt@gem_exec_fair@basic-pace-share@rcs0.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-glk3/igt@gem_exec_fair@basic-pace-share@rcs0.html
* igt@gem_exec_whisper@basic-forked:
- shard-glk: [PASS][13] -> [DMESG-WARN][14] ([i915#118])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-glk3/igt@gem_exec_whisper@basic-forked.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-glk7/igt@gem_exec_whisper@basic-forked.html
* igt@gem_lmem_swapping@heavy-multi:
- shard-skl: NOTRUN -> [SKIP][15] ([fdo#109271] / [i915#4613]) +3 similar issues
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl6/igt@gem_lmem_swapping@heavy-multi.html
* igt@gem_lmem_swapping@verify:
- shard-tglb: NOTRUN -> [SKIP][16] ([i915#4613])
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb8/igt@gem_lmem_swapping@verify.html
* igt@gem_pwrite@basic-exhaustion:
- shard-skl: NOTRUN -> [WARN][17] ([i915#2658]) +1 similar issue
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl5/igt@gem_pwrite@basic-exhaustion.html
* igt@gem_pxp@reject-modify-context-protection-off-2:
- shard-tglb: NOTRUN -> [SKIP][18] ([i915#4270]) +1 similar issue
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb8/igt@gem_pxp@reject-modify-context-protection-off-2.html
* igt@gem_userptr_blits@dmabuf-sync:
- shard-iclb: NOTRUN -> [SKIP][19] ([i915#3323])
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb6/igt@gem_userptr_blits@dmabuf-sync.html
- shard-tglb: NOTRUN -> [SKIP][20] ([i915#3323])
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb1/igt@gem_userptr_blits@dmabuf-sync.html
* igt@gen3_render_tiledx_blits:
- shard-tglb: NOTRUN -> [SKIP][21] ([fdo#109289])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb8/igt@gen3_render_tiledx_blits.html
* igt@gen9_exec_parse@shadow-peek:
- shard-tglb: NOTRUN -> [SKIP][22] ([i915#2527] / [i915#2856]) +1 similar issue
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb1/igt@gen9_exec_parse@shadow-peek.html
- shard-iclb: NOTRUN -> [SKIP][23] ([i915#2856])
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb6/igt@gen9_exec_parse@shadow-peek.html
* igt@i915_pm_dc@dc6-psr:
- shard-iclb: [PASS][24] -> [FAIL][25] ([i915#454])
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-iclb5/igt@i915_pm_dc@dc6-psr.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb3/igt@i915_pm_dc@dc6-psr.html
* igt@kms_big_fb@x-tiled-8bpp-rotate-90:
- shard-tglb: NOTRUN -> [SKIP][26] ([fdo#111614]) +1 similar issue
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb8/igt@kms_big_fb@x-tiled-8bpp-rotate-90.html
* igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-async-flip:
- shard-apl: [PASS][27] -> [DMESG-WARN][28] ([i915#62]) +12 similar issues
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-apl3/igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-async-flip.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-apl3/igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-async-flip.html
* igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip:
- shard-skl: NOTRUN -> [SKIP][29] ([fdo#109271] / [i915#3777])
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl6/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip.html
* igt@kms_big_fb@yf-tiled-16bpp-rotate-0:
- shard-skl: [PASS][30] -> [DMESG-WARN][31] ([i915#1982])
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-skl9/igt@kms_big_fb@yf-tiled-16bpp-rotate-0.html
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl10/igt@kms_big_fb@yf-tiled-16bpp-rotate-0.html
* igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180-async-flip:
- shard-skl: NOTRUN -> [FAIL][32] ([i915#3743]) +1 similar issue
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl6/igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html
* igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip:
- shard-tglb: NOTRUN -> [SKIP][33] ([fdo#111615])
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb8/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip.html
* igt@kms_ccs@pipe-a-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc:
- shard-skl: NOTRUN -> [SKIP][34] ([fdo#109271] / [i915#3886]) +13 similar issues
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl3/igt@kms_ccs@pipe-a-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc.html
* igt@kms_ccs@pipe-b-bad-aux-stride-y_tiled_gen12_rc_ccs:
- shard-iclb: NOTRUN -> [SKIP][35] ([fdo#109278]) +4 similar issues
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb6/igt@kms_ccs@pipe-b-bad-aux-stride-y_tiled_gen12_rc_ccs.html
* igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_mc_ccs:
- shard-tglb: NOTRUN -> [SKIP][36] ([i915#3689] / [i915#3886]) +1 similar issue
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb8/igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_mc_ccs.html
* igt@kms_chamelium@vga-hpd-after-suspend:
- shard-skl: NOTRUN -> [SKIP][37] ([fdo#109271] / [fdo#111827]) +23 similar issues
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl6/igt@kms_chamelium@vga-hpd-after-suspend.html
* igt@kms_color_chamelium@pipe-d-ctm-red-to-blue:
- shard-tglb: NOTRUN -> [SKIP][38] ([fdo#109284] / [fdo#111827]) +3 similar issues
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb1/igt@kms_color_chamelium@pipe-d-ctm-red-to-blue.html
- shard-iclb: NOTRUN -> [SKIP][39] ([fdo#109278] / [fdo#109284] / [fdo#111827])
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb6/igt@kms_color_chamelium@pipe-d-ctm-red-to-blue.html
* igt@kms_cursor_crc@pipe-a-cursor-32x32-rapid-movement:
- shard-tglb: NOTRUN -> [SKIP][40] ([i915#3319])
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb8/igt@kms_cursor_crc@pipe-a-cursor-32x32-rapid-movement.html
* igt@kms_cursor_crc@pipe-b-cursor-32x10-sliding:
- shard-tglb: NOTRUN -> [SKIP][41] ([i915#3359]) +4 similar issues
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb5/igt@kms_cursor_crc@pipe-b-cursor-32x10-sliding.html
* igt@kms_cursor_crc@pipe-b-cursor-suspend:
- shard-apl: [PASS][42] -> [DMESG-WARN][43] ([i915#180]) +2 similar issues
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-apl7/igt@kms_cursor_crc@pipe-b-cursor-suspend.html
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-apl4/igt@kms_cursor_crc@pipe-b-cursor-suspend.html
* igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions-varying-size:
- shard-iclb: [PASS][44] -> [FAIL][45] ([i915#2370])
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-iclb6/igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions-varying-size.html
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb7/igt@kms_cursor_legacy@cursor-vs-flip-atomic-transitions-varying-size.html
* igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions:
- shard-iclb: NOTRUN -> [SKIP][46] ([fdo#109274] / [fdo#109278])
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb5/igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions:
- shard-tglb: NOTRUN -> [SKIP][47] ([i915#4103])
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb8/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions.html
* igt@kms_fbcon_fbt@fbc-suspend:
- shard-kbl: [PASS][48] -> [INCOMPLETE][49] ([i915#180] / [i915#636])
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-kbl7/igt@kms_fbcon_fbt@fbc-suspend.html
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-kbl1/igt@kms_fbcon_fbt@fbc-suspend.html
* igt@kms_flip@2x-busy-flip:
- shard-tglb: NOTRUN -> [SKIP][50] ([fdo#109274] / [fdo#111825]) +2 similar issues
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb8/igt@kms_flip@2x-busy-flip.html
* igt@kms_flip@2x-flip-vs-panning-interruptible:
- shard-iclb: NOTRUN -> [SKIP][51] ([fdo#109274])
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb6/igt@kms_flip@2x-flip-vs-panning-interruptible.html
* igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@b-edp1:
- shard-skl: [PASS][52] -> [FAIL][53] ([i915#2122])
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-skl4/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@b-edp1.html
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl3/igt@kms_flip@flip-vs-absolute-wf_vblank-interruptible@b-edp1.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1:
- shard-skl: [PASS][54] -> [FAIL][55] ([i915#79]) +2 similar issues
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-skl8/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1.html
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl9/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-edp1.html
* igt@kms_flip@flip-vs-expired-vblank@c-hdmi-a2:
- shard-glk: [PASS][56] -> [FAIL][57] ([i915#79])
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-glk1/igt@kms_flip@flip-vs-expired-vblank@c-hdmi-a2.html
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-glk2/igt@kms_flip@flip-vs-expired-vblank@c-hdmi-a2.html
* igt@kms_flip@flip-vs-suspend-interruptible@a-dp1:
- shard-kbl: [PASS][58] -> [DMESG-WARN][59] ([i915#180]) +14 similar issues
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-kbl3/igt@kms_flip@flip-vs-suspend-interruptible@a-dp1.html
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-kbl1/igt@kms_flip@flip-vs-suspend-interruptible@a-dp1.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-downscaling:
- shard-skl: NOTRUN -> [INCOMPLETE][60] ([i915#3701])
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl6/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-downscaling.html
* igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling:
- shard-tglb: NOTRUN -> [SKIP][61] ([i915#2587])
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb5/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-downscaling:
- shard-iclb: [PASS][62] -> [SKIP][63] ([i915#3701])
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-iclb8/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-downscaling.html
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb2/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-downscaling.html
* igt@kms_frontbuffer_tracking@fbc-1p-shrfb-fliptrack-mmap-gtt:
- shard-skl: NOTRUN -> [SKIP][64] ([fdo#109271]) +276 similar issues
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl7/igt@kms_frontbuffer_tracking@fbc-1p-shrfb-fliptrack-mmap-gtt.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-pwrite:
- shard-iclb: NOTRUN -> [SKIP][65] ([fdo#109280]) +2 similar issues
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb5/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-pwrite.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-indfb-plflip-blt:
- shard-apl: NOTRUN -> [SKIP][66] ([fdo#109271]) +1 similar issue
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-apl4/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-indfb-plflip-blt.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-indfb-plflip-blt:
- shard-tglb: NOTRUN -> [SKIP][67] ([fdo#109280] / [fdo#111825]) +7 similar issues
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb8/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-indfb-plflip-blt.html
* igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d:
- shard-skl: NOTRUN -> [SKIP][68] ([fdo#109271] / [i915#533])
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl6/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d.html
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-c:
- shard-kbl: [PASS][69] -> [INCOMPLETE][70] ([i915#2828])
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-kbl1/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-c.html
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-kbl4/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-c.html
* igt@kms_plane_alpha_blend@pipe-a-alpha-transparent-fb:
- shard-skl: NOTRUN -> [FAIL][71] ([i915#265])
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl3/igt@kms_plane_alpha_blend@pipe-a-alpha-transparent-fb.html
* igt@kms_plane_alpha_blend@pipe-a-coverage-7efc:
- shard-skl: [PASS][72] -> [FAIL][73] ([fdo#108145] / [i915#265])
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-skl4/igt@kms_plane_alpha_blend@pipe-a-coverage-7efc.html
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl3/igt@kms_plane_alpha_blend@pipe-a-coverage-7efc.html
* igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min:
- shard-skl: NOTRUN -> [FAIL][74] ([fdo#108145] / [i915#265]) +3 similar issues
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl6/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-min.html
* igt@kms_plane_lowres@pipe-d-tiling-yf:
- shard-tglb: NOTRUN -> [SKIP][75] ([fdo#111615] / [fdo#112054])
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb8/igt@kms_plane_lowres@pipe-d-tiling-yf.html
* igt@kms_psr2_sf@overlay-plane-update-continuous-sf:
- shard-skl: NOTRUN -> [SKIP][76] ([fdo#109271] / [i915#658]) +1 similar issue
[76]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl7/igt@kms_psr2_sf@overlay-plane-update-continuous-sf.html
* igt@kms_psr@psr2_cursor_blt:
- shard-iclb: [PASS][77] -> [SKIP][78] ([fdo#109441]) +1 similar issue
[77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-iclb2/igt@kms_psr@psr2_cursor_blt.html
[78]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb6/igt@kms_psr@psr2_cursor_blt.html
* igt@kms_psr@psr2_primary_blt:
- shard-tglb: NOTRUN -> [FAIL][79] ([i915#132] / [i915#3467])
[79]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb8/igt@kms_psr@psr2_primary_blt.html
* igt@kms_setmode@basic:
- shard-glk: [PASS][80] -> [FAIL][81] ([i915#31])
[80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-glk3/igt@kms_setmode@basic.html
[81]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-glk3/igt@kms_setmode@basic.html
* igt@kms_vrr@flip-suspend:
- shard-tglb: NOTRUN -> [SKIP][82] ([fdo#109502])
[82]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb8/igt@kms_vrr@flip-suspend.html
* igt@nouveau_crc@pipe-b-source-rg:
- shard-tglb: NOTRUN -> [SKIP][83] ([i915#2530])
[83]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb8/igt@nouveau_crc@pipe-b-source-rg.html
* igt@prime_nv_api@i915_nv_import_twice_check_flink_name:
- shard-iclb: NOTRUN -> [SKIP][84] ([fdo#109291])
[84]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb5/igt@prime_nv_api@i915_nv_import_twice_check_flink_name.html
* igt@prime_nv_api@i915_nv_reimport_twice_check_flink_name:
- shard-tglb: NOTRUN -> [SKIP][85] ([fdo#109291]) +2 similar issues
[85]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb8/igt@prime_nv_api@i915_nv_reimport_twice_check_flink_name.html
* igt@sysfs_clients@fair-0:
- shard-skl: NOTRUN -> [SKIP][86] ([fdo#109271] / [i915#2994]) +4 similar issues
[86]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl5/igt@sysfs_clients@fair-0.html
* igt@sysfs_clients@fair-3:
- shard-tglb: NOTRUN -> [SKIP][87] ([i915#2994])
[87]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb8/igt@sysfs_clients@fair-3.html
#### Possible fixes ####
* igt@gem_exec_balancer@parallel-keep-submit-fence:
- shard-iclb: [SKIP][88] ([i915#4525]) -> [PASS][89] +1 similar issue
[88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-iclb8/igt@gem_exec_balancer@parallel-keep-submit-fence.html
[89]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb2/igt@gem_exec_balancer@parallel-keep-submit-fence.html
* igt@gem_exec_capture@pi@rcs0:
- shard-skl: [INCOMPLETE][90] ([i915#4547]) -> [PASS][91]
[90]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-skl4/igt@gem_exec_capture@pi@rcs0.html
[91]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl9/igt@gem_exec_capture@pi@rcs0.html
* igt@gem_exec_fair@basic-none-share@rcs0:
- shard-tglb: [FAIL][92] ([i915#2842]) -> [PASS][93]
[92]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-tglb6/igt@gem_exec_fair@basic-none-share@rcs0.html
[93]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-tglb5/igt@gem_exec_fair@basic-none-share@rcs0.html
* igt@gem_exec_fair@basic-none@vcs0:
- shard-kbl: [FAIL][94] ([i915#2842]) -> [PASS][95]
[94]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-kbl3/igt@gem_exec_fair@basic-none@vcs0.html
[95]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-kbl3/igt@gem_exec_fair@basic-none@vcs0.html
- shard-glk: [FAIL][96] ([i915#2842]) -> [PASS][97]
[96]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-glk8/igt@gem_exec_fair@basic-none@vcs0.html
[97]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-glk9/igt@gem_exec_fair@basic-none@vcs0.html
* igt@gem_userptr_blits@huge-split:
- shard-snb: [FAIL][98] ([i915#4790]) -> [PASS][99]
[98]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-snb6/igt@gem_userptr_blits@huge-split.html
[99]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-snb6/igt@gem_userptr_blits@huge-split.html
* igt@gem_workarounds@suspend-resume-context:
- shard-apl: [DMESG-WARN][100] ([i915#180]) -> [PASS][101] +1 similar issue
[100]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-apl6/igt@gem_workarounds@suspend-resume-context.html
[101]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-apl4/igt@gem_workarounds@suspend-resume-context.html
* igt@i915_pm_backlight@fade_with_suspend:
- shard-skl: [INCOMPLETE][102] -> [PASS][103]
[102]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-skl6/igt@i915_pm_backlight@fade_with_suspend.html
[103]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl8/igt@i915_pm_backlight@fade_with_suspend.html
* igt@kms_big_fb@linear-32bpp-rotate-180:
- shard-glk: [DMESG-WARN][104] ([i915#118]) -> [PASS][105] +1 similar issue
[104]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-glk2/igt@kms_big_fb@linear-32bpp-rotate-180.html
[105]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-glk6/igt@kms_big_fb@linear-32bpp-rotate-180.html
* igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
- shard-iclb: [FAIL][106] ([i915#2346]) -> [PASS][107]
[106]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-iclb7/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
[107]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb4/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
- shard-skl: [FAIL][108] ([i915#2346] / [i915#533]) -> [PASS][109]
[108]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-skl7/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
[109]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl7/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
* igt@kms_flip@2x-plain-flip-ts-check@ab-hdmi-a1-hdmi-a2:
- shard-glk: [FAIL][110] ([i915#2122]) -> [PASS][111]
[110]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-glk9/igt@kms_flip@2x-plain-flip-ts-check@ab-hdmi-a1-hdmi-a2.html
[111]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-glk8/igt@kms_flip@2x-plain-flip-ts-check@ab-hdmi-a1-hdmi-a2.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-move:
- shard-glk: [FAIL][112] ([i915#2546]) -> [PASS][113]
[112]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-glk6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-move.html
[113]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-glk1/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-move.html
* igt@kms_hdr@bpc-switch:
- shard-skl: [FAIL][114] ([i915#1188]) -> [PASS][115]
[114]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-skl9/igt@kms_hdr@bpc-switch.html
[115]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl10/igt@kms_hdr@bpc-switch.html
* igt@kms_psr@psr2_sprite_mmap_gtt:
- shard-iclb: [SKIP][116] ([fdo#109441]) -> [PASS][117] +1 similar issue
[116]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-iclb8/igt@kms_psr@psr2_sprite_mmap_gtt.html
[117]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb2/igt@kms_psr@psr2_sprite_mmap_gtt.html
* igt@perf@polling-parameterized:
- shard-skl: [FAIL][118] ([i915#1542]) -> [PASS][119]
[118]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-skl10/igt@perf@polling-parameterized.html
[119]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl8/igt@perf@polling-parameterized.html
#### Warnings ####
* igt@gem_exec_balancer@parallel-ordering:
- shard-iclb: [SKIP][120] ([i915#4525]) -> [FAIL][121] ([i915#4916])
[120]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-iclb7/igt@gem_exec_balancer@parallel-ordering.html
[121]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb4/igt@gem_exec_balancer@parallel-ordering.html
* igt@i915_pm_dc@dc3co-vpb-simulation:
- shard-iclb: [SKIP][122] ([i915#658]) -> [SKIP][123] ([i915#588])
[122]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-iclb8/igt@i915_pm_dc@dc3co-vpb-simulation.html
[123]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb2/igt@i915_pm_dc@dc3co-vpb-simulation.html
* igt@i915_pm_rc6_residency@rc6-fence:
- shard-iclb: [WARN][124] ([i915#2684]) -> [WARN][125] ([i915#1804] / [i915#2684])
[124]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-iclb1/igt@i915_pm_rc6_residency@rc6-fence.html
[125]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-iclb6/igt@i915_pm_rc6_residency@rc6-fence.html
* igt@runner@aborted:
- shard-kbl: ([FAIL][126], [FAIL][127], [FAIL][128], [FAIL][129], [FAIL][130]) ([i915#180] / [i915#1814] / [i915#3002] / [i915#4312]) -> ([FAIL][131], [FAIL][132], [FAIL][133], [FAIL][134], [FAIL][135], [FAIL][136], [FAIL][137], [FAIL][138], [FAIL][139], [FAIL][140], [FAIL][141], [FAIL][142]) ([i915#1436] / [i915#180] / [i915#1814] / [i915#4312] / [i915#602] / [i915#92])
[126]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-kbl4/igt@runner@aborted.html
[127]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-kbl7/igt@runner@aborted.html
[128]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-kbl3/igt@runner@aborted.html
[129]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-kbl7/igt@runner@aborted.html
[130]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-kbl7/igt@runner@aborted.html
[131]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-kbl7/igt@runner@aborted.html
[132]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-kbl7/igt@runner@aborted.html
[133]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-kbl6/igt@runner@aborted.html
[134]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-kbl6/igt@runner@aborted.html
[135]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-kbl7/igt@runner@aborted.html
[136]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-kbl7/igt@runner@aborted.html
[137]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-kbl4/igt@runner@aborted.html
[138]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-kbl7/igt@runner@aborted.html
[139]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-kbl1/igt@runner@aborted.html
[140]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-kbl1/igt@runner@aborted.html
[141]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-kbl1/igt@runner@aborted.html
[142]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-kbl1/igt@runner@aborted.html
- shard-skl: ([FAIL][143], [FAIL][144], [FAIL][145]) ([i915#3002] / [i915#4312]) -> ([FAIL][146], [FAIL][147], [FAIL][148], [FAIL][149], [FAIL][150]) ([i915#2029] / [i915#3002] / [i915#4312])
[143]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-skl4/igt@runner@aborted.html
[144]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-skl10/igt@runner@aborted.html
[145]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11075/shard-skl4/igt@runner@aborted.html
[146]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl9/igt@runner@aborted.html
[147]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl3/igt@runner@aborted.html
[148]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/shard-skl9/igt@runner@aborted.html
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_21991/index.html
[-- Attachment #2: Type: text/html, Size: 33745 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] drm/i915/guc: Ensure multi-lrc fini breadcrumb math is correct
2022-01-13 5:59 ` [Intel-gfx] " Matthew Brost
@ 2022-01-19 0:48 ` John Harrison
-1 siblings, 0 replies; 7+ messages in thread
From: John Harrison @ 2022-01-19 0:48 UTC (permalink / raw)
To: Matthew Brost, intel-gfx, dri-devel; +Cc: daniele.ceraolospurio
On 1/12/2022 21:59, Matthew Brost wrote:
> Realized that the GuC multi-lrc fini breadcrumb emit code is very
> delicate as the math this code does relies on functions it calls to emit
> a certain number of DWs. Add a few GEM_BUG_ONs to assert the math is
> correct.
>
> Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Looks good. There was a checkpatch warning about blank lines. With that
fixed:
Reviewed-by: John Harrison <John.C.Harrison@Intel.com>
> ---
> .../gpu/drm/i915/gt/uc/intel_guc_submission.c | 32 +++++++++++++++----
> 1 file changed, 26 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
> index 3ae92260f8224..d562d85f96871 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
> @@ -4493,27 +4493,31 @@ static inline bool skip_handshake(struct i915_request *rq)
> return test_bit(I915_FENCE_FLAG_SKIP_PARALLEL, &rq->fence.flags);
> }
>
> +#define NON_SKIP_LEN 6
> static u32 *
> emit_fini_breadcrumb_parent_no_preempt_mid_batch(struct i915_request *rq,
> u32 *cs)
> {
> struct intel_context *ce = rq->context;
> + __maybe_unused u32 *before_fini_breadcrumb_user_interrupt_cs;
> + __maybe_unused u32 *start_fini_breadcrumb_cs = cs;
>
> GEM_BUG_ON(!intel_context_is_parent(ce));
>
> if (unlikely(skip_handshake(rq))) {
> /*
> * NOP everything in __emit_fini_breadcrumb_parent_no_preempt_mid_batch,
> - * the -6 comes from the length of the emits below.
> + * the NON_SKIP_LEN comes from the length of the emits below.
> */
> memset(cs, 0, sizeof(u32) *
> - (ce->engine->emit_fini_breadcrumb_dw - 6));
> - cs += ce->engine->emit_fini_breadcrumb_dw - 6;
> + (ce->engine->emit_fini_breadcrumb_dw - NON_SKIP_LEN));
> + cs += ce->engine->emit_fini_breadcrumb_dw - NON_SKIP_LEN;
> } else {
> cs = __emit_fini_breadcrumb_parent_no_preempt_mid_batch(rq, cs);
> }
>
> /* Emit fini breadcrumb */
> + before_fini_breadcrumb_user_interrupt_cs = cs;
> cs = gen8_emit_ggtt_write(cs,
> rq->fence.seqno,
> i915_request_active_timeline(rq)->hwsp_offset,
> @@ -4523,6 +4527,12 @@ emit_fini_breadcrumb_parent_no_preempt_mid_batch(struct i915_request *rq,
> *cs++ = MI_USER_INTERRUPT;
> *cs++ = MI_NOOP;
>
> + /* Ensure our math for skip + emit is correct */
> + GEM_BUG_ON(before_fini_breadcrumb_user_interrupt_cs + NON_SKIP_LEN !=
> + cs);
> + GEM_BUG_ON(start_fini_breadcrumb_cs +
> + ce->engine->emit_fini_breadcrumb_dw != cs);
> +
> rq->tail = intel_ring_offset(rq, cs);
>
> return cs;
> @@ -4565,22 +4575,25 @@ emit_fini_breadcrumb_child_no_preempt_mid_batch(struct i915_request *rq,
> u32 *cs)
> {
> struct intel_context *ce = rq->context;
> + __maybe_unused u32 *before_fini_breadcrumb_user_interrupt_cs;
> + __maybe_unused u32 *start_fini_breadcrumb_cs = cs;
>
> GEM_BUG_ON(!intel_context_is_child(ce));
>
> if (unlikely(skip_handshake(rq))) {
> /*
> * NOP everything in __emit_fini_breadcrumb_child_no_preempt_mid_batch,
> - * the -6 comes from the length of the emits below.
> + * the NON_SKIP_LEN comes from the length of the emits below.
> */
> memset(cs, 0, sizeof(u32) *
> - (ce->engine->emit_fini_breadcrumb_dw - 6));
> - cs += ce->engine->emit_fini_breadcrumb_dw - 6;
> + (ce->engine->emit_fini_breadcrumb_dw - NON_SKIP_LEN));
> + cs += ce->engine->emit_fini_breadcrumb_dw - NON_SKIP_LEN;
> } else {
> cs = __emit_fini_breadcrumb_child_no_preempt_mid_batch(rq, cs);
> }
>
> /* Emit fini breadcrumb */
> + before_fini_breadcrumb_user_interrupt_cs = cs;
> cs = gen8_emit_ggtt_write(cs,
> rq->fence.seqno,
> i915_request_active_timeline(rq)->hwsp_offset,
> @@ -4590,10 +4603,17 @@ emit_fini_breadcrumb_child_no_preempt_mid_batch(struct i915_request *rq,
> *cs++ = MI_USER_INTERRUPT;
> *cs++ = MI_NOOP;
>
> + /* Ensure our math for skip + emit is correct */
> + GEM_BUG_ON(before_fini_breadcrumb_user_interrupt_cs + NON_SKIP_LEN !=
> + cs);
> + GEM_BUG_ON(start_fini_breadcrumb_cs +
> + ce->engine->emit_fini_breadcrumb_dw != cs);
> +
> rq->tail = intel_ring_offset(rq, cs);
>
> return cs;
> }
> +#undef NON_SKIP_LEN
>
> static struct intel_context *
> guc_create_virtual(struct intel_engine_cs **siblings, unsigned int count,
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [Intel-gfx] [PATCH] drm/i915/guc: Ensure multi-lrc fini breadcrumb math is correct
@ 2022-01-19 0:48 ` John Harrison
0 siblings, 0 replies; 7+ messages in thread
From: John Harrison @ 2022-01-19 0:48 UTC (permalink / raw)
To: Matthew Brost, intel-gfx, dri-devel
On 1/12/2022 21:59, Matthew Brost wrote:
> Realized that the GuC multi-lrc fini breadcrumb emit code is very
> delicate as the math this code does relies on functions it calls to emit
> a certain number of DWs. Add a few GEM_BUG_ONs to assert the math is
> correct.
>
> Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Looks good. There was a checkpatch warning about blank lines. With that
fixed:
Reviewed-by: John Harrison <John.C.Harrison@Intel.com>
> ---
> .../gpu/drm/i915/gt/uc/intel_guc_submission.c | 32 +++++++++++++++----
> 1 file changed, 26 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c b/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
> index 3ae92260f8224..d562d85f96871 100644
> --- a/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
> +++ b/drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
> @@ -4493,27 +4493,31 @@ static inline bool skip_handshake(struct i915_request *rq)
> return test_bit(I915_FENCE_FLAG_SKIP_PARALLEL, &rq->fence.flags);
> }
>
> +#define NON_SKIP_LEN 6
> static u32 *
> emit_fini_breadcrumb_parent_no_preempt_mid_batch(struct i915_request *rq,
> u32 *cs)
> {
> struct intel_context *ce = rq->context;
> + __maybe_unused u32 *before_fini_breadcrumb_user_interrupt_cs;
> + __maybe_unused u32 *start_fini_breadcrumb_cs = cs;
>
> GEM_BUG_ON(!intel_context_is_parent(ce));
>
> if (unlikely(skip_handshake(rq))) {
> /*
> * NOP everything in __emit_fini_breadcrumb_parent_no_preempt_mid_batch,
> - * the -6 comes from the length of the emits below.
> + * the NON_SKIP_LEN comes from the length of the emits below.
> */
> memset(cs, 0, sizeof(u32) *
> - (ce->engine->emit_fini_breadcrumb_dw - 6));
> - cs += ce->engine->emit_fini_breadcrumb_dw - 6;
> + (ce->engine->emit_fini_breadcrumb_dw - NON_SKIP_LEN));
> + cs += ce->engine->emit_fini_breadcrumb_dw - NON_SKIP_LEN;
> } else {
> cs = __emit_fini_breadcrumb_parent_no_preempt_mid_batch(rq, cs);
> }
>
> /* Emit fini breadcrumb */
> + before_fini_breadcrumb_user_interrupt_cs = cs;
> cs = gen8_emit_ggtt_write(cs,
> rq->fence.seqno,
> i915_request_active_timeline(rq)->hwsp_offset,
> @@ -4523,6 +4527,12 @@ emit_fini_breadcrumb_parent_no_preempt_mid_batch(struct i915_request *rq,
> *cs++ = MI_USER_INTERRUPT;
> *cs++ = MI_NOOP;
>
> + /* Ensure our math for skip + emit is correct */
> + GEM_BUG_ON(before_fini_breadcrumb_user_interrupt_cs + NON_SKIP_LEN !=
> + cs);
> + GEM_BUG_ON(start_fini_breadcrumb_cs +
> + ce->engine->emit_fini_breadcrumb_dw != cs);
> +
> rq->tail = intel_ring_offset(rq, cs);
>
> return cs;
> @@ -4565,22 +4575,25 @@ emit_fini_breadcrumb_child_no_preempt_mid_batch(struct i915_request *rq,
> u32 *cs)
> {
> struct intel_context *ce = rq->context;
> + __maybe_unused u32 *before_fini_breadcrumb_user_interrupt_cs;
> + __maybe_unused u32 *start_fini_breadcrumb_cs = cs;
>
> GEM_BUG_ON(!intel_context_is_child(ce));
>
> if (unlikely(skip_handshake(rq))) {
> /*
> * NOP everything in __emit_fini_breadcrumb_child_no_preempt_mid_batch,
> - * the -6 comes from the length of the emits below.
> + * the NON_SKIP_LEN comes from the length of the emits below.
> */
> memset(cs, 0, sizeof(u32) *
> - (ce->engine->emit_fini_breadcrumb_dw - 6));
> - cs += ce->engine->emit_fini_breadcrumb_dw - 6;
> + (ce->engine->emit_fini_breadcrumb_dw - NON_SKIP_LEN));
> + cs += ce->engine->emit_fini_breadcrumb_dw - NON_SKIP_LEN;
> } else {
> cs = __emit_fini_breadcrumb_child_no_preempt_mid_batch(rq, cs);
> }
>
> /* Emit fini breadcrumb */
> + before_fini_breadcrumb_user_interrupt_cs = cs;
> cs = gen8_emit_ggtt_write(cs,
> rq->fence.seqno,
> i915_request_active_timeline(rq)->hwsp_offset,
> @@ -4590,10 +4603,17 @@ emit_fini_breadcrumb_child_no_preempt_mid_batch(struct i915_request *rq,
> *cs++ = MI_USER_INTERRUPT;
> *cs++ = MI_NOOP;
>
> + /* Ensure our math for skip + emit is correct */
> + GEM_BUG_ON(before_fini_breadcrumb_user_interrupt_cs + NON_SKIP_LEN !=
> + cs);
> + GEM_BUG_ON(start_fini_breadcrumb_cs +
> + ce->engine->emit_fini_breadcrumb_dw != cs);
> +
> rq->tail = intel_ring_offset(rq, cs);
>
> return cs;
> }
> +#undef NON_SKIP_LEN
>
> static struct intel_context *
> guc_create_virtual(struct intel_engine_cs **siblings, unsigned int count,
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2022-01-19 0:48 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-01-13 5:59 [PATCH] drm/i915/guc: Ensure multi-lrc fini breadcrumb math is correct Matthew Brost
2022-01-13 5:59 ` [Intel-gfx] " Matthew Brost
2022-01-13 6:16 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for " Patchwork
2022-01-13 6:43 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2022-01-13 8:04 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
2022-01-19 0:48 ` [PATCH] " John Harrison
2022-01-19 0:48 ` [Intel-gfx] " John Harrison
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.