* [igt-dev] [RFC PATCH] lib/kms: Get pipe enum from debugfs
@ 2023-03-17 16:50 Bhanuprakash Modem
2023-03-17 17:52 ` [igt-dev] ✗ Fi.CI.BAT: failure for " Patchwork
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Bhanuprakash Modem @ 2023-03-17 16:50 UTC (permalink / raw)
To: igt-dev; +Cc: Jani Nikula
The pipe may not be the same as crtc index if pipes are fused off.
For testing purposes, IGT needs to know the pipe. There's already
a I915_GET_PIPE_FROM_CRTC_ID IOCTL for this. However, the upcoming
Xe driver won't have that IOCTL.
Add IGT support to read the pipe from debugfs. For i915, still
fallback to ioctl method to support older kernels.
Cc: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
lib/igt_kms.c | 53 ++++++++++++++++++++++++++++++++++++++++-----------
1 file changed, 42 insertions(+), 11 deletions(-)
diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index 562d60bff..d7b46cd44 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -2558,7 +2558,7 @@ void igt_display_require(igt_display_t *display, int drm_fd)
drmModeRes *resources;
drmModePlaneRes *plane_resources;
int i;
- bool is_i915_dev;
+ bool is_i915_dev, is_intel_dev;
memset(display, 0, sizeof(igt_display_t));
@@ -2566,6 +2566,7 @@ void igt_display_require(igt_display_t *display, int drm_fd)
display->drm_fd = drm_fd;
is_i915_dev = is_i915_device(drm_fd);
+ is_intel_dev = is_intel_device(drm_fd);
drmSetClientCap(drm_fd, DRM_CLIENT_CAP_WRITEBACK_CONNECTORS, 1);
@@ -2607,17 +2608,47 @@ void igt_display_require(igt_display_t *display, int drm_fd)
for (i = 0; i < resources->count_crtcs; i++) {
igt_pipe_t *pipe;
- if (is_i915_dev) {
- struct drm_i915_get_pipe_from_crtc_id get_pipe;
+ /*
+ * No GET_PIPE_FROM_CRTC_ID ioctl support for XE. Instead read
+ * from the debugfs "i915_pipe".
+ *
+ * This debugfs is applicable for both i915 & XE. For i915, still
+ * we can fallback to ioctl method to support older kernels.
+ */
+ if (is_intel_dev) {
+ char buf[2];
+ int debugfs_fd, res;
- get_pipe.pipe = 0;
- get_pipe.crtc_id = resources->crtcs[i];
- do_ioctl(display->drm_fd,
- DRM_IOCTL_I915_GET_PIPE_FROM_CRTC_ID, &get_pipe);
- pipe = &display->pipes[get_pipe.pipe];
- pipe->pipe = get_pipe.pipe;
- }
- else {
+ debugfs_fd = igt_debugfs_pipe_dir(drm_fd, i, O_RDONLY);
+ igt_assert(debugfs_fd >= 0);
+
+ res = igt_debugfs_simple_read(debugfs_fd, "i915_pipe", buf, sizeof(buf));
+ close(debugfs_fd);
+
+ if (res <= 0) {
+ /* Fallback to older ioctl method. */
+ if (is_i915_dev) {
+ struct drm_i915_get_pipe_from_crtc_id get_pipe;
+
+ get_pipe.pipe = 0;
+ get_pipe.crtc_id = resources->crtcs[i];
+
+ do_ioctl(drm_fd,
+ DRM_IOCTL_I915_GET_PIPE_FROM_CRTC_ID,
+ &get_pipe);
+
+ pipe = &display->pipes[get_pipe.pipe];
+ pipe->pipe = get_pipe.pipe;
+ } else
+ igt_assert_f(false, "XE: Failed to read the debugfs i915_pipe.\n");
+ } else {
+ int p;
+
+ igt_assert_eq(sscanf(buf, "%d", &p), 1);
+ pipe = &display->pipes[p];
+ pipe->pipe = p;
+ }
+ } else {
pipe = &display->pipes[i];
pipe->pipe = i;
}
--
2.40.0
^ permalink raw reply related [flat|nested] 6+ messages in thread* [igt-dev] ✗ Fi.CI.BAT: failure for lib/kms: Get pipe enum from debugfs
2023-03-17 16:50 [igt-dev] [RFC PATCH] lib/kms: Get pipe enum from debugfs Bhanuprakash Modem
@ 2023-03-17 17:52 ` Patchwork
2023-03-18 3:29 ` [igt-dev] ✓ Fi.CI.BAT: success for lib/kms: Get pipe enum from debugfs (rev2) Patchwork
2023-03-18 4:32 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2023-03-17 17:52 UTC (permalink / raw)
To: Bhanuprakash Modem; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 4795 bytes --]
== Series Details ==
Series: lib/kms: Get pipe enum from debugfs
URL : https://patchwork.freedesktop.org/series/115323/
State : failure
== Summary ==
CI Bug Log - changes from IGT_7204 -> IGTPW_8635
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with IGTPW_8635 absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in IGTPW_8635, 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/IGTPW_8635/index.html
Participating hosts (36 -> 35)
------------------------------
Additional (1): bat-atsm-1
Missing (2): bat-adlm-1 fi-snb-2520m
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in IGTPW_8635:
### IGT changes ###
#### Possible regressions ####
* igt@i915_selftest@live@hangcheck:
- bat-rpls-1: [PASS][1] -> [ABORT][2]
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7204/bat-rpls-1/igt@i915_selftest@live@hangcheck.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8635/bat-rpls-1/igt@i915_selftest@live@hangcheck.html
Known issues
------------
Here are the changes found in IGTPW_8635 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@fbdev@eof:
- bat-atsm-1: NOTRUN -> [SKIP][3] ([i915#2582]) +4 similar issues
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8635/bat-atsm-1/igt@fbdev@eof.html
* igt@gem_mmap@basic:
- bat-atsm-1: NOTRUN -> [SKIP][4] ([i915#4083])
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8635/bat-atsm-1/igt@gem_mmap@basic.html
* igt@gem_sync@basic-each:
- bat-atsm-1: NOTRUN -> [FAIL][5] ([i915#8062]) +1 similar issue
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8635/bat-atsm-1/igt@gem_sync@basic-each.html
* igt@gem_tiled_fence_blits@basic:
- bat-atsm-1: NOTRUN -> [SKIP][6] ([i915#4077]) +2 similar issues
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8635/bat-atsm-1/igt@gem_tiled_fence_blits@basic.html
* igt@gem_tiled_pread_basic:
- bat-atsm-1: NOTRUN -> [SKIP][7] ([i915#4079]) +1 similar issue
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8635/bat-atsm-1/igt@gem_tiled_pread_basic.html
* igt@i915_hangman@error-state-basic:
- bat-atsm-1: NOTRUN -> [ABORT][8] ([i915#8060])
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8635/bat-atsm-1/igt@i915_hangman@error-state-basic.html
* igt@i915_selftest@live@execlists:
- fi-bsw-nick: [PASS][9] -> [ABORT][10] ([i915#7911] / [i915#7913])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7204/fi-bsw-nick/igt@i915_selftest@live@execlists.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8635/fi-bsw-nick/igt@i915_selftest@live@execlists.html
* igt@i915_selftest@live@hangcheck:
- bat-dg2-11: [PASS][11] -> [ABORT][12] ([i915#7913])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7204/bat-dg2-11/igt@i915_selftest@live@hangcheck.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8635/bat-dg2-11/igt@i915_selftest@live@hangcheck.html
#### Possible fixes ####
* igt@i915_selftest@live@migrate:
- bat-adlp-9: [DMESG-FAIL][13] ([i915#7699]) -> [PASS][14]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7204/bat-adlp-9/igt@i915_selftest@live@migrate.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8635/bat-adlp-9/igt@i915_selftest@live@migrate.html
[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#7699]: https://gitlab.freedesktop.org/drm/intel/issues/7699
[i915#7911]: https://gitlab.freedesktop.org/drm/intel/issues/7911
[i915#7913]: https://gitlab.freedesktop.org/drm/intel/issues/7913
[i915#8060]: https://gitlab.freedesktop.org/drm/intel/issues/8060
[i915#8062]: https://gitlab.freedesktop.org/drm/intel/issues/8062
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_7204 -> IGTPW_8635
CI-20190529: 20190529
CI_DRM_12873: b97925f47e2a20e1b79bc7c8cc236ded1bd431df @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_8635: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8635/index.html
IGT_7204: 0dc71800a0dd867e1fa32ee01c2dbf42b46ec3e2 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8635/index.html
[-- Attachment #2: Type: text/html, Size: 5715 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread* [igt-dev] ✓ Fi.CI.BAT: success for lib/kms: Get pipe enum from debugfs (rev2)
2023-03-17 16:50 [igt-dev] [RFC PATCH] lib/kms: Get pipe enum from debugfs Bhanuprakash Modem
2023-03-17 17:52 ` [igt-dev] ✗ Fi.CI.BAT: failure for " Patchwork
@ 2023-03-18 3:29 ` Patchwork
2023-03-18 4:32 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2023-03-18 3:29 UTC (permalink / raw)
To: Bhanuprakash Modem; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 3459 bytes --]
== Series Details ==
Series: lib/kms: Get pipe enum from debugfs (rev2)
URL : https://patchwork.freedesktop.org/series/115323/
State : success
== Summary ==
CI Bug Log - changes from IGT_7205 -> IGTPW_8636
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/index.html
Participating hosts (33 -> 34)
------------------------------
Additional (1): fi-pnv-d510
Known issues
------------
Here are the changes found in IGTPW_8636 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_exec_suspend@basic-s3@smem:
- bat-rpls-1: [PASS][1] -> [ABORT][2] ([i915#6687] / [i915#7978])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/bat-rpls-1/igt@gem_exec_suspend@basic-s3@smem.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/bat-rpls-1/igt@gem_exec_suspend@basic-s3@smem.html
* igt@kms_chamelium_hpd@common-hpd-after-suspend:
- fi-bsw-n3050: NOTRUN -> [SKIP][3] ([fdo#109271])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/fi-bsw-n3050/igt@kms_chamelium_hpd@common-hpd-after-suspend.html
* igt@kms_psr@primary_page_flip:
- fi-pnv-d510: NOTRUN -> [SKIP][4] ([fdo#109271]) +38 similar issues
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/fi-pnv-d510/igt@kms_psr@primary_page_flip.html
#### Possible fixes ####
* igt@i915_selftest@live@execlists:
- fi-bsw-n3050: [ABORT][5] ([i915#7911] / [i915#7913]) -> [PASS][6]
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/fi-bsw-n3050/igt@i915_selftest@live@execlists.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/fi-bsw-n3050/igt@i915_selftest@live@execlists.html
* igt@i915_selftest@live@gt_mocs:
- bat-rplp-1: [DMESG-FAIL][7] -> [PASS][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/bat-rplp-1/igt@i915_selftest@live@gt_mocs.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/bat-rplp-1/igt@i915_selftest@live@gt_mocs.html
#### Warnings ####
* igt@i915_selftest@live@slpc:
- bat-rpls-1: [DMESG-FAIL][9] ([i915#6367]) -> [DMESG-FAIL][10] ([i915#6367] / [i915#7996])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/bat-rpls-1/igt@i915_selftest@live@slpc.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/bat-rpls-1/igt@i915_selftest@live@slpc.html
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[i915#6367]: https://gitlab.freedesktop.org/drm/intel/issues/6367
[i915#6687]: https://gitlab.freedesktop.org/drm/intel/issues/6687
[i915#7911]: https://gitlab.freedesktop.org/drm/intel/issues/7911
[i915#7913]: https://gitlab.freedesktop.org/drm/intel/issues/7913
[i915#7978]: https://gitlab.freedesktop.org/drm/intel/issues/7978
[i915#7996]: https://gitlab.freedesktop.org/drm/intel/issues/7996
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_7205 -> IGTPW_8636
CI-20190529: 20190529
CI_DRM_12878: 80a77071b23a1ef75b5446cd397dd9048580ec8d @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_8636: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/index.html
IGT_7205: 0d4bf61a38c7751cf7c92751c4bb64f95c9ffbe2 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/index.html
[-- Attachment #2: Type: text/html, Size: 4323 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread* [igt-dev] ✓ Fi.CI.IGT: success for lib/kms: Get pipe enum from debugfs (rev2)
2023-03-17 16:50 [igt-dev] [RFC PATCH] lib/kms: Get pipe enum from debugfs Bhanuprakash Modem
2023-03-17 17:52 ` [igt-dev] ✗ Fi.CI.BAT: failure for " Patchwork
2023-03-18 3:29 ` [igt-dev] ✓ Fi.CI.BAT: success for lib/kms: Get pipe enum from debugfs (rev2) Patchwork
@ 2023-03-18 4:32 ` Patchwork
2 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2023-03-18 4:32 UTC (permalink / raw)
To: Bhanuprakash Modem; +Cc: igt-dev
[-- Attachment #1: Type: text/plain, Size: 24164 bytes --]
== Series Details ==
Series: lib/kms: Get pipe enum from debugfs (rev2)
URL : https://patchwork.freedesktop.org/series/115323/
State : success
== Summary ==
CI Bug Log - changes from IGT_7205_full -> IGTPW_8636_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/index.html
Participating hosts (8 -> 8)
------------------------------
No changes in participating hosts
Known issues
------------
Here are the changes found in IGTPW_8636_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@core_hotunplug@unbind-rebind:
- shard-snb: [PASS][1] -> [ABORT][2] ([i915#4528])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-snb4/igt@core_hotunplug@unbind-rebind.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-snb5/igt@core_hotunplug@unbind-rebind.html
* igt@gem_ctx_isolation@preservation-s3@vcs0:
- shard-apl: [PASS][3] -> [ABORT][4] ([i915#180])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-apl3/igt@gem_ctx_isolation@preservation-s3@vcs0.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-apl4/igt@gem_ctx_isolation@preservation-s3@vcs0.html
* igt@gen9_exec_parse@allowed-single:
- shard-apl: [PASS][5] -> [ABORT][6] ([i915#5566])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-apl4/igt@gen9_exec_parse@allowed-single.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-apl4/igt@gen9_exec_parse@allowed-single.html
* igt@i915_pm_dc@dc9-dpms:
- shard-apl: [PASS][7] -> [SKIP][8] ([fdo#109271])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-apl2/igt@i915_pm_dc@dc9-dpms.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-apl6/igt@i915_pm_dc@dc9-dpms.html
* igt@kms_flip@2x-plain-flip-ts-check-interruptible@ab-hdmi-a1-hdmi-a2:
- shard-glk: [PASS][9] -> [FAIL][10] ([i915#2122])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-glk4/igt@kms_flip@2x-plain-flip-ts-check-interruptible@ab-hdmi-a1-hdmi-a2.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-glk8/igt@kms_flip@2x-plain-flip-ts-check-interruptible@ab-hdmi-a1-hdmi-a2.html
* igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-downscaling@pipe-a-valid-mode:
- shard-glk: NOTRUN -> [SKIP][11] ([fdo#109271]) +4 similar issues
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-glk4/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-downscaling@pipe-a-valid-mode.html
#### Possible fixes ####
* igt@fbdev@nullptr:
- {shard-tglu}: [SKIP][12] ([i915#2582]) -> [PASS][13] +1 similar issue
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-tglu-10/igt@fbdev@nullptr.html
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-tglu-4/igt@fbdev@nullptr.html
* igt@fbdev@write:
- {shard-rkl}: [SKIP][14] ([i915#2582]) -> [PASS][15]
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-rkl-1/igt@fbdev@write.html
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-rkl-6/igt@fbdev@write.html
* igt@gem_eio@in-flight-suspend:
- {shard-rkl}: [FAIL][16] ([fdo#103375]) -> [PASS][17]
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-rkl-4/igt@gem_eio@in-flight-suspend.html
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-rkl-6/igt@gem_eio@in-flight-suspend.html
* igt@gem_eio@suspend:
- {shard-rkl}: [FAIL][18] ([i915#5115] / [i915#7052]) -> [PASS][19]
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-rkl-4/igt@gem_eio@suspend.html
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-rkl-2/igt@gem_eio@suspend.html
* igt@gem_exec_fair@basic-none-share@rcs0:
- {shard-tglu}: [FAIL][20] ([i915#2842]) -> [PASS][21] +1 similar issue
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-tglu-9/igt@gem_exec_fair@basic-none-share@rcs0.html
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-tglu-2/igt@gem_exec_fair@basic-none-share@rcs0.html
- shard-apl: [SKIP][22] ([fdo#109271]) -> [PASS][23]
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-apl1/igt@gem_exec_fair@basic-none-share@rcs0.html
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-apl7/igt@gem_exec_fair@basic-none-share@rcs0.html
* igt@gem_exec_fair@basic-throttle@rcs0:
- shard-glk: [FAIL][24] ([i915#2842]) -> [PASS][25]
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-glk9/igt@gem_exec_fair@basic-throttle@rcs0.html
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-glk5/igt@gem_exec_fair@basic-throttle@rcs0.html
* igt@gem_exec_reloc@basic-gtt-wc:
- {shard-rkl}: [SKIP][26] ([i915#3281]) -> [PASS][27] +3 similar issues
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-rkl-4/igt@gem_exec_reloc@basic-gtt-wc.html
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-rkl-5/igt@gem_exec_reloc@basic-gtt-wc.html
* igt@gem_lmem_swapping@smem-oom@lmem0:
- {shard-dg1}: [DMESG-WARN][28] ([i915#4936]) -> [PASS][29]
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-dg1-16/igt@gem_lmem_swapping@smem-oom@lmem0.html
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-dg1-16/igt@gem_lmem_swapping@smem-oom@lmem0.html
* igt@gem_set_tiling_vs_pwrite:
- {shard-rkl}: [SKIP][30] ([i915#3282]) -> [PASS][31] +3 similar issues
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-rkl-3/igt@gem_set_tiling_vs_pwrite.html
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-rkl-5/igt@gem_set_tiling_vs_pwrite.html
* igt@gen9_exec_parse@bb-start-out:
- {shard-rkl}: [SKIP][32] ([i915#2527]) -> [PASS][33] +2 similar issues
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-rkl-2/igt@gen9_exec_parse@bb-start-out.html
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-rkl-5/igt@gen9_exec_parse@bb-start-out.html
* igt@i915_hangman@engine-engine-error@bcs0:
- {shard-rkl}: [SKIP][34] ([i915#6258]) -> [PASS][35]
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-rkl-5/igt@i915_hangman@engine-engine-error@bcs0.html
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-rkl-3/igt@i915_hangman@engine-engine-error@bcs0.html
* igt@i915_pm_dc@dc6-dpms:
- {shard-rkl}: [SKIP][36] ([i915#3361]) -> [PASS][37]
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-rkl-5/igt@i915_pm_dc@dc6-dpms.html
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-rkl-6/igt@i915_pm_dc@dc6-dpms.html
* igt@i915_pm_rc6_residency@rc6-idle@vecs0:
- {shard-dg1}: [FAIL][38] ([i915#3591]) -> [PASS][39]
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-dg1-18/igt@i915_pm_rc6_residency@rc6-idle@vecs0.html
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-dg1-18/igt@i915_pm_rc6_residency@rc6-idle@vecs0.html
* igt@i915_pm_rpm@modeset-lpsp:
- {shard-rkl}: [SKIP][40] ([i915#1397]) -> [PASS][41]
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-rkl-3/igt@i915_pm_rpm@modeset-lpsp.html
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-rkl-6/igt@i915_pm_rpm@modeset-lpsp.html
* igt@i915_pm_rpm@modeset-lpsp-stress:
- {shard-tglu}: [SKIP][42] ([i915#1397]) -> [PASS][43]
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-tglu-10/igt@i915_pm_rpm@modeset-lpsp-stress.html
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-tglu-2/igt@i915_pm_rpm@modeset-lpsp-stress.html
* igt@i915_pm_rpm@modeset-non-lpsp:
- {shard-dg1}: [SKIP][44] ([i915#1397]) -> [PASS][45]
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-dg1-14/igt@i915_pm_rpm@modeset-non-lpsp.html
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-dg1-16/igt@i915_pm_rpm@modeset-non-lpsp.html
* igt@i915_pm_sseu@full-enable:
- {shard-rkl}: [SKIP][46] ([i915#4387]) -> [PASS][47]
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-rkl-2/igt@i915_pm_sseu@full-enable.html
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-rkl-5/igt@i915_pm_sseu@full-enable.html
* igt@kms_ccs@pipe-a-bad-pixel-format-y_tiled_gen12_rc_ccs:
- {shard-rkl}: [SKIP][48] ([i915#1845] / [i915#4098]) -> [PASS][49] +24 similar issues
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-rkl-4/igt@kms_ccs@pipe-a-bad-pixel-format-y_tiled_gen12_rc_ccs.html
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-rkl-6/igt@kms_ccs@pipe-a-bad-pixel-format-y_tiled_gen12_rc_ccs.html
* igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
- shard-glk: [FAIL][50] ([i915#2346]) -> [PASS][51]
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-glk2/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-glk7/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-msflip-blt:
- {shard-tglu}: [SKIP][52] ([i915#1849]) -> [PASS][53] +15 similar issues
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-tglu-9/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-msflip-blt.html
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-tglu-8/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-msflip-blt.html
* igt@kms_frontbuffer_tracking@psr-suspend:
- {shard-rkl}: [SKIP][54] ([i915#1849] / [i915#4098]) -> [PASS][55] +13 similar issues
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-rkl-2/igt@kms_frontbuffer_tracking@psr-suspend.html
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-rkl-6/igt@kms_frontbuffer_tracking@psr-suspend.html
* igt@kms_hdmi_inject@inject-audio:
- {shard-rkl}: [SKIP][56] ([i915#433]) -> [PASS][57]
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-rkl-3/igt@kms_hdmi_inject@inject-audio.html
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-rkl-5/igt@kms_hdmi_inject@inject-audio.html
- {shard-tglu}: [SKIP][58] ([i915#433]) -> [PASS][59]
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-tglu-3/igt@kms_hdmi_inject@inject-audio.html
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-tglu-10/igt@kms_hdmi_inject@inject-audio.html
* igt@kms_plane@plane-panning-top-left@pipe-a-planes:
- {shard-rkl}: [SKIP][60] ([i915#1849]) -> [PASS][61] +3 similar issues
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-rkl-4/igt@kms_plane@plane-panning-top-left@pipe-a-planes.html
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-rkl-6/igt@kms_plane@plane-panning-top-left@pipe-a-planes.html
* igt@kms_psr@primary_render:
- {shard-rkl}: [SKIP][62] ([i915#1072]) -> [PASS][63] +2 similar issues
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-rkl-4/igt@kms_psr@primary_render.html
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-rkl-6/igt@kms_psr@primary_render.html
* igt@kms_universal_plane@universal-plane-pipe-b-sanity:
- {shard-tglu}: [SKIP][64] ([fdo#109274]) -> [PASS][65] +2 similar issues
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-tglu-10/igt@kms_universal_plane@universal-plane-pipe-b-sanity.html
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-tglu-4/igt@kms_universal_plane@universal-plane-pipe-b-sanity.html
* igt@kms_vblank@pipe-c-wait-forked:
- {shard-tglu}: [SKIP][66] ([i915#1845]) -> [PASS][67] +42 similar issues
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-tglu-10/igt@kms_vblank@pipe-c-wait-forked.html
[67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-tglu-6/igt@kms_vblank@pipe-c-wait-forked.html
* igt@kms_vblank@pipe-d-wait-forked-busy:
- {shard-tglu}: [SKIP][68] ([i915#1845] / [i915#7651]) -> [PASS][69] +26 similar issues
[68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-tglu-9/igt@kms_vblank@pipe-d-wait-forked-busy.html
[69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-tglu-2/igt@kms_vblank@pipe-d-wait-forked-busy.html
* igt@perf@polling-small-buf:
- {shard-rkl}: [FAIL][70] ([i915#1722]) -> [PASS][71]
[70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-rkl-3/igt@perf@polling-small-buf.html
[71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-rkl-4/igt@perf@polling-small-buf.html
* igt@perf@stress-open-close:
- shard-glk: [ABORT][72] ([i915#5213]) -> [PASS][73]
[72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-glk9/igt@perf@stress-open-close.html
[73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-glk1/igt@perf@stress-open-close.html
* igt@sysfs_timeslice_duration@timeout@vcs0:
- {shard-dg1}: [FAIL][74] ([i915#1755]) -> [PASS][75]
[74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_7205/shard-dg1-17/igt@sysfs_timeslice_duration@timeout@vcs0.html
[75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/shard-dg1-16/igt@sysfs_timeslice_duration@timeout@vcs0.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#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#109309]: https://bugs.freedesktop.org/show_bug.cgi?id=109309
[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#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
[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#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#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
[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#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122
[i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
[i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
[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#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#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
[i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
[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#3528]: https://gitlab.freedesktop.org/drm/intel/issues/3528
[i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
[i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546
[i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
[i915#3558]: https://gitlab.freedesktop.org/drm/intel/issues/3558
[i915#3591]: https://gitlab.freedesktop.org/drm/intel/issues/3591
[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#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840
[i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
[i915#3952]: https://gitlab.freedesktop.org/drm/intel/issues/3952
[i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955
[i915#3989]: https://gitlab.freedesktop.org/drm/intel/issues/3989
[i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
[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#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
[i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
[i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
[i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213
[i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
[i915#433]: https://gitlab.freedesktop.org/drm/intel/issues/433
[i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
[i915#4387]: https://gitlab.freedesktop.org/drm/intel/issues/4387
[i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
[i915#4528]: https://gitlab.freedesktop.org/drm/intel/issues/4528
[i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
[i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454
[i915#4565]: https://gitlab.freedesktop.org/drm/intel/issues/4565
[i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
[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#4936]: https://gitlab.freedesktop.org/drm/intel/issues/4936
[i915#4958]: https://gitlab.freedesktop.org/drm/intel/issues/4958
[i915#5115]: https://gitlab.freedesktop.org/drm/intel/issues/5115
[i915#5122]: https://gitlab.freedesktop.org/drm/intel/issues/5122
[i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
[i915#5213]: https://gitlab.freedesktop.org/drm/intel/issues/5213
[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#5563]: https://gitlab.freedesktop.org/drm/intel/issues/5563
[i915#5566]: https://gitlab.freedesktop.org/drm/intel/issues/5566
[i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
[i915#6247]: https://gitlab.freedesktop.org/drm/intel/issues/6247
[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#6301]: https://gitlab.freedesktop.org/drm/intel/issues/6301
[i915#6403]: https://gitlab.freedesktop.org/drm/intel/issues/6403
[i915#6497]: https://gitlab.freedesktop.org/drm/intel/issues/6497
[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#7037]: https://gitlab.freedesktop.org/drm/intel/issues/7037
[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#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
[i915#7957]: https://gitlab.freedesktop.org/drm/intel/issues/7957
[i915#7975]: https://gitlab.freedesktop.org/drm/intel/issues/7975
[i915#8152]: https://gitlab.freedesktop.org/drm/intel/issues/8152
[i915#8211]: https://gitlab.freedesktop.org/drm/intel/issues/8211
[i915#8282]: https://gitlab.freedesktop.org/drm/intel/issues/8282
Build changes
-------------
* CI: CI-20190529 -> None
* IGT: IGT_7205 -> IGTPW_8636
CI-20190529: 20190529
CI_DRM_12878: 80a77071b23a1ef75b5446cd397dd9048580ec8d @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_8636: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/index.html
IGT_7205: 0d4bf61a38c7751cf7c92751c4bb64f95c9ffbe2 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8636/index.html
[-- Attachment #2: Type: text/html, Size: 18693 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* [igt-dev] [RFC PATCH] lib/kms: Get pipe enum from debugfs
@ 2023-03-20 6:00 Bhanuprakash Modem
2023-03-20 12:49 ` Jani Nikula
0 siblings, 1 reply; 6+ messages in thread
From: Bhanuprakash Modem @ 2023-03-20 6:00 UTC (permalink / raw)
To: igt-dev; +Cc: Jani Nikula
The pipe may not be the same as crtc index if pipes are fused off.
For testing purposes, IGT needs to know the pipe. There's already
a I915_GET_PIPE_FROM_CRTC_ID IOCTL for this. However, the upcoming
Xe driver won't have that IOCTL.
Add IGT support to read the pipe from debugfs. For i915, still
fallback to ioctl method to support older kernels.
V2: Fix kmstest_get_pipe_from_crtc_id() (Bhanu)
Cc: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
lib/igt_kms.c | 80 +++++++++++++++++++++++++++++++++++----------------
1 file changed, 56 insertions(+), 24 deletions(-)
diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index 562d60bff..b3135ad7a 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -1067,6 +1067,53 @@ void kmstest_dump_mode(drmModeModeInfo *mode)
aspect ? aspect : "", aspect ? ")" : "");
}
+/*
+ * With non-contiguous pipes display, crtc mapping is not always same
+ * as pipe mapping, In i915 pipe is enum id of i915's crtc object.
+ * hence allocating upper bound igt_pipe array to support non-contiguos
+ * pipe display and reading pipe enum for a crtc using GET_PIPE_FROM_CRTC_ID
+ * ioctl for a pipe to do pipe ordering with respect to crtc list.
+ */
+static int __intel_get_pipe_from_crtc_id(int fd, int crtc_id, int crtc_idx)
+{
+ char buf[2];
+ int debugfs_fd, res;
+
+ /*
+ * No GET_PIPE_FROM_CRTC_ID ioctl support for XE. Instead read
+ * from the debugfs "i915_pipe".
+ *
+ * This debugfs is applicable for both i915 & XE. For i915, still
+ * we can fallback to ioctl method to support older kernels.
+ */
+ debugfs_fd = igt_debugfs_pipe_dir(fd, crtc_idx, O_RDONLY);
+ igt_assert(debugfs_fd >= 0);
+
+ res = igt_debugfs_simple_read(debugfs_fd, "i915_pipe", buf, sizeof(buf));
+ close(debugfs_fd);
+
+ if (res <= 0) {
+ /* Fallback to older ioctl method. */
+ if (is_i915_device(fd)) {
+ struct drm_i915_get_pipe_from_crtc_id get_pipe;
+
+ get_pipe.pipe = 0;
+ get_pipe.crtc_id = crtc_id;
+
+ do_ioctl(fd, DRM_IOCTL_I915_GET_PIPE_FROM_CRTC_ID,
+ &get_pipe);
+
+ return get_pipe.pipe;
+ } else
+ igt_assert_f(false, "XE: Failed to read the debugfs i915_pipe.\n");
+ } else {
+ int pipe;
+
+ igt_assert_eq(sscanf(buf, "%d", &pipe), 1);
+ return pipe;
+ }
+}
+
/**
* kmstest_get_pipe_from_crtc_id:
* @fd: DRM fd
@@ -1100,7 +1147,8 @@ int kmstest_get_pipe_from_crtc_id(int fd, int crtc_id)
drmModeFreeResources(res);
- return i;
+ return is_intel_device(fd) ?
+ __intel_get_pipe_from_crtc_id(fd, crtc_id, i) : i;
}
/**
@@ -2558,14 +2606,14 @@ void igt_display_require(igt_display_t *display, int drm_fd)
drmModeRes *resources;
drmModePlaneRes *plane_resources;
int i;
- bool is_i915_dev;
+ bool is_intel_dev;
memset(display, 0, sizeof(igt_display_t));
LOG_INDENT(display, "init");
display->drm_fd = drm_fd;
- is_i915_dev = is_i915_device(drm_fd);
+ is_intel_dev = is_intel_device(drm_fd);
drmSetClientCap(drm_fd, DRM_CLIENT_CAP_WRITEBACK_CONNECTORS, 1);
@@ -2593,34 +2641,18 @@ void igt_display_require(igt_display_t *display, int drm_fd)
if (is_xe_device(drm_fd))
xe_device_get(drm_fd);
- /*
- * With non-contiguous pipes display, crtc mapping is not always same
- * as pipe mapping, In i915 pipe is enum id of i915's crtc object.
- * hence allocating upper bound igt_pipe array to support non-contiguos
- * pipe display and reading pipe enum for a crtc using GET_PIPE_FROM_CRTC_ID ioctl
- * for a pipe to do pipe ordering with respect to crtc list.
- */
display->n_pipes = IGT_MAX_PIPES;
display->pipes = calloc(sizeof(igt_pipe_t), display->n_pipes);
igt_assert_f(display->pipes, "Failed to allocate memory for %d pipes\n", display->n_pipes);
for (i = 0; i < resources->count_crtcs; i++) {
igt_pipe_t *pipe;
+ int pipe_enum = (is_intel_dev)?
+ __intel_get_pipe_from_crtc_id(drm_fd,
+ resources->crtcs[i], i) : i;
- if (is_i915_dev) {
- struct drm_i915_get_pipe_from_crtc_id get_pipe;
-
- get_pipe.pipe = 0;
- get_pipe.crtc_id = resources->crtcs[i];
- do_ioctl(display->drm_fd,
- DRM_IOCTL_I915_GET_PIPE_FROM_CRTC_ID, &get_pipe);
- pipe = &display->pipes[get_pipe.pipe];
- pipe->pipe = get_pipe.pipe;
- }
- else {
- pipe = &display->pipes[i];
- pipe->pipe = i;
- }
+ pipe = &display->pipes[pipe_enum];
+ pipe->pipe = pipe_enum;
/* pipe is enabled/disabled */
pipe->enabled = true;
--
2.40.0
^ permalink raw reply related [flat|nested] 6+ messages in thread* Re: [igt-dev] [RFC PATCH] lib/kms: Get pipe enum from debugfs
2023-03-20 6:00 [igt-dev] [RFC PATCH] lib/kms: Get pipe enum from debugfs Bhanuprakash Modem
@ 2023-03-20 12:49 ` Jani Nikula
0 siblings, 0 replies; 6+ messages in thread
From: Jani Nikula @ 2023-03-20 12:49 UTC (permalink / raw)
To: Bhanuprakash Modem, igt-dev
On Mon, 20 Mar 2023, Bhanuprakash Modem <bhanuprakash.modem@intel.com> wrote:
> The pipe may not be the same as crtc index if pipes are fused off.
> For testing purposes, IGT needs to know the pipe. There's already
> a I915_GET_PIPE_FROM_CRTC_ID IOCTL for this. However, the upcoming
> Xe driver won't have that IOCTL.
>
> Add IGT support to read the pipe from debugfs. For i915, still
> fallback to ioctl method to support older kernels.
>
> V2: Fix kmstest_get_pipe_from_crtc_id() (Bhanu)
>
> Cc: Jani Nikula <jani.nikula@intel.com>
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> ---
> lib/igt_kms.c | 80 +++++++++++++++++++++++++++++++++++----------------
> 1 file changed, 56 insertions(+), 24 deletions(-)
>
> diff --git a/lib/igt_kms.c b/lib/igt_kms.c
> index 562d60bff..b3135ad7a 100644
> --- a/lib/igt_kms.c
> +++ b/lib/igt_kms.c
> @@ -1067,6 +1067,53 @@ void kmstest_dump_mode(drmModeModeInfo *mode)
> aspect ? aspect : "", aspect ? ")" : "");
> }
>
> +/*
> + * With non-contiguous pipes display, crtc mapping is not always same
> + * as pipe mapping, In i915 pipe is enum id of i915's crtc object.
> + * hence allocating upper bound igt_pipe array to support non-contiguos
> + * pipe display and reading pipe enum for a crtc using GET_PIPE_FROM_CRTC_ID
> + * ioctl for a pipe to do pipe ordering with respect to crtc list.
> + */
> +static int __intel_get_pipe_from_crtc_id(int fd, int crtc_id, int crtc_idx)
> +{
> + char buf[2];
> + int debugfs_fd, res;
> +
> + /*
> + * No GET_PIPE_FROM_CRTC_ID ioctl support for XE. Instead read
> + * from the debugfs "i915_pipe".
> + *
> + * This debugfs is applicable for both i915 & XE. For i915, still
> + * we can fallback to ioctl method to support older kernels.
> + */
> + debugfs_fd = igt_debugfs_pipe_dir(fd, crtc_idx, O_RDONLY);
> + igt_assert(debugfs_fd >= 0);
> +
> + res = igt_debugfs_simple_read(debugfs_fd, "i915_pipe", buf, sizeof(buf));
> + close(debugfs_fd);
> +
> + if (res <= 0) {
> + /* Fallback to older ioctl method. */
> + if (is_i915_device(fd)) {
> + struct drm_i915_get_pipe_from_crtc_id get_pipe;
> +
> + get_pipe.pipe = 0;
> + get_pipe.crtc_id = crtc_id;
> +
> + do_ioctl(fd, DRM_IOCTL_I915_GET_PIPE_FROM_CRTC_ID,
> + &get_pipe);
> +
> + return get_pipe.pipe;
> + } else
> + igt_assert_f(false, "XE: Failed to read the debugfs i915_pipe.\n");
> + } else {
> + int pipe;
> +
> + igt_assert_eq(sscanf(buf, "%d", &pipe), 1);
Per Ville's request, the debugfs will have pipe as a letter instead of
number [1].
BR,
Jani.
[1] https://patchwork.freedesktop.org/patch/msgid/20230320124429.786985-2-jani.nikula@intel.com
> + return pipe;
> + }
> +}
> +
> /**
> * kmstest_get_pipe_from_crtc_id:
> * @fd: DRM fd
> @@ -1100,7 +1147,8 @@ int kmstest_get_pipe_from_crtc_id(int fd, int crtc_id)
>
> drmModeFreeResources(res);
>
> - return i;
> + return is_intel_device(fd) ?
> + __intel_get_pipe_from_crtc_id(fd, crtc_id, i) : i;
> }
>
> /**
> @@ -2558,14 +2606,14 @@ void igt_display_require(igt_display_t *display, int drm_fd)
> drmModeRes *resources;
> drmModePlaneRes *plane_resources;
> int i;
> - bool is_i915_dev;
> + bool is_intel_dev;
>
> memset(display, 0, sizeof(igt_display_t));
>
> LOG_INDENT(display, "init");
>
> display->drm_fd = drm_fd;
> - is_i915_dev = is_i915_device(drm_fd);
> + is_intel_dev = is_intel_device(drm_fd);
>
> drmSetClientCap(drm_fd, DRM_CLIENT_CAP_WRITEBACK_CONNECTORS, 1);
>
> @@ -2593,34 +2641,18 @@ void igt_display_require(igt_display_t *display, int drm_fd)
> if (is_xe_device(drm_fd))
> xe_device_get(drm_fd);
>
> - /*
> - * With non-contiguous pipes display, crtc mapping is not always same
> - * as pipe mapping, In i915 pipe is enum id of i915's crtc object.
> - * hence allocating upper bound igt_pipe array to support non-contiguos
> - * pipe display and reading pipe enum for a crtc using GET_PIPE_FROM_CRTC_ID ioctl
> - * for a pipe to do pipe ordering with respect to crtc list.
> - */
> display->n_pipes = IGT_MAX_PIPES;
> display->pipes = calloc(sizeof(igt_pipe_t), display->n_pipes);
> igt_assert_f(display->pipes, "Failed to allocate memory for %d pipes\n", display->n_pipes);
>
> for (i = 0; i < resources->count_crtcs; i++) {
> igt_pipe_t *pipe;
> + int pipe_enum = (is_intel_dev)?
> + __intel_get_pipe_from_crtc_id(drm_fd,
> + resources->crtcs[i], i) : i;
>
> - if (is_i915_dev) {
> - struct drm_i915_get_pipe_from_crtc_id get_pipe;
> -
> - get_pipe.pipe = 0;
> - get_pipe.crtc_id = resources->crtcs[i];
> - do_ioctl(display->drm_fd,
> - DRM_IOCTL_I915_GET_PIPE_FROM_CRTC_ID, &get_pipe);
> - pipe = &display->pipes[get_pipe.pipe];
> - pipe->pipe = get_pipe.pipe;
> - }
> - else {
> - pipe = &display->pipes[i];
> - pipe->pipe = i;
> - }
> + pipe = &display->pipes[pipe_enum];
> + pipe->pipe = pipe_enum;
>
> /* pipe is enabled/disabled */
> pipe->enabled = true;
--
Jani Nikula, Intel Open Source Graphics Center
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2023-03-20 12:49 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-03-17 16:50 [igt-dev] [RFC PATCH] lib/kms: Get pipe enum from debugfs Bhanuprakash Modem
2023-03-17 17:52 ` [igt-dev] ✗ Fi.CI.BAT: failure for " Patchwork
2023-03-18 3:29 ` [igt-dev] ✓ Fi.CI.BAT: success for lib/kms: Get pipe enum from debugfs (rev2) Patchwork
2023-03-18 4:32 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
-- strict thread matches above, loose matches on Subject: below --
2023-03-20 6:00 [igt-dev] [RFC PATCH] lib/kms: Get pipe enum from debugfs Bhanuprakash Modem
2023-03-20 12:49 ` Jani Nikula
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox