* [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests @ 2021-04-09 19:30 Bhanuprakash Modem 2021-04-09 13:25 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork ` (7 more replies) 0 siblings, 8 replies; 17+ messages in thread From: Bhanuprakash Modem @ 2021-04-09 19:30 UTC (permalink / raw) To: igt-dev When two monitors connected through MST, the second monitor also tries to use the same mode. So two such modes may not fit into the link bandwidth. This series will find a combination of modes that fit into the BW. By parsing the PATH property, we can add a link_group_id field to igt_output_t to identify all connectors that shares the BW of the same link. Parsing the PATH property consists of finding all connectors with the same X prefix in the X-Y[-Z...] path property format and assigning a unique non-zero link_group_id to all such connectors. Connectors without a PATH property are not an MST output, so their link_group_id can be left at 0. IGT core helper would override the mode on all connectors that will be modeset by the next igt_display_commit() call in the test. These are all the connectors in igt_display_t that have a pending_pipe set by the test up to the point of calling this helper. Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Bhanuprakash Modem (5): lib/igt_kms: Add a support to read PATH connector property lib/igt_kms: Identify outputs that shares link bandwidth lib/igt_kms: helper to override the mode on all connectors tests/kms_frontbuffer_tracking: Fix mode selection for 2x tests tests/kms_cursor_legacy: Fix mode selection for 2x tests lib/igt_kms.c | 71 ++++++++++++++++++++++++++++++++ lib/igt_kms.h | 3 ++ tests/kms_cursor_legacy.c | 53 ++++++++++++++++++++++-- tests/kms_frontbuffer_tracking.c | 35 ++++++++++++++++ 4 files changed, 159 insertions(+), 3 deletions(-) -- 2.20.1 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for Fix mode selection for 2x tests 2021-04-09 19:30 [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests Bhanuprakash Modem @ 2021-04-09 13:25 ` Patchwork 2021-04-09 15:55 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork ` (6 subsequent siblings) 7 siblings, 0 replies; 17+ messages in thread From: Patchwork @ 2021-04-09 13:25 UTC (permalink / raw) To: Bhanuprakash Modem; +Cc: igt-dev [-- Attachment #1.1: Type: text/plain, Size: 6460 bytes --] == Series Details == Series: Fix mode selection for 2x tests URL : https://patchwork.freedesktop.org/series/88902/ State : success == Summary == CI Bug Log - changes from IGT_6063 -> IGTPW_5724 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/index.html Possible new issues ------------------- Here are the unknown changes that may have been introduced in IGTPW_5724: ### IGT changes ### #### Suppressed #### The following results come from untrusted machines, tests, or statuses. They do not affect the overall result. * igt@i915_selftest@live@gem_contexts: - {fi-cml-drallion}: NOTRUN -> [DMESG-FAIL][1] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/fi-cml-drallion/igt@i915_selftest@live@gem_contexts.html Known issues ------------ Here are the changes found in IGTPW_5724 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@amdgpu/amd_basic@cs-gfx: - fi-kbl-soraka: NOTRUN -> [SKIP][2] ([fdo#109271]) +17 similar issues [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/fi-kbl-soraka/igt@amdgpu/amd_basic@cs-gfx.html * igt@amdgpu/amd_basic@semaphore: - fi-icl-y: NOTRUN -> [SKIP][3] ([fdo#109315]) +17 similar issues [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/fi-icl-y/igt@amdgpu/amd_basic@semaphore.html * igt@gem_huc_copy@huc-copy: - fi-skl-guc: NOTRUN -> [SKIP][4] ([fdo#109271] / [i915#2190]) [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/fi-skl-guc/igt@gem_huc_copy@huc-copy.html - fi-icl-y: NOTRUN -> [SKIP][5] ([i915#2190]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/fi-icl-y/igt@gem_huc_copy@huc-copy.html * igt@gem_linear_blits@basic: - fi-tgl-y: [PASS][6] -> [DMESG-WARN][7] ([i915#402]) [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/fi-tgl-y/igt@gem_linear_blits@basic.html [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/fi-tgl-y/igt@gem_linear_blits@basic.html * igt@kms_chamelium@dp-crc-fast: - fi-skl-guc: NOTRUN -> [SKIP][8] ([fdo#109271] / [fdo#111827]) +8 similar issues [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/fi-skl-guc/igt@kms_chamelium@dp-crc-fast.html - fi-icl-y: NOTRUN -> [SKIP][9] ([fdo#109284] / [fdo#111827]) +8 similar issues [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/fi-icl-y/igt@kms_chamelium@dp-crc-fast.html * igt@kms_force_connector_basic@force-load-detect: - fi-icl-y: NOTRUN -> [SKIP][10] ([fdo#109285]) [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/fi-icl-y/igt@kms_force_connector_basic@force-load-detect.html * igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d: - fi-icl-y: NOTRUN -> [SKIP][11] ([fdo#109278]) [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/fi-icl-y/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d.html - fi-skl-guc: NOTRUN -> [SKIP][12] ([fdo#109271] / [i915#533]) [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/fi-skl-guc/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d.html * igt@kms_psr@primary_mmap_gtt: - fi-skl-guc: NOTRUN -> [SKIP][13] ([fdo#109271]) +26 similar issues [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/fi-skl-guc/igt@kms_psr@primary_mmap_gtt.html - fi-icl-y: NOTRUN -> [SKIP][14] ([fdo#110189]) +3 similar issues [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/fi-icl-y/igt@kms_psr@primary_mmap_gtt.html * igt@prime_vgem@basic-userptr: - fi-icl-y: NOTRUN -> [SKIP][15] ([i915#3301]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/fi-icl-y/igt@prime_vgem@basic-userptr.html #### Possible fixes #### * igt@fbdev@write: - fi-tgl-y: [DMESG-WARN][16] ([i915#402]) -> [PASS][17] [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/fi-tgl-y/igt@fbdev@write.html [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/fi-tgl-y/igt@fbdev@write.html * igt@i915_selftest@live@late_gt_pm: - fi-kbl-soraka: [INCOMPLETE][18] -> [PASS][19] [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/fi-kbl-soraka/igt@i915_selftest@live@late_gt_pm.html [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/fi-kbl-soraka/igt@i915_selftest@live@late_gt_pm.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278 [fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284 [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285 [fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315 [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189 [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827 [i915#1208]: https://gitlab.freedesktop.org/drm/intel/issues/1208 [i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849 [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190 [i915#3180]: https://gitlab.freedesktop.org/drm/intel/issues/3180 [i915#3278]: https://gitlab.freedesktop.org/drm/intel/issues/3278 [i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301 [i915#3303]: https://gitlab.freedesktop.org/drm/intel/issues/3303 [i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402 [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533 Participating hosts (44 -> 40) ------------------------------ Additional (3): fi-icl-y fi-skl-guc fi-cml-drallion Missing (7): fi-ilk-m540 fi-hsw-4200u fi-bsw-n3050 fi-bsw-cyan fi-ctg-p8600 fi-dg1-1 fi-bdw-samus Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_6063 -> IGTPW_5724 CI-20190529: 20190529 CI_DRM_9949: caf1e8d36f0bdd43bfd47e5a6f46d4b691d284e3 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_5724: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/index.html IGT_6063: d3b7f74ce5df6fdea03e490b7c64f0c6bfe76f03 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/index.html [-- Attachment #1.2: Type: text/html, Size: 7571 bytes --] [-- Attachment #2: Type: text/plain, Size: 154 bytes --] _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for Fix mode selection for 2x tests 2021-04-09 19:30 [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests Bhanuprakash Modem 2021-04-09 13:25 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork @ 2021-04-09 15:55 ` Patchwork 2021-04-09 19:30 ` [igt-dev] [PATCH i-g-t 1/5] lib/igt_kms: Add a support to read PATH connector property Bhanuprakash Modem ` (5 subsequent siblings) 7 siblings, 0 replies; 17+ messages in thread From: Patchwork @ 2021-04-09 15:55 UTC (permalink / raw) To: Bhanuprakash Modem; +Cc: igt-dev [-- Attachment #1.1: Type: text/plain, Size: 30249 bytes --] == Series Details == Series: Fix mode selection for 2x tests URL : https://patchwork.freedesktop.org/series/88902/ State : success == Summary == CI Bug Log - changes from IGT_6063_full -> IGTPW_5724_full ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/index.html Known issues ------------ Here are the changes found in IGTPW_5724_full that come from known issues: ### IGT changes ### #### Issues hit #### * igt@gem_create@create-clear: - shard-glk: [PASS][1] -> [FAIL][2] ([i915#3160]) [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-glk7/igt@gem_create@create-clear.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-glk4/igt@gem_create@create-clear.html * igt@gem_create@create-massive: - shard-snb: NOTRUN -> [DMESG-WARN][3] ([i915#3002]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-snb6/igt@gem_create@create-massive.html - shard-kbl: NOTRUN -> [DMESG-WARN][4] ([i915#3002]) [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl7/igt@gem_create@create-massive.html - shard-apl: NOTRUN -> [DMESG-WARN][5] ([i915#3002]) [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl1/igt@gem_create@create-massive.html * igt@gem_ctx_persistence@legacy-engines-mixed: - shard-snb: NOTRUN -> [SKIP][6] ([fdo#109271] / [i915#1099]) +6 similar issues [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-snb5/igt@gem_ctx_persistence@legacy-engines-mixed.html * igt@gem_eio@unwedge-stress: - shard-snb: NOTRUN -> [FAIL][7] ([i915#3354]) [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-snb6/igt@gem_eio@unwedge-stress.html * igt@gem_exec_fair@basic-pace@rcs0: - shard-kbl: [PASS][8] -> [FAIL][9] ([i915#2842]) +3 similar issues [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-kbl3/igt@gem_exec_fair@basic-pace@rcs0.html [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl3/igt@gem_exec_fair@basic-pace@rcs0.html * igt@gem_exec_fair@basic-throttle@rcs0: - shard-glk: [PASS][10] -> [FAIL][11] ([i915#2842]) +1 similar issue [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-glk5/igt@gem_exec_fair@basic-throttle@rcs0.html [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-glk6/igt@gem_exec_fair@basic-throttle@rcs0.html * igt@gem_exec_reloc@basic-wide-active@rcs0: - shard-snb: NOTRUN -> [FAIL][12] ([i915#2389]) +2 similar issues [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-snb6/igt@gem_exec_reloc@basic-wide-active@rcs0.html * igt@gem_exec_reloc@basic-wide-active@vcs1: - shard-iclb: NOTRUN -> [FAIL][13] ([i915#2389]) [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb4/igt@gem_exec_reloc@basic-wide-active@vcs1.html * igt@gem_huc_copy@huc-copy: - shard-apl: NOTRUN -> [SKIP][14] ([fdo#109271] / [i915#2190]) [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl7/igt@gem_huc_copy@huc-copy.html * igt@gem_pwrite@basic-exhaustion: - shard-snb: NOTRUN -> [WARN][15] ([i915#2658]) [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-snb5/igt@gem_pwrite@basic-exhaustion.html * igt@gem_userptr_blits@process-exit-mmap@wb: - shard-apl: NOTRUN -> [SKIP][16] ([fdo#109271] / [i915#1699]) +3 similar issues [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl1/igt@gem_userptr_blits@process-exit-mmap@wb.html * igt@gem_userptr_blits@readonly-unsync: - shard-tglb: NOTRUN -> [SKIP][17] ([i915#3297]) [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-tglb6/igt@gem_userptr_blits@readonly-unsync.html - shard-iclb: NOTRUN -> [SKIP][18] ([i915#3297]) [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb6/igt@gem_userptr_blits@readonly-unsync.html * igt@gem_userptr_blits@set-cache-level: - shard-snb: NOTRUN -> [FAIL][19] ([i915#3324]) [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-snb2/igt@gem_userptr_blits@set-cache-level.html - shard-apl: NOTRUN -> [FAIL][20] ([i915#3324]) [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl6/igt@gem_userptr_blits@set-cache-level.html * igt@gem_workarounds@suspend-resume: - shard-snb: [PASS][21] -> [TIMEOUT][22] ([i915#2808]) [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-snb2/igt@gem_workarounds@suspend-resume.html [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-snb7/igt@gem_workarounds@suspend-resume.html * igt@gem_workarounds@suspend-resume-fd: - shard-kbl: [PASS][23] -> [DMESG-WARN][24] ([i915#180]) +1 similar issue [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-kbl4/igt@gem_workarounds@suspend-resume-fd.html [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl7/igt@gem_workarounds@suspend-resume-fd.html * igt@gen7_exec_parse@basic-rejected: - shard-tglb: NOTRUN -> [SKIP][25] ([fdo#109289]) [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-tglb2/igt@gen7_exec_parse@basic-rejected.html - shard-iclb: NOTRUN -> [SKIP][26] ([fdo#109289]) [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb3/igt@gen7_exec_parse@basic-rejected.html * igt@gen9_exec_parse@batch-invalid-length: - shard-snb: NOTRUN -> [SKIP][27] ([fdo#109271]) +331 similar issues [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-snb2/igt@gen9_exec_parse@batch-invalid-length.html * igt@i915_pm_dc@dc6-dpms: - shard-kbl: NOTRUN -> [FAIL][28] ([i915#454]) [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl3/igt@i915_pm_dc@dc6-dpms.html * igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-dp: - shard-apl: NOTRUN -> [SKIP][29] ([fdo#109271] / [i915#1937]) [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl8/igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-dp.html * igt@i915_pm_rc6_residency@rc6-fence: - shard-tglb: NOTRUN -> [WARN][30] ([i915#2681]) [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-tglb2/igt@i915_pm_rc6_residency@rc6-fence.html - shard-iclb: NOTRUN -> [WARN][31] ([i915#1804] / [i915#2684]) [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb4/igt@i915_pm_rc6_residency@rc6-fence.html * igt@i915_pm_rpm@modeset-lpsp-stress: - shard-apl: NOTRUN -> [SKIP][32] ([fdo#109271]) +205 similar issues [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl6/igt@i915_pm_rpm@modeset-lpsp-stress.html * igt@i915_suspend@fence-restore-untiled: - shard-apl: [PASS][33] -> [DMESG-WARN][34] ([i915#180]) [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-apl2/igt@i915_suspend@fence-restore-untiled.html [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl2/igt@i915_suspend@fence-restore-untiled.html * igt@kms_big_fb@x-tiled-32bpp-rotate-270: - shard-iclb: NOTRUN -> [SKIP][35] ([fdo#110725] / [fdo#111614]) +1 similar issue [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb4/igt@kms_big_fb@x-tiled-32bpp-rotate-270.html * igt@kms_big_fb@y-tiled-8bpp-rotate-90: - shard-glk: NOTRUN -> [SKIP][36] ([fdo#109271]) +14 similar issues [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-glk4/igt@kms_big_fb@y-tiled-8bpp-rotate-90.html - shard-tglb: NOTRUN -> [SKIP][37] ([fdo#111614]) +1 similar issue [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-tglb5/igt@kms_big_fb@y-tiled-8bpp-rotate-90.html * igt@kms_big_fb@yf-tiled-32bpp-rotate-270: - shard-tglb: NOTRUN -> [SKIP][38] ([fdo#111615]) [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-tglb6/igt@kms_big_fb@yf-tiled-32bpp-rotate-270.html * igt@kms_chamelium@hdmi-edid-change-during-suspend: - shard-apl: NOTRUN -> [SKIP][39] ([fdo#109271] / [fdo#111827]) +21 similar issues [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl6/igt@kms_chamelium@hdmi-edid-change-during-suspend.html * igt@kms_chamelium@vga-hpd-without-ddc: - shard-snb: NOTRUN -> [SKIP][40] ([fdo#109271] / [fdo#111827]) +16 similar issues [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-snb6/igt@kms_chamelium@vga-hpd-without-ddc.html * igt@kms_color_chamelium@pipe-b-degamma: - shard-glk: NOTRUN -> [SKIP][41] ([fdo#109271] / [fdo#111827]) [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-glk9/igt@kms_color_chamelium@pipe-b-degamma.html - shard-tglb: NOTRUN -> [SKIP][42] ([fdo#109284] / [fdo#111827]) [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-tglb2/igt@kms_color_chamelium@pipe-b-degamma.html - shard-iclb: NOTRUN -> [SKIP][43] ([fdo#109284] / [fdo#111827]) [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb4/igt@kms_color_chamelium@pipe-b-degamma.html * igt@kms_color_chamelium@pipe-c-ctm-0-25: - shard-kbl: NOTRUN -> [SKIP][44] ([fdo#109271] / [fdo#111827]) +10 similar issues [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl7/igt@kms_color_chamelium@pipe-c-ctm-0-25.html * igt@kms_content_protection@lic: - shard-kbl: NOTRUN -> [TIMEOUT][45] ([i915#1319]) [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl7/igt@kms_content_protection@lic.html * igt@kms_content_protection@uevent: - shard-apl: NOTRUN -> [FAIL][46] ([i915#2105]) [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl7/igt@kms_content_protection@uevent.html * igt@kms_cursor_crc@pipe-c-cursor-512x512-onscreen: - shard-tglb: NOTRUN -> [SKIP][47] ([fdo#109279] / [i915#3359]) [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-tglb3/igt@kms_cursor_crc@pipe-c-cursor-512x512-onscreen.html - shard-iclb: NOTRUN -> [SKIP][48] ([fdo#109278] / [fdo#109279]) [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb5/igt@kms_cursor_crc@pipe-c-cursor-512x512-onscreen.html * igt@kms_cursor_crc@pipe-c-cursor-64x64-random: - shard-kbl: [PASS][49] -> [FAIL][50] ([i915#54]) [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-kbl7/igt@kms_cursor_crc@pipe-c-cursor-64x64-random.html [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl3/igt@kms_cursor_crc@pipe-c-cursor-64x64-random.html - shard-apl: NOTRUN -> [FAIL][51] ([i915#54]) +1 similar issue [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl8/igt@kms_cursor_crc@pipe-c-cursor-64x64-random.html - shard-glk: [PASS][52] -> [FAIL][53] ([i915#54]) [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-glk2/igt@kms_cursor_crc@pipe-c-cursor-64x64-random.html [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-glk9/igt@kms_cursor_crc@pipe-c-cursor-64x64-random.html * igt@kms_cursor_crc@pipe-d-cursor-256x85-onscreen: - shard-iclb: NOTRUN -> [SKIP][54] ([fdo#109278]) +2 similar issues [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb6/igt@kms_cursor_crc@pipe-d-cursor-256x85-onscreen.html * igt@kms_cursor_crc@pipe-d-cursor-suspend: - shard-kbl: NOTRUN -> [SKIP][55] ([fdo#109271]) +103 similar issues [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl6/igt@kms_cursor_crc@pipe-d-cursor-suspend.html * igt@kms_cursor_legacy@pipe-d-torture-bo: - shard-kbl: NOTRUN -> [SKIP][56] ([fdo#109271] / [i915#533]) +1 similar issue [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl7/igt@kms_cursor_legacy@pipe-d-torture-bo.html * igt@kms_draw_crc@draw-method-rgb565-render-ytiled: - shard-glk: [PASS][57] -> [FAIL][58] ([i915#52] / [i915#54]) +2 similar issues [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-glk9/igt@kms_draw_crc@draw-method-rgb565-render-ytiled.html [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-glk7/igt@kms_draw_crc@draw-method-rgb565-render-ytiled.html * igt@kms_draw_crc@draw-method-xrgb8888-pwrite-xtiled: - shard-glk: NOTRUN -> [FAIL][59] ([i915#52] / [i915#54]) [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-glk6/igt@kms_draw_crc@draw-method-xrgb8888-pwrite-xtiled.html * igt@kms_flip@flip-vs-expired-vblank@c-hdmi-a1: - shard-glk: [PASS][60] -> [FAIL][61] ([i915#79]) [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-glk2/igt@kms_flip@flip-vs-expired-vblank@c-hdmi-a1.html [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-glk8/igt@kms_flip@flip-vs-expired-vblank@c-hdmi-a1.html * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs: - shard-apl: NOTRUN -> [SKIP][62] ([fdo#109271] / [i915#2672]) [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl8/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs.html * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile: - shard-apl: NOTRUN -> [SKIP][63] ([fdo#109271] / [i915#2642]) +1 similar issue [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl1/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile.html * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-plflip-blt: - shard-iclb: [PASS][64] -> [FAIL][65] ([i915#49]) [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-iclb1/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-plflip-blt.html [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb3/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-shrfb-plflip-blt.html * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-onoff: - shard-iclb: NOTRUN -> [SKIP][66] ([fdo#109280]) [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb1/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-onoff.html - shard-tglb: NOTRUN -> [SKIP][67] ([fdo#111825]) [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-tglb6/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-onoff.html * igt@kms_hdmi_inject@inject-audio: - shard-tglb: [PASS][68] -> [SKIP][69] ([i915#433]) [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-tglb3/igt@kms_hdmi_inject@inject-audio.html [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-tglb3/igt@kms_hdmi_inject@inject-audio.html * igt@kms_plane_alpha_blend@pipe-a-alpha-basic: - shard-apl: NOTRUN -> [FAIL][70] ([fdo#108145] / [i915#265]) +2 similar issues [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl7/igt@kms_plane_alpha_blend@pipe-a-alpha-basic.html * igt@kms_plane_alpha_blend@pipe-b-alpha-7efc: - shard-kbl: NOTRUN -> [FAIL][71] ([fdo#108145] / [i915#265]) [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl2/igt@kms_plane_alpha_blend@pipe-b-alpha-7efc.html * igt@kms_plane_alpha_blend@pipe-c-alpha-transparent-fb: - shard-apl: NOTRUN -> [FAIL][72] ([i915#265]) [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl2/igt@kms_plane_alpha_blend@pipe-c-alpha-transparent-fb.html * igt@kms_psr2_sf@cursor-plane-update-sf: - shard-iclb: NOTRUN -> [SKIP][73] ([i915#658]) [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb5/igt@kms_psr2_sf@cursor-plane-update-sf.html * igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-1: - shard-kbl: NOTRUN -> [SKIP][74] ([fdo#109271] / [i915#658]) +2 similar issues [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl3/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area-1.html * igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-5: - shard-apl: NOTRUN -> [SKIP][75] ([fdo#109271] / [i915#658]) +6 similar issues [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl1/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-5.html * igt@kms_psr2_su@page_flip: - shard-glk: NOTRUN -> [SKIP][76] ([fdo#109271] / [i915#658]) +1 similar issue [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-glk7/igt@kms_psr2_su@page_flip.html - shard-iclb: NOTRUN -> [SKIP][77] ([fdo#109642] / [fdo#111068] / [i915#658]) [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb3/igt@kms_psr2_su@page_flip.html * igt@kms_psr@psr2_primary_render: - shard-iclb: NOTRUN -> [SKIP][78] ([fdo#109441]) [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb7/igt@kms_psr@psr2_primary_render.html * igt@kms_psr@psr2_sprite_mmap_gtt: - shard-iclb: [PASS][79] -> [SKIP][80] ([fdo#109441]) +1 similar issue [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-iclb2/igt@kms_psr@psr2_sprite_mmap_gtt.html [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb1/igt@kms_psr@psr2_sprite_mmap_gtt.html * igt@kms_sysfs_edid_timing: - shard-apl: NOTRUN -> [FAIL][81] ([IGT#2]) [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl6/igt@kms_sysfs_edid_timing.html * igt@kms_writeback@writeback-check-output: - shard-kbl: NOTRUN -> [SKIP][82] ([fdo#109271] / [i915#2437]) [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl1/igt@kms_writeback@writeback-check-output.html * igt@kms_writeback@writeback-fb-id: - shard-apl: NOTRUN -> [SKIP][83] ([fdo#109271] / [i915#2437]) [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl8/igt@kms_writeback@writeback-fb-id.html * igt@prime_udl: - shard-iclb: NOTRUN -> [SKIP][84] ([fdo#109291]) [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb5/igt@prime_udl.html - shard-tglb: NOTRUN -> [SKIP][85] ([fdo#109291]) [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-tglb6/igt@prime_udl.html * igt@prime_vgem@fence-write-hang: - shard-iclb: NOTRUN -> [SKIP][86] ([fdo#109295]) [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb8/igt@prime_vgem@fence-write-hang.html - shard-tglb: NOTRUN -> [SKIP][87] ([fdo#109295]) [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-tglb7/igt@prime_vgem@fence-write-hang.html * igt@runner@aborted: - shard-apl: NOTRUN -> ([FAIL][88], [FAIL][89]) ([i915#180] / [i915#3002]) [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl1/igt@runner@aborted.html [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl2/igt@runner@aborted.html * igt@sysfs_clients@recycle-many: - shard-apl: NOTRUN -> [SKIP][90] ([fdo#109271] / [i915#2994]) +3 similar issues [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-apl6/igt@sysfs_clients@recycle-many.html - shard-kbl: NOTRUN -> [SKIP][91] ([fdo#109271] / [i915#2994]) +1 similar issue [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl4/igt@sysfs_clients@recycle-many.html #### Possible fixes #### * igt@gem_exec_fair@basic-none-share@rcs0: - shard-iclb: [FAIL][92] ([i915#2842]) -> [PASS][93] [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-iclb6/igt@gem_exec_fair@basic-none-share@rcs0.html [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb8/igt@gem_exec_fair@basic-none-share@rcs0.html * igt@gem_exec_fair@basic-pace-share@rcs0: - shard-tglb: [FAIL][94] ([i915#2842]) -> [PASS][95] +1 similar issue [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-tglb3/igt@gem_exec_fair@basic-pace-share@rcs0.html [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-tglb5/igt@gem_exec_fair@basic-pace-share@rcs0.html * igt@gem_exec_fair@basic-pace@vecs0: - shard-glk: [FAIL][96] ([i915#2842]) -> [PASS][97] +3 similar issues [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-glk5/igt@gem_exec_fair@basic-pace@vecs0.html [97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-glk8/igt@gem_exec_fair@basic-pace@vecs0.html * igt@gem_exec_whisper@basic-contexts-priority-all: - shard-glk: [DMESG-WARN][98] ([i915#118] / [i915#95]) -> [PASS][99] [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-glk3/igt@gem_exec_whisper@basic-contexts-priority-all.html [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-glk9/igt@gem_exec_whisper@basic-contexts-priority-all.html * igt@gem_mmap_gtt@cpuset-basic-small-copy-xy: - shard-glk: [FAIL][100] ([i915#307]) -> [PASS][101] [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-glk8/igt@gem_mmap_gtt@cpuset-basic-small-copy-xy.html [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-glk2/igt@gem_mmap_gtt@cpuset-basic-small-copy-xy.html * igt@gem_mmap_gtt@cpuset-big-copy-odd: - shard-iclb: [FAIL][102] ([i915#2428]) -> [PASS][103] [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-iclb3/igt@gem_mmap_gtt@cpuset-big-copy-odd.html [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb4/igt@gem_mmap_gtt@cpuset-big-copy-odd.html * igt@kms_draw_crc@draw-method-rgb565-mmap-wc-untiled: - shard-glk: [FAIL][104] ([i915#52] / [i915#54]) -> [PASS][105] +5 similar issues [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-glk2/igt@kms_draw_crc@draw-method-rgb565-mmap-wc-untiled.html [105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-glk7/igt@kms_draw_crc@draw-method-rgb565-mmap-wc-untiled.html * igt@kms_flip@flip-vs-suspend-interruptible@a-dp1: - shard-kbl: [DMESG-WARN][106] ([i915#180]) -> [PASS][107] +5 similar issues [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-kbl7/igt@kms_flip@flip-vs-suspend-interruptible@a-dp1.html [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl6/igt@kms_flip@flip-vs-suspend-interruptible@a-dp1.html * igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes: - shard-snb: [DMESG-WARN][108] -> [PASS][109] [108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-snb2/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-snb5/igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes.html * igt@kms_psr@psr2_cursor_render: - shard-iclb: [SKIP][110] ([fdo#109441]) -> [PASS][111] [110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-iclb3/igt@kms_psr@psr2_cursor_render.html [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb2/igt@kms_psr@psr2_cursor_render.html #### Warnings #### * igt@kms_dp_dsc@basic-dsc-enable-edp: - shard-iclb: [SKIP][112] ([fdo#109349]) -> [DMESG-WARN][113] ([i915#1226]) [112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-iclb5/igt@kms_dp_dsc@basic-dsc-enable-edp.html [113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb2/igt@kms_dp_dsc@basic-dsc-enable-edp.html * igt@kms_psr2_sf@plane-move-sf-dmg-area-2: - shard-iclb: [SKIP][114] ([i915#658]) -> [SKIP][115] ([i915#2920]) [114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-iclb5/igt@kms_psr2_sf@plane-move-sf-dmg-area-2.html [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb2/igt@kms_psr2_sf@plane-move-sf-dmg-area-2.html * igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-3: - shard-iclb: [SKIP][116] ([i915#2920]) -> [SKIP][117] ([i915#658]) +1 similar issue [116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-iclb2/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-3.html [117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-iclb7/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-3.html * igt@runner@aborted: - shard-kbl: ([FAIL][118], [FAIL][119], [FAIL][120], [FAIL][121], [FAIL][122], [FAIL][123]) ([i915#1436] / [i915#180] / [i915#1814] / [i915#2292] / [i915#3002]) -> ([FAIL][124], [FAIL][125], [FAIL][126], [FAIL][127], [FAIL][128]) ([i915#1436] / [i915#180] / [i915#1814] / [i915#3002]) [118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-kbl4/igt@runner@aborted.html [119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-kbl7/igt@runner@aborted.html [120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-kbl4/igt@runner@aborted.html [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-kbl7/igt@runner@aborted.html [122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-kbl7/igt@runner@aborted.html [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6063/shard-kbl7/igt@runner@aborted.html [124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl7/igt@runner@aborted.html [125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl7/igt@runner@aborted.html [126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl7/igt@runner@aborted.html [127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl7/igt@runner@aborted.html [128]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/shard-kbl1/igt@runner@aborted.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [IGT#2]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/2 [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145 [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271 [fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278 [fdo#109279]: https://bugs.freedesktop.org/show_bug.cgi?id=109279 [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280 [fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284 [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#109349]: https://bugs.freedesktop.org/show_bug.cgi?id=109349 [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441 [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642 [fdo#110725]: https://bugs.freedesktop.org/show_bug.cgi?id=110725 [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 [i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099 [i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118 [i915#1226]: https://gitlab.freedesktop.org/drm/intel/issues/1226 [i915#1319]: https://gitlab.freedesktop.org/drm/intel/issues/1319 [i915#1436]: https://gitlab.freedesktop.org/drm/intel/issues/1436 [i915#1699]: https://gitlab.freedesktop.org/drm/intel/issues/1699 [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180 [i915#1804]: https://gitlab.freedesktop.org/drm/intel/issues/1804 [i915#1814]: https://gitlab.freedesktop.org/drm/intel/issues/1814 [i915#1937]: https://gitlab.freedesktop.org/drm/intel/issues/1937 [i915#2105]: https://gitlab.freedesktop.org/drm/intel/issues/2105 [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190 [i915#2292]: https://gitlab.freedesktop.org/drm/intel/issues/2292 [i915#2389]: https://gitlab.freedesktop.org/drm/intel/issues/2389 [i915#2428]: https://gitlab.freedesktop.org/drm/intel/issues/2428 [i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437 [i915#2642]: https://gitlab.freedesktop.org/drm/intel/issues/2642 [i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265 [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#2684]: https://gitlab.freedesktop.org/drm/intel/issues/2684 [i915#2808]: https://gitlab.freedesktop.org/drm/intel/issues/2808 [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842 [i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920 [i915#2994]: https://gitlab.freedesktop.org/drm/intel/issues/2994 [i915#3002]: https://gitlab.freedesktop.org/drm/intel/issues/3002 [i915#307]: https://gitlab.freedesktop.org/drm/intel/issues/307 [i915#3160]: https://gitlab.freedesktop.org/drm/intel/issues/3160 [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297 [i915#3324]: https://gitlab.freedesktop.org/drm/intel/issues/3324 [i915#3354]: https://gitlab.freedesktop.org/drm/intel/issues/3354 [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359 [i915#433]: https://gitlab.freedesktop.org/drm/intel/issues/433 [i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454 [i915#49]: https://gitlab.freedesktop.org/drm/intel/issues/49 [i915#52]: https://gitlab.freedesktop.org/drm/intel/issues/52 [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533 [i915#54]: https://gitlab.freedesktop.org/drm/intel/issues/54 [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658 [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79 [i915#95]: https://gitlab.freedesktop.org/drm/intel/issues/95 Participating hosts (8 -> 8) ------------------------------ No changes in participating == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_5724/index.html [-- Attachment #1.2: Type: text/html, Size: 38301 bytes --] [-- Attachment #2: Type: text/plain, Size: 154 bytes --] _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* [igt-dev] [PATCH i-g-t 1/5] lib/igt_kms: Add a support to read PATH connector property 2021-04-09 19:30 [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests Bhanuprakash Modem 2021-04-09 13:25 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork 2021-04-09 15:55 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork @ 2021-04-09 19:30 ` Bhanuprakash Modem 2021-04-09 19:30 ` [igt-dev] [PATCH i-g-t 2/5] lib/igt_kms: Identify outputs that shares link bandwidth Bhanuprakash Modem ` (4 subsequent siblings) 7 siblings, 0 replies; 17+ messages in thread From: Bhanuprakash Modem @ 2021-04-09 19:30 UTC (permalink / raw) To: igt-dev; +Cc: Petri Latvala Add a support to read the connector property "PATH" Cc: Imre Deak <imre.deak@intel.com> Cc: Ankit Nautiyal <ankit.k.nautiyal@intel.com> Cc: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> --- lib/igt_kms.c | 1 + lib/igt_kms.h | 1 + 2 files changed, 2 insertions(+) diff --git a/lib/igt_kms.c b/lib/igt_kms.c index 08d429a81..f1a989368 100644 --- a/lib/igt_kms.c +++ b/lib/igt_kms.c @@ -426,6 +426,7 @@ const char * const igt_connector_prop_names[IGT_NUM_CONNECTOR_PROPS] = { [IGT_CONNECTOR_WRITEBACK_FB_ID] = "WRITEBACK_FB_ID", [IGT_CONNECTOR_WRITEBACK_OUT_FENCE_PTR] = "WRITEBACK_OUT_FENCE_PTR", [IGT_CONNECTOR_DITHERING_MODE] = "dithering mode", + [IGT_CONNECTOR_PATH] = "PATH", }; /* diff --git a/lib/igt_kms.h b/lib/igt_kms.h index 09b10b3e0..39a1ea570 100644 --- a/lib/igt_kms.h +++ b/lib/igt_kms.h @@ -132,6 +132,7 @@ enum igt_atomic_connector_properties { IGT_CONNECTOR_WRITEBACK_FB_ID, IGT_CONNECTOR_WRITEBACK_OUT_FENCE_PTR, IGT_CONNECTOR_DITHERING_MODE, + IGT_CONNECTOR_PATH, IGT_NUM_CONNECTOR_PROPS }; -- 2.20.1 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 17+ messages in thread
* [igt-dev] [PATCH i-g-t 2/5] lib/igt_kms: Identify outputs that shares link bandwidth 2021-04-09 19:30 [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests Bhanuprakash Modem ` (2 preceding siblings ...) 2021-04-09 19:30 ` [igt-dev] [PATCH i-g-t 1/5] lib/igt_kms: Add a support to read PATH connector property Bhanuprakash Modem @ 2021-04-09 19:30 ` Bhanuprakash Modem 2021-04-09 19:30 ` [igt-dev] [PATCH i-g-t 3/5] lib/igt_kms: helper to override the mode on all connectors Bhanuprakash Modem ` (3 subsequent siblings) 7 siblings, 0 replies; 17+ messages in thread From: Bhanuprakash Modem @ 2021-04-09 19:30 UTC (permalink / raw) To: igt-dev; +Cc: Petri Latvala We have to read the PATH property and parse it to identify the connector that shares the BW of the same link. Parsing the PATH property consists of finding all connectors with the same X prefix in the X-Y[-Z...] path property format and assigning a unique non-zero link_group_id to all such connectors. Connectors without a PATH property are not an MST output, so their link_group_id can be left at 0. v2: Update the link_group_id in igt_output_refresh(). (Ankit) Cc: Imre Deak <imre.deak@intel.com> Cc: Ankit Nautiyal <ankit.k.nautiyal@intel.com> Cc: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> --- lib/igt_kms.c | 29 +++++++++++++++++++++++++++++ lib/igt_kms.h | 1 + 2 files changed, 30 insertions(+) diff --git a/lib/igt_kms.c b/lib/igt_kms.c index f1a989368..1ba938982 100644 --- a/lib/igt_kms.c +++ b/lib/igt_kms.c @@ -1684,6 +1684,32 @@ static void igt_display_log_shift(igt_display_t *display, int shift) igt_assert(display->log_shift >= 0); } +static +void igt_update_output_link_group_id(int drmfd, igt_output_t *output) +{ + uint64_t blob_id; + drmModePropertyBlobPtr blob; + char *temp; + + if(!igt_output_has_prop(output, IGT_CONNECTOR_PATH)) { + output->link_group_id = 0; + return; + } + + blob_id = igt_output_get_prop(output, IGT_CONNECTOR_PATH); + blob = drmModeGetPropertyBlob(drmfd, blob_id); + igt_assert(blob); + + temp = strtok((char *)blob->data, ":"); + if (strcmp(temp, "mst") == 0) + output->link_group_id = atoi(strtok(NULL, "-")); + else + output->link_group_id = 0; + + drmModeFreePropertyBlob(blob); + return; +} + void igt_output_refresh(igt_output_t *output) { igt_display_t *display = output->display; @@ -1709,6 +1735,9 @@ void igt_output_refresh(igt_output_t *output) igt_atomic_fill_connector_props(display, output, IGT_NUM_CONNECTOR_PROPS, igt_connector_prop_names); + /* Identify all connectors that share the BW of the same link */ + igt_update_output_link_group_id(display->drm_fd, output); + LOG(display, "%s: Selecting pipe %s\n", output->name, kmstest_pipe_name(output->pending_pipe)); } diff --git a/lib/igt_kms.h b/lib/igt_kms.h index 39a1ea570..c828e78b5 100644 --- a/lib/igt_kms.h +++ b/lib/igt_kms.h @@ -386,6 +386,7 @@ typedef struct { drmModeModeInfo override_mode; int32_t writeback_out_fence_fd; + int link_group_id; /* bitmask of changed properties */ uint64_t changed; -- 2.20.1 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 17+ messages in thread
* [igt-dev] [PATCH i-g-t 3/5] lib/igt_kms: helper to override the mode on all connectors 2021-04-09 19:30 [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests Bhanuprakash Modem ` (3 preceding siblings ...) 2021-04-09 19:30 ` [igt-dev] [PATCH i-g-t 2/5] lib/igt_kms: Identify outputs that shares link bandwidth Bhanuprakash Modem @ 2021-04-09 19:30 ` Bhanuprakash Modem 2021-04-09 19:30 ` [igt-dev] [PATCH i-g-t 4/5] tests/kms_frontbuffer_tracking: Fix mode selection for 2x tests Bhanuprakash Modem ` (2 subsequent siblings) 7 siblings, 0 replies; 17+ messages in thread From: Bhanuprakash Modem @ 2021-04-09 19:30 UTC (permalink / raw) To: igt-dev; +Cc: Petri Latvala This helper will iterate through all connectors those have a pending_pipe != PIPE_NONE set by the test upto the point of calling this helper. And find the combination using the most bandwidth by ATOMIC_TEST_ONLY then return to the test. This helper would override the mode on all connectors that will be modeset by the next igt_display_commit() call in the test. Cc: Imre Deak <imre.deak@intel.com> Cc: Ankit Nautiyal <ankit.k.nautiyal@intel.com> Cc: Petri Latvala <petri.latvala@intel.com> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> --- lib/igt_kms.c | 41 +++++++++++++++++++++++++++++++++++++++++ lib/igt_kms.h | 1 + 2 files changed, 42 insertions(+) diff --git a/lib/igt_kms.c b/lib/igt_kms.c index 1ba938982..c439456c5 100644 --- a/lib/igt_kms.c +++ b/lib/igt_kms.c @@ -3871,6 +3871,47 @@ void igt_output_set_pipe(igt_output_t *output, enum pipe pipe) } } +#define for_each_connector_mode(output) \ + for (int i__ = 0; i__ < output->config.connector->count_modes; i__++) + +static +bool __override_all_active_output_modes_to_fit_link_bw(igt_display_t *display, int base) +{ + for ( ; base < display->n_outputs; base++) { + igt_output_t *output = &display->outputs[base]; + + if (output->pending_pipe == PIPE_NONE || + output->link_group_id <= 0) + continue; + + for_each_connector_mode(output) { + igt_output_override_mode(output, &output->config.connector->modes[i__]); + if(__override_all_active_output_modes_to_fit_link_bw(display, base + 1)) + return true; + + if(igt_display_try_commit_atomic(display, + DRM_MODE_ATOMIC_TEST_ONLY | + DRM_MODE_ATOMIC_ALLOW_MODESET, + NULL) == 0) + return true; + } + } + return false; +} + +/** + * override_all_active_output_modes_to_fit_link_bw: + * @display: a pointer to an #igt_display_t structure + * + * Override the mode on all connectors those are sharing the link bw + * + * Returns: true if a valid connector mode combo found, else false + */ +bool override_all_active_output_modes_to_fit_link_bw(igt_display_t *display) +{ + return __override_all_active_output_modes_to_fit_link_bw(display, 0); +} + /* * igt_pipe_refresh: * @display: a pointer to an #igt_display_t structure diff --git a/lib/igt_kms.h b/lib/igt_kms.h index c828e78b5..2998cf377 100644 --- a/lib/igt_kms.h +++ b/lib/igt_kms.h @@ -894,5 +894,6 @@ void igt_require_pipe(igt_display_t *display, void igt_dump_connectors_fd(int drmfd); void igt_dump_crtcs_fd(int drmfd); +bool override_all_active_output_modes_to_fit_link_bw(igt_display_t *display); #endif /* __IGT_KMS_H__ */ -- 2.20.1 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 17+ messages in thread
* [igt-dev] [PATCH i-g-t 4/5] tests/kms_frontbuffer_tracking: Fix mode selection for 2x tests 2021-04-09 19:30 [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests Bhanuprakash Modem ` (4 preceding siblings ...) 2021-04-09 19:30 ` [igt-dev] [PATCH i-g-t 3/5] lib/igt_kms: helper to override the mode on all connectors Bhanuprakash Modem @ 2021-04-09 19:30 ` Bhanuprakash Modem 2021-04-09 19:30 ` [igt-dev] [PATCH i-g-t 5/5] tests/kms_cursor_legacy: " Bhanuprakash Modem 2021-04-09 20:18 ` [igt-dev] [PATCH i-g-t 0/5] " Daniel Vetter 7 siblings, 0 replies; 17+ messages in thread From: Bhanuprakash Modem @ 2021-04-09 19:30 UTC (permalink / raw) To: igt-dev When two monitors connected through MST, the second monitor also tries to use the same mode. So two such modes may not fit into the link bandwidth. This patch will find a combination of modes that fit into the BW. Cc: Imre Deak <imre.deak@intel.com> Cc: Ankit Nautiyal <ankit.k.nautiyal@intel.com> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> --- tests/kms_frontbuffer_tracking.c | 35 ++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/tests/kms_frontbuffer_tracking.c b/tests/kms_frontbuffer_tracking.c index 2e74bec6f..1c9b76a18 100644 --- a/tests/kms_frontbuffer_tracking.c +++ b/tests/kms_frontbuffer_tracking.c @@ -1683,6 +1683,33 @@ static void enable_prim_screen_and_wait(const struct test_mode *t) do_assertions(ASSERT_NO_ACTION_CHANGE); } +static void update_modeset_cached_params(void) +{ + bool found = false; + + igt_output_set_pipe(prim_mode_params.output, prim_mode_params.pipe); + igt_output_set_pipe(scnd_mode_params.output, scnd_mode_params.pipe); + + found = override_all_active_output_modes_to_fit_link_bw(&drm.display); + igt_require_f(found, "No valid mode combo found.\n"); + + prim_mode_params.mode_copy = *igt_output_get_mode(prim_mode_params.output); + prim_mode_params.mode = &prim_mode_params.mode_copy; + prim_mode_params.primary.w = prim_mode_params.mode->hdisplay; + prim_mode_params.primary.h = prim_mode_params.mode->vdisplay; + + scnd_mode_params.mode_copy = *igt_output_get_mode(scnd_mode_params.output); + scnd_mode_params.mode = &scnd_mode_params.mode_copy; + scnd_mode_params.primary.w = scnd_mode_params.mode->hdisplay; + scnd_mode_params.primary.h = scnd_mode_params.mode->vdisplay; + + fill_fb_region(&prim_mode_params.primary, COLOR_PRIM_BG); + fill_fb_region(&scnd_mode_params.primary, COLOR_SCND_BG); + + __set_mode_for_params(&prim_mode_params); + __set_mode_for_params(&scnd_mode_params); +} + static void enable_both_screens_and_wait(const struct test_mode *t) { fill_fb_region(&prim_mode_params.primary, COLOR_PRIM_BG); @@ -1691,6 +1718,14 @@ static void enable_both_screens_and_wait(const struct test_mode *t) __set_mode_for_params(&prim_mode_params); __set_mode_for_params(&scnd_mode_params); + if (prim_mode_params.output->link_group_id != 0 && + prim_mode_params.output->link_group_id == scnd_mode_params.output->link_group_id && + igt_display_try_commit_atomic(&drm.display, + DRM_MODE_ATOMIC_TEST_ONLY | + DRM_MODE_ATOMIC_ALLOW_MODESET, + NULL) != 0) + update_modeset_cached_params(); + igt_display_commit2(&drm.display, drm.display.is_atomic ? COMMIT_ATOMIC : COMMIT_LEGACY); wanted_crc = &blue_crcs[t->format].crc; -- 2.20.1 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 17+ messages in thread
* [igt-dev] [PATCH i-g-t 5/5] tests/kms_cursor_legacy: Fix mode selection for 2x tests 2021-04-09 19:30 [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests Bhanuprakash Modem ` (5 preceding siblings ...) 2021-04-09 19:30 ` [igt-dev] [PATCH i-g-t 4/5] tests/kms_frontbuffer_tracking: Fix mode selection for 2x tests Bhanuprakash Modem @ 2021-04-09 19:30 ` Bhanuprakash Modem 2021-04-09 20:18 ` [igt-dev] [PATCH i-g-t 0/5] " Daniel Vetter 7 siblings, 0 replies; 17+ messages in thread From: Bhanuprakash Modem @ 2021-04-09 19:30 UTC (permalink / raw) To: igt-dev When two monitors connected through MST, the second monitor also tries to use the same mode. So two such modes may not fit into the link bandwidth. This patch will find a combination of modes that fit into the BW. Cc: Imre Deak <imre.deak@intel.com> Cc: Ankit Nautiyal <ankit.k.nautiyal@intel.com> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> --- tests/kms_cursor_legacy.c | 53 ++++++++++++++++++++++++++++++++++++--- 1 file changed, 50 insertions(+), 3 deletions(-) diff --git a/tests/kms_cursor_legacy.c b/tests/kms_cursor_legacy.c index 4723e1ff9..2fe11441c 100644 --- a/tests/kms_cursor_legacy.c +++ b/tests/kms_cursor_legacy.c @@ -50,6 +50,15 @@ IGT_TEST_DESCRIPTION("Stress legacy cursor ioctl"); igt_pipe_crc_t *pipe_crc; +static void override_output_modes(igt_display_t *display, igt_output_t *output, igt_output_t *output2) +{ + bool found = override_all_active_output_modes_to_fit_link_bw(display); + igt_require_f(found, "No valid mode combo found.\n"); + + output->pending_pipe = PIPE_NONE; + output2->pending_pipe = PIPE_NONE; +} + static void stress(igt_display_t *display, enum pipe pipe, int num_children, unsigned mode, int timeout) @@ -393,6 +402,7 @@ static void flip(igt_display_t *display, struct drm_mode_cursor arg[2]; uint64_t *results; struct igt_fb fb_info, fb_info2, argb_fb, cursor_fb, cursor_fb2; + igt_output_t *output, *output2; results = mmap(NULL, PAGE_SIZE, PROT_WRITE, MAP_SHARED | MAP_ANON, -1, 0); igt_assert(results != MAP_FAILED); @@ -406,9 +416,22 @@ static void flip(igt_display_t *display, if (mode >= flip_test_atomic) igt_require(display->is_atomic); - igt_require(set_fb_on_crtc(display, flip_pipe, &fb_info)); - if (flip_pipe != cursor_pipe) - igt_require(set_fb_on_crtc(display, cursor_pipe, &fb_info2)); + igt_require((output = set_fb_on_crtc(display, flip_pipe, &fb_info))); + if (flip_pipe != cursor_pipe) { + igt_require((output2 = set_fb_on_crtc(display, cursor_pipe, &fb_info2))); + + if (output->link_group_id != 0 && + output->link_group_id == output2->link_group_id && + igt_display_try_commit_atomic(display, + DRM_MODE_ATOMIC_TEST_ONLY | + DRM_MODE_ATOMIC_ALLOW_MODESET, + NULL) != 0) { + override_output_modes(display, output, output2); + + igt_require((output = set_fb_on_crtc(display, flip_pipe, &fb_info))); + igt_require((output2 = set_fb_on_crtc(display, cursor_pipe, &fb_info2))); + } + } igt_create_color_fb(display->drm_fd, fb_info.width, fb_info.height, DRM_FORMAT_ARGB8888, 0, .5, .5, .5, &cursor_fb); @@ -879,6 +902,18 @@ static void two_screens_flip_vs_cursor(igt_display_t *display, int nloops, bool igt_require((output = set_fb_on_crtc(display, pipe, &fb_info))); igt_require((output2 = set_fb_on_crtc(display, pipe2, &fb2_info))); + if (output->link_group_id != 0 && + output->link_group_id == output2->link_group_id && + igt_display_try_commit_atomic(display, + DRM_MODE_ATOMIC_TEST_ONLY | + DRM_MODE_ATOMIC_ALLOW_MODESET, + NULL) != 0) { + override_output_modes(display, output, output2); + + igt_require((output = set_fb_on_crtc(display, pipe, &fb_info))); + igt_require((output2 = set_fb_on_crtc(display, pipe2, &fb2_info))); + } + igt_create_color_fb(display->drm_fd, 64, 64, DRM_FORMAT_ARGB8888, 0, 1., 1., 1., &cursor_fb); set_cursor_on_pipe(display, pipe, &cursor_fb); populate_cursor_args(display, pipe, arg1, &cursor_fb); @@ -1129,6 +1164,18 @@ static void two_screens_cursor_vs_flip(igt_display_t *display, int nloops, bool igt_require((outputs[0] = set_fb_on_crtc(display, pipe[0], &fb_info[0]))); igt_require((outputs[1] = set_fb_on_crtc(display, pipe[1], &fb_info[1]))); + if (outputs[0]->link_group_id != 0 && + outputs[0]->link_group_id == outputs[1]->link_group_id && + igt_display_try_commit_atomic(display, + DRM_MODE_ATOMIC_TEST_ONLY | + DRM_MODE_ATOMIC_ALLOW_MODESET, + NULL) != 0) { + override_output_modes(display, outputs[0], outputs[1]); + + igt_require((outputs[0] = set_fb_on_crtc(display, pipe[0], &fb_info[0]))); + igt_require((outputs[1] = set_fb_on_crtc(display, pipe[1], &fb_info[1]))); + } + igt_create_color_fb(display->drm_fd, 64, 64, DRM_FORMAT_ARGB8888, 0, 1., 1., 1., &cursor_fb); set_cursor_on_pipe(display, pipe[0], &cursor_fb); -- 2.20.1 _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply related [flat|nested] 17+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests 2021-04-09 19:30 [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests Bhanuprakash Modem ` (6 preceding siblings ...) 2021-04-09 19:30 ` [igt-dev] [PATCH i-g-t 5/5] tests/kms_cursor_legacy: " Bhanuprakash Modem @ 2021-04-09 20:18 ` Daniel Vetter 2021-04-12 3:51 ` Modem, Bhanuprakash 7 siblings, 1 reply; 17+ messages in thread From: Daniel Vetter @ 2021-04-09 20:18 UTC (permalink / raw) To: Bhanuprakash Modem; +Cc: IGT development On Fri, Apr 9, 2021 at 1:39 PM Bhanuprakash Modem <bhanuprakash.modem@intel.com> wrote: > > When two monitors connected through MST, the second monitor also > tries to use the same mode. So two such modes may not fit into the > link bandwidth. > > This series will find a combination of modes that fit into the BW. > > By parsing the PATH property, we can add a link_group_id field to > igt_output_t to identify all connectors that shares the BW of the > same link. > > Parsing the PATH property consists of finding all connectors with > the same X prefix in the X-Y[-Z...] path property format and assigning > a unique non-zero link_group_id to all such connectors. Connectors > without a PATH property are not an MST output, so their link_group_id > can be left at 0. > > IGT core helper would override the mode on all connectors that will > be modeset by the next igt_display_commit() call in the test. These > are all the connectors in igt_display_t that have a pending_pipe set > by the test up to the point of calling this helper. > > Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> Uh this is really not how kms is supposed to work. There are _tons_ of reasons why 2 crtc at the same time wont work, mst bw constraint is just one. If you want to fix this, this should be fixed with atomic TEST_ONLY mode to figure out what works and what doesn't. Not by trying to re-implement the kernel's atomic_check configuration validation, because you just can't do that. So nack on architectural reasons on this approach. -Daniel > > Bhanuprakash Modem (5): > lib/igt_kms: Add a support to read PATH connector property > lib/igt_kms: Identify outputs that shares link bandwidth > lib/igt_kms: helper to override the mode on all connectors > tests/kms_frontbuffer_tracking: Fix mode selection for 2x tests > tests/kms_cursor_legacy: Fix mode selection for 2x tests > > lib/igt_kms.c | 71 ++++++++++++++++++++++++++++++++ > lib/igt_kms.h | 3 ++ > tests/kms_cursor_legacy.c | 53 ++++++++++++++++++++++-- > tests/kms_frontbuffer_tracking.c | 35 ++++++++++++++++ > 4 files changed, 159 insertions(+), 3 deletions(-) > > -- > 2.20.1 > > _______________________________________________ > igt-dev mailing list > igt-dev@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/igt-dev -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests 2021-04-09 20:18 ` [igt-dev] [PATCH i-g-t 0/5] " Daniel Vetter @ 2021-04-12 3:51 ` Modem, Bhanuprakash 2021-04-14 15:24 ` Daniel Vetter 0 siblings, 1 reply; 17+ messages in thread From: Modem, Bhanuprakash @ 2021-04-12 3:51 UTC (permalink / raw) To: Daniel Vetter, Deak, Imre, Nautiyal, Ankit K; +Cc: IGT development > From: Daniel Vetter <daniel.vetter@ffwll.ch> > Sent: Saturday, April 10, 2021 1:48 AM > To: Modem, Bhanuprakash <bhanuprakash.modem@intel.com> > Cc: IGT development <igt-dev@lists.freedesktop.org> > Subject: Re: [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests > > On Fri, Apr 9, 2021 at 1:39 PM Bhanuprakash Modem > <bhanuprakash.modem@intel.com> wrote: > > > > When two monitors connected through MST, the second monitor also > > tries to use the same mode. So two such modes may not fit into the > > link bandwidth. > > > > This series will find a combination of modes that fit into the BW. > > > > By parsing the PATH property, we can add a link_group_id field to > > igt_output_t to identify all connectors that shares the BW of the > > same link. > > > > Parsing the PATH property consists of finding all connectors with > > the same X prefix in the X-Y[-Z...] path property format and assigning > > a unique non-zero link_group_id to all such connectors. Connectors > > without a PATH property are not an MST output, so their link_group_id > > can be left at 0. > > > > IGT core helper would override the mode on all connectors that will > > be modeset by the next igt_display_commit() call in the test. These > > are all the connectors in igt_display_t that have a pending_pipe set > > by the test up to the point of calling this helper. > > > > Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> > > Uh this is really not how kms is supposed to work. There are _tons_ of > reasons why 2 crtc at the same time wont work, mst bw constraint is > just one. > > If you want to fix this, this should be fixed with atomic TEST_ONLY In fact, we are doing the same in this series. By parsing the PATH connector prop, igt_output_refresh() will update the link_group_id field for each connector [1]. Each individual (Nx)-test will identify the connectors those are sharing the MST bw (by reading the link_group_id field in igt_output_t), and call the helper to find the suitable modes [2]. A helper function iterates through those N output/mode combinations. And find the combination using the most BW by ATOMIC_TEST_ONLY and returned to the test [3]. Am I missing anything? [1]: https://patchwork.freedesktop.org/patch/427718 [2]: https://patchwork.freedesktop.org/patch/427720 [3]: https://patchwork.freedesktop.org/patch/427719 N : 2,3,4,... -Bhanu > mode to figure out what works and what doesn't. Not by trying to > re-implement the kernel's atomic_check configuration validation, > because you just can't do that. > > So nack on architectural reasons on this approach. > -Daniel > > > > > Bhanuprakash Modem (5): > > lib/igt_kms: Add a support to read PATH connector property > > lib/igt_kms: Identify outputs that shares link bandwidth > > lib/igt_kms: helper to override the mode on all connectors > > tests/kms_frontbuffer_tracking: Fix mode selection for 2x tests > > tests/kms_cursor_legacy: Fix mode selection for 2x tests > > > > lib/igt_kms.c | 71 ++++++++++++++++++++++++++++++++ > > lib/igt_kms.h | 3 ++ > > tests/kms_cursor_legacy.c | 53 ++++++++++++++++++++++-- > > tests/kms_frontbuffer_tracking.c | 35 ++++++++++++++++ > > 4 files changed, 159 insertions(+), 3 deletions(-) > > > > -- > > 2.20.1 > > > > _______________________________________________ > > igt-dev mailing list > > igt-dev@lists.freedesktop.org > > https://lists.freedesktop.org/mailman/listinfo/igt-dev > > > > -- > Daniel Vetter > Software Engineer, Intel Corporation > http://blog.ffwll.ch _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests 2021-04-12 3:51 ` Modem, Bhanuprakash @ 2021-04-14 15:24 ` Daniel Vetter 2021-04-14 16:06 ` Imre Deak 0 siblings, 1 reply; 17+ messages in thread From: Daniel Vetter @ 2021-04-14 15:24 UTC (permalink / raw) To: Modem, Bhanuprakash; +Cc: IGT development On Mon, Apr 12, 2021 at 03:51:40AM +0000, Modem, Bhanuprakash wrote: > > From: Daniel Vetter <daniel.vetter@ffwll.ch> > > Sent: Saturday, April 10, 2021 1:48 AM > > To: Modem, Bhanuprakash <bhanuprakash.modem@intel.com> > > Cc: IGT development <igt-dev@lists.freedesktop.org> > > Subject: Re: [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests > > > > On Fri, Apr 9, 2021 at 1:39 PM Bhanuprakash Modem > > <bhanuprakash.modem@intel.com> wrote: > > > > > > When two monitors connected through MST, the second monitor also > > > tries to use the same mode. So two such modes may not fit into the > > > link bandwidth. > > > > > > This series will find a combination of modes that fit into the BW. > > > > > > By parsing the PATH property, we can add a link_group_id field to > > > igt_output_t to identify all connectors that shares the BW of the > > > same link. > > > > > > Parsing the PATH property consists of finding all connectors with > > > the same X prefix in the X-Y[-Z...] path property format and assigning > > > a unique non-zero link_group_id to all such connectors. Connectors > > > without a PATH property are not an MST output, so their link_group_id > > > can be left at 0. > > > > > > IGT core helper would override the mode on all connectors that will > > > be modeset by the next igt_display_commit() call in the test. These > > > are all the connectors in igt_display_t that have a pending_pipe set > > > by the test up to the point of calling this helper. > > > > > > Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> > > > > Uh this is really not how kms is supposed to work. There are _tons_ of > > reasons why 2 crtc at the same time wont work, mst bw constraint is > > just one. > > > > If you want to fix this, this should be fixed with atomic TEST_ONLY > In fact, we are doing the same in this series. > > By parsing the PATH connector prop, igt_output_refresh() will update the > link_group_id field for each connector [1]. > > Each individual (Nx)-test will identify the connectors those are sharing > the MST bw (by reading the link_group_id field in igt_output_t), and call > the helper to find the suitable modes [2]. > > A helper function iterates through those N output/mode combinations. And > find the combination using the most BW by ATOMIC_TEST_ONLY and returned > to the test [3]. > > Am I missing anything? Using TEST_ONLY sounds good. Trying to do clever filtering with PATH property before you call TEST_ONLY is not good. You should check with TEST_ONLY in general, not just when the path property indicates that the dp output is shared. -Daniel > > [1]: https://patchwork.freedesktop.org/patch/427718 > [2]: https://patchwork.freedesktop.org/patch/427720 > [3]: https://patchwork.freedesktop.org/patch/427719 > N : 2,3,4,... > > -Bhanu > > mode to figure out what works and what doesn't. Not by trying to > > re-implement the kernel's atomic_check configuration validation, > > because you just can't do that. > > > > So nack on architectural reasons on this approach. > > -Daniel > > > > > > > > Bhanuprakash Modem (5): > > > lib/igt_kms: Add a support to read PATH connector property > > > lib/igt_kms: Identify outputs that shares link bandwidth > > > lib/igt_kms: helper to override the mode on all connectors > > > tests/kms_frontbuffer_tracking: Fix mode selection for 2x tests > > > tests/kms_cursor_legacy: Fix mode selection for 2x tests > > > > > > lib/igt_kms.c | 71 ++++++++++++++++++++++++++++++++ > > > lib/igt_kms.h | 3 ++ > > > tests/kms_cursor_legacy.c | 53 ++++++++++++++++++++++-- > > > tests/kms_frontbuffer_tracking.c | 35 ++++++++++++++++ > > > 4 files changed, 159 insertions(+), 3 deletions(-) > > > > > > -- > > > 2.20.1 > > > > > > _______________________________________________ > > > igt-dev mailing list > > > igt-dev@lists.freedesktop.org > > > https://lists.freedesktop.org/mailman/listinfo/igt-dev > > > > > > > > -- > > Daniel Vetter > > Software Engineer, Intel Corporation > > http://blog.ffwll.ch -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests 2021-04-14 15:24 ` Daniel Vetter @ 2021-04-14 16:06 ` Imre Deak 2021-04-14 18:37 ` Daniel Vetter 0 siblings, 1 reply; 17+ messages in thread From: Imre Deak @ 2021-04-14 16:06 UTC (permalink / raw) To: Daniel Vetter; +Cc: IGT development On Wed, Apr 14, 2021 at 05:24:40PM +0200, Daniel Vetter wrote: > On Mon, Apr 12, 2021 at 03:51:40AM +0000, Modem, Bhanuprakash wrote: > > > From: Daniel Vetter <daniel.vetter@ffwll.ch> > > > Sent: Saturday, April 10, 2021 1:48 AM > > > To: Modem, Bhanuprakash <bhanuprakash.modem@intel.com> > > > Cc: IGT development <igt-dev@lists.freedesktop.org> > > > Subject: Re: [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests > > > > > > On Fri, Apr 9, 2021 at 1:39 PM Bhanuprakash Modem > > > <bhanuprakash.modem@intel.com> wrote: > > > > > > > > When two monitors connected through MST, the second monitor also > > > > tries to use the same mode. So two such modes may not fit into the > > > > link bandwidth. > > > > > > > > This series will find a combination of modes that fit into the BW. > > > > > > > > By parsing the PATH property, we can add a link_group_id field to > > > > igt_output_t to identify all connectors that shares the BW of the > > > > same link. > > > > > > > > Parsing the PATH property consists of finding all connectors with > > > > the same X prefix in the X-Y[-Z...] path property format and assigning > > > > a unique non-zero link_group_id to all such connectors. Connectors > > > > without a PATH property are not an MST output, so their link_group_id > > > > can be left at 0. > > > > > > > > IGT core helper would override the mode on all connectors that will > > > > be modeset by the next igt_display_commit() call in the test. These > > > > are all the connectors in igt_display_t that have a pending_pipe set > > > > by the test up to the point of calling this helper. > > > > > > > > Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> > > > > > > Uh this is really not how kms is supposed to work. There are _tons_ of > > > reasons why 2 crtc at the same time wont work, mst bw constraint is > > > just one. > > > > > > If you want to fix this, this should be fixed with atomic TEST_ONLY > > In fact, we are doing the same in this series. > > > > By parsing the PATH connector prop, igt_output_refresh() will update the > > link_group_id field for each connector [1]. > > > > Each individual (Nx)-test will identify the connectors those are sharing > > the MST bw (by reading the link_group_id field in igt_output_t), and call > > the helper to find the suitable modes [2]. > > > > A helper function iterates through those N output/mode combinations. And > > find the combination using the most BW by ATOMIC_TEST_ONLY and returned > > to the test [3]. > > > > Am I missing anything? > > Using TEST_ONLY sounds good. Trying to do clever filtering with PATH > property before you call TEST_ONLY is not good. You should check with > TEST_ONLY in general, not just when the path property indicates that the > dp output is shared. I think it would still make sense to find the working config first on outputs sharing a link bandwidth with TEST_ONLY and only then find the config with all required outputs included in the TEST_ONLY commit, starting with the modes found for outpus sharing a link. This is the way you could find the maximum resolution that can be used on each output. > -Daniel > > > > > [1]: https://patchwork.freedesktop.org/patch/427718 > > [2]: https://patchwork.freedesktop.org/patch/427720 > > [3]: https://patchwork.freedesktop.org/patch/427719 > > N : 2,3,4,... > > > > -Bhanu > > > mode to figure out what works and what doesn't. Not by trying to > > > re-implement the kernel's atomic_check configuration validation, > > > because you just can't do that. > > > > > > So nack on architectural reasons on this approach. > > > -Daniel > > > > > > > > > > > Bhanuprakash Modem (5): > > > > lib/igt_kms: Add a support to read PATH connector property > > > > lib/igt_kms: Identify outputs that shares link bandwidth > > > > lib/igt_kms: helper to override the mode on all connectors > > > > tests/kms_frontbuffer_tracking: Fix mode selection for 2x tests > > > > tests/kms_cursor_legacy: Fix mode selection for 2x tests > > > > > > > > lib/igt_kms.c | 71 ++++++++++++++++++++++++++++++++ > > > > lib/igt_kms.h | 3 ++ > > > > tests/kms_cursor_legacy.c | 53 ++++++++++++++++++++++-- > > > > tests/kms_frontbuffer_tracking.c | 35 ++++++++++++++++ > > > > 4 files changed, 159 insertions(+), 3 deletions(-) > > > > > > > > -- > > > > 2.20.1 > > > > > > > > _______________________________________________ > > > > igt-dev mailing list > > > > igt-dev@lists.freedesktop.org > > > > https://lists.freedesktop.org/mailman/listinfo/igt-dev > > > > > > > > > > > > -- > > > Daniel Vetter > > > Software Engineer, Intel Corporation > > > http://blog.ffwll.ch > > -- > Daniel Vetter > Software Engineer, Intel Corporation > http://blog.ffwll.ch _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests 2021-04-14 16:06 ` Imre Deak @ 2021-04-14 18:37 ` Daniel Vetter 2021-04-14 19:01 ` Imre Deak 0 siblings, 1 reply; 17+ messages in thread From: Daniel Vetter @ 2021-04-14 18:37 UTC (permalink / raw) To: Imre Deak; +Cc: IGT development, Daniel Vetter On Wed, Apr 14, 2021 at 07:06:49PM +0300, Imre Deak wrote: > On Wed, Apr 14, 2021 at 05:24:40PM +0200, Daniel Vetter wrote: > > On Mon, Apr 12, 2021 at 03:51:40AM +0000, Modem, Bhanuprakash wrote: > > > > From: Daniel Vetter <daniel.vetter@ffwll.ch> > > > > Sent: Saturday, April 10, 2021 1:48 AM > > > > To: Modem, Bhanuprakash <bhanuprakash.modem@intel.com> > > > > Cc: IGT development <igt-dev@lists.freedesktop.org> > > > > Subject: Re: [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests > > > > > > > > On Fri, Apr 9, 2021 at 1:39 PM Bhanuprakash Modem > > > > <bhanuprakash.modem@intel.com> wrote: > > > > > > > > > > When two monitors connected through MST, the second monitor also > > > > > tries to use the same mode. So two such modes may not fit into the > > > > > link bandwidth. > > > > > > > > > > This series will find a combination of modes that fit into the BW. > > > > > > > > > > By parsing the PATH property, we can add a link_group_id field to > > > > > igt_output_t to identify all connectors that shares the BW of the > > > > > same link. > > > > > > > > > > Parsing the PATH property consists of finding all connectors with > > > > > the same X prefix in the X-Y[-Z...] path property format and assigning > > > > > a unique non-zero link_group_id to all such connectors. Connectors > > > > > without a PATH property are not an MST output, so their link_group_id > > > > > can be left at 0. > > > > > > > > > > IGT core helper would override the mode on all connectors that will > > > > > be modeset by the next igt_display_commit() call in the test. These > > > > > are all the connectors in igt_display_t that have a pending_pipe set > > > > > by the test up to the point of calling this helper. > > > > > > > > > > Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com> > > > > > > > > Uh this is really not how kms is supposed to work. There are _tons_ of > > > > reasons why 2 crtc at the same time wont work, mst bw constraint is > > > > just one. > > > > > > > > If you want to fix this, this should be fixed with atomic TEST_ONLY > > > In fact, we are doing the same in this series. > > > > > > By parsing the PATH connector prop, igt_output_refresh() will update the > > > link_group_id field for each connector [1]. > > > > > > Each individual (Nx)-test will identify the connectors those are sharing > > > the MST bw (by reading the link_group_id field in igt_output_t), and call > > > the helper to find the suitable modes [2]. > > > > > > A helper function iterates through those N output/mode combinations. And > > > find the combination using the most BW by ATOMIC_TEST_ONLY and returned > > > to the test [3]. > > > > > > Am I missing anything? > > > > Using TEST_ONLY sounds good. Trying to do clever filtering with PATH > > property before you call TEST_ONLY is not good. You should check with > > TEST_ONLY in general, not just when the path property indicates that the > > dp output is shared. > > I think it would still make sense to find the working config first on > outputs sharing a link bandwidth with TEST_ONLY and only then find the > config with all required outputs included in the TEST_ONLY commit, > starting with the modes found for outpus sharing a link. This is the way > you could find the maximum resolution that can be used on each output. That sounds like a testcase to make sure we support at least 2 working modes on the same MST link. I'm not sure that really should be the generic solution thing, for that you just have to go around reducing resolutions until you've managed to light up enough outputs. So order doesn't matter really, aside from maybe a preference for same resolutions (due to clock sharing and even splits of fifos and that kind of stuff). Treating MST links specially just to light up a set of outputs still feels a bit wrong. -Daniel > > > -Daniel > > > > > > > > [1]: https://patchwork.freedesktop.org/patch/427718 > > > [2]: https://patchwork.freedesktop.org/patch/427720 > > > [3]: https://patchwork.freedesktop.org/patch/427719 > > > N : 2,3,4,... > > > > > > -Bhanu > > > > mode to figure out what works and what doesn't. Not by trying to > > > > re-implement the kernel's atomic_check configuration validation, > > > > because you just can't do that. > > > > > > > > So nack on architectural reasons on this approach. > > > > -Daniel > > > > > > > > > > > > > > Bhanuprakash Modem (5): > > > > > lib/igt_kms: Add a support to read PATH connector property > > > > > lib/igt_kms: Identify outputs that shares link bandwidth > > > > > lib/igt_kms: helper to override the mode on all connectors > > > > > tests/kms_frontbuffer_tracking: Fix mode selection for 2x tests > > > > > tests/kms_cursor_legacy: Fix mode selection for 2x tests > > > > > > > > > > lib/igt_kms.c | 71 ++++++++++++++++++++++++++++++++ > > > > > lib/igt_kms.h | 3 ++ > > > > > tests/kms_cursor_legacy.c | 53 ++++++++++++++++++++++-- > > > > > tests/kms_frontbuffer_tracking.c | 35 ++++++++++++++++ > > > > > 4 files changed, 159 insertions(+), 3 deletions(-) > > > > > > > > > > -- > > > > > 2.20.1 > > > > > > > > > > _______________________________________________ > > > > > igt-dev mailing list > > > > > igt-dev@lists.freedesktop.org > > > > > https://lists.freedesktop.org/mailman/listinfo/igt-dev > > > > > > > > > > > > > > > > -- > > > > Daniel Vetter > > > > Software Engineer, Intel Corporation > > > > http://blog.ffwll.ch > > > > -- > > Daniel Vetter > > Software Engineer, Intel Corporation > > http://blog.ffwll.ch -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests 2021-04-14 18:37 ` Daniel Vetter @ 2021-04-14 19:01 ` Imre Deak 2021-04-15 12:13 ` Nautiyal, Ankit K 2021-04-15 12:56 ` Modem, Bhanuprakash 0 siblings, 2 replies; 17+ messages in thread From: Imre Deak @ 2021-04-14 19:01 UTC (permalink / raw) To: Daniel Vetter; +Cc: IGT development On Wed, Apr 14, 2021 at 08:37:40PM +0200, Daniel Vetter wrote: > > > > > [...] > > > > > Uh this is really not how kms is supposed to work. There are _tons_ of > > > > > reasons why 2 crtc at the same time wont work, mst bw constraint is > > > > > just one. > > > > > > > > > > If you want to fix this, this should be fixed with atomic TEST_ONLY > > > > In fact, we are doing the same in this series. > > > > > > > > By parsing the PATH connector prop, igt_output_refresh() will update the > > > > link_group_id field for each connector [1]. > > > > > > > > Each individual (Nx)-test will identify the connectors those are sharing > > > > the MST bw (by reading the link_group_id field in igt_output_t), and call > > > > the helper to find the suitable modes [2]. > > > > > > > > A helper function iterates through those N output/mode combinations. And > > > > find the combination using the most BW by ATOMIC_TEST_ONLY and returned > > > > to the test [3]. > > > > > > > > Am I missing anything? > > > > > > Using TEST_ONLY sounds good. Trying to do clever filtering with PATH > > > property before you call TEST_ONLY is not good. You should check with > > > TEST_ONLY in general, not just when the path property indicates that the > > > dp output is shared. > > > > I think it would still make sense to find the working config first on > > outputs sharing a link bandwidth with TEST_ONLY and only then find the > > config with all required outputs included in the TEST_ONLY commit, > > starting with the modes found for outpus sharing a link. This is the way > > you could find the maximum resolution that can be used on each output. > > That sounds like a testcase to make sure we support at least 2 working > modes on the same MST link. I'm not sure that really should be the generic > solution thing, for that you just have to go around reducing resolutions > until you've managed to light up enough outputs. So order doesn't > matter really, aside from maybe a preference for same resolutions (due to > clock sharing and even splits of fifos and that kind of stuff). > > Treating MST links specially just to light up a set of outputs still feels > a bit wrong. Imo we should test the most usual user scenario, which I assumed is the max resolution on all connected displays. But this could be wrong and any more complicated logic could be added as a follow up if needed. So I'm also ok to ignore the link bandwidth sharing aspect. > -Daniel > > > > > > -Daniel > > > > > > > > > > > [1]: https://patchwork.freedesktop.org/patch/427718 > > > > [2]: https://patchwork.freedesktop.org/patch/427720 > > > > [3]: https://patchwork.freedesktop.org/patch/427719 > > > > N : 2,3,4,... > > > > > > > > -Bhanu > > > > > mode to figure out what works and what doesn't. Not by trying to > > > > > re-implement the kernel's atomic_check configuration validation, > > > > > because you just can't do that. > > > > > > > > > > So nack on architectural reasons on this approach. > > > > > -Daniel > > > > > > > > > > > > > > > > > Bhanuprakash Modem (5): > > > > > > lib/igt_kms: Add a support to read PATH connector property > > > > > > lib/igt_kms: Identify outputs that shares link bandwidth > > > > > > lib/igt_kms: helper to override the mode on all connectors > > > > > > tests/kms_frontbuffer_tracking: Fix mode selection for 2x tests > > > > > > tests/kms_cursor_legacy: Fix mode selection for 2x tests > > > > > > > > > > > > lib/igt_kms.c | 71 ++++++++++++++++++++++++++++++++ > > > > > > lib/igt_kms.h | 3 ++ > > > > > > tests/kms_cursor_legacy.c | 53 ++++++++++++++++++++++-- > > > > > > tests/kms_frontbuffer_tracking.c | 35 ++++++++++++++++ > > > > > > 4 files changed, 159 insertions(+), 3 deletions(-) > > > > > > > > > > > > -- > > > > > > 2.20.1 > > > > > > > > > > > > _______________________________________________ > > > > > > igt-dev mailing list > > > > > > igt-dev@lists.freedesktop.org > > > > > > https://lists.freedesktop.org/mailman/listinfo/igt-dev > > > > > > > > > > > > > > > > > > > > -- > > > > > Daniel Vetter > > > > > Software Engineer, Intel Corporation > > > > > http://blog.ffwll.ch > > > > > > -- > > > Daniel Vetter > > > Software Engineer, Intel Corporation > > > http://blog.ffwll.ch > > -- > Daniel Vetter > Software Engineer, Intel Corporation > http://blog.ffwll.ch _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests 2021-04-14 19:01 ` Imre Deak @ 2021-04-15 12:13 ` Nautiyal, Ankit K 2021-04-15 12:56 ` Modem, Bhanuprakash 1 sibling, 0 replies; 17+ messages in thread From: Nautiyal, Ankit K @ 2021-04-15 12:13 UTC (permalink / raw) To: Imre Deak, Daniel Vetter; +Cc: IGT development On 4/15/2021 12:31 AM, Imre Deak wrote: > On Wed, Apr 14, 2021 at 08:37:40PM +0200, Daniel Vetter wrote: >>>>>> [...] >>>>>> Uh this is really not how kms is supposed to work. There are _tons_ of >>>>>> reasons why 2 crtc at the same time wont work, mst bw constraint is >>>>>> just one. >>>>>> >>>>>> If you want to fix this, this should be fixed with atomic TEST_ONLY >>>>> In fact, we are doing the same in this series. >>>>> >>>>> By parsing the PATH connector prop, igt_output_refresh() will update the >>>>> link_group_id field for each connector [1]. >>>>> >>>>> Each individual (Nx)-test will identify the connectors those are sharing >>>>> the MST bw (by reading the link_group_id field in igt_output_t), and call >>>>> the helper to find the suitable modes [2]. >>>>> >>>>> A helper function iterates through those N output/mode combinations. And >>>>> find the combination using the most BW by ATOMIC_TEST_ONLY and returned >>>>> to the test [3]. >>>>> >>>>> Am I missing anything? >>>> Using TEST_ONLY sounds good. Trying to do clever filtering with PATH >>>> property before you call TEST_ONLY is not good. You should check with >>>> TEST_ONLY in general, not just when the path property indicates that the >>>> dp output is shared. >>> I think it would still make sense to find the working config first on >>> outputs sharing a link bandwidth with TEST_ONLY and only then find the >>> config with all required outputs included in the TEST_ONLY commit, >>> starting with the modes found for outpus sharing a link. This is the way >>> you could find the maximum resolution that can be used on each output. >> That sounds like a testcase to make sure we support at least 2 working >> modes on the same MST link. I'm not sure that really should be the generic >> solution thing, for that you just have to go around reducing resolutions >> until you've managed to light up enough outputs. So order doesn't >> matter really, aside from maybe a preference for same resolutions (due to >> clock sharing and even splits of fifos and that kind of stuff). >> >> Treating MST links specially just to light up a set of outputs still feels >> a bit wrong. > Imo we should test the most usual user scenario, which I assumed is the > max resolution on all connected displays. But this could be wrong and > any more complicated logic could be added as a follow up if needed. So > I'm also ok to ignore the link bandwidth sharing aspect. Makes sense to not have a specific use case for MST in multi display tests. I do like the idea for helper functions in the patches 1-3 to identify connectors sharing mst link. In kms_content_protection we have mst specific test and the helper functions can be useful there. Perhaps can be re-introduced along with a new IGT specifically for testing MST config in a separate patch series. Regards, Ankit > >> -Daniel >> >>>> -Daniel >>>> >>>>> [1]: https://patchwork.freedesktop.org/patch/427718 >>>>> [2]: https://patchwork.freedesktop.org/patch/427720 >>>>> [3]: https://patchwork.freedesktop.org/patch/427719 >>>>> N : 2,3,4,... >>>>> >>>>> -Bhanu >>>>>> mode to figure out what works and what doesn't. Not by trying to >>>>>> re-implement the kernel's atomic_check configuration validation, >>>>>> because you just can't do that. >>>>>> >>>>>> So nack on architectural reasons on this approach. >>>>>> -Daniel >>>>>> >>>>>>> Bhanuprakash Modem (5): >>>>>>> lib/igt_kms: Add a support to read PATH connector property >>>>>>> lib/igt_kms: Identify outputs that shares link bandwidth >>>>>>> lib/igt_kms: helper to override the mode on all connectors >>>>>>> tests/kms_frontbuffer_tracking: Fix mode selection for 2x tests >>>>>>> tests/kms_cursor_legacy: Fix mode selection for 2x tests >>>>>>> >>>>>>> lib/igt_kms.c | 71 ++++++++++++++++++++++++++++++++ >>>>>>> lib/igt_kms.h | 3 ++ >>>>>>> tests/kms_cursor_legacy.c | 53 ++++++++++++++++++++++-- >>>>>>> tests/kms_frontbuffer_tracking.c | 35 ++++++++++++++++ >>>>>>> 4 files changed, 159 insertions(+), 3 deletions(-) >>>>>>> >>>>>>> -- >>>>>>> 2.20.1 >>>>>>> >>>>>>> _______________________________________________ >>>>>>> igt-dev mailing list >>>>>>> igt-dev@lists.freedesktop.org >>>>>>> https://lists.freedesktop.org/mailman/listinfo/igt-dev >>>>>> >>>>>> >>>>>> -- >>>>>> Daniel Vetter >>>>>> Software Engineer, Intel Corporation >>>>>> http://blog.ffwll.ch >>>> -- >>>> Daniel Vetter >>>> Software Engineer, Intel Corporation >>>> http://blog.ffwll.ch >> -- >> Daniel Vetter >> Software Engineer, Intel Corporation >> http://blog.ffwll.ch _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests 2021-04-14 19:01 ` Imre Deak 2021-04-15 12:13 ` Nautiyal, Ankit K @ 2021-04-15 12:56 ` Modem, Bhanuprakash 2021-04-15 14:15 ` Daniel Vetter 1 sibling, 1 reply; 17+ messages in thread From: Modem, Bhanuprakash @ 2021-04-15 12:56 UTC (permalink / raw) To: Deak, Imre, Daniel Vetter; +Cc: IGT development > From: Imre Deak <imre.deak@intel.com> > Sent: Thursday, April 15, 2021 12:31 AM > To: Daniel Vetter <daniel@ffwll.ch> > Cc: Modem, Bhanuprakash <bhanuprakash.modem@intel.com>; Daniel Vetter > <daniel.vetter@ffwll.ch>; Nautiyal, Ankit K <ankit.k.nautiyal@intel.com>; IGT > development <igt-dev@lists.freedesktop.org> > Subject: Re: [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests > > On Wed, Apr 14, 2021 at 08:37:40PM +0200, Daniel Vetter wrote: > > > > > > [...] > > > > > > Uh this is really not how kms is supposed to work. There are _tons_ > of > > > > > > reasons why 2 crtc at the same time wont work, mst bw constraint is > > > > > > just one. > > > > > > > > > > > > If you want to fix this, this should be fixed with atomic TEST_ONLY > > > > > In fact, we are doing the same in this series. > > > > > > > > > > By parsing the PATH connector prop, igt_output_refresh() will update > the > > > > > link_group_id field for each connector [1]. > > > > > > > > > > Each individual (Nx)-test will identify the connectors those are > sharing > > > > > the MST bw (by reading the link_group_id field in igt_output_t), and > call > > > > > the helper to find the suitable modes [2]. > > > > > > > > > > A helper function iterates through those N output/mode combinations. > And > > > > > find the combination using the most BW by ATOMIC_TEST_ONLY and > returned > > > > > to the test [3]. > > > > > > > > > > Am I missing anything? > > > > > > > > Using TEST_ONLY sounds good. Trying to do clever filtering with PATH > > > > property before you call TEST_ONLY is not good. You should check with > > > > TEST_ONLY in general, not just when the path property indicates that the > > > > dp output is shared. > > > > > > I think it would still make sense to find the working config first on > > > outputs sharing a link bandwidth with TEST_ONLY and only then find the > > > config with all required outputs included in the TEST_ONLY commit, > > > starting with the modes found for outpus sharing a link. This is the way > > > you could find the maximum resolution that can be used on each output. > > > > That sounds like a testcase to make sure we support at least 2 working > > modes on the same MST link. I'm not sure that really should be the generic > > solution thing, for that you just have to go around reducing resolutions > > until you've managed to light up enough outputs. So order doesn't > > matter really, aside from maybe a preference for same resolutions (due to > > clock sharing and even splits of fifos and that kind of stuff). > > > > Treating MST links specially just to light up a set of outputs still feels > > a bit wrong. > > Imo we should test the most usual user scenario, which I assumed is the > max resolution on all connected displays. But this could be wrong and > any more complicated logic could be added as a follow up if needed. So > I'm also ok to ignore the link bandwidth sharing aspect. In simple words, just remove the MST specific stuff (link_group_id, PATH, etc...) from this series, and each individual (Nx)-test should call the helper[1] to get output/mode combo. Is my understanding correct? [1] https://patchwork.freedesktop.org/patch/427719 > > > -Daniel > > > > > > > > > -Daniel > > > > > > > > > > > > > > [1]: https://patchwork.freedesktop.org/patch/427718 > > > > > [2]: https://patchwork.freedesktop.org/patch/427720 > > > > > [3]: https://patchwork.freedesktop.org/patch/427719 > > > > > N : 2,3,4,... > > > > > > > > > > -Bhanu > > > > > > mode to figure out what works and what doesn't. Not by trying to > > > > > > re-implement the kernel's atomic_check configuration validation, > > > > > > because you just can't do that. > > > > > > > > > > > > So nack on architectural reasons on this approach. > > > > > > -Daniel > > > > > > > > > > > > > > > > > > > > Bhanuprakash Modem (5): > > > > > > > lib/igt_kms: Add a support to read PATH connector property > > > > > > > lib/igt_kms: Identify outputs that shares link bandwidth > > > > > > > lib/igt_kms: helper to override the mode on all connectors > > > > > > > tests/kms_frontbuffer_tracking: Fix mode selection for 2x tests > > > > > > > tests/kms_cursor_legacy: Fix mode selection for 2x tests > > > > > > > > > > > > > > lib/igt_kms.c | 71 > ++++++++++++++++++++++++++++++++ > > > > > > > lib/igt_kms.h | 3 ++ > > > > > > > tests/kms_cursor_legacy.c | 53 ++++++++++++++++++++++-- > > > > > > > tests/kms_frontbuffer_tracking.c | 35 ++++++++++++++++ > > > > > > > 4 files changed, 159 insertions(+), 3 deletions(-) > > > > > > > > > > > > > > -- > > > > > > > 2.20.1 > > > > > > > > > > > > > > _______________________________________________ > > > > > > > igt-dev mailing list > > > > > > > igt-dev@lists.freedesktop.org > > > > > > > https://lists.freedesktop.org/mailman/listinfo/igt-dev > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > Daniel Vetter > > > > > > Software Engineer, Intel Corporation > > > > > > http://blog.ffwll.ch > > > > > > > > -- > > > > Daniel Vetter > > > > Software Engineer, Intel Corporation > > > > http://blog.ffwll.ch > > > > -- > > Daniel Vetter > > Software Engineer, Intel Corporation > > http://blog.ffwll.ch _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests 2021-04-15 12:56 ` Modem, Bhanuprakash @ 2021-04-15 14:15 ` Daniel Vetter 0 siblings, 0 replies; 17+ messages in thread From: Daniel Vetter @ 2021-04-15 14:15 UTC (permalink / raw) To: Modem, Bhanuprakash; +Cc: IGT development, Daniel Vetter On Thu, Apr 15, 2021 at 12:56:39PM +0000, Modem, Bhanuprakash wrote: > > From: Imre Deak <imre.deak@intel.com> > > Sent: Thursday, April 15, 2021 12:31 AM > > To: Daniel Vetter <daniel@ffwll.ch> > > Cc: Modem, Bhanuprakash <bhanuprakash.modem@intel.com>; Daniel Vetter > > <daniel.vetter@ffwll.ch>; Nautiyal, Ankit K <ankit.k.nautiyal@intel.com>; IGT > > development <igt-dev@lists.freedesktop.org> > > Subject: Re: [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests > > > > On Wed, Apr 14, 2021 at 08:37:40PM +0200, Daniel Vetter wrote: > > > > > > > [...] > > > > > > > Uh this is really not how kms is supposed to work. There are _tons_ > > of > > > > > > > reasons why 2 crtc at the same time wont work, mst bw constraint is > > > > > > > just one. > > > > > > > > > > > > > > If you want to fix this, this should be fixed with atomic TEST_ONLY > > > > > > In fact, we are doing the same in this series. > > > > > > > > > > > > By parsing the PATH connector prop, igt_output_refresh() will update > > the > > > > > > link_group_id field for each connector [1]. > > > > > > > > > > > > Each individual (Nx)-test will identify the connectors those are > > sharing > > > > > > the MST bw (by reading the link_group_id field in igt_output_t), and > > call > > > > > > the helper to find the suitable modes [2]. > > > > > > > > > > > > A helper function iterates through those N output/mode combinations. > > And > > > > > > find the combination using the most BW by ATOMIC_TEST_ONLY and > > returned > > > > > > to the test [3]. > > > > > > > > > > > > Am I missing anything? > > > > > > > > > > Using TEST_ONLY sounds good. Trying to do clever filtering with PATH > > > > > property before you call TEST_ONLY is not good. You should check with > > > > > TEST_ONLY in general, not just when the path property indicates that the > > > > > dp output is shared. > > > > > > > > I think it would still make sense to find the working config first on > > > > outputs sharing a link bandwidth with TEST_ONLY and only then find the > > > > config with all required outputs included in the TEST_ONLY commit, > > > > starting with the modes found for outpus sharing a link. This is the way > > > > you could find the maximum resolution that can be used on each output. > > > > > > That sounds like a testcase to make sure we support at least 2 working > > > modes on the same MST link. I'm not sure that really should be the generic > > > solution thing, for that you just have to go around reducing resolutions > > > until you've managed to light up enough outputs. So order doesn't > > > matter really, aside from maybe a preference for same resolutions (due to > > > clock sharing and even splits of fifos and that kind of stuff). > > > > > > Treating MST links specially just to light up a set of outputs still feels > > > a bit wrong. > > > > Imo we should test the most usual user scenario, which I assumed is the > > max resolution on all connected displays. But this could be wrong and > > any more complicated logic could be added as a follow up if needed. So > > I'm also ok to ignore the link bandwidth sharing aspect. > > In simple words, just remove the MST specific stuff (link_group_id, PATH, etc...) > from this series, and each individual (Nx)-test should call the helper[1] to get > output/mode combo. Is my understanding correct? Yup. We can then also add fancier fallback logic that tries to emulated what compositors generally try to pick in there. -Daniel > > [1] https://patchwork.freedesktop.org/patch/427719 > > > > > > -Daniel > > > > > > > > > > > > -Daniel > > > > > > > > > > > > > > > > > [1]: https://patchwork.freedesktop.org/patch/427718 > > > > > > [2]: https://patchwork.freedesktop.org/patch/427720 > > > > > > [3]: https://patchwork.freedesktop.org/patch/427719 > > > > > > N : 2,3,4,... > > > > > > > > > > > > -Bhanu > > > > > > > mode to figure out what works and what doesn't. Not by trying to > > > > > > > re-implement the kernel's atomic_check configuration validation, > > > > > > > because you just can't do that. > > > > > > > > > > > > > > So nack on architectural reasons on this approach. > > > > > > > -Daniel > > > > > > > > > > > > > > > > > > > > > > > Bhanuprakash Modem (5): > > > > > > > > lib/igt_kms: Add a support to read PATH connector property > > > > > > > > lib/igt_kms: Identify outputs that shares link bandwidth > > > > > > > > lib/igt_kms: helper to override the mode on all connectors > > > > > > > > tests/kms_frontbuffer_tracking: Fix mode selection for 2x tests > > > > > > > > tests/kms_cursor_legacy: Fix mode selection for 2x tests > > > > > > > > > > > > > > > > lib/igt_kms.c | 71 > > ++++++++++++++++++++++++++++++++ > > > > > > > > lib/igt_kms.h | 3 ++ > > > > > > > > tests/kms_cursor_legacy.c | 53 ++++++++++++++++++++++-- > > > > > > > > tests/kms_frontbuffer_tracking.c | 35 ++++++++++++++++ > > > > > > > > 4 files changed, 159 insertions(+), 3 deletions(-) > > > > > > > > > > > > > > > > -- > > > > > > > > 2.20.1 > > > > > > > > > > > > > > > > _______________________________________________ > > > > > > > > igt-dev mailing list > > > > > > > > igt-dev@lists.freedesktop.org > > > > > > > > https://lists.freedesktop.org/mailman/listinfo/igt-dev > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > > Daniel Vetter > > > > > > > Software Engineer, Intel Corporation > > > > > > > http://blog.ffwll.ch > > > > > > > > > > -- > > > > > Daniel Vetter > > > > > Software Engineer, Intel Corporation > > > > > http://blog.ffwll.ch > > > > > > -- > > > Daniel Vetter > > > Software Engineer, Intel Corporation > > > http://blog.ffwll.ch -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch _______________________________________________ igt-dev mailing list igt-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/igt-dev ^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2021-04-15 14:15 UTC | newest] Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2021-04-09 19:30 [igt-dev] [PATCH i-g-t 0/5] Fix mode selection for 2x tests Bhanuprakash Modem 2021-04-09 13:25 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork 2021-04-09 15:55 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork 2021-04-09 19:30 ` [igt-dev] [PATCH i-g-t 1/5] lib/igt_kms: Add a support to read PATH connector property Bhanuprakash Modem 2021-04-09 19:30 ` [igt-dev] [PATCH i-g-t 2/5] lib/igt_kms: Identify outputs that shares link bandwidth Bhanuprakash Modem 2021-04-09 19:30 ` [igt-dev] [PATCH i-g-t 3/5] lib/igt_kms: helper to override the mode on all connectors Bhanuprakash Modem 2021-04-09 19:30 ` [igt-dev] [PATCH i-g-t 4/5] tests/kms_frontbuffer_tracking: Fix mode selection for 2x tests Bhanuprakash Modem 2021-04-09 19:30 ` [igt-dev] [PATCH i-g-t 5/5] tests/kms_cursor_legacy: " Bhanuprakash Modem 2021-04-09 20:18 ` [igt-dev] [PATCH i-g-t 0/5] " Daniel Vetter 2021-04-12 3:51 ` Modem, Bhanuprakash 2021-04-14 15:24 ` Daniel Vetter 2021-04-14 16:06 ` Imre Deak 2021-04-14 18:37 ` Daniel Vetter 2021-04-14 19:01 ` Imre Deak 2021-04-15 12:13 ` Nautiyal, Ankit K 2021-04-15 12:56 ` Modem, Bhanuprakash 2021-04-15 14:15 ` Daniel Vetter
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.