* [Intel-gfx] [PATCH v3] drm/i915: implement async_flip mode per plane tracking
@ 2023-01-27 7:34 Andrzej Hajda
2023-01-27 7:58 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: implement async_flip mode per plane tracking (rev4) Patchwork
` (3 more replies)
0 siblings, 4 replies; 5+ messages in thread
From: Andrzej Hajda @ 2023-01-27 7:34 UTC (permalink / raw)
To: intel-gfx; +Cc: Andrzej Hajda, Rodrigo Vivi
Current implementation of async flip w/a relies on assumption that
previous atomic commit contains valid information if async_flip is still
enabled on the plane. It is incorrect. If previous commit did not modify
the plane its state->uapi.async_flip can be false. As a result DMAR/PIPE
errors can be observed:
i915 0000:00:02.0: [drm] *ERROR* Fault errors on pipe A: 0x00000080
i915 0000:00:02.0: [drm] *ERROR* Fault errors on pipe A: 0x00000080
DMAR: DRHD: handling fault status reg 2
DMAR: [DMA Read NO_PASID] Request device [00:02.0] fault addr 0x0 [fault reason 0x06] PTE Read access is not set
v2: update async_flip_planes in more reliable places (Ville)
v3: reset async_flip_planes and do_async_flip in more scenarios (Ville)
Signed-off-by: Andrzej Hajda <andrzej.hajda@intel.com>
---
drivers/gpu/drm/i915/display/intel_atomic_plane.c | 5 ++++-
drivers/gpu/drm/i915/display/intel_color.c | 3 +++
drivers/gpu/drm/i915/display/intel_display.c | 9 ++++++---
drivers/gpu/drm/i915/display/intel_display_types.h | 3 +++
drivers/gpu/drm/i915/display/skl_watermark.c | 5 +++++
5 files changed, 21 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/i915/display/intel_atomic_plane.c b/drivers/gpu/drm/i915/display/intel_atomic_plane.c
index 1409bcfb6fd3d9..3bd8f7eb75a60b 100644
--- a/drivers/gpu/drm/i915/display/intel_atomic_plane.c
+++ b/drivers/gpu/drm/i915/display/intel_atomic_plane.c
@@ -363,6 +363,7 @@ void intel_plane_set_invisible(struct intel_crtc_state *crtc_state,
crtc_state->scaled_planes &= ~BIT(plane->id);
crtc_state->nv12_planes &= ~BIT(plane->id);
crtc_state->c8_planes &= ~BIT(plane->id);
+ crtc_state->async_flip_planes &= ~BIT(plane->id);
crtc_state->data_rate[plane->id] = 0;
crtc_state->data_rate_y[plane->id] = 0;
crtc_state->rel_data_rate[plane->id] = 0;
@@ -582,8 +583,10 @@ static int intel_plane_atomic_calc_changes(const struct intel_crtc_state *old_cr
intel_plane_is_scaled(new_plane_state))))
new_crtc_state->disable_lp_wm = true;
- if (intel_plane_do_async_flip(plane, old_crtc_state, new_crtc_state))
+ if (intel_plane_do_async_flip(plane, old_crtc_state, new_crtc_state)) {
new_crtc_state->do_async_flip = true;
+ new_crtc_state->async_flip_planes |= BIT(plane->id);
+ }
return 0;
}
diff --git a/drivers/gpu/drm/i915/display/intel_color.c b/drivers/gpu/drm/i915/display/intel_color.c
index 8d97c299e6577b..5162b2b4ede080 100644
--- a/drivers/gpu/drm/i915/display/intel_color.c
+++ b/drivers/gpu/drm/i915/display/intel_color.c
@@ -1506,6 +1506,9 @@ intel_color_add_affected_planes(struct intel_crtc_state *new_crtc_state)
new_crtc_state->disable_cxsr = true;
}
+ new_crtc_state->do_async_flip = false;
+ new_crtc_state->async_flip_planes = 0;
+
return 0;
}
diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
index 717ca3d7890d34..8581b32c9cf0eb 100644
--- a/drivers/gpu/drm/i915/display/intel_display.c
+++ b/drivers/gpu/drm/i915/display/intel_display.c
@@ -1252,7 +1252,8 @@ static void intel_crtc_async_flip_disable_wa(struct intel_atomic_state *state,
intel_atomic_get_old_crtc_state(state, crtc);
const struct intel_crtc_state *new_crtc_state =
intel_atomic_get_new_crtc_state(state, crtc);
- u8 update_planes = new_crtc_state->update_planes;
+ u8 disable_async_flip_planes = old_crtc_state->async_flip_planes &
+ ~new_crtc_state->async_flip_planes;
const struct intel_plane_state *old_plane_state;
struct intel_plane *plane;
bool need_vbl_wait = false;
@@ -1261,7 +1262,7 @@ static void intel_crtc_async_flip_disable_wa(struct intel_atomic_state *state,
for_each_old_intel_plane_in_state(state, plane, old_plane_state, i) {
if (plane->need_async_flip_disable_wa &&
plane->pipe == crtc->pipe &&
- update_planes & BIT(plane->id)) {
+ disable_async_flip_planes & BIT(plane->id)) {
/*
* Apart from the async flip bit we want to
* preserve the old state for the plane.
@@ -1378,7 +1379,7 @@ static void intel_pre_plane_update(struct intel_atomic_state *state,
* WA for platforms where async address update enable bit
* is double buffered and only latched at start of vblank.
*/
- if (old_crtc_state->uapi.async_flip && !new_crtc_state->uapi.async_flip)
+ if (old_crtc_state->async_flip_planes & ~new_crtc_state->async_flip_planes)
intel_crtc_async_flip_disable_wa(state, crtc);
}
@@ -5939,6 +5940,8 @@ int intel_modeset_all_pipes(struct intel_atomic_state *state,
return ret;
crtc_state->update_planes |= crtc_state->active_planes;
+ crtc_state->do_async_flip = false;
+ crtc_state->async_flip_planes = 0;
}
return 0;
diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h
index 54c517ca9632fb..9ccae7a4602009 100644
--- a/drivers/gpu/drm/i915/display/intel_display_types.h
+++ b/drivers/gpu/drm/i915/display/intel_display_types.h
@@ -1249,6 +1249,9 @@ struct intel_crtc_state {
/* bitmask of planes that will be updated during the commit */
u8 update_planes;
+ /* bitmask of planes with async flip active */
+ u8 async_flip_planes;
+
u8 framestart_delay; /* 1-4 */
u8 msa_timing_delay; /* 0-3 */
diff --git a/drivers/gpu/drm/i915/display/skl_watermark.c b/drivers/gpu/drm/i915/display/skl_watermark.c
index ae4e9e680c2e30..eb5e07647a348f 100644
--- a/drivers/gpu/drm/i915/display/skl_watermark.c
+++ b/drivers/gpu/drm/i915/display/skl_watermark.c
@@ -2397,6 +2397,8 @@ skl_ddb_add_affected_planes(const struct intel_crtc_state *old_crtc_state,
return PTR_ERR(plane_state);
new_crtc_state->update_planes |= BIT(plane_id);
+ new_crtc_state->do_async_flip = false;
+ new_crtc_state->async_flip_planes = 0;
}
return 0;
@@ -2756,6 +2758,9 @@ static int skl_wm_add_affected_planes(struct intel_atomic_state *state,
new_crtc_state->update_planes |= BIT(plane_id);
}
+ new_crtc_state->do_async_flip = false;
+ new_crtc_state->async_flip_planes = 0;
+
return 0;
}
--
2.34.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: implement async_flip mode per plane tracking (rev4)
2023-01-27 7:34 [Intel-gfx] [PATCH v3] drm/i915: implement async_flip mode per plane tracking Andrzej Hajda
@ 2023-01-27 7:58 ` Patchwork
2023-01-27 8:19 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
` (2 subsequent siblings)
3 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2023-01-27 7:58 UTC (permalink / raw)
To: Andrzej Hajda; +Cc: intel-gfx
== Series Details ==
Series: drm/i915: implement async_flip mode per plane tracking (rev4)
URL : https://patchwork.freedesktop.org/series/108371/
State : warning
== Summary ==
Error: dim checkpatch failed
a3aaa465a825 drm/i915: implement async_flip mode per plane tracking
-:14: WARNING:COMMIT_LOG_LONG_LINE: Possible unwrapped commit description (prefer a maximum 75 chars per line)
#14:
DMAR: [DMA Read NO_PASID] Request device [00:02.0] fault addr 0x0 [fault reason 0x06] PTE Read access is not set
total: 0 errors, 1 warnings, 0 checks, 86 lines checked
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Intel-gfx] ✓ Fi.CI.BAT: success for drm/i915: implement async_flip mode per plane tracking (rev4)
2023-01-27 7:34 [Intel-gfx] [PATCH v3] drm/i915: implement async_flip mode per plane tracking Andrzej Hajda
2023-01-27 7:58 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: implement async_flip mode per plane tracking (rev4) Patchwork
@ 2023-01-27 8:19 ` Patchwork
2023-01-27 9:54 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
2023-01-27 14:36 ` [Intel-gfx] [PATCH v3] drm/i915: implement async_flip mode per plane tracking Ville Syrjälä
3 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2023-01-27 8:19 UTC (permalink / raw)
To: Andrzej Hajda; +Cc: intel-gfx
[-- Attachment #1: Type: text/plain, Size: 5165 bytes --]
== Series Details ==
Series: drm/i915: implement async_flip mode per plane tracking (rev4)
URL : https://patchwork.freedesktop.org/series/108371/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_12651 -> Patchwork_108371v4
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/index.html
Participating hosts (25 -> 24)
------------------------------
Additional (1): bat-atsm-1
Missing (2): fi-kbl-soraka fi-snb-2520m
Known issues
------------
Here are the changes found in Patchwork_108371v4 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@i915_selftest@live@dmabuf:
- fi-bsw-nick: [PASS][1] -> [DMESG-FAIL][2] ([i915#7562])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/fi-bsw-nick/igt@i915_selftest@live@dmabuf.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/fi-bsw-nick/igt@i915_selftest@live@dmabuf.html
* igt@i915_selftest@live@gt_heartbeat:
- fi-skl-6600u: [PASS][3] -> [DMESG-FAIL][4] ([i915#5334])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/fi-skl-6600u/igt@i915_selftest@live@gt_heartbeat.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/fi-skl-6600u/igt@i915_selftest@live@gt_heartbeat.html
* igt@i915_suspend@basic-s2idle-without-i915:
- fi-apl-guc: [PASS][5] -> [DMESG-WARN][6] ([i915#1982])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/fi-apl-guc/igt@i915_suspend@basic-s2idle-without-i915.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/fi-apl-guc/igt@i915_suspend@basic-s2idle-without-i915.html
#### Possible fixes ####
* igt@i915_selftest@live@migrate:
- {bat-dg2-11}: [DMESG-WARN][7] ([i915#7699]) -> [PASS][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/bat-dg2-11/igt@i915_selftest@live@migrate.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/bat-dg2-11/igt@i915_selftest@live@migrate.html
* igt@i915_selftest@live@workarounds:
- {bat-adlp-9}: [INCOMPLETE][9] ([i915#4983] / [i915#7677]) -> [PASS][10]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/bat-adlp-9/igt@i915_selftest@live@workarounds.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/bat-adlp-9/igt@i915_selftest@live@workarounds.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
[fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#1836]: https://gitlab.freedesktop.org/drm/intel/issues/1836
[i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
[i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
[i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
[i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
[i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
[i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
[i915#5334]: https://gitlab.freedesktop.org/drm/intel/issues/5334
[i915#6077]: https://gitlab.freedesktop.org/drm/intel/issues/6077
[i915#6078]: https://gitlab.freedesktop.org/drm/intel/issues/6078
[i915#6093]: https://gitlab.freedesktop.org/drm/intel/issues/6093
[i915#6094]: https://gitlab.freedesktop.org/drm/intel/issues/6094
[i915#6166]: https://gitlab.freedesktop.org/drm/intel/issues/6166
[i915#6257]: https://gitlab.freedesktop.org/drm/intel/issues/6257
[i915#6311]: https://gitlab.freedesktop.org/drm/intel/issues/6311
[i915#6367]: https://gitlab.freedesktop.org/drm/intel/issues/6367
[i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621
[i915#6645]: https://gitlab.freedesktop.org/drm/intel/issues/6645
[i915#6997]: https://gitlab.freedesktop.org/drm/intel/issues/6997
[i915#7357]: https://gitlab.freedesktop.org/drm/intel/issues/7357
[i915#7562]: https://gitlab.freedesktop.org/drm/intel/issues/7562
[i915#7677]: https://gitlab.freedesktop.org/drm/intel/issues/7677
[i915#7699]: https://gitlab.freedesktop.org/drm/intel/issues/7699
[i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
[i915#7932]: https://gitlab.freedesktop.org/drm/intel/issues/7932
Build changes
-------------
* Linux: CI_DRM_12651 -> Patchwork_108371v4
CI-20190529: 20190529
CI_DRM_12651: fce901b03b34c10947c3dd53b338032f6d22812f @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_7137: 5f7ea985ac0828bec5e1bbc101b7931bd7fb62e3 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
Patchwork_108371v4: fce901b03b34c10947c3dd53b338032f6d22812f @ git://anongit.freedesktop.org/gfx-ci/linux
### Linux commits
75ebb1fb82b5 drm/i915: implement async_flip mode per plane tracking
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/index.html
[-- Attachment #2: Type: text/html, Size: 4406 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* [Intel-gfx] ✗ Fi.CI.IGT: failure for drm/i915: implement async_flip mode per plane tracking (rev4)
2023-01-27 7:34 [Intel-gfx] [PATCH v3] drm/i915: implement async_flip mode per plane tracking Andrzej Hajda
2023-01-27 7:58 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: implement async_flip mode per plane tracking (rev4) Patchwork
2023-01-27 8:19 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
@ 2023-01-27 9:54 ` Patchwork
2023-01-27 14:36 ` [Intel-gfx] [PATCH v3] drm/i915: implement async_flip mode per plane tracking Ville Syrjälä
3 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2023-01-27 9:54 UTC (permalink / raw)
To: Andrzej Hajda; +Cc: intel-gfx
[-- Attachment #1: Type: text/plain, Size: 27106 bytes --]
== Series Details ==
Series: drm/i915: implement async_flip mode per plane tracking (rev4)
URL : https://patchwork.freedesktop.org/series/108371/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_12651_full -> Patchwork_108371v4_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with Patchwork_108371v4_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in Patchwork_108371v4_full, please notify your bug team to allow them
to document this new failure mode, which will reduce false positives in CI.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/index.html
Participating hosts (10 -> 10)
------------------------------
No changes in participating hosts
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in Patchwork_108371v4_full:
### IGT changes ###
#### Possible regressions ####
* igt@kms_async_flips@test-time-stamp@pipe-a-hdmi-a-1:
- shard-glk: [PASS][1] -> [FAIL][2] +8 similar issues
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-glk4/igt@kms_async_flips@test-time-stamp@pipe-a-hdmi-a-1.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-glk3/igt@kms_async_flips@test-time-stamp@pipe-a-hdmi-a-1.html
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses.
They do not affect the overall result.
* igt@kms_async_flips@async-flip-with-page-flip-events@pipe-b-hdmi-a-1:
- {shard-tglu-10}: [PASS][3] -> [FAIL][4] +3 similar issues
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-tglu-10/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-b-hdmi-a-1.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-tglu-10/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-b-hdmi-a-1.html
* igt@kms_async_flips@async-flip-with-page-flip-events@pipe-b-hdmi-a-4:
- {shard-dg1}: [PASS][5] -> [FAIL][6] +7 similar issues
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-dg1-16/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-b-hdmi-a-4.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-dg1-16/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-b-hdmi-a-4.html
* igt@kms_async_flips@test-time-stamp@pipe-a-hdmi-a-1:
- {shard-tglu}: [PASS][7] -> [FAIL][8] +3 similar issues
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-tglu-4/igt@kms_async_flips@test-time-stamp@pipe-a-hdmi-a-1.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-tglu-1/igt@kms_async_flips@test-time-stamp@pipe-a-hdmi-a-1.html
* igt@kms_big_fb@linear-16bpp-rotate-0:
- {shard-dg1}: [PASS][9] -> [DMESG-WARN][10]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-dg1-15/igt@kms_big_fb@linear-16bpp-rotate-0.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-dg1-13/igt@kms_big_fb@linear-16bpp-rotate-0.html
Known issues
------------
Here are the changes found in Patchwork_108371v4_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_exec_fair@basic-deadline:
- shard-glk: [PASS][11] -> [FAIL][12] ([i915#2846])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-glk7/igt@gem_exec_fair@basic-deadline.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-glk8/igt@gem_exec_fair@basic-deadline.html
* igt@gem_exec_fair@basic-pace@rcs0:
- shard-glk: [PASS][13] -> [FAIL][14] ([i915#2842])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-glk8/igt@gem_exec_fair@basic-pace@rcs0.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-glk5/igt@gem_exec_fair@basic-pace@rcs0.html
* igt@kms_async_flips@alternate-sync-async-flip@pipe-a-hdmi-a-1:
- shard-glk: [PASS][15] -> [FAIL][16] ([i915#2521]) +1 similar issue
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-glk7/igt@kms_async_flips@alternate-sync-async-flip@pipe-a-hdmi-a-1.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-glk7/igt@kms_async_flips@alternate-sync-async-flip@pipe-a-hdmi-a-1.html
* igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions:
- shard-glk: [PASS][17] -> [FAIL][18] ([i915#2346])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-glk2/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-glk3/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions.html
* igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-upscaling@pipe-a-valid-mode:
- shard-glk: NOTRUN -> [SKIP][19] ([fdo#109271]) +5 similar issues
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-glk4/igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-upscaling@pipe-a-valid-mode.html
#### Possible fixes ####
* igt@drm_read@short-buffer-block:
- {shard-rkl}: [SKIP][20] ([i915#4098]) -> [PASS][21]
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-rkl-4/igt@drm_read@short-buffer-block.html
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-rkl-6/igt@drm_read@short-buffer-block.html
* igt@fbdev@read:
- {shard-tglu}: [SKIP][22] ([i915#2582]) -> [PASS][23]
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-tglu-6/igt@fbdev@read.html
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-tglu-8/igt@fbdev@read.html
* igt@gem_ctx_exec@basic-nohangcheck:
- {shard-rkl}: [FAIL][24] ([i915#6268]) -> [PASS][25]
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-rkl-1/igt@gem_ctx_exec@basic-nohangcheck.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-rkl-2/igt@gem_ctx_exec@basic-nohangcheck.html
* igt@gem_eio@in-flight-suspend:
- {shard-rkl}: [FAIL][26] ([fdo#103375]) -> [PASS][27]
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-rkl-4/igt@gem_eio@in-flight-suspend.html
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-rkl-6/igt@gem_eio@in-flight-suspend.html
* igt@gem_eio@suspend:
- {shard-rkl}: [FAIL][28] ([i915#7052]) -> [PASS][29]
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-rkl-3/igt@gem_eio@suspend.html
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-rkl-2/igt@gem_eio@suspend.html
* igt@gem_eio@unwedge-stress:
- {shard-dg1}: [FAIL][30] ([i915#5784]) -> [PASS][31]
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-dg1-15/igt@gem_eio@unwedge-stress.html
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-dg1-18/igt@gem_eio@unwedge-stress.html
* igt@gem_exec_fair@basic-pace-share@rcs0:
- {shard-tglu}: [FAIL][32] ([i915#2842]) -> [PASS][33]
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-tglu-4/igt@gem_exec_fair@basic-pace-share@rcs0.html
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-tglu-1/igt@gem_exec_fair@basic-pace-share@rcs0.html
* igt@gem_exec_reloc@basic-write-read:
- {shard-rkl}: [SKIP][34] ([i915#3281]) -> [PASS][35] +7 similar issues
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-rkl-3/igt@gem_exec_reloc@basic-write-read.html
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-rkl-5/igt@gem_exec_reloc@basic-write-read.html
* igt@gem_pwrite@basic-random:
- {shard-rkl}: [SKIP][36] ([i915#3282]) -> [PASS][37] +1 similar issue
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-rkl-3/igt@gem_pwrite@basic-random.html
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-rkl-5/igt@gem_pwrite@basic-random.html
* igt@gen9_exec_parse@shadow-peek:
- {shard-rkl}: [SKIP][38] ([i915#2527]) -> [PASS][39]
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-rkl-3/igt@gen9_exec_parse@shadow-peek.html
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-rkl-5/igt@gen9_exec_parse@shadow-peek.html
* igt@i915_hangman@gt-engine-error@bcs0:
- {shard-rkl}: [SKIP][40] ([i915#6258]) -> [PASS][41]
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-rkl-5/igt@i915_hangman@gt-engine-error@bcs0.html
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-rkl-2/igt@i915_hangman@gt-engine-error@bcs0.html
* igt@i915_pm_dc@dc6-dpms:
- {shard-rkl}: [SKIP][42] ([i915#3361]) -> [PASS][43]
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-rkl-5/igt@i915_pm_dc@dc6-dpms.html
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-rkl-1/igt@i915_pm_dc@dc6-dpms.html
* igt@i915_pm_rpm@dpms-mode-unset-lpsp:
- {shard-tglu}: [SKIP][44] ([i915#1397]) -> [PASS][45]
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-tglu-6/igt@i915_pm_rpm@dpms-mode-unset-lpsp.html
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-tglu-8/igt@i915_pm_rpm@dpms-mode-unset-lpsp.html
* igt@i915_pm_rpm@drm-resources-equal:
- {shard-rkl}: [SKIP][46] ([fdo#109308]) -> [PASS][47]
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-rkl-1/igt@i915_pm_rpm@drm-resources-equal.html
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-rkl-6/igt@i915_pm_rpm@drm-resources-equal.html
* igt@i915_pm_rpm@modeset-non-lpsp:
- {shard-dg1}: [SKIP][48] ([i915#1397]) -> [PASS][49]
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-dg1-14/igt@i915_pm_rpm@modeset-non-lpsp.html
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-dg1-18/igt@i915_pm_rpm@modeset-non-lpsp.html
* igt@kms_ccs@pipe-b-missing-ccs-buffer-y_tiled_gen12_rc_ccs_cc:
- {shard-rkl}: [SKIP][50] ([i915#1845] / [i915#4098]) -> [PASS][51] +23 similar issues
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-rkl-2/igt@kms_ccs@pipe-b-missing-ccs-buffer-y_tiled_gen12_rc_ccs_cc.html
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-rkl-6/igt@kms_ccs@pipe-b-missing-ccs-buffer-y_tiled_gen12_rc_ccs_cc.html
* igt@kms_fbcon_fbt@psr:
- {shard-rkl}: [SKIP][52] ([fdo#110189] / [i915#3955]) -> [PASS][53]
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-rkl-2/igt@kms_fbcon_fbt@psr.html
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-rkl-6/igt@kms_fbcon_fbt@psr.html
* igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-cpu:
- {shard-tglu}: [SKIP][54] ([i915#1849]) -> [PASS][55] +2 similar issues
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-tglu-6/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-cpu.html
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-tglu-8/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-shrfb-draw-mmap-cpu.html
* igt@kms_frontbuffer_tracking@fbc-tiling-linear:
- {shard-rkl}: [SKIP][56] ([i915#1849] / [i915#4098]) -> [PASS][57] +18 similar issues
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-rkl-4/igt@kms_frontbuffer_tracking@fbc-tiling-linear.html
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-rkl-6/igt@kms_frontbuffer_tracking@fbc-tiling-linear.html
* igt@kms_plane@pixel-format-source-clamping@pipe-b-planes:
- {shard-tglu}: [SKIP][58] ([i915#1849] / [i915#3558]) -> [PASS][59] +1 similar issue
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-tglu-6/igt@kms_plane@pixel-format-source-clamping@pipe-b-planes.html
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-tglu-8/igt@kms_plane@pixel-format-source-clamping@pipe-b-planes.html
* igt@kms_plane@pixel-format@pipe-b-planes:
- {shard-rkl}: [SKIP][60] ([i915#1849]) -> [PASS][61] +5 similar issues
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-rkl-1/igt@kms_plane@pixel-format@pipe-b-planes.html
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-rkl-6/igt@kms_plane@pixel-format@pipe-b-planes.html
* igt@kms_psr@sprite_mmap_cpu:
- {shard-rkl}: [SKIP][62] ([i915#1072]) -> [PASS][63] +1 similar issue
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-rkl-1/igt@kms_psr@sprite_mmap_cpu.html
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-rkl-6/igt@kms_psr@sprite_mmap_cpu.html
* igt@kms_rotation_crc@bad-tiling:
- {shard-tglu}: [SKIP][64] ([i915#7651]) -> [PASS][65] +9 similar issues
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-tglu-6/igt@kms_rotation_crc@bad-tiling.html
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-tglu-8/igt@kms_rotation_crc@bad-tiling.html
* igt@kms_rotation_crc@cursor-rotation-180:
- {shard-tglu}: [SKIP][66] ([i915#1845]) -> [PASS][67]
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-tglu-6/igt@kms_rotation_crc@cursor-rotation-180.html
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-tglu-8/igt@kms_rotation_crc@cursor-rotation-180.html
* igt@kms_universal_plane@cursor-fb-leak-pipe-a:
- {shard-rkl}: [SKIP][68] ([i915#1845] / [i915#4070] / [i915#4098]) -> [PASS][69]
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-rkl-2/igt@kms_universal_plane@cursor-fb-leak-pipe-a.html
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-rkl-6/igt@kms_universal_plane@cursor-fb-leak-pipe-a.html
* igt@kms_universal_plane@universal-plane-pipe-c-sanity:
- {shard-tglu}: [SKIP][70] ([fdo#109274]) -> [PASS][71] +2 similar issues
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-tglu-6/igt@kms_universal_plane@universal-plane-pipe-c-sanity.html
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-tglu-8/igt@kms_universal_plane@universal-plane-pipe-c-sanity.html
* igt@perf@gen12-unprivileged-single-ctx-counters:
- {shard-rkl}: [SKIP][72] ([fdo#109289]) -> [PASS][73]
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-rkl-5/igt@perf@gen12-unprivileged-single-ctx-counters.html
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-rkl-3/igt@perf@gen12-unprivileged-single-ctx-counters.html
* igt@perf@polling-small-buf:
- {shard-rkl}: [FAIL][74] ([i915#1722]) -> [PASS][75]
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12651/shard-rkl-4/igt@perf@polling-small-buf.html
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/shard-rkl-6/igt@perf@polling-small-buf.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
[fdo#109279]: https://bugs.freedesktop.org/show_bug.cgi?id=109279
[fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
[fdo#109283]: https://bugs.freedesktop.org/show_bug.cgi?id=109283
[fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
[fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
[fdo#109291]: https://bugs.freedesktop.org/show_bug.cgi?id=109291
[fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
[fdo#109300]: https://bugs.freedesktop.org/show_bug.cgi?id=109300
[fdo#109302]: https://bugs.freedesktop.org/show_bug.cgi?id=109302
[fdo#109303]: https://bugs.freedesktop.org/show_bug.cgi?id=109303
[fdo#109308]: https://bugs.freedesktop.org/show_bug.cgi?id=109308
[fdo#109312]: https://bugs.freedesktop.org/show_bug.cgi?id=109312
[fdo#109313]: https://bugs.freedesktop.org/show_bug.cgi?id=109313
[fdo#109314]: https://bugs.freedesktop.org/show_bug.cgi?id=109314
[fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
[fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
[fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
[fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
[fdo#110542]: https://bugs.freedesktop.org/show_bug.cgi?id=110542
[fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
[fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
[fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
[fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
[fdo#111644]: https://bugs.freedesktop.org/show_bug.cgi?id=111644
[fdo#111656]: https://bugs.freedesktop.org/show_bug.cgi?id=111656
[fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
[fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
[fdo#112054]: https://bugs.freedesktop.org/show_bug.cgi?id=112054
[fdo#112283]: https://bugs.freedesktop.org/show_bug.cgi?id=112283
[i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
[i915#1257]: https://gitlab.freedesktop.org/drm/intel/issues/1257
[i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132
[i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
[i915#1722]: https://gitlab.freedesktop.org/drm/intel/issues/1722
[i915#1755]: https://gitlab.freedesktop.org/drm/intel/issues/1755
[i915#1769]: https://gitlab.freedesktop.org/drm/intel/issues/1769
[i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
[i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
[i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
[i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
[i915#1902]: https://gitlab.freedesktop.org/drm/intel/issues/1902
[i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
[i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
[i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
[i915#2521]: https://gitlab.freedesktop.org/drm/intel/issues/2521
[i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
[i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575
[i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
[i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
[i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658
[i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
[i915#2681]: https://gitlab.freedesktop.org/drm/intel/issues/2681
[i915#2705]: https://gitlab.freedesktop.org/drm/intel/issues/2705
[i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
[i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
[i915#2846]: https://gitlab.freedesktop.org/drm/intel/issues/2846
[i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
[i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920
[i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116
[i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
[i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
[i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
[i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
[i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
[i915#3318]: https://gitlab.freedesktop.org/drm/intel/issues/3318
[i915#3323]: https://gitlab.freedesktop.org/drm/intel/issues/3323
[i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
[i915#3361]: https://gitlab.freedesktop.org/drm/intel/issues/3361
[i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
[i915#3469]: https://gitlab.freedesktop.org/drm/intel/issues/3469
[i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
[i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546
[i915#3547]: https://gitlab.freedesktop.org/drm/intel/issues/3547
[i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
[i915#3558]: https://gitlab.freedesktop.org/drm/intel/issues/3558
[i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
[i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
[i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
[i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
[i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734
[i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
[i915#3825]: https://gitlab.freedesktop.org/drm/intel/issues/3825
[i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840
[i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
[i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955
[i915#3966]: https://gitlab.freedesktop.org/drm/intel/issues/3966
[i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
[i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
[i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078
[i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
[i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
[i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4215]: https://gitlab.freedesktop.org/drm/intel/issues/4215
[i915#426]: https://gitlab.freedesktop.org/drm/intel/issues/426
[i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
[i915#4281]: https://gitlab.freedesktop.org/drm/intel/issues/4281
[i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
[i915#433]: https://gitlab.freedesktop.org/drm/intel/issues/433
[i915#4391]: https://gitlab.freedesktop.org/drm/intel/issues/4391
[i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
[i915#4565]: https://gitlab.freedesktop.org/drm/intel/issues/4565
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
[i915#4767]: https://gitlab.freedesktop.org/drm/intel/issues/4767
[i915#4771]: https://gitlab.freedesktop.org/drm/intel/issues/4771
[i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
[i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
[i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
[i915#4859]: https://gitlab.freedesktop.org/drm/intel/issues/4859
[i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
[i915#4880]: https://gitlab.freedesktop.org/drm/intel/issues/4880
[i915#4881]: https://gitlab.freedesktop.org/drm/intel/issues/4881
[i915#4884]: https://gitlab.freedesktop.org/drm/intel/issues/4884
[i915#4885]: https://gitlab.freedesktop.org/drm/intel/issues/4885
[i915#4958]: https://gitlab.freedesktop.org/drm/intel/issues/4958
[i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
[i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
[i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
[i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
[i915#5288]: https://gitlab.freedesktop.org/drm/intel/issues/5288
[i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
[i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325
[i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
[i915#5439]: https://gitlab.freedesktop.org/drm/intel/issues/5439
[i915#5461]: https://gitlab.freedesktop.org/drm/intel/issues/5461
[i915#5563]: https://gitlab.freedesktop.org/drm/intel/issues/5563
[i915#5723]: https://gitlab.freedesktop.org/drm/intel/issues/5723
[i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
[i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
[i915#6117]: https://gitlab.freedesktop.org/drm/intel/issues/6117
[i915#6230]: https://gitlab.freedesktop.org/drm/intel/issues/6230
[i915#6245]: https://gitlab.freedesktop.org/drm/intel/issues/6245
[i915#6248]: https://gitlab.freedesktop.org/drm/intel/issues/6248
[i915#6252]: https://gitlab.freedesktop.org/drm/intel/issues/6252
[i915#6258]: https://gitlab.freedesktop.org/drm/intel/issues/6258
[i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268
[i915#6355]: https://gitlab.freedesktop.org/drm/intel/issues/6355
[i915#6433]: https://gitlab.freedesktop.org/drm/intel/issues/6433
[i915#6463]: https://gitlab.freedesktop.org/drm/intel/issues/6463
[i915#6497]: https://gitlab.freedesktop.org/drm/intel/issues/6497
[i915#6524]: https://gitlab.freedesktop.org/drm/intel/issues/6524
[i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
[i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621
[i915#6768]: https://gitlab.freedesktop.org/drm/intel/issues/6768
[i915#6944]: https://gitlab.freedesktop.org/drm/intel/issues/6944
[i915#6946]: https://gitlab.freedesktop.org/drm/intel/issues/6946
[i915#6953]: https://gitlab.freedesktop.org/drm/intel/issues/6953
[i915#7052]: https://gitlab.freedesktop.org/drm/intel/issues/7052
[i915#7116]: https://gitlab.freedesktop.org/drm/intel/issues/7116
[i915#7118]: https://gitlab.freedesktop.org/drm/intel/issues/7118
[i915#7128]: https://gitlab.freedesktop.org/drm/intel/issues/7128
[i915#7294]: https://gitlab.freedesktop.org/drm/intel/issues/7294
[i915#7561]: https://gitlab.freedesktop.org/drm/intel/issues/7561
[i915#7651]: https://gitlab.freedesktop.org/drm/intel/issues/7651
[i915#7697]: https://gitlab.freedesktop.org/drm/intel/issues/7697
[i915#7701]: https://gitlab.freedesktop.org/drm/intel/issues/7701
[i915#7707]: https://gitlab.freedesktop.org/drm/intel/issues/7707
[i915#7711]: https://gitlab.freedesktop.org/drm/intel/issues/7711
[i915#7742]: https://gitlab.freedesktop.org/drm/intel/issues/7742
[i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
[i915#7949]: https://gitlab.freedesktop.org/drm/intel/issues/7949
Build changes
-------------
* Linux: CI_DRM_12651 -> Patchwork_108371v4
CI-20190529: 20190529
CI_DRM_12651: fce901b03b34c10947c3dd53b338032f6d22812f @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_7137: 5f7ea985ac0828bec5e1bbc101b7931bd7fb62e3 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
Patchwork_108371v4: fce901b03b34c10947c3dd53b338032f6d22812f @ git://anongit.freedesktop.org/gfx-ci/linux
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_108371v4/index.html
[-- Attachment #2: Type: text/html, Size: 20185 bytes --]
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Intel-gfx] [PATCH v3] drm/i915: implement async_flip mode per plane tracking
2023-01-27 7:34 [Intel-gfx] [PATCH v3] drm/i915: implement async_flip mode per plane tracking Andrzej Hajda
` (2 preceding siblings ...)
2023-01-27 9:54 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
@ 2023-01-27 14:36 ` Ville Syrjälä
3 siblings, 0 replies; 5+ messages in thread
From: Ville Syrjälä @ 2023-01-27 14:36 UTC (permalink / raw)
To: Andrzej Hajda; +Cc: intel-gfx, Rodrigo Vivi
On Fri, Jan 27, 2023 at 08:34:03AM +0100, Andrzej Hajda wrote:
> Current implementation of async flip w/a relies on assumption that
> previous atomic commit contains valid information if async_flip is still
> enabled on the plane. It is incorrect. If previous commit did not modify
> the plane its state->uapi.async_flip can be false. As a result DMAR/PIPE
> errors can be observed:
> i915 0000:00:02.0: [drm] *ERROR* Fault errors on pipe A: 0x00000080
> i915 0000:00:02.0: [drm] *ERROR* Fault errors on pipe A: 0x00000080
> DMAR: DRHD: handling fault status reg 2
> DMAR: [DMA Read NO_PASID] Request device [00:02.0] fault addr 0x0 [fault reason 0x06] PTE Read access is not set
>
> v2: update async_flip_planes in more reliable places (Ville)
> v3: reset async_flip_planes and do_async_flip in more scenarios (Ville)
>
> Signed-off-by: Andrzej Hajda <andrzej.hajda@intel.com>
> ---
> drivers/gpu/drm/i915/display/intel_atomic_plane.c | 5 ++++-
> drivers/gpu/drm/i915/display/intel_color.c | 3 +++
> drivers/gpu/drm/i915/display/intel_display.c | 9 ++++++---
> drivers/gpu/drm/i915/display/intel_display_types.h | 3 +++
> drivers/gpu/drm/i915/display/skl_watermark.c | 5 +++++
> 5 files changed, 21 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/display/intel_atomic_plane.c b/drivers/gpu/drm/i915/display/intel_atomic_plane.c
> index 1409bcfb6fd3d9..3bd8f7eb75a60b 100644
> --- a/drivers/gpu/drm/i915/display/intel_atomic_plane.c
> +++ b/drivers/gpu/drm/i915/display/intel_atomic_plane.c
> @@ -363,6 +363,7 @@ void intel_plane_set_invisible(struct intel_crtc_state *crtc_state,
> crtc_state->scaled_planes &= ~BIT(plane->id);
> crtc_state->nv12_planes &= ~BIT(plane->id);
> crtc_state->c8_planes &= ~BIT(plane->id);
> + crtc_state->async_flip_planes &= ~BIT(plane->id);
> crtc_state->data_rate[plane->id] = 0;
> crtc_state->data_rate_y[plane->id] = 0;
> crtc_state->rel_data_rate[plane->id] = 0;
> @@ -582,8 +583,10 @@ static int intel_plane_atomic_calc_changes(const struct intel_crtc_state *old_cr
> intel_plane_is_scaled(new_plane_state))))
> new_crtc_state->disable_lp_wm = true;
>
> - if (intel_plane_do_async_flip(plane, old_crtc_state, new_crtc_state))
> + if (intel_plane_do_async_flip(plane, old_crtc_state, new_crtc_state)) {
> new_crtc_state->do_async_flip = true;
> + new_crtc_state->async_flip_planes |= BIT(plane->id);
> + }
>
> return 0;
> }
> diff --git a/drivers/gpu/drm/i915/display/intel_color.c b/drivers/gpu/drm/i915/display/intel_color.c
> index 8d97c299e6577b..5162b2b4ede080 100644
> --- a/drivers/gpu/drm/i915/display/intel_color.c
> +++ b/drivers/gpu/drm/i915/display/intel_color.c
> @@ -1506,6 +1506,9 @@ intel_color_add_affected_planes(struct intel_crtc_state *new_crtc_state)
> new_crtc_state->disable_cxsr = true;
> }
>
> + new_crtc_state->do_async_flip = false;
> + new_crtc_state->async_flip_planes = 0;
These should be next to the update_plane bitmask change.
> +
> return 0;
> }
>
> diff --git a/drivers/gpu/drm/i915/display/intel_display.c b/drivers/gpu/drm/i915/display/intel_display.c
> index 717ca3d7890d34..8581b32c9cf0eb 100644
> --- a/drivers/gpu/drm/i915/display/intel_display.c
> +++ b/drivers/gpu/drm/i915/display/intel_display.c
> @@ -1252,7 +1252,8 @@ static void intel_crtc_async_flip_disable_wa(struct intel_atomic_state *state,
> intel_atomic_get_old_crtc_state(state, crtc);
> const struct intel_crtc_state *new_crtc_state =
> intel_atomic_get_new_crtc_state(state, crtc);
> - u8 update_planes = new_crtc_state->update_planes;
> + u8 disable_async_flip_planes = old_crtc_state->async_flip_planes &
> + ~new_crtc_state->async_flip_planes;
> const struct intel_plane_state *old_plane_state;
> struct intel_plane *plane;
> bool need_vbl_wait = false;
> @@ -1261,7 +1262,7 @@ static void intel_crtc_async_flip_disable_wa(struct intel_atomic_state *state,
> for_each_old_intel_plane_in_state(state, plane, old_plane_state, i) {
> if (plane->need_async_flip_disable_wa &&
> plane->pipe == crtc->pipe &&
> - update_planes & BIT(plane->id)) {
> + disable_async_flip_planes & BIT(plane->id)) {
> /*
> * Apart from the async flip bit we want to
> * preserve the old state for the plane.
> @@ -1378,7 +1379,7 @@ static void intel_pre_plane_update(struct intel_atomic_state *state,
> * WA for platforms where async address update enable bit
> * is double buffered and only latched at start of vblank.
> */
> - if (old_crtc_state->uapi.async_flip && !new_crtc_state->uapi.async_flip)
> + if (old_crtc_state->async_flip_planes & ~new_crtc_state->async_flip_planes)
> intel_crtc_async_flip_disable_wa(state, crtc);
> }
>
> @@ -5939,6 +5940,8 @@ int intel_modeset_all_pipes(struct intel_atomic_state *state,
> return ret;
>
> crtc_state->update_planes |= crtc_state->active_planes;
> + crtc_state->do_async_flip = false;
> + crtc_state->async_flip_planes = 0;
> }
>
> return 0;
> diff --git a/drivers/gpu/drm/i915/display/intel_display_types.h b/drivers/gpu/drm/i915/display/intel_display_types.h
> index 54c517ca9632fb..9ccae7a4602009 100644
> --- a/drivers/gpu/drm/i915/display/intel_display_types.h
> +++ b/drivers/gpu/drm/i915/display/intel_display_types.h
> @@ -1249,6 +1249,9 @@ struct intel_crtc_state {
> /* bitmask of planes that will be updated during the commit */
> u8 update_planes;
>
> + /* bitmask of planes with async flip active */
> + u8 async_flip_planes;
> +
> u8 framestart_delay; /* 1-4 */
> u8 msa_timing_delay; /* 0-3 */
>
> diff --git a/drivers/gpu/drm/i915/display/skl_watermark.c b/drivers/gpu/drm/i915/display/skl_watermark.c
> index ae4e9e680c2e30..eb5e07647a348f 100644
> --- a/drivers/gpu/drm/i915/display/skl_watermark.c
> +++ b/drivers/gpu/drm/i915/display/skl_watermark.c
> @@ -2397,6 +2397,8 @@ skl_ddb_add_affected_planes(const struct intel_crtc_state *old_crtc_state,
> return PTR_ERR(plane_state);
>
> new_crtc_state->update_planes |= BIT(plane_id);
> + new_crtc_state->do_async_flip = false;
> + new_crtc_state->async_flip_planes = 0;
> }
>
> return 0;
> @@ -2756,6 +2758,9 @@ static int skl_wm_add_affected_planes(struct intel_atomic_state *state,
> new_crtc_state->update_planes |= BIT(plane_id);
> }
>
> + new_crtc_state->do_async_flip = false;
> + new_crtc_state->async_flip_planes = 0;
ditto
> +
> return 0;
> }
>
> --
> 2.34.1
--
Ville Syrjälä
Intel
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2023-01-27 14:36 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-01-27 7:34 [Intel-gfx] [PATCH v3] drm/i915: implement async_flip mode per plane tracking Andrzej Hajda
2023-01-27 7:58 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/i915: implement async_flip mode per plane tracking (rev4) Patchwork
2023-01-27 8:19 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2023-01-27 9:54 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
2023-01-27 14:36 ` [Intel-gfx] [PATCH v3] drm/i915: implement async_flip mode per plane tracking Ville Syrjälä
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.