* [PATCH i-g-t v5 0/8] test/kms_colorop_helper: don't request colorop updates indefinitely
@ 2026-09-02 17:58 Melissa Wen
2026-09-02 17:58 ` [PATCH i-g-t v5 1/8] lib/igt_kms: clear colorop-changed flag after commit Melissa Wen
` (10 more replies)
0 siblings, 11 replies; 19+ messages in thread
From: Melissa Wen @ 2026-09-02 17:58 UTC (permalink / raw)
To: Petri Latvala, Arkadiusz Hiler, Kamil Konieczny,
Juha-Pekka Heikkila, Bhanuprakash Modem, Ashutosh Dixit,
Karthik B S
Cc: igt-dev, kernel-dev, Chaitanya Kumar Borah, Alex Hung,
Swati Sharma, John Harrison, Rodrigo Siqueira, Simon Ser,
Xaver Hugl, Harry Wentland, Uma Shankar
IGT currently lets colorop property changes be staged on color pipelines that
aren't active, which the uAPI will reject after some kernel fixes [1]:
colorop properties may only change on a currently active pipeline, or on one
activated or deactivated in the same atomic commit. This series fixes the
lib/igt_kms and colorop property tests to respect it.
- Patch 1 clears the colorop changed flag after a commit, so that later
commits don't re-submit changes on an inactive color pipeline.
- Patch 2 prevents a colorop from being marked as changed just for checking
whether a property enum value is supported. Together with patch 1, this
matches the current expectation of allowing property changes on colorops
that are part of a currently active color pipeline, or of a color pipeline
that will be activated or deactivated in the same atomic commit, while
rejecting attempts to change inactive colorops.
- Patch 3 restricts colorop property testing to planes that support the plane
COLOR_PIPELINE property, i.e. planes that have a colorop pipeline, since not
all planes have to support it.
- Patch 4 attaches a different framebuffer to non-primary planes so that the
primary plane stays enabled and, with it, the CRTC under test: AMD requires
an active primary plane to keep the CRTC active.
- Patch 5 extends igt_plane_set_color_pipeline() to accept NULL as the
"Bypass" color pipeline and removes set_color_pipeline_bypass(), converting
all its callers.
- Patch 6 fixes the kms_properties tests to match the colorop update
requirement of only allowing changes to colorops that are part of an active
plane color pipeline.
- Patch 7 move kms_color_pipeline to Intel's folder and make sure it only runs
on Intel devices. As color validation works better with writeback than with
CRC, other devices should run kms_colorop if they have writeback support.
Currently, AMD and VKMS support colorop and writeback, and intel is the only
one that still needs CRC-based test. If a new driver is in the same
situation as intel, they can move kms_color_pipeline back to generic folder
and work on adapting it to their specs.
- Patch 8 adds macros for walking the colorops in a color pipeline, as
well as all the color pipelines supported by a given plane.
[1] https://lore.kernel.org/dri-devel/20260811171011.184964-1-mwen@igalia.com/
Let me know your thoughts!
Melissa
[v1] https://lore.kernel.org/igt-dev/20260526140752.503380-1-mwen@igalia.com/
Changes:
- cover kms_properties (John H)
- add Alex H t-b tags
[v2] https://lore.kernel.org/igt-dev/20260602211259.898147-1-mwen@igalia.com/
Changes:
- split patch 3 into three: one that checks that the COLOR_PIPELINE property
exists before testing colorops of a given plane; another to ensure an active
primary plane for each CRTC to match AMD's requirement; and the last one to
only check colorop properties if they're part of an active color pipeline
- extra space fix
[v3] https://lore.kernel.org/igt-dev/20260811143558.141813-1-mwen@igalia.com/
Changes:
- fix memory leak when enabling/disabling non-primary planes (Alex H/Chaitanya)
- fix type of variable to match igt_find_colorop (Alex H)
- fix typo and grammar in commit messages (Alex H)
- do the Intel device check earlier
- new patch extending igt_plane_set_color_pipeline() to accept NULL as
"Bypass", replacing the open-coded setting in patch 6
- new patch adding macros for walking color pipelines and colorops (Jani)
[v4] https://lore.kernel.org/igt-dev/20260817150749.66509-1-mwen@igalia.com/
Changes:
- overall improvements on commit messages
- don't change plane->assigned_color_pipeline if setting to bypass to ensure no functional change
- commit changes when restoring color pipeline to bypass
- move kms_color_pipeline to intel's folder (Alex H and Harry)
- store next on colorop struct when discovering colorop since this is immutable
and remove now unused igt_find_colorop and proposed igt_colorop_next
- use igt_unique to guard the iterator in a macro
Melissa Wen (8):
lib/igt_kms: clear colorop-changed flag after commit
tests/kms_colorop_helper: only check if a given enum value exists
tests/kms_properties: don't check colorop if no plane color pipeline
prop
tests/kms_properties: give non-primary planes their own fb
lib/igt_kms: extend igt_plane_set_color_pipeline to accept Bypass
tests/kms_properties: check colorop properties on active color
pipelines
tests/intel/kms_color_pipeline: move driver-specific test to intel's
folder
lib/igt_kms: add macros to iterate color pipelines and colorops
lib/igt_kms.c | 122 +++++++++++-------
lib/igt_kms.h | 36 +++++-
.../chamelium/kms_chamelium_color_pipeline.c | 2 +-
tests/{ => intel}/kms_color_pipeline.c | 4 +-
tests/kms_colorop.c | 23 ++--
tests/kms_colorop_helper.c | 49 +++----
tests/kms_colorop_helper.h | 1 -
tests/kms_properties.c | 43 ++++--
tests/meson.build | 2 +-
9 files changed, 166 insertions(+), 116 deletions(-)
rename tests/{ => intel}/kms_color_pipeline.c (98%)
--
2.53.0
^ permalink raw reply [flat|nested] 19+ messages in thread* [PATCH i-g-t v5 1/8] lib/igt_kms: clear colorop-changed flag after commit 2026-09-02 17:58 [PATCH i-g-t v5 0/8] test/kms_colorop_helper: don't request colorop updates indefinitely Melissa Wen @ 2026-09-02 17:58 ` Melissa Wen 2026-09-02 17:58 ` [PATCH i-g-t v5 2/8] tests/kms_colorop_helper: only check if a given enum value exists Melissa Wen ` (9 subsequent siblings) 10 siblings, 0 replies; 19+ messages in thread From: Melissa Wen @ 2026-09-02 17:58 UTC (permalink / raw) To: Petri Latvala, Arkadiusz Hiler, Kamil Konieczny, Juha-Pekka Heikkila, Bhanuprakash Modem, Ashutosh Dixit, Karthik B S Cc: igt-dev, kernel-dev, Chaitanya Kumar Borah, Alex Hung, Swati Sharma, John Harrison, Rodrigo Siqueira, Simon Ser, Xaver Hugl, Harry Wentland, Uma Shankar The userspace can update only currently active colorops or colorops that will be activated or deactivated in the same commit. Active colorop means a colorop that is in the chain of an active color pipeline, i.e. the pipeline in plane COLOR_PIPELINE property. Don't request colorop updates if there is no change in the atomic commit. This fixes incorrect re-submission of property changes in inactive colorops after a successful atomic commit. Assisted-by: Claude:claude-opus-4-7 Tested-by: Alex Hung <alex.hung@amd.com> Reviewed-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com> Signed-off-by: Melissa Wen <mwen@igalia.com> --- v3: - use uint32_t variable for igt_find_colorop (Alex H) --- lib/igt_kms.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/lib/igt_kms.c b/lib/igt_kms.c index 2d78e3bee..cd0a42840 100644 --- a/lib/igt_kms.c +++ b/lib/igt_kms.c @@ -4890,8 +4890,24 @@ display_commit_changed(igt_display_t *display, enum igt_commit_style s) plane) { if (s == COMMIT_ATOMIC) { int fd; + igt_colorop_t *colorop; + plane->changed = 0; + /* clear changed flags on every colorop in the assigned chain + * so already-committed property values aren't re-emitted on + * the next commit. + */ + colorop = plane->assigned_color_pipeline; + while (colorop) { + uint32_t next_val; + + colorop->changed = 0; + next_val = igt_colorop_get_prop(display, colorop, + IGT_COLOROP_NEXT); + colorop = igt_find_colorop(display, next_val); + } + fd = plane->values[IGT_PLANE_IN_FENCE_FD]; if (fd != -1) close(fd); -- 2.53.0 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH i-g-t v5 2/8] tests/kms_colorop_helper: only check if a given enum value exists 2026-09-02 17:58 [PATCH i-g-t v5 0/8] test/kms_colorop_helper: don't request colorop updates indefinitely Melissa Wen 2026-09-02 17:58 ` [PATCH i-g-t v5 1/8] lib/igt_kms: clear colorop-changed flag after commit Melissa Wen @ 2026-09-02 17:58 ` Melissa Wen 2026-09-02 17:58 ` [PATCH i-g-t v5 3/8] tests/kms_properties: don't check colorop if no plane color pipeline prop Melissa Wen ` (8 subsequent siblings) 10 siblings, 0 replies; 19+ messages in thread From: Melissa Wen @ 2026-09-02 17:58 UTC (permalink / raw) To: Petri Latvala, Arkadiusz Hiler, Kamil Konieczny, Juha-Pekka Heikkila, Bhanuprakash Modem, Ashutosh Dixit, Karthik B S Cc: igt-dev, kernel-dev, Chaitanya Kumar Borah, Alex Hung, Swati Sharma, John Harrison, Rodrigo Siqueira, Simon Ser, Xaver Hugl, Harry Wentland, Uma Shankar Don't trigger unnecessary colorop property changes just to probe that a prop enum exists and can be applied. Make can_use_colorop() read-only, preventing atomic commit rejections after test skips. Assisted-by: Claude:claude-opus-4-7 Tested-by: Alex Hung <alex.hung@amd.com> Reviewed-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com> Signed-off-by: Melissa Wen <mwen@igalia.com> --- v2: - remove extra space (Chaitanya) --- lib/igt_kms.c | 26 ++++++++++++++++++++++++++ lib/igt_kms.h | 4 ++++ tests/kms_colorop_helper.c | 4 +++- 3 files changed, 33 insertions(+), 1 deletion(-) diff --git a/lib/igt_kms.c b/lib/igt_kms.c index cd0a42840..6039ad18a 100644 --- a/lib/igt_kms.c +++ b/lib/igt_kms.c @@ -4507,6 +4507,32 @@ igt_colorop_replace_prop_blob(igt_colorop_t *colorop, enum igt_atomic_colorop_pr igt_colorop_set_prop_changed(colorop, prop); } +/** + * igt_colorop_has_prop_enum_value: + * @colorop: Target colorop. + * @prop: Enum property to check. + * @val: Enum value (as string) to look up. + * + * Read-only counterpart to igt_colorop_try_prop_enum(): returns whether + * @colorop's @prop accepts the enum value @val, without setting it or + * marking @prop as changed in IGT's cache. + * + * Returns: true if @val is a valid value of the enum @prop on @colorop. + */ +bool igt_colorop_has_prop_enum_value(igt_colorop_t *colorop, + enum igt_atomic_colorop_properties prop, + const char *val) +{ + igt_display_t *display = colorop->plane->crtc->display; + uint64_t uval; + + igt_assert(colorop->props[prop]); + + return igt_mode_object_get_prop_enum_value(display->drm_fd, + colorop->props[prop], + val, &uval); +} + /** * igt_colorop_try_prop_enum: * @colorop: Target colorop. diff --git a/lib/igt_kms.h b/lib/igt_kms.h index 695f666ba..23615dd91 100644 --- a/lib/igt_kms.h +++ b/lib/igt_kms.h @@ -1028,6 +1028,10 @@ uint64_t igt_colorop_get_prop(igt_display_t *display, igt_colorop_t *colorop, en } while (0) +extern bool igt_colorop_has_prop_enum_value(igt_colorop_t *colorop, + enum igt_atomic_colorop_properties prop, + const char *val); + extern bool igt_colorop_try_prop_enum(igt_colorop_t *colorop, enum igt_atomic_colorop_properties prop, const char *val); diff --git a/tests/kms_colorop_helper.c b/tests/kms_colorop_helper.c index 3243d01d3..da234410e 100644 --- a/tests/kms_colorop_helper.c +++ b/tests/kms_colorop_helper.c @@ -248,7 +248,9 @@ static bool can_use_colorop(igt_display_t *display, igt_colorop_t *colorop, kms_ switch (desired->type) { case KMS_COLOROP_ENUMERATED_LUT1D: if (igt_colorop_get_prop(display, colorop, IGT_COLOROP_TYPE) == DRM_COLOROP_1D_CURVE && - igt_colorop_try_prop_enum(colorop, IGT_COLOROP_CURVE_1D_TYPE, kms_colorop_lut1d_tf_names[desired->enumerated_lut1d_info.tf])) + igt_colorop_has_prop_enum_value(colorop, + IGT_COLOROP_CURVE_1D_TYPE, + kms_colorop_lut1d_tf_names[desired->enumerated_lut1d_info.tf])) return true; return false; case KMS_COLOROP_CTM_3X4: -- 2.53.0 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH i-g-t v5 3/8] tests/kms_properties: don't check colorop if no plane color pipeline prop 2026-09-02 17:58 [PATCH i-g-t v5 0/8] test/kms_colorop_helper: don't request colorop updates indefinitely Melissa Wen 2026-09-02 17:58 ` [PATCH i-g-t v5 1/8] lib/igt_kms: clear colorop-changed flag after commit Melissa Wen 2026-09-02 17:58 ` [PATCH i-g-t v5 2/8] tests/kms_colorop_helper: only check if a given enum value exists Melissa Wen @ 2026-09-02 17:58 ` Melissa Wen 2026-09-02 17:58 ` [PATCH i-g-t v5 4/8] tests/kms_properties: give non-primary planes their own fb Melissa Wen ` (7 subsequent siblings) 10 siblings, 0 replies; 19+ messages in thread From: Melissa Wen @ 2026-09-02 17:58 UTC (permalink / raw) To: Petri Latvala, Arkadiusz Hiler, Kamil Konieczny, Juha-Pekka Heikkila, Bhanuprakash Modem, Ashutosh Dixit, Karthik B S Cc: igt-dev, kernel-dev, Chaitanya Kumar Borah, Alex Hung, Swati Sharma, John Harrison, Rodrigo Siqueira, Simon Ser, Xaver Hugl, Harry Wentland, Uma Shankar Don't check the colorop properties on planes that do not support them (for example, on AMD driver cursor planes). If the COLOR_PIPELINE property of the plane is not available, the plane does not support colorop pipelines and there is no point in checking the colorop properties in this case. Reviewed-by: Alex Hung <alex.hung@amd.com> Signed-off-by: Melissa Wen <mwen@igalia.com> --- v2: - detach different changes from a single commit (Chaitanya) v3: - grammar fixes (Alex H.) --- tests/kms_properties.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/tests/kms_properties.c b/tests/kms_properties.c index 93bf1ea26..2b4cb152b 100644 --- a/tests/kms_properties.c +++ b/tests/kms_properties.c @@ -247,6 +247,10 @@ static void run_colorop_property_tests(igt_display_t *display, &fb); for_each_plane_on_crtc(crtc, plane) { + /* skip planes that don't support color pipelines */ + if (!igt_plane_has_prop(plane, IGT_PLANE_COLOR_PIPELINE)) + continue; + igt_info("Testing colorop properties on plane %s.#%d-%s (output: %s)\n", igt_crtc_name(crtc), plane->index, kmstest_plane_type_name(plane->type), output->name); -- 2.53.0 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH i-g-t v5 4/8] tests/kms_properties: give non-primary planes their own fb 2026-09-02 17:58 [PATCH i-g-t v5 0/8] test/kms_colorop_helper: don't request colorop updates indefinitely Melissa Wen ` (2 preceding siblings ...) 2026-09-02 17:58 ` [PATCH i-g-t v5 3/8] tests/kms_properties: don't check colorop if no plane color pipeline prop Melissa Wen @ 2026-09-02 17:58 ` Melissa Wen 2026-09-02 17:58 ` [PATCH i-g-t v5 5/8] lib/igt_kms: extend igt_plane_set_color_pipeline to accept Bypass Melissa Wen ` (6 subsequent siblings) 10 siblings, 0 replies; 19+ messages in thread From: Melissa Wen @ 2026-09-02 17:58 UTC (permalink / raw) To: Petri Latvala, Arkadiusz Hiler, Kamil Konieczny, Juha-Pekka Heikkila, Bhanuprakash Modem, Ashutosh Dixit, Karthik B S Cc: igt-dev, kernel-dev, Chaitanya Kumar Borah, Alex Hung, Swati Sharma, John Harrison, Rodrigo Siqueira, Simon Ser, Xaver Hugl, Harry Wentland, Uma Shankar On AMD drivers, a CRTC remains active only while its primary plane is enabled; therefore, handing the primary's fb over to a non-primary plane would take the CRTC down with it. Create a dedicated fb for each non-primary plane before testing its colorops and discard it again afterward, leaving the primary plane and its prepare_crtc() fb intact. This is groundwork for the next commit, which checks colorop properties on an active color pipeline. Signed-off-by: Melissa Wen <mwen@igalia.com> --- v2: - detach different changes from a single commit (Chaitanya) v3: - move hunk from next patch to fix mem leak (Alex H/Chaitanya) --- tests/kms_properties.c | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/tests/kms_properties.c b/tests/kms_properties.c index 2b4cb152b..c55a271da 100644 --- a/tests/kms_properties.c +++ b/tests/kms_properties.c @@ -237,7 +237,7 @@ static void run_colorop_property_tests(igt_display_t *display, igt_crtc_t *crtc, igt_output_t *output, bool atomic) { - struct igt_fb fb; + struct igt_fb fb, afb; igt_plane_t *plane; igt_colorop_t *colorop; int i; @@ -255,6 +255,18 @@ static void run_colorop_property_tests(igt_display_t *display, igt_crtc_name(crtc), plane->index, kmstest_plane_type_name(plane->type), output->name); + /* A non-primary plane needs an fb of its own: AMD keeps the + * CRTC active only while the primary plane is enabled. + */ + if (plane->type != DRM_PLANE_TYPE_PRIMARY) { + drmModeModeInfo *mode = igt_output_get_mode(output); + + igt_create_pattern_fb(display->drm_fd, mode->hdisplay, mode->vdisplay, + DRM_FORMAT_XRGB8888, DRM_FORMAT_MOD_LINEAR, &afb); + + igt_plane_set_fb(plane, &afb); + } + /* iterate over all color pipelines on plane */ for (i = 0; i < plane->num_color_pipelines; ++i) { /* iterate over all colorops in pipeline*/ @@ -272,6 +284,12 @@ static void run_colorop_property_tests(igt_display_t *display, colorop = igt_find_colorop(display, colorop_id); } } + + /* only the fb created above needs to go away here */ + if (plane->type != DRM_PLANE_TYPE_PRIMARY) { + igt_plane_set_fb(plane, NULL); + igt_remove_fb(display->drm_fd, &afb); + } } cleanup_crtc(display, crtc, output, -- 2.53.0 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* [PATCH i-g-t v5 5/8] lib/igt_kms: extend igt_plane_set_color_pipeline to accept Bypass 2026-09-02 17:58 [PATCH i-g-t v5 0/8] test/kms_colorop_helper: don't request colorop updates indefinitely Melissa Wen ` (3 preceding siblings ...) 2026-09-02 17:58 ` [PATCH i-g-t v5 4/8] tests/kms_properties: give non-primary planes their own fb Melissa Wen @ 2026-09-02 17:58 ` Melissa Wen 2026-09-09 7:54 ` Borah, Chaitanya Kumar 2026-09-02 17:58 ` [PATCH i-g-t v5 6/8] tests/kms_properties: check colorop properties on active color pipelines Melissa Wen ` (5 subsequent siblings) 10 siblings, 1 reply; 19+ messages in thread From: Melissa Wen @ 2026-09-02 17:58 UTC (permalink / raw) To: Petri Latvala, Arkadiusz Hiler, Kamil Konieczny, Juha-Pekka Heikkila, Bhanuprakash Modem, Ashutosh Dixit, Karthik B S Cc: igt-dev, kernel-dev, Chaitanya Kumar Borah, Alex Hung, Swati Sharma, John Harrison, Rodrigo Siqueira, Simon Ser, Xaver Hugl, Harry Wentland, Uma Shankar "Bypass" is just the COLOR_PIPELINE enum value with no colorop object behind it, so make igt_plane_set_color_pipeline accept NULL and set "Bypass" instead of making callers poke the property directly. Convert its callers, igt_plane_reset() included, and drop the now unused set_color_pipeline_bypass() from kms_colorop_helper. Keep assigned_color_pipeline pointing at the outgoing pipeline when NULL is passed: the kernel accepts a colorop update whose pipeline is in the plane's old state, so reset_colorops() must still be able to finalize colorop settings in the same commit that deactivates them. No functional change. Signed-off-by: Melissa Wen <mwen@igalia.com> --- v3: - new patch, replaces the open-coded "Bypass" setting in patch 6 --- lib/igt_kms.c | 20 +++++++++++++------ .../chamelium/kms_chamelium_color_pipeline.c | 2 +- tests/kms_color_pipeline.c | 2 +- tests/kms_colorop.c | 6 +++--- tests/kms_colorop_helper.c | 5 ----- tests/kms_colorop_helper.h | 1 - 6 files changed, 19 insertions(+), 17 deletions(-) diff --git a/lib/igt_kms.c b/lib/igt_kms.c index 6039ad18a..cabe60a31 100644 --- a/lib/igt_kms.c +++ b/lib/igt_kms.c @@ -2708,7 +2708,7 @@ static void igt_plane_reset(igt_plane_t *plane) igt_plane_set_prop_value(plane, IGT_PLANE_HOTSPOT_Y, 0); if (igt_plane_has_prop(plane, IGT_PLANE_COLOR_PIPELINE)) - igt_plane_set_prop_enum(plane, IGT_PLANE_COLOR_PIPELINE, "Bypass"); + igt_plane_set_color_pipeline(plane, NULL); igt_plane_clear_prop_changed(plane, IGT_PLANE_IN_FENCE_FD); plane->values[IGT_PLANE_IN_FENCE_FD] = ~0ULL; @@ -4430,17 +4430,25 @@ bool igt_plane_is_valid_colorop(igt_plane_t *plane, igt_colorop_t *colorop) /** * igt_plane_set_color_pipeline: * @plane: Target plane. - * @colorop: Colorop to set as color pipeline. + * @colorop: Colorop to set as color pipeline, or NULL for "Bypass". * * This function sets the given @colorop as color pipeline on @plane, or fails - * the test if it's an invalid color pipeline for the plane. + * the test if it's an invalid color pipeline for the plane. Passing NULL sets + * the plane color pipeline to "Bypass" but keeps the previously assigned + * pipeline, so that pending colorop changes are still submitted with the + * commit that deactivates it, which the kernel accepts because the colorop is + * in the plane's old state. */ void igt_plane_set_color_pipeline(igt_plane_t *plane, igt_colorop_t *colorop) { - igt_assert(igt_plane_is_valid_colorop(plane, colorop)); + igt_assert(!colorop || igt_plane_is_valid_colorop(plane, colorop)); - plane->assigned_color_pipeline = colorop; - igt_plane_set_prop_enum(plane, IGT_PLANE_COLOR_PIPELINE, colorop->name); + if (colorop) + plane->assigned_color_pipeline = colorop; + + igt_plane_set_prop_enum(plane, + IGT_PLANE_COLOR_PIPELINE, + colorop ? colorop->name : "Bypass"); } /** diff --git a/tests/chamelium/kms_chamelium_color_pipeline.c b/tests/chamelium/kms_chamelium_color_pipeline.c index db6107221..5738c6dd1 100644 --- a/tests/chamelium/kms_chamelium_color_pipeline.c +++ b/tests/chamelium/kms_chamelium_color_pipeline.c @@ -161,7 +161,7 @@ static void _test_plane_colorops(data_t *data, chamelium_destroy_frame_dump(frame); /* Cleanup */ - set_color_pipeline_bypass(plane); + igt_plane_set_color_pipeline(plane, NULL); reset_colorops(colorops); igt_plane_set_fb(plane, NULL); diff --git a/tests/kms_color_pipeline.c b/tests/kms_color_pipeline.c index 78860a845..f71416ce1 100644 --- a/tests/kms_color_pipeline.c +++ b/tests/kms_color_pipeline.c @@ -168,7 +168,7 @@ static void _test_plane_colorops(data_t *data, igt_assert_crc_equal(crc_ref, &crc_pipe); /* Cleanup per-test state */ - set_color_pipeline_bypass(plane); + igt_plane_set_color_pipeline(plane, NULL); reset_colorops(colorops); igt_plane_set_fb(plane, NULL); igt_display_commit_atomic(&data->display, 0, NULL); diff --git a/tests/kms_colorop.c b/tests/kms_colorop.c index 732b9d57f..2bee1eecd 100644 --- a/tests/kms_colorop.c +++ b/tests/kms_colorop.c @@ -287,7 +287,7 @@ static void colorop_plane_test(igt_display_t *display, /* reset color pipeline*/ - set_color_pipeline_bypass(plane); + igt_plane_set_color_pipeline(plane, NULL); /* Commit */ igt_plane_set_fb(plane, input_fb); @@ -315,7 +315,7 @@ static void colorop_plane_test(igt_display_t *display, if (!colorops[0]) { /* bypass test */ - set_color_pipeline_bypass(plane); + igt_plane_set_color_pipeline(plane, NULL); } else { /* get COLOR_PIPELINE enum */ color_pipeline = get_color_pipeline(display, plane, colorops); @@ -343,7 +343,7 @@ static void colorop_plane_test(igt_display_t *display, /* Test bypass transition if requested */ if (verify_bypass) { /* reset color pipeline*/ - set_color_pipeline_bypass(plane); + igt_plane_set_color_pipeline(plane, NULL); /* Commit */ igt_plane_set_fb(plane, input_fb); diff --git a/tests/kms_colorop_helper.c b/tests/kms_colorop_helper.c index da234410e..a109c1b06 100644 --- a/tests/kms_colorop_helper.c +++ b/tests/kms_colorop_helper.c @@ -450,11 +450,6 @@ void set_color_pipeline(igt_display_t *display, } } -void set_color_pipeline_bypass(igt_plane_t *plane) -{ - igt_plane_set_prop_enum(plane, IGT_PLANE_COLOR_PIPELINE, "Bypass"); -} - static void reset_colorop(kms_colorop_t *colorop) { igt_assert(colorop->colorop); diff --git a/tests/kms_colorop_helper.h b/tests/kms_colorop_helper.h index 9a1477666..2a0e3799f 100644 --- a/tests/kms_colorop_helper.h +++ b/tests/kms_colorop_helper.h @@ -114,7 +114,6 @@ void set_color_pipeline(igt_display_t *display, igt_plane_t *plane, kms_colorop_t *colorops[], igt_colorop_t *color_pipeline); -void set_color_pipeline_bypass(igt_plane_t *plane); void reset_colorops(kms_colorop_t *colorops[]); #endif /* __KMS_COLOROP_HELPER_H__ */ -- 2.53.0 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [PATCH i-g-t v5 5/8] lib/igt_kms: extend igt_plane_set_color_pipeline to accept Bypass 2026-09-02 17:58 ` [PATCH i-g-t v5 5/8] lib/igt_kms: extend igt_plane_set_color_pipeline to accept Bypass Melissa Wen @ 2026-09-09 7:54 ` Borah, Chaitanya Kumar 0 siblings, 0 replies; 19+ messages in thread From: Borah, Chaitanya Kumar @ 2026-09-09 7:54 UTC (permalink / raw) To: Melissa Wen, Petri Latvala, Arkadiusz Hiler, Kamil Konieczny, Juha-Pekka Heikkila, Bhanuprakash Modem, Ashutosh Dixit, Karthik B S Cc: igt-dev, kernel-dev, Alex Hung, Swati Sharma, John Harrison, Rodrigo Siqueira, Simon Ser, Xaver Hugl, Harry Wentland, Uma Shankar On 9/2/2026 11:28 PM, Melissa Wen wrote: > "Bypass" is just the COLOR_PIPELINE enum value with no colorop object > behind it, so make igt_plane_set_color_pipeline accept NULL and set > "Bypass" instead of making callers poke the property directly. Convert > its callers, igt_plane_reset() included, and drop the now unused > set_color_pipeline_bypass() from kms_colorop_helper. > > Keep assigned_color_pipeline pointing at the outgoing pipeline when NULL > is passed: the kernel accepts a colorop update whose pipeline is in the > plane's old state, so reset_colorops() must still be able to finalize > colorop settings in the same commit that deactivates them. No functional > change. > We still have a problem of assigned_color_pipeline never being resetted to NULL. But not a problem with this patch. Reviewed-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com> == Chaitanya > Signed-off-by: Melissa Wen <mwen@igalia.com> > --- > > v3: > - new patch, replaces the open-coded "Bypass" setting in patch 6 > --- > lib/igt_kms.c | 20 +++++++++++++------ > .../chamelium/kms_chamelium_color_pipeline.c | 2 +- > tests/kms_color_pipeline.c | 2 +- > tests/kms_colorop.c | 6 +++--- > tests/kms_colorop_helper.c | 5 ----- > tests/kms_colorop_helper.h | 1 - > 6 files changed, 19 insertions(+), 17 deletions(-) > > diff --git a/lib/igt_kms.c b/lib/igt_kms.c > index 6039ad18a..cabe60a31 100644 > --- a/lib/igt_kms.c > +++ b/lib/igt_kms.c > @@ -2708,7 +2708,7 @@ static void igt_plane_reset(igt_plane_t *plane) > igt_plane_set_prop_value(plane, IGT_PLANE_HOTSPOT_Y, 0); > > if (igt_plane_has_prop(plane, IGT_PLANE_COLOR_PIPELINE)) > - igt_plane_set_prop_enum(plane, IGT_PLANE_COLOR_PIPELINE, "Bypass"); > + igt_plane_set_color_pipeline(plane, NULL); > > igt_plane_clear_prop_changed(plane, IGT_PLANE_IN_FENCE_FD); > plane->values[IGT_PLANE_IN_FENCE_FD] = ~0ULL; > @@ -4430,17 +4430,25 @@ bool igt_plane_is_valid_colorop(igt_plane_t *plane, igt_colorop_t *colorop) > /** > * igt_plane_set_color_pipeline: > * @plane: Target plane. > - * @colorop: Colorop to set as color pipeline. > + * @colorop: Colorop to set as color pipeline, or NULL for "Bypass". > * > * This function sets the given @colorop as color pipeline on @plane, or fails > - * the test if it's an invalid color pipeline for the plane. > + * the test if it's an invalid color pipeline for the plane. Passing NULL sets > + * the plane color pipeline to "Bypass" but keeps the previously assigned > + * pipeline, so that pending colorop changes are still submitted with the > + * commit that deactivates it, which the kernel accepts because the colorop is > + * in the plane's old state. > */ > void igt_plane_set_color_pipeline(igt_plane_t *plane, igt_colorop_t *colorop) > { > - igt_assert(igt_plane_is_valid_colorop(plane, colorop)); > + igt_assert(!colorop || igt_plane_is_valid_colorop(plane, colorop)); > > - plane->assigned_color_pipeline = colorop; > - igt_plane_set_prop_enum(plane, IGT_PLANE_COLOR_PIPELINE, colorop->name); > + if (colorop) > + plane->assigned_color_pipeline = colorop; > + > + igt_plane_set_prop_enum(plane, > + IGT_PLANE_COLOR_PIPELINE, > + colorop ? colorop->name : "Bypass"); > } > > /** > diff --git a/tests/chamelium/kms_chamelium_color_pipeline.c b/tests/chamelium/kms_chamelium_color_pipeline.c > index db6107221..5738c6dd1 100644 > --- a/tests/chamelium/kms_chamelium_color_pipeline.c > +++ b/tests/chamelium/kms_chamelium_color_pipeline.c > @@ -161,7 +161,7 @@ static void _test_plane_colorops(data_t *data, > chamelium_destroy_frame_dump(frame); > > /* Cleanup */ > - set_color_pipeline_bypass(plane); > + igt_plane_set_color_pipeline(plane, NULL); > reset_colorops(colorops); > > igt_plane_set_fb(plane, NULL); > diff --git a/tests/kms_color_pipeline.c b/tests/kms_color_pipeline.c > index 78860a845..f71416ce1 100644 > --- a/tests/kms_color_pipeline.c > +++ b/tests/kms_color_pipeline.c > @@ -168,7 +168,7 @@ static void _test_plane_colorops(data_t *data, > igt_assert_crc_equal(crc_ref, &crc_pipe); > > /* Cleanup per-test state */ > - set_color_pipeline_bypass(plane); > + igt_plane_set_color_pipeline(plane, NULL); > reset_colorops(colorops); > igt_plane_set_fb(plane, NULL); > igt_display_commit_atomic(&data->display, 0, NULL); > diff --git a/tests/kms_colorop.c b/tests/kms_colorop.c > index 732b9d57f..2bee1eecd 100644 > --- a/tests/kms_colorop.c > +++ b/tests/kms_colorop.c > @@ -287,7 +287,7 @@ static void colorop_plane_test(igt_display_t *display, > > /* reset color pipeline*/ > > - set_color_pipeline_bypass(plane); > + igt_plane_set_color_pipeline(plane, NULL); > > /* Commit */ > igt_plane_set_fb(plane, input_fb); > @@ -315,7 +315,7 @@ static void colorop_plane_test(igt_display_t *display, > > if (!colorops[0]) { > /* bypass test */ > - set_color_pipeline_bypass(plane); > + igt_plane_set_color_pipeline(plane, NULL); > } else { > /* get COLOR_PIPELINE enum */ > color_pipeline = get_color_pipeline(display, plane, colorops); > @@ -343,7 +343,7 @@ static void colorop_plane_test(igt_display_t *display, > /* Test bypass transition if requested */ > if (verify_bypass) { > /* reset color pipeline*/ > - set_color_pipeline_bypass(plane); > + igt_plane_set_color_pipeline(plane, NULL); > > /* Commit */ > igt_plane_set_fb(plane, input_fb); > diff --git a/tests/kms_colorop_helper.c b/tests/kms_colorop_helper.c > index da234410e..a109c1b06 100644 > --- a/tests/kms_colorop_helper.c > +++ b/tests/kms_colorop_helper.c > @@ -450,11 +450,6 @@ void set_color_pipeline(igt_display_t *display, > } > } > > -void set_color_pipeline_bypass(igt_plane_t *plane) > -{ > - igt_plane_set_prop_enum(plane, IGT_PLANE_COLOR_PIPELINE, "Bypass"); > -} > - > static void reset_colorop(kms_colorop_t *colorop) > { > igt_assert(colorop->colorop); > diff --git a/tests/kms_colorop_helper.h b/tests/kms_colorop_helper.h > index 9a1477666..2a0e3799f 100644 > --- a/tests/kms_colorop_helper.h > +++ b/tests/kms_colorop_helper.h > @@ -114,7 +114,6 @@ void set_color_pipeline(igt_display_t *display, > igt_plane_t *plane, > kms_colorop_t *colorops[], > igt_colorop_t *color_pipeline); > -void set_color_pipeline_bypass(igt_plane_t *plane); > void reset_colorops(kms_colorop_t *colorops[]); > > #endif /* __KMS_COLOROP_HELPER_H__ */ ^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH i-g-t v5 6/8] tests/kms_properties: check colorop properties on active color pipelines 2026-09-02 17:58 [PATCH i-g-t v5 0/8] test/kms_colorop_helper: don't request colorop updates indefinitely Melissa Wen ` (4 preceding siblings ...) 2026-09-02 17:58 ` [PATCH i-g-t v5 5/8] lib/igt_kms: extend igt_plane_set_color_pipeline to accept Bypass Melissa Wen @ 2026-09-02 17:58 ` Melissa Wen 2026-09-09 7:55 ` Borah, Chaitanya Kumar 2026-09-02 17:58 ` [PATCH i-g-t v5 7/8] tests/intel/kms_color_pipeline: move driver-specific test to intel's folder Melissa Wen ` (4 subsequent siblings) 10 siblings, 1 reply; 19+ messages in thread From: Melissa Wen @ 2026-09-02 17:58 UTC (permalink / raw) To: Petri Latvala, Arkadiusz Hiler, Kamil Konieczny, Juha-Pekka Heikkila, Bhanuprakash Modem, Ashutosh Dixit, Karthik B S Cc: igt-dev, kernel-dev, Chaitanya Kumar Borah, Alex Hung, Swati Sharma, John Harrison, Rodrigo Siqueira, Simon Ser, Xaver Hugl, Harry Wentland, Uma Shankar A colorop property can only be changed if its color pipeline is active, i.e. the colorop is in the chain of the color pipeline set in the plane COLOR_PIPELINE property. Set each color pipeline active before checking the properties of its colorops, and restore Bypass afterwards. Signed-off-by: Melissa Wen <mwen@igalia.com> --- v2: - detach different changes from a single commit (Chaitanya) v3: - move hunk to the previous commit (Chaitanya) v5: - add missing commit of bypass color pipeline --- tests/kms_properties.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/tests/kms_properties.c b/tests/kms_properties.c index c55a271da..76aadd162 100644 --- a/tests/kms_properties.c +++ b/tests/kms_properties.c @@ -271,6 +271,9 @@ static void run_colorop_property_tests(igt_display_t *display, for (i = 0; i < plane->num_color_pipelines; ++i) { /* iterate over all colorops in pipeline*/ colorop = plane->color_pipelines[i]; + igt_plane_set_color_pipeline(plane, colorop); + igt_display_commit2(display, COMMIT_ATOMIC); + while (colorop) { igt_info("Testing colorop properties on %s.#%d.#%d-%s (output: %s)\n", igt_crtc_name(crtc), plane->index, @@ -285,6 +288,9 @@ static void run_colorop_property_tests(igt_display_t *display, } } + igt_plane_set_color_pipeline(plane, NULL); + igt_display_commit2(display, COMMIT_ATOMIC); + /* only the fb created above needs to go away here */ if (plane->type != DRM_PLANE_TYPE_PRIMARY) { igt_plane_set_fb(plane, NULL); -- 2.53.0 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [PATCH i-g-t v5 6/8] tests/kms_properties: check colorop properties on active color pipelines 2026-09-02 17:58 ` [PATCH i-g-t v5 6/8] tests/kms_properties: check colorop properties on active color pipelines Melissa Wen @ 2026-09-09 7:55 ` Borah, Chaitanya Kumar 0 siblings, 0 replies; 19+ messages in thread From: Borah, Chaitanya Kumar @ 2026-09-09 7:55 UTC (permalink / raw) To: Melissa Wen, Petri Latvala, Arkadiusz Hiler, Kamil Konieczny, Juha-Pekka Heikkila, Bhanuprakash Modem, Ashutosh Dixit, Karthik B S Cc: igt-dev, kernel-dev, Alex Hung, Swati Sharma, John Harrison, Rodrigo Siqueira, Simon Ser, Xaver Hugl, Harry Wentland, Uma Shankar On 9/2/2026 11:28 PM, Melissa Wen wrote: > A colorop property can only be changed if its color pipeline is active, > i.e. the colorop is in the chain of the color pipeline set in the plane > COLOR_PIPELINE property. Set each color pipeline active before checking > the properties of its colorops, and restore Bypass afterwards. > > Signed-off-by: Melissa Wen <mwen@igalia.com> > --- > > v2: > - detach different changes from a single commit (Chaitanya) > v3: > - move hunk to the previous commit (Chaitanya) > v5: > - add missing commit of bypass color pipeline > --- > tests/kms_properties.c | 6 ++++++ > 1 file changed, 6 insertions(+) > > diff --git a/tests/kms_properties.c b/tests/kms_properties.c > index c55a271da..76aadd162 100644 > --- a/tests/kms_properties.c > +++ b/tests/kms_properties.c > @@ -271,6 +271,9 @@ static void run_colorop_property_tests(igt_display_t *display, > for (i = 0; i < plane->num_color_pipelines; ++i) { > /* iterate over all colorops in pipeline*/ > colorop = plane->color_pipelines[i]; > + igt_plane_set_color_pipeline(plane, colorop); > + igt_display_commit2(display, COMMIT_ATOMIC); > + > while (colorop) { > igt_info("Testing colorop properties on %s.#%d.#%d-%s (output: %s)\n", > igt_crtc_name(crtc), plane->index, > @@ -285,6 +288,9 @@ static void run_colorop_property_tests(igt_display_t *display, > } > } > > + igt_plane_set_color_pipeline(plane, NULL); > + igt_display_commit2(display, COMMIT_ATOMIC); > + > /* only the fb created above needs to go away here */ > if (plane->type != DRM_PLANE_TYPE_PRIMARY) { > igt_plane_set_fb(plane, NULL); Come to think of it, this will also need a commit (To be added with patch 4?). Because we need one for igt_plane_set_fb(plane, NULL) to take effect. We will end up with igt_plane_set_color_pipeline(plane, NULL); if (plane->type != DRM_PLANE_TYPE_PRIMARY) igt_plane_set_fb(plane, NULL); igt_display_commit2(display, COMMIT_ATOMIC); if (plane->type != DRM_PLANE_TYPE_PRIMARY) igt_remove_fb(display->drm_fd, &afb); which is a bit ugly but may there is a better way. == Chaitanya ^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH i-g-t v5 7/8] tests/intel/kms_color_pipeline: move driver-specific test to intel's folder 2026-09-02 17:58 [PATCH i-g-t v5 0/8] test/kms_colorop_helper: don't request colorop updates indefinitely Melissa Wen ` (5 preceding siblings ...) 2026-09-02 17:58 ` [PATCH i-g-t v5 6/8] tests/kms_properties: check colorop properties on active color pipelines Melissa Wen @ 2026-09-02 17:58 ` Melissa Wen 2026-09-08 19:17 ` Sharma, Swati2 2026-09-09 7:56 ` Borah, Chaitanya Kumar 2026-09-02 17:58 ` [PATCH i-g-t v5 8/8] lib/igt_kms: add macros to iterate color pipelines and colorops Melissa Wen ` (3 subsequent siblings) 10 siblings, 2 replies; 19+ messages in thread From: Melissa Wen @ 2026-09-02 17:58 UTC (permalink / raw) To: Petri Latvala, Arkadiusz Hiler, Kamil Konieczny, Juha-Pekka Heikkila, Bhanuprakash Modem, Ashutosh Dixit, Karthik B S Cc: igt-dev, kernel-dev, Chaitanya Kumar Borah, Alex Hung, Swati Sharma, John Harrison, Rodrigo Siqueira, Simon Ser, Xaver Hugl, Harry Wentland, Uma Shankar As stated in test docs, the kms_color_pipeline isn't driver-agnostic. It validates color transformations using CRC, which is less accurate than comparing writeback buffers, but the i915 and xe drivers require CRC validation when the writeback connector is not supported: kms_colorop tests don't run when writeback is not supported. Since other drivers that support colorops also support writeback, this CRC option is currently only required by Intel; therefore, move kms_color_pipeline test to the Intel folder and only open Intel's drivers (not any). If the CRC-based colorop test is useful for some other driver, the required generalizations and switch to the common folder should be made. Signed-off-by: Melissa Wen <mwen@igalia.com> --- tests/{ => intel}/kms_color_pipeline.c | 2 +- tests/meson.build | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) rename tests/{ => intel}/kms_color_pipeline.c (99%) diff --git a/tests/kms_color_pipeline.c b/tests/intel/kms_color_pipeline.c similarity index 99% rename from tests/kms_color_pipeline.c rename to tests/intel/kms_color_pipeline.c index f71416ce1..3d41b811b 100644 --- a/tests/kms_color_pipeline.c +++ b/tests/intel/kms_color_pipeline.c @@ -353,7 +353,7 @@ int igt_main() data_t data = {}; igt_fixture() { - data.drm_fd = drm_open_driver_master(DRIVER_ANY); + data.drm_fd = drm_open_driver_master(DRIVER_INTEL | DRIVER_XE); /* * Plane color pipeline support requires atomic modesetting. diff --git a/tests/meson.build b/tests/meson.build index 1ac89bab7..c1a436420 100644 --- a/tests/meson.build +++ b/tests/meson.build @@ -25,7 +25,6 @@ test_progs = [ 'kms_atomic_transition', 'kms_bw', 'kms_color', - 'kms_color_pipeline', 'kms_concurrent', 'kms_colorop', 'kms_content_protection', @@ -250,6 +249,7 @@ intel_kms_progs = [ 'kms_busy', 'kms_ccs', 'kms_cdclk', + 'kms_color_pipeline', 'kms_dirtyfb', 'kms_dp_link_training', 'kms_dp_linktrain_fallback', -- 2.53.0 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [PATCH i-g-t v5 7/8] tests/intel/kms_color_pipeline: move driver-specific test to intel's folder 2026-09-02 17:58 ` [PATCH i-g-t v5 7/8] tests/intel/kms_color_pipeline: move driver-specific test to intel's folder Melissa Wen @ 2026-09-08 19:17 ` Sharma, Swati2 2026-09-09 7:56 ` Borah, Chaitanya Kumar 1 sibling, 0 replies; 19+ messages in thread From: Sharma, Swati2 @ 2026-09-08 19:17 UTC (permalink / raw) To: Melissa Wen, Petri Latvala, Arkadiusz Hiler, Kamil Konieczny, Juha-Pekka Heikkila, Bhanuprakash Modem, Ashutosh Dixit, Karthik B S Cc: igt-dev, kernel-dev, Chaitanya Kumar Borah, Alex Hung, John Harrison, Rodrigo Siqueira, Simon Ser, Xaver Hugl, Harry Wentland, Uma Shankar Hi Melissa On 02-09-2026 11:28 pm, Melissa Wen wrote: > As stated in test docs, the kms_color_pipeline isn't driver-agnostic. It > validates color transformations using CRC, which is less accurate than > comparing writeback buffers, but the i915 and xe drivers require CRC > validation when the writeback connector is not supported: kms_colorop > tests don't run when writeback is not supported. Since other drivers > that support colorops also support writeback, this CRC option is > currently only required by Intel; therefore, move kms_color_pipeline > test to the Intel folder and only open Intel's drivers (not any). > > If the CRC-based colorop test is useful for some other driver, the > required generalizations and switch to the common folder should be made. Patch LGTM Reviewed-by: Swati Sharma <swati2.sharma@intel.com> > > Signed-off-by: Melissa Wen <mwen@igalia.com> > --- > tests/{ => intel}/kms_color_pipeline.c | 2 +- > tests/meson.build | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > rename tests/{ => intel}/kms_color_pipeline.c (99%) > > diff --git a/tests/kms_color_pipeline.c b/tests/intel/kms_color_pipeline.c > similarity index 99% > rename from tests/kms_color_pipeline.c > rename to tests/intel/kms_color_pipeline.c > index f71416ce1..3d41b811b 100644 > --- a/tests/kms_color_pipeline.c > +++ b/tests/intel/kms_color_pipeline.c > @@ -353,7 +353,7 @@ int igt_main() > data_t data = {}; > > igt_fixture() { > - data.drm_fd = drm_open_driver_master(DRIVER_ANY); > + data.drm_fd = drm_open_driver_master(DRIVER_INTEL | DRIVER_XE); > > /* > * Plane color pipeline support requires atomic modesetting. > diff --git a/tests/meson.build b/tests/meson.build > index 1ac89bab7..c1a436420 100644 > --- a/tests/meson.build > +++ b/tests/meson.build > @@ -25,7 +25,6 @@ test_progs = [ > 'kms_atomic_transition', > 'kms_bw', > 'kms_color', > - 'kms_color_pipeline', > 'kms_concurrent', > 'kms_colorop', > 'kms_content_protection', > @@ -250,6 +249,7 @@ intel_kms_progs = [ > 'kms_busy', > 'kms_ccs', > 'kms_cdclk', > + 'kms_color_pipeline', > 'kms_dirtyfb', > 'kms_dp_link_training', > 'kms_dp_linktrain_fallback', ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH i-g-t v5 7/8] tests/intel/kms_color_pipeline: move driver-specific test to intel's folder 2026-09-02 17:58 ` [PATCH i-g-t v5 7/8] tests/intel/kms_color_pipeline: move driver-specific test to intel's folder Melissa Wen 2026-09-08 19:17 ` Sharma, Swati2 @ 2026-09-09 7:56 ` Borah, Chaitanya Kumar 1 sibling, 0 replies; 19+ messages in thread From: Borah, Chaitanya Kumar @ 2026-09-09 7:56 UTC (permalink / raw) To: Melissa Wen, Petri Latvala, Arkadiusz Hiler, Kamil Konieczny, Juha-Pekka Heikkila, Bhanuprakash Modem, Ashutosh Dixit, Karthik B S Cc: igt-dev, kernel-dev, Alex Hung, Swati Sharma, John Harrison, Rodrigo Siqueira, Simon Ser, Xaver Hugl, Harry Wentland, Uma Shankar On 9/2/2026 11:28 PM, Melissa Wen wrote: > As stated in test docs, the kms_color_pipeline isn't driver-agnostic. It > validates color transformations using CRC, which is less accurate than > comparing writeback buffers, but the i915 and xe drivers require CRC > validation when the writeback connector is not supported: kms_colorop > tests don't run when writeback is not supported. Since other drivers > that support colorops also support writeback, this CRC option is > currently only required by Intel; therefore, move kms_color_pipeline > test to the Intel folder and only open Intel's drivers (not any). > > If the CRC-based colorop test is useful for some other driver, the > required generalizations and switch to the common folder should be made. > LGTM Reviewed-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com> > Signed-off-by: Melissa Wen <mwen@igalia.com> > --- > tests/{ => intel}/kms_color_pipeline.c | 2 +- > tests/meson.build | 2 +- > 2 files changed, 2 insertions(+), 2 deletions(-) > rename tests/{ => intel}/kms_color_pipeline.c (99%) > > diff --git a/tests/kms_color_pipeline.c b/tests/intel/kms_color_pipeline.c > similarity index 99% > rename from tests/kms_color_pipeline.c > rename to tests/intel/kms_color_pipeline.c > index f71416ce1..3d41b811b 100644 > --- a/tests/kms_color_pipeline.c > +++ b/tests/intel/kms_color_pipeline.c > @@ -353,7 +353,7 @@ int igt_main() > data_t data = {}; > > igt_fixture() { > - data.drm_fd = drm_open_driver_master(DRIVER_ANY); > + data.drm_fd = drm_open_driver_master(DRIVER_INTEL | DRIVER_XE); > > /* > * Plane color pipeline support requires atomic modesetting. > diff --git a/tests/meson.build b/tests/meson.build > index 1ac89bab7..c1a436420 100644 > --- a/tests/meson.build > +++ b/tests/meson.build > @@ -25,7 +25,6 @@ test_progs = [ > 'kms_atomic_transition', > 'kms_bw', > 'kms_color', > - 'kms_color_pipeline', > 'kms_concurrent', > 'kms_colorop', > 'kms_content_protection', > @@ -250,6 +249,7 @@ intel_kms_progs = [ > 'kms_busy', > 'kms_ccs', > 'kms_cdclk', > + 'kms_color_pipeline', > 'kms_dirtyfb', > 'kms_dp_link_training', > 'kms_dp_linktrain_fallback', ^ permalink raw reply [flat|nested] 19+ messages in thread
* [PATCH i-g-t v5 8/8] lib/igt_kms: add macros to iterate color pipelines and colorops 2026-09-02 17:58 [PATCH i-g-t v5 0/8] test/kms_colorop_helper: don't request colorop updates indefinitely Melissa Wen ` (6 preceding siblings ...) 2026-09-02 17:58 ` [PATCH i-g-t v5 7/8] tests/intel/kms_color_pipeline: move driver-specific test to intel's folder Melissa Wen @ 2026-09-02 17:58 ` Melissa Wen 2026-09-03 10:44 ` Jani Nikula 2026-09-09 7:56 ` Borah, Chaitanya Kumar 2026-09-02 23:19 ` ✓ Xe.CI.BAT: success for test/kms_colorop_helper: don't request colorop updates indefinitely (rev3) Patchwork ` (2 subsequent siblings) 10 siblings, 2 replies; 19+ messages in thread From: Melissa Wen @ 2026-09-02 17:58 UTC (permalink / raw) To: Petri Latvala, Arkadiusz Hiler, Kamil Konieczny, Juha-Pekka Heikkila, Bhanuprakash Modem, Ashutosh Dixit, Karthik B S Cc: igt-dev, kernel-dev, Chaitanya Kumar Borah, Alex Hung, Swati Sharma, John Harrison, Rodrigo Siqueira, Simon Ser, Xaver Hugl, Harry Wentland, Uma Shankar, Jani Nikula Walking a plane's color pipelines, and the colorop chain of a given pipeline, is open-coded in eight places across lib and the colorop tests. Add for_each_color_pipeline() to iterate over all color pipelines supported by a plane and for_each_colorop_in_pipeline() to iterate over all colorops of a pipeline. The chain walk in igt_fill_plane_color_pipelines() now stores the next colorop reached by the NEXT property (which is immutable and doesn't change after being discovered) and, as a consequence, igt_find_colorop() becomes unused and is removed. Suggested-by: Jani Nikula <jani.nikula@intel.com> Signed-off-by: Melissa Wen <mwen@igalia.com> --- v4: - new patch, suggested by Jani v5: - store next colorop, now igt_colorop_next and igt_find_colorop are unnecessary - use igt_unique for macro iterator --- lib/igt_kms.c | 76 ++++++++++++-------------------------- lib/igt_kms.h | 32 ++++++++++++++-- tests/kms_colorop.c | 17 +++------ tests/kms_colorop_helper.c | 40 +++++++------------- tests/kms_properties.c | 17 +++------ 5 files changed, 77 insertions(+), 105 deletions(-) diff --git a/lib/igt_kms.c b/lib/igt_kms.c index cabe60a31..6329e42eb 100644 --- a/lib/igt_kms.c +++ b/lib/igt_kms.c @@ -794,28 +794,6 @@ igt_plane_rotations(igt_display_t *display, igt_plane_t *plane, return rotations; } -/** - * igt_find_colorop: - * @display: display on which to look for colorop. - * @id: DRM object id of the colorop. - * - * Returns: An igt_colorop_t if found, or NULL otherwise. - */ -igt_colorop_t *igt_find_colorop(igt_display_t *display, uint32_t id) -{ - int i; - - /* find corresponding igt_colorop */ - for (i = 0; i < display->n_colorops; ++i) { - igt_colorop_t *colorop = &display->colorops[i]; - - if (colorop->id == id) - return colorop; - } - - return NULL; -} - /* * Retrieve all the properies specified in props_name and store them into * colorop->props. @@ -873,28 +851,34 @@ igt_fill_plane_color_pipelines(igt_display_t *display, igt_plane_t *plane, for (i = 0; i < prop->count_enums; i++) { if (prop->enums[i].value) { - igt_colorop_t *colorop = &display->colorops[display->n_colorops++]; + igt_colorop_t *colorop; igt_assert(display->n_colorops < MAX_NUM_COLOROPS); + colorop = &display->colorops[display->n_colorops++]; igt_fill_colorop(display, plane, colorop, prop->enums[i].value, prop->enums[i].name); plane->color_pipelines[plane->num_color_pipelines++] = colorop; /* get all NEXT colorops */ colorop_id = igt_colorop_get_prop(display, colorop, - IGT_COLOROP_NEXT); + IGT_COLOROP_NEXT); while (colorop_id) { - colorop = &display->colorops[display->n_colorops++]; + igt_colorop_t *next; + igt_assert(display->n_colorops < MAX_NUM_COLOROPS); - igt_fill_colorop(display, plane, colorop, colorop_id, NULL); + next = &display->colorops[display->n_colorops++]; + igt_fill_colorop(display, plane, next, colorop_id, NULL); + + colorop->next = next; + colorop = next; + colorop_id = igt_colorop_get_prop(display, colorop, - IGT_COLOROP_NEXT); + IGT_COLOROP_NEXT); } } } igt_assert(plane->num_color_pipelines < IGT_NUM_PLANE_COLOR_PIPELINES); - } /* @@ -3810,13 +3794,14 @@ igt_atomic_prepare_plane_commit(igt_plane_t *plane, igt_crtc_t *crtc, * Add colorop properties */ static void -igt_atomic_prepare_colorop_commit(igt_colorop_t *colorop, igt_crtc_t *crtc, +igt_atomic_prepare_colorop_commit(igt_colorop_t *color_pipeline, igt_crtc_t *crtc, drmModeAtomicReq *req) { igt_display_t *display = crtc->display; - int i, next_val; + igt_colorop_t *colorop; + int i; - while (colorop) { + for_each_colorop_in_pipeline(color_pipeline, colorop) { LOG(display, "populating colorop data: %s.%d\n", igt_crtc_name(crtc), @@ -3838,11 +3823,6 @@ igt_atomic_prepare_colorop_commit(igt_colorop_t *colorop, igt_crtc_t *crtc, colorop->props[i], colorop->values[i])); } - - /* get next colorop */ - next_val = igt_colorop_get_prop(display, colorop, - IGT_COLOROP_NEXT); - colorop = igt_find_colorop(display, next_val); } } @@ -4415,18 +4395,16 @@ bool igt_plane_check_prop_is_mutable(igt_plane_t *plane, */ bool igt_plane_is_valid_colorop(igt_plane_t *plane, igt_colorop_t *colorop) { - int i; - bool found = false; + igt_colorop_t *color_pipeline; - for (i = 0; i < plane->num_color_pipelines; i++) { - if (plane->color_pipelines[i] == colorop) { - found = true; - break; - } + for_each_color_pipeline(plane, color_pipeline) { + if (color_pipeline == colorop) + return true; } - return found; + return false; } + /** * igt_plane_set_color_pipeline: * @plane: Target plane. @@ -4932,15 +4910,9 @@ display_commit_changed(igt_display_t *display, enum igt_commit_style s) * so already-committed property values aren't re-emitted on * the next commit. */ - colorop = plane->assigned_color_pipeline; - while (colorop) { - uint32_t next_val; - + for_each_colorop_in_pipeline(plane->assigned_color_pipeline, + colorop) colorop->changed = 0; - next_val = igt_colorop_get_prop(display, colorop, - IGT_COLOROP_NEXT); - colorop = igt_find_colorop(display, next_val); - } fd = plane->values[IGT_PLANE_IN_FENCE_FD]; if (fd != -1) diff --git a/lib/igt_kms.h b/lib/igt_kms.h index 23615dd91..0187ad9a1 100644 --- a/lib/igt_kms.h +++ b/lib/igt_kms.h @@ -415,17 +415,18 @@ static inline bool igt_rotation_90_or_270(igt_rotation_t rotation) } typedef struct _igt_plane igt_plane_t; +typedef struct _igt_colorop igt_colorop_t; -typedef struct { +typedef struct _igt_colorop { uint32_t id; igt_plane_t *plane; + igt_colorop_t *next; char name[DRM_PROP_NAME_LEN]; uint64_t changed; uint32_t props[IGT_NUM_COLOROP_PROPS]; uint64_t values[IGT_NUM_COLOROP_PROPS]; - } igt_colorop_t; struct igt_format_mods { @@ -1027,6 +1028,31 @@ uint64_t igt_colorop_get_prop(igt_display_t *display, igt_colorop_t *colorop, en igt_colorop_set_prop_changed(colorop, prop); \ } while (0) +/** + * for_each_color_pipeline: + * @plane: plane to which the color pipelines belong + * @color_pipeline: the color pipeline to iterate + * + * Iterates through all color pipelines supported by @plane. If no color + * pipeline is supported, nothing happens. + */ +#define for_each_color_pipeline(plane, color_pipeline) \ + for (int igt_unique(__i) = 0; \ + igt_unique(__i) < (plane)->num_color_pipelines && \ + ((color_pipeline) = (plane)->color_pipelines[igt_unique(__i)], true); \ + igt_unique(__i)++) + +/** + * for_each_colorop_in_pipeline: + * @pipeline: the first colorop in a color pipeline + * @colorop: the colorop to iterate + * + * Iterates through a color pipeline, starting from an initial colorop pointer + * and extending to all subsequent colorops pointed to by next. + */ +#define for_each_colorop_in_pipeline(pipeline, colorop) \ + for ((colorop) = (pipeline); (colorop); \ + (colorop) = (colorop)->next) extern bool igt_colorop_has_prop_enum_value(igt_colorop_t *colorop, enum igt_atomic_colorop_properties prop, @@ -1380,8 +1406,6 @@ uint64_t igt_get_writeback_fb_id(igt_output_t *output); void igt_detach_crtc(igt_display_t *display, igt_output_t *output); void igt_get_and_wait_out_fence(igt_output_t *output); -igt_colorop_t *igt_find_colorop(igt_display_t *display, uint32_t id); - bool igt_wait_for_connector_status(int drm_fd, unsigned int connector_id, double timeout, int drm_mode); int igt_get_connected_connectors(int drm_fd, uint32_t **connector_ids); diff --git a/tests/kms_colorop.c b/tests/kms_colorop.c index 2bee1eecd..1585c0ae2 100644 --- a/tests/kms_colorop.c +++ b/tests/kms_colorop.c @@ -365,10 +365,8 @@ static void colorop_plane_test(igt_display_t *display, static void check_plane_colorop_ids(igt_display_t *display) { igt_plane_t *plane; - int colorop_idx; - igt_colorop_t *next; + igt_colorop_t *colorop, *color_pipeline; igt_crtc_t *crtc; - int prop_val = 0; /* Use hash tables to track drm_planes and unique IDs */ GHashTable *plane_set = g_hash_table_new(g_direct_hash, g_direct_equal); @@ -383,18 +381,15 @@ static void check_plane_colorop_ids(igt_display_t *display) g_hash_table_add(plane_set, GINT_TO_POINTER(plane->drm_plane->plane_id)); - for (colorop_idx = 0; colorop_idx < plane->num_color_pipelines; colorop_idx++) { - next = plane->color_pipelines[colorop_idx]; - while (next) { + for_each_color_pipeline(plane, color_pipeline) { + for_each_colorop_in_pipeline(color_pipeline, colorop) { /* Check if the ID already exists in the set */ - if (g_hash_table_contains(id_set, GINT_TO_POINTER(next->id))) { + if (g_hash_table_contains(id_set, GINT_TO_POINTER(colorop->id))) { igt_fail_on_f(true, "Duplicate colorop ID %u found on plane %d\n", - next->id, plane->drm_plane->plane_id); + colorop->id, plane->drm_plane->plane_id); } - g_hash_table_add(id_set, GINT_TO_POINTER(next->id)); - prop_val = igt_colorop_get_prop(display, next, IGT_COLOROP_NEXT); - next = igt_find_colorop(display, prop_val); + g_hash_table_add(id_set, GINT_TO_POINTER(colorop->id)); } } } diff --git a/tests/kms_colorop_helper.c b/tests/kms_colorop_helper.c index a109c1b06..34b0f4901 100644 --- a/tests/kms_colorop_helper.c +++ b/tests/kms_colorop_helper.c @@ -278,29 +278,25 @@ static bool can_use_colorop(igt_display_t *display, igt_colorop_t *colorop, kms_ * colorops[] to it. */ static bool map_to_pipeline(igt_display_t *display, - igt_colorop_t *colorop, + igt_colorop_t *color_pipeline, kms_colorop_t *colorops[]) { - igt_colorop_t *next = colorop; + igt_colorop_t *colorop; kms_colorop_t *current_op; int i = 0; - int prop_val = 0; current_op = colorops[i]; i++; igt_require(current_op); - while (next) { - if (can_use_colorop(display, next, current_op)) { - current_op->colorop = next; + for_each_colorop_in_pipeline(color_pipeline, colorop) { + if (can_use_colorop(display, colorop, current_op)) { + current_op->colorop = colorop; current_op = colorops[i]; i++; if (!current_op) break; } - prop_val = igt_colorop_get_prop(display, next, - IGT_COLOROP_NEXT); - next = igt_find_colorop(display, prop_val); } if (current_op) { @@ -320,18 +316,16 @@ igt_colorop_t *get_color_pipeline(igt_display_t *display, igt_plane_t *plane, kms_colorop_t *colorops[]) { - igt_colorop_t *colorop = NULL; - int i; + igt_colorop_t *color_pipeline; /* go through all color pipelines */ - for (i = 0; i < plane->num_color_pipelines; ++i) { - if (map_to_pipeline(display, plane->color_pipelines[i], colorops)) { - colorop = plane->color_pipelines[i]; - break; + for_each_color_pipeline(plane, color_pipeline) { + if (map_to_pipeline(display, color_pipeline, colorops)) { + return color_pipeline; } } - return colorop; + return NULL; } static void fill_custom_1dlut(igt_display_t *display, kms_colorop_t *colorop) @@ -426,8 +420,7 @@ void set_color_pipeline(igt_display_t *display, kms_colorop_t *colorops[], igt_colorop_t *color_pipeline) { - igt_colorop_t *next; - int prop_val = 0; + igt_colorop_t *colorop; int i; igt_plane_set_color_pipeline(plane, color_pipeline); @@ -436,17 +429,12 @@ void set_color_pipeline(igt_display_t *display, set_colorop(display, colorops[i]); /* set unused ops in pipeline to bypass */ - next = color_pipeline; i = 0; - while (next) { - if (!colorops[i] || colorops[i]->colorop != next) - igt_colorop_set_prop_value(next, IGT_COLOROP_BYPASS, 1); + for_each_colorop_in_pipeline(color_pipeline, colorop) { + if (!colorops[i] || colorops[i]->colorop != colorop) + igt_colorop_set_prop_value(colorop, IGT_COLOROP_BYPASS, 1); else i++; - - prop_val = igt_colorop_get_prop(display, next, - IGT_COLOROP_NEXT); - next = igt_find_colorop(display, prop_val); } } diff --git a/tests/kms_properties.c b/tests/kms_properties.c index 76aadd162..ba07d68d6 100644 --- a/tests/kms_properties.c +++ b/tests/kms_properties.c @@ -239,9 +239,7 @@ static void run_colorop_property_tests(igt_display_t *display, { struct igt_fb fb, afb; igt_plane_t *plane; - igt_colorop_t *colorop; - int i; - int colorop_id = 0; + igt_colorop_t *colorop, *color_pipeline; prepare_crtc(display, crtc, output, &fb); @@ -268,23 +266,18 @@ static void run_colorop_property_tests(igt_display_t *display, } /* iterate over all color pipelines on plane */ - for (i = 0; i < plane->num_color_pipelines; ++i) { - /* iterate over all colorops in pipeline*/ - colorop = plane->color_pipelines[i]; - igt_plane_set_color_pipeline(plane, colorop); + for_each_color_pipeline(plane, color_pipeline) { + igt_plane_set_color_pipeline(plane, color_pipeline); igt_display_commit2(display, COMMIT_ATOMIC); - while (colorop) { + /* iterate over all colorops in pipeline*/ + for_each_colorop_in_pipeline(color_pipeline, colorop) { igt_info("Testing colorop properties on %s.#%d.#%d-%s (output: %s)\n", igt_crtc_name(crtc), plane->index, colorop->id, kmstest_plane_type_name(plane->type), output->name); test_properties(display->drm_fd, DRM_MODE_OBJECT_COLOROP, colorop->id, atomic, display->has_plane_color_pipeline); - - colorop_id = igt_colorop_get_prop(display, colorop, - IGT_COLOROP_NEXT); - colorop = igt_find_colorop(display, colorop_id); } } -- 2.53.0 ^ permalink raw reply related [flat|nested] 19+ messages in thread
* Re: [PATCH i-g-t v5 8/8] lib/igt_kms: add macros to iterate color pipelines and colorops 2026-09-02 17:58 ` [PATCH i-g-t v5 8/8] lib/igt_kms: add macros to iterate color pipelines and colorops Melissa Wen @ 2026-09-03 10:44 ` Jani Nikula 2026-09-09 8:31 ` Jani Nikula 2026-09-09 7:56 ` Borah, Chaitanya Kumar 1 sibling, 1 reply; 19+ messages in thread From: Jani Nikula @ 2026-09-03 10:44 UTC (permalink / raw) To: Melissa Wen, Petri Latvala, Arkadiusz Hiler, Kamil Konieczny, Juha-Pekka Heikkila, Bhanuprakash Modem, Ashutosh Dixit, Karthik B S Cc: igt-dev, kernel-dev, Chaitanya Kumar Borah, Alex Hung, Swati Sharma, John Harrison, Rodrigo Siqueira, Simon Ser, Xaver Hugl, Harry Wentland, Uma Shankar On Wed, 02 Sep 2026, Melissa Wen <mwen@igalia.com> wrote: > Walking a plane's color pipelines, and the colorop chain of a given > pipeline, is open-coded in eight places across lib and the colorop tests. > Add for_each_color_pipeline() to iterate over all color pipelines > supported by a plane and for_each_colorop_in_pipeline() to iterate over > all colorops of a pipeline. > > The chain walk in igt_fill_plane_color_pipelines() now stores the next > colorop reached by the NEXT property (which is immutable and doesn't > change after being discovered) and, as a consequence, igt_find_colorop() > becomes unused and is removed. > > Suggested-by: Jani Nikula <jani.nikula@intel.com> > Signed-off-by: Melissa Wen <mwen@igalia.com> > --- > > v4: > - new patch, suggested by Jani > v5: > - store next colorop, now igt_colorop_next and igt_find_colorop are > unnecessary > - use igt_unique for macro iterator > --- > lib/igt_kms.c | 76 ++++++++++++-------------------------- > lib/igt_kms.h | 32 ++++++++++++++-- > tests/kms_colorop.c | 17 +++------ > tests/kms_colorop_helper.c | 40 +++++++------------- > tests/kms_properties.c | 17 +++------ > 5 files changed, 77 insertions(+), 105 deletions(-) > > diff --git a/lib/igt_kms.c b/lib/igt_kms.c > index cabe60a31..6329e42eb 100644 > --- a/lib/igt_kms.c > +++ b/lib/igt_kms.c > @@ -794,28 +794,6 @@ igt_plane_rotations(igt_display_t *display, igt_plane_t *plane, > return rotations; > } > > -/** > - * igt_find_colorop: > - * @display: display on which to look for colorop. > - * @id: DRM object id of the colorop. > - * > - * Returns: An igt_colorop_t if found, or NULL otherwise. > - */ > -igt_colorop_t *igt_find_colorop(igt_display_t *display, uint32_t id) > -{ > - int i; > - > - /* find corresponding igt_colorop */ > - for (i = 0; i < display->n_colorops; ++i) { > - igt_colorop_t *colorop = &display->colorops[i]; > - > - if (colorop->id == id) > - return colorop; > - } > - > - return NULL; > -} > - > /* > * Retrieve all the properies specified in props_name and store them into > * colorop->props. > @@ -873,28 +851,34 @@ igt_fill_plane_color_pipelines(igt_display_t *display, igt_plane_t *plane, > > for (i = 0; i < prop->count_enums; i++) { > if (prop->enums[i].value) { > - igt_colorop_t *colorop = &display->colorops[display->n_colorops++]; > + igt_colorop_t *colorop; > > igt_assert(display->n_colorops < MAX_NUM_COLOROPS); > + colorop = &display->colorops[display->n_colorops++]; > > igt_fill_colorop(display, plane, colorop, prop->enums[i].value, prop->enums[i].name); > plane->color_pipelines[plane->num_color_pipelines++] = colorop; > > /* get all NEXT colorops */ > colorop_id = igt_colorop_get_prop(display, colorop, > - IGT_COLOROP_NEXT); > + IGT_COLOROP_NEXT); > while (colorop_id) { > - colorop = &display->colorops[display->n_colorops++]; > + igt_colorop_t *next; > + > igt_assert(display->n_colorops < MAX_NUM_COLOROPS); > - igt_fill_colorop(display, plane, colorop, colorop_id, NULL); > + next = &display->colorops[display->n_colorops++]; > + igt_fill_colorop(display, plane, next, colorop_id, NULL); > + > + colorop->next = next; > + colorop = next; > + > colorop_id = igt_colorop_get_prop(display, colorop, > - IGT_COLOROP_NEXT); > + IGT_COLOROP_NEXT); > } > } > } > > igt_assert(plane->num_color_pipelines < IGT_NUM_PLANE_COLOR_PIPELINES); > - > } > > /* > @@ -3810,13 +3794,14 @@ igt_atomic_prepare_plane_commit(igt_plane_t *plane, igt_crtc_t *crtc, > * Add colorop properties > */ > static void > -igt_atomic_prepare_colorop_commit(igt_colorop_t *colorop, igt_crtc_t *crtc, > +igt_atomic_prepare_colorop_commit(igt_colorop_t *color_pipeline, igt_crtc_t *crtc, > drmModeAtomicReq *req) > { > igt_display_t *display = crtc->display; > - int i, next_val; > + igt_colorop_t *colorop; > + int i; > > - while (colorop) { > + for_each_colorop_in_pipeline(color_pipeline, colorop) { > LOG(display, > "populating colorop data: %s.%d\n", > igt_crtc_name(crtc), > @@ -3838,11 +3823,6 @@ igt_atomic_prepare_colorop_commit(igt_colorop_t *colorop, igt_crtc_t *crtc, > colorop->props[i], > colorop->values[i])); > } > - > - /* get next colorop */ > - next_val = igt_colorop_get_prop(display, colorop, > - IGT_COLOROP_NEXT); > - colorop = igt_find_colorop(display, next_val); > } > } > > @@ -4415,18 +4395,16 @@ bool igt_plane_check_prop_is_mutable(igt_plane_t *plane, > */ > bool igt_plane_is_valid_colorop(igt_plane_t *plane, igt_colorop_t *colorop) > { > - int i; > - bool found = false; > + igt_colorop_t *color_pipeline; > > - for (i = 0; i < plane->num_color_pipelines; i++) { > - if (plane->color_pipelines[i] == colorop) { > - found = true; > - break; > - } > + for_each_color_pipeline(plane, color_pipeline) { > + if (color_pipeline == colorop) > + return true; > } > > - return found; > + return false; > } > + > /** > * igt_plane_set_color_pipeline: > * @plane: Target plane. > @@ -4932,15 +4910,9 @@ display_commit_changed(igt_display_t *display, enum igt_commit_style s) > * so already-committed property values aren't re-emitted on > * the next commit. > */ > - colorop = plane->assigned_color_pipeline; > - while (colorop) { > - uint32_t next_val; > - > + for_each_colorop_in_pipeline(plane->assigned_color_pipeline, > + colorop) > colorop->changed = 0; > - next_val = igt_colorop_get_prop(display, colorop, > - IGT_COLOROP_NEXT); > - colorop = igt_find_colorop(display, next_val); > - } > > fd = plane->values[IGT_PLANE_IN_FENCE_FD]; > if (fd != -1) > diff --git a/lib/igt_kms.h b/lib/igt_kms.h > index 23615dd91..0187ad9a1 100644 > --- a/lib/igt_kms.h > +++ b/lib/igt_kms.h > @@ -415,17 +415,18 @@ static inline bool igt_rotation_90_or_270(igt_rotation_t rotation) > } > > typedef struct _igt_plane igt_plane_t; > +typedef struct _igt_colorop igt_colorop_t; > > -typedef struct { > +typedef struct _igt_colorop { > uint32_t id; > igt_plane_t *plane; > + igt_colorop_t *next; > > char name[DRM_PROP_NAME_LEN]; > > uint64_t changed; > uint32_t props[IGT_NUM_COLOROP_PROPS]; > uint64_t values[IGT_NUM_COLOROP_PROPS]; > - > } igt_colorop_t; > > struct igt_format_mods { > @@ -1027,6 +1028,31 @@ uint64_t igt_colorop_get_prop(igt_display_t *display, igt_colorop_t *colorop, en > igt_colorop_set_prop_changed(colorop, prop); \ > } while (0) > > +/** > + * for_each_color_pipeline: > + * @plane: plane to which the color pipelines belong > + * @color_pipeline: the color pipeline to iterate > + * > + * Iterates through all color pipelines supported by @plane. If no color > + * pipeline is supported, nothing happens. > + */ > +#define for_each_color_pipeline(plane, color_pipeline) \ > + for (int igt_unique(__i) = 0; \ > + igt_unique(__i) < (plane)->num_color_pipelines && \ > + ((color_pipeline) = (plane)->color_pipelines[igt_unique(__i)], true); \ > + igt_unique(__i)++) Hmm, I wonder if this is robust. igt_unique() is currently based on __LINE__, and that might work through being expanded based on the macro instantiation line instead of the macro definition lines here. If igt_unique() ever becomes truly unique, it certainly breaks, because the above will contain four different unique identifiers instead of one. But it's not silent, it'll break the build. The solution, as always, would be to add another level of abstraction, something like: #define __for_each_color_pipeline(plane, color_pipeline, __i) \ // as above, but with just plain __i #define for_each_color_pipeline(plane, color_pipeline) \ __for_each_color_pipeline(plane, color_pipeline, igt_unique(__i)) Other than that, I did not do detailed review, but the overall approach is nice, and the loops become nicer to look at. Acked-by: Jani Nikula <jani.nikula@intel.com> > + > +/** > + * for_each_colorop_in_pipeline: > + * @pipeline: the first colorop in a color pipeline > + * @colorop: the colorop to iterate > + * > + * Iterates through a color pipeline, starting from an initial colorop pointer > + * and extending to all subsequent colorops pointed to by next. > + */ > +#define for_each_colorop_in_pipeline(pipeline, colorop) \ > + for ((colorop) = (pipeline); (colorop); \ > + (colorop) = (colorop)->next) > > extern bool igt_colorop_has_prop_enum_value(igt_colorop_t *colorop, > enum igt_atomic_colorop_properties prop, > @@ -1380,8 +1406,6 @@ uint64_t igt_get_writeback_fb_id(igt_output_t *output); > void igt_detach_crtc(igt_display_t *display, igt_output_t *output); > void igt_get_and_wait_out_fence(igt_output_t *output); > > -igt_colorop_t *igt_find_colorop(igt_display_t *display, uint32_t id); > - > bool igt_wait_for_connector_status(int drm_fd, unsigned int connector_id, double timeout, > int drm_mode); > int igt_get_connected_connectors(int drm_fd, uint32_t **connector_ids); > diff --git a/tests/kms_colorop.c b/tests/kms_colorop.c > index 2bee1eecd..1585c0ae2 100644 > --- a/tests/kms_colorop.c > +++ b/tests/kms_colorop.c > @@ -365,10 +365,8 @@ static void colorop_plane_test(igt_display_t *display, > static void check_plane_colorop_ids(igt_display_t *display) > { > igt_plane_t *plane; > - int colorop_idx; > - igt_colorop_t *next; > + igt_colorop_t *colorop, *color_pipeline; > igt_crtc_t *crtc; > - int prop_val = 0; > > /* Use hash tables to track drm_planes and unique IDs */ > GHashTable *plane_set = g_hash_table_new(g_direct_hash, g_direct_equal); > @@ -383,18 +381,15 @@ static void check_plane_colorop_ids(igt_display_t *display) > > g_hash_table_add(plane_set, GINT_TO_POINTER(plane->drm_plane->plane_id)); > > - for (colorop_idx = 0; colorop_idx < plane->num_color_pipelines; colorop_idx++) { > - next = plane->color_pipelines[colorop_idx]; > - while (next) { > + for_each_color_pipeline(plane, color_pipeline) { > + for_each_colorop_in_pipeline(color_pipeline, colorop) { > /* Check if the ID already exists in the set */ > - if (g_hash_table_contains(id_set, GINT_TO_POINTER(next->id))) { > + if (g_hash_table_contains(id_set, GINT_TO_POINTER(colorop->id))) { > igt_fail_on_f(true, "Duplicate colorop ID %u found on plane %d\n", > - next->id, plane->drm_plane->plane_id); > + colorop->id, plane->drm_plane->plane_id); > } > > - g_hash_table_add(id_set, GINT_TO_POINTER(next->id)); > - prop_val = igt_colorop_get_prop(display, next, IGT_COLOROP_NEXT); > - next = igt_find_colorop(display, prop_val); > + g_hash_table_add(id_set, GINT_TO_POINTER(colorop->id)); > } > } > } > diff --git a/tests/kms_colorop_helper.c b/tests/kms_colorop_helper.c > index a109c1b06..34b0f4901 100644 > --- a/tests/kms_colorop_helper.c > +++ b/tests/kms_colorop_helper.c > @@ -278,29 +278,25 @@ static bool can_use_colorop(igt_display_t *display, igt_colorop_t *colorop, kms_ > * colorops[] to it. > */ > static bool map_to_pipeline(igt_display_t *display, > - igt_colorop_t *colorop, > + igt_colorop_t *color_pipeline, > kms_colorop_t *colorops[]) > { > - igt_colorop_t *next = colorop; > + igt_colorop_t *colorop; > kms_colorop_t *current_op; > int i = 0; > - int prop_val = 0; > > current_op = colorops[i]; > i++; > igt_require(current_op); > > - while (next) { > - if (can_use_colorop(display, next, current_op)) { > - current_op->colorop = next; > + for_each_colorop_in_pipeline(color_pipeline, colorop) { > + if (can_use_colorop(display, colorop, current_op)) { > + current_op->colorop = colorop; > current_op = colorops[i]; > i++; > if (!current_op) > break; > } > - prop_val = igt_colorop_get_prop(display, next, > - IGT_COLOROP_NEXT); > - next = igt_find_colorop(display, prop_val); > } > > if (current_op) { > @@ -320,18 +316,16 @@ igt_colorop_t *get_color_pipeline(igt_display_t *display, > igt_plane_t *plane, > kms_colorop_t *colorops[]) > { > - igt_colorop_t *colorop = NULL; > - int i; > + igt_colorop_t *color_pipeline; > > /* go through all color pipelines */ > - for (i = 0; i < plane->num_color_pipelines; ++i) { > - if (map_to_pipeline(display, plane->color_pipelines[i], colorops)) { > - colorop = plane->color_pipelines[i]; > - break; > + for_each_color_pipeline(plane, color_pipeline) { > + if (map_to_pipeline(display, color_pipeline, colorops)) { > + return color_pipeline; > } > } > > - return colorop; > + return NULL; > } > > static void fill_custom_1dlut(igt_display_t *display, kms_colorop_t *colorop) > @@ -426,8 +420,7 @@ void set_color_pipeline(igt_display_t *display, > kms_colorop_t *colorops[], > igt_colorop_t *color_pipeline) > { > - igt_colorop_t *next; > - int prop_val = 0; > + igt_colorop_t *colorop; > int i; > > igt_plane_set_color_pipeline(plane, color_pipeline); > @@ -436,17 +429,12 @@ void set_color_pipeline(igt_display_t *display, > set_colorop(display, colorops[i]); > > /* set unused ops in pipeline to bypass */ > - next = color_pipeline; > i = 0; > - while (next) { > - if (!colorops[i] || colorops[i]->colorop != next) > - igt_colorop_set_prop_value(next, IGT_COLOROP_BYPASS, 1); > + for_each_colorop_in_pipeline(color_pipeline, colorop) { > + if (!colorops[i] || colorops[i]->colorop != colorop) > + igt_colorop_set_prop_value(colorop, IGT_COLOROP_BYPASS, 1); > else > i++; > - > - prop_val = igt_colorop_get_prop(display, next, > - IGT_COLOROP_NEXT); > - next = igt_find_colorop(display, prop_val); > } > } > > diff --git a/tests/kms_properties.c b/tests/kms_properties.c > index 76aadd162..ba07d68d6 100644 > --- a/tests/kms_properties.c > +++ b/tests/kms_properties.c > @@ -239,9 +239,7 @@ static void run_colorop_property_tests(igt_display_t *display, > { > struct igt_fb fb, afb; > igt_plane_t *plane; > - igt_colorop_t *colorop; > - int i; > - int colorop_id = 0; > + igt_colorop_t *colorop, *color_pipeline; > > prepare_crtc(display, crtc, output, > &fb); > @@ -268,23 +266,18 @@ static void run_colorop_property_tests(igt_display_t *display, > } > > /* iterate over all color pipelines on plane */ > - for (i = 0; i < plane->num_color_pipelines; ++i) { > - /* iterate over all colorops in pipeline*/ > - colorop = plane->color_pipelines[i]; > - igt_plane_set_color_pipeline(plane, colorop); > + for_each_color_pipeline(plane, color_pipeline) { > + igt_plane_set_color_pipeline(plane, color_pipeline); > igt_display_commit2(display, COMMIT_ATOMIC); > > - while (colorop) { > + /* iterate over all colorops in pipeline*/ > + for_each_colorop_in_pipeline(color_pipeline, colorop) { > igt_info("Testing colorop properties on %s.#%d.#%d-%s (output: %s)\n", > igt_crtc_name(crtc), plane->index, > colorop->id, > kmstest_plane_type_name(plane->type), output->name); > test_properties(display->drm_fd, DRM_MODE_OBJECT_COLOROP, colorop->id, > atomic, display->has_plane_color_pipeline); > - > - colorop_id = igt_colorop_get_prop(display, colorop, > - IGT_COLOROP_NEXT); > - colorop = igt_find_colorop(display, colorop_id); > } > } -- Jani Nikula, Intel ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH i-g-t v5 8/8] lib/igt_kms: add macros to iterate color pipelines and colorops 2026-09-03 10:44 ` Jani Nikula @ 2026-09-09 8:31 ` Jani Nikula 0 siblings, 0 replies; 19+ messages in thread From: Jani Nikula @ 2026-09-09 8:31 UTC (permalink / raw) To: Melissa Wen, Petri Latvala, Arkadiusz Hiler, Kamil Konieczny, Juha-Pekka Heikkila, Bhanuprakash Modem, Ashutosh Dixit, Karthik B S Cc: igt-dev, kernel-dev, Chaitanya Kumar Borah, Alex Hung, Swati Sharma, John Harrison, Rodrigo Siqueira, Simon Ser, Xaver Hugl, Harry Wentland, Uma Shankar On Thu, 03 Sep 2026, Jani Nikula <jani.nikula@intel.com> wrote: > On Wed, 02 Sep 2026, Melissa Wen <mwen@igalia.com> wrote: >> @@ -1027,6 +1028,31 @@ uint64_t igt_colorop_get_prop(igt_display_t *display, igt_colorop_t *colorop, en >> igt_colorop_set_prop_changed(colorop, prop); \ >> } while (0) >> >> +/** >> + * for_each_color_pipeline: >> + * @plane: plane to which the color pipelines belong >> + * @color_pipeline: the color pipeline to iterate >> + * >> + * Iterates through all color pipelines supported by @plane. If no color >> + * pipeline is supported, nothing happens. >> + */ >> +#define for_each_color_pipeline(plane, color_pipeline) \ >> + for (int igt_unique(__i) = 0; \ >> + igt_unique(__i) < (plane)->num_color_pipelines && \ >> + ((color_pipeline) = (plane)->color_pipelines[igt_unique(__i)], true); \ >> + igt_unique(__i)++) > > Hmm, I wonder if this is robust. igt_unique() is currently based on > __LINE__, and that might work through being expanded based on the macro > instantiation line instead of the macro definition lines here. If > igt_unique() ever becomes truly unique, it certainly breaks, because the > above will contain four different unique identifiers instead of one. But > it's not silent, it'll break the build. Okay, looks like there's a lot of this type of igt_unique() usage in igt. Not sure how I feel about it. :/ It's all exposed by making igt_unique() actually unique: #define igt_unique(prefix) \ - igt_tokencat(igt_tokencat(__igt_unique__, prefix), __LINE__) + igt_tokencat(igt_tokencat(__igt_unique__, prefix), __COUNTER__) So I guess the patch at hand doesn't make things any worse, really. BR, Jani. -- Jani Nikula, Intel ^ permalink raw reply [flat|nested] 19+ messages in thread
* Re: [PATCH i-g-t v5 8/8] lib/igt_kms: add macros to iterate color pipelines and colorops 2026-09-02 17:58 ` [PATCH i-g-t v5 8/8] lib/igt_kms: add macros to iterate color pipelines and colorops Melissa Wen 2026-09-03 10:44 ` Jani Nikula @ 2026-09-09 7:56 ` Borah, Chaitanya Kumar 1 sibling, 0 replies; 19+ messages in thread From: Borah, Chaitanya Kumar @ 2026-09-09 7:56 UTC (permalink / raw) To: Melissa Wen, Petri Latvala, Arkadiusz Hiler, Kamil Konieczny, Juha-Pekka Heikkila, Bhanuprakash Modem, Ashutosh Dixit, Karthik B S Cc: igt-dev, kernel-dev, Alex Hung, Swati Sharma, John Harrison, Rodrigo Siqueira, Simon Ser, Xaver Hugl, Harry Wentland, Uma Shankar, Jani Nikula On 9/2/2026 11:28 PM, Melissa Wen wrote: > Walking a plane's color pipelines, and the colorop chain of a given > pipeline, is open-coded in eight places across lib and the colorop tests. > Add for_each_color_pipeline() to iterate over all color pipelines > supported by a plane and for_each_colorop_in_pipeline() to iterate over > all colorops of a pipeline. > > The chain walk in igt_fill_plane_color_pipelines() now stores the next > colorop reached by the NEXT property (which is immutable and doesn't > change after being discovered) and, as a consequence, igt_find_colorop() > becomes unused and is removed. LGTM Reviewed-by: Chaitanya Kumar Borah <chaitanya.kumar.borah@intel.com> > > Suggested-by: Jani Nikula <jani.nikula@intel.com> > Signed-off-by: Melissa Wen <mwen@igalia.com> > --- > > v4: > - new patch, suggested by Jani > v5: > - store next colorop, now igt_colorop_next and igt_find_colorop are > unnecessary > - use igt_unique for macro iterator > --- > lib/igt_kms.c | 76 ++++++++++++-------------------------- > lib/igt_kms.h | 32 ++++++++++++++-- > tests/kms_colorop.c | 17 +++------ > tests/kms_colorop_helper.c | 40 +++++++------------- > tests/kms_properties.c | 17 +++------ > 5 files changed, 77 insertions(+), 105 deletions(-) > > diff --git a/lib/igt_kms.c b/lib/igt_kms.c > index cabe60a31..6329e42eb 100644 > --- a/lib/igt_kms.c > +++ b/lib/igt_kms.c > @@ -794,28 +794,6 @@ igt_plane_rotations(igt_display_t *display, igt_plane_t *plane, > return rotations; > } > > -/** > - * igt_find_colorop: > - * @display: display on which to look for colorop. > - * @id: DRM object id of the colorop. > - * > - * Returns: An igt_colorop_t if found, or NULL otherwise. > - */ > -igt_colorop_t *igt_find_colorop(igt_display_t *display, uint32_t id) > -{ > - int i; > - > - /* find corresponding igt_colorop */ > - for (i = 0; i < display->n_colorops; ++i) { > - igt_colorop_t *colorop = &display->colorops[i]; > - > - if (colorop->id == id) > - return colorop; > - } > - > - return NULL; > -} > - > /* > * Retrieve all the properies specified in props_name and store them into > * colorop->props. > @@ -873,28 +851,34 @@ igt_fill_plane_color_pipelines(igt_display_t *display, igt_plane_t *plane, > > for (i = 0; i < prop->count_enums; i++) { > if (prop->enums[i].value) { > - igt_colorop_t *colorop = &display->colorops[display->n_colorops++]; > + igt_colorop_t *colorop; > > igt_assert(display->n_colorops < MAX_NUM_COLOROPS); > + colorop = &display->colorops[display->n_colorops++]; > > igt_fill_colorop(display, plane, colorop, prop->enums[i].value, prop->enums[i].name); > plane->color_pipelines[plane->num_color_pipelines++] = colorop; > > /* get all NEXT colorops */ > colorop_id = igt_colorop_get_prop(display, colorop, > - IGT_COLOROP_NEXT); > + IGT_COLOROP_NEXT); > while (colorop_id) { > - colorop = &display->colorops[display->n_colorops++]; > + igt_colorop_t *next; > + > igt_assert(display->n_colorops < MAX_NUM_COLOROPS); > - igt_fill_colorop(display, plane, colorop, colorop_id, NULL); > + next = &display->colorops[display->n_colorops++]; > + igt_fill_colorop(display, plane, next, colorop_id, NULL); > + > + colorop->next = next; > + colorop = next; > + > colorop_id = igt_colorop_get_prop(display, colorop, > - IGT_COLOROP_NEXT); > + IGT_COLOROP_NEXT); > } > } > } > > igt_assert(plane->num_color_pipelines < IGT_NUM_PLANE_COLOR_PIPELINES); > - > } > > /* > @@ -3810,13 +3794,14 @@ igt_atomic_prepare_plane_commit(igt_plane_t *plane, igt_crtc_t *crtc, > * Add colorop properties > */ > static void > -igt_atomic_prepare_colorop_commit(igt_colorop_t *colorop, igt_crtc_t *crtc, > +igt_atomic_prepare_colorop_commit(igt_colorop_t *color_pipeline, igt_crtc_t *crtc, > drmModeAtomicReq *req) > { > igt_display_t *display = crtc->display; > - int i, next_val; > + igt_colorop_t *colorop; > + int i; > > - while (colorop) { > + for_each_colorop_in_pipeline(color_pipeline, colorop) { > LOG(display, > "populating colorop data: %s.%d\n", > igt_crtc_name(crtc), > @@ -3838,11 +3823,6 @@ igt_atomic_prepare_colorop_commit(igt_colorop_t *colorop, igt_crtc_t *crtc, > colorop->props[i], > colorop->values[i])); > } > - > - /* get next colorop */ > - next_val = igt_colorop_get_prop(display, colorop, > - IGT_COLOROP_NEXT); > - colorop = igt_find_colorop(display, next_val); > } > } > > @@ -4415,18 +4395,16 @@ bool igt_plane_check_prop_is_mutable(igt_plane_t *plane, > */ > bool igt_plane_is_valid_colorop(igt_plane_t *plane, igt_colorop_t *colorop) > { > - int i; > - bool found = false; > + igt_colorop_t *color_pipeline; > > - for (i = 0; i < plane->num_color_pipelines; i++) { > - if (plane->color_pipelines[i] == colorop) { > - found = true; > - break; > - } > + for_each_color_pipeline(plane, color_pipeline) { > + if (color_pipeline == colorop) > + return true; > } > > - return found; > + return false; > } > + > /** > * igt_plane_set_color_pipeline: > * @plane: Target plane. > @@ -4932,15 +4910,9 @@ display_commit_changed(igt_display_t *display, enum igt_commit_style s) > * so already-committed property values aren't re-emitted on > * the next commit. > */ > - colorop = plane->assigned_color_pipeline; > - while (colorop) { > - uint32_t next_val; > - > + for_each_colorop_in_pipeline(plane->assigned_color_pipeline, > + colorop) > colorop->changed = 0; > - next_val = igt_colorop_get_prop(display, colorop, > - IGT_COLOROP_NEXT); > - colorop = igt_find_colorop(display, next_val); > - } > > fd = plane->values[IGT_PLANE_IN_FENCE_FD]; > if (fd != -1) > diff --git a/lib/igt_kms.h b/lib/igt_kms.h > index 23615dd91..0187ad9a1 100644 > --- a/lib/igt_kms.h > +++ b/lib/igt_kms.h > @@ -415,17 +415,18 @@ static inline bool igt_rotation_90_or_270(igt_rotation_t rotation) > } > > typedef struct _igt_plane igt_plane_t; > +typedef struct _igt_colorop igt_colorop_t; > > -typedef struct { > +typedef struct _igt_colorop { > uint32_t id; > igt_plane_t *plane; > + igt_colorop_t *next; > > char name[DRM_PROP_NAME_LEN]; > > uint64_t changed; > uint32_t props[IGT_NUM_COLOROP_PROPS]; > uint64_t values[IGT_NUM_COLOROP_PROPS]; > - > } igt_colorop_t; > > struct igt_format_mods { > @@ -1027,6 +1028,31 @@ uint64_t igt_colorop_get_prop(igt_display_t *display, igt_colorop_t *colorop, en > igt_colorop_set_prop_changed(colorop, prop); \ > } while (0) > > +/** > + * for_each_color_pipeline: > + * @plane: plane to which the color pipelines belong > + * @color_pipeline: the color pipeline to iterate > + * > + * Iterates through all color pipelines supported by @plane. If no color > + * pipeline is supported, nothing happens. > + */ > +#define for_each_color_pipeline(plane, color_pipeline) \ > + for (int igt_unique(__i) = 0; \ > + igt_unique(__i) < (plane)->num_color_pipelines && \ > + ((color_pipeline) = (plane)->color_pipelines[igt_unique(__i)], true); \ > + igt_unique(__i)++) > + > +/** > + * for_each_colorop_in_pipeline: > + * @pipeline: the first colorop in a color pipeline > + * @colorop: the colorop to iterate > + * > + * Iterates through a color pipeline, starting from an initial colorop pointer > + * and extending to all subsequent colorops pointed to by next. > + */ > +#define for_each_colorop_in_pipeline(pipeline, colorop) \ > + for ((colorop) = (pipeline); (colorop); \ > + (colorop) = (colorop)->next) > > extern bool igt_colorop_has_prop_enum_value(igt_colorop_t *colorop, > enum igt_atomic_colorop_properties prop, > @@ -1380,8 +1406,6 @@ uint64_t igt_get_writeback_fb_id(igt_output_t *output); > void igt_detach_crtc(igt_display_t *display, igt_output_t *output); > void igt_get_and_wait_out_fence(igt_output_t *output); > > -igt_colorop_t *igt_find_colorop(igt_display_t *display, uint32_t id); > - > bool igt_wait_for_connector_status(int drm_fd, unsigned int connector_id, double timeout, > int drm_mode); > int igt_get_connected_connectors(int drm_fd, uint32_t **connector_ids); > diff --git a/tests/kms_colorop.c b/tests/kms_colorop.c > index 2bee1eecd..1585c0ae2 100644 > --- a/tests/kms_colorop.c > +++ b/tests/kms_colorop.c > @@ -365,10 +365,8 @@ static void colorop_plane_test(igt_display_t *display, > static void check_plane_colorop_ids(igt_display_t *display) > { > igt_plane_t *plane; > - int colorop_idx; > - igt_colorop_t *next; > + igt_colorop_t *colorop, *color_pipeline; > igt_crtc_t *crtc; > - int prop_val = 0; > > /* Use hash tables to track drm_planes and unique IDs */ > GHashTable *plane_set = g_hash_table_new(g_direct_hash, g_direct_equal); > @@ -383,18 +381,15 @@ static void check_plane_colorop_ids(igt_display_t *display) > > g_hash_table_add(plane_set, GINT_TO_POINTER(plane->drm_plane->plane_id)); > > - for (colorop_idx = 0; colorop_idx < plane->num_color_pipelines; colorop_idx++) { > - next = plane->color_pipelines[colorop_idx]; > - while (next) { > + for_each_color_pipeline(plane, color_pipeline) { > + for_each_colorop_in_pipeline(color_pipeline, colorop) { > /* Check if the ID already exists in the set */ > - if (g_hash_table_contains(id_set, GINT_TO_POINTER(next->id))) { > + if (g_hash_table_contains(id_set, GINT_TO_POINTER(colorop->id))) { > igt_fail_on_f(true, "Duplicate colorop ID %u found on plane %d\n", > - next->id, plane->drm_plane->plane_id); > + colorop->id, plane->drm_plane->plane_id); > } > > - g_hash_table_add(id_set, GINT_TO_POINTER(next->id)); > - prop_val = igt_colorop_get_prop(display, next, IGT_COLOROP_NEXT); > - next = igt_find_colorop(display, prop_val); > + g_hash_table_add(id_set, GINT_TO_POINTER(colorop->id)); > } > } > } > diff --git a/tests/kms_colorop_helper.c b/tests/kms_colorop_helper.c > index a109c1b06..34b0f4901 100644 > --- a/tests/kms_colorop_helper.c > +++ b/tests/kms_colorop_helper.c > @@ -278,29 +278,25 @@ static bool can_use_colorop(igt_display_t *display, igt_colorop_t *colorop, kms_ > * colorops[] to it. > */ > static bool map_to_pipeline(igt_display_t *display, > - igt_colorop_t *colorop, > + igt_colorop_t *color_pipeline, > kms_colorop_t *colorops[]) > { > - igt_colorop_t *next = colorop; > + igt_colorop_t *colorop; > kms_colorop_t *current_op; > int i = 0; > - int prop_val = 0; > > current_op = colorops[i]; > i++; > igt_require(current_op); > > - while (next) { > - if (can_use_colorop(display, next, current_op)) { > - current_op->colorop = next; > + for_each_colorop_in_pipeline(color_pipeline, colorop) { > + if (can_use_colorop(display, colorop, current_op)) { > + current_op->colorop = colorop; > current_op = colorops[i]; > i++; > if (!current_op) > break; > } > - prop_val = igt_colorop_get_prop(display, next, > - IGT_COLOROP_NEXT); > - next = igt_find_colorop(display, prop_val); > } > > if (current_op) { > @@ -320,18 +316,16 @@ igt_colorop_t *get_color_pipeline(igt_display_t *display, > igt_plane_t *plane, > kms_colorop_t *colorops[]) > { > - igt_colorop_t *colorop = NULL; > - int i; > + igt_colorop_t *color_pipeline; > > /* go through all color pipelines */ > - for (i = 0; i < plane->num_color_pipelines; ++i) { > - if (map_to_pipeline(display, plane->color_pipelines[i], colorops)) { > - colorop = plane->color_pipelines[i]; > - break; > + for_each_color_pipeline(plane, color_pipeline) { > + if (map_to_pipeline(display, color_pipeline, colorops)) { > + return color_pipeline; > } > } > > - return colorop; > + return NULL; > } > > static void fill_custom_1dlut(igt_display_t *display, kms_colorop_t *colorop) > @@ -426,8 +420,7 @@ void set_color_pipeline(igt_display_t *display, > kms_colorop_t *colorops[], > igt_colorop_t *color_pipeline) > { > - igt_colorop_t *next; > - int prop_val = 0; > + igt_colorop_t *colorop; > int i; > > igt_plane_set_color_pipeline(plane, color_pipeline); > @@ -436,17 +429,12 @@ void set_color_pipeline(igt_display_t *display, > set_colorop(display, colorops[i]); > > /* set unused ops in pipeline to bypass */ > - next = color_pipeline; > i = 0; > - while (next) { > - if (!colorops[i] || colorops[i]->colorop != next) > - igt_colorop_set_prop_value(next, IGT_COLOROP_BYPASS, 1); > + for_each_colorop_in_pipeline(color_pipeline, colorop) { > + if (!colorops[i] || colorops[i]->colorop != colorop) > + igt_colorop_set_prop_value(colorop, IGT_COLOROP_BYPASS, 1); > else > i++; > - > - prop_val = igt_colorop_get_prop(display, next, > - IGT_COLOROP_NEXT); > - next = igt_find_colorop(display, prop_val); > } > } > > diff --git a/tests/kms_properties.c b/tests/kms_properties.c > index 76aadd162..ba07d68d6 100644 > --- a/tests/kms_properties.c > +++ b/tests/kms_properties.c > @@ -239,9 +239,7 @@ static void run_colorop_property_tests(igt_display_t *display, > { > struct igt_fb fb, afb; > igt_plane_t *plane; > - igt_colorop_t *colorop; > - int i; > - int colorop_id = 0; > + igt_colorop_t *colorop, *color_pipeline; > > prepare_crtc(display, crtc, output, > &fb); > @@ -268,23 +266,18 @@ static void run_colorop_property_tests(igt_display_t *display, > } > > /* iterate over all color pipelines on plane */ > - for (i = 0; i < plane->num_color_pipelines; ++i) { > - /* iterate over all colorops in pipeline*/ > - colorop = plane->color_pipelines[i]; > - igt_plane_set_color_pipeline(plane, colorop); > + for_each_color_pipeline(plane, color_pipeline) { > + igt_plane_set_color_pipeline(plane, color_pipeline); > igt_display_commit2(display, COMMIT_ATOMIC); > > - while (colorop) { > + /* iterate over all colorops in pipeline*/ > + for_each_colorop_in_pipeline(color_pipeline, colorop) { > igt_info("Testing colorop properties on %s.#%d.#%d-%s (output: %s)\n", > igt_crtc_name(crtc), plane->index, > colorop->id, > kmstest_plane_type_name(plane->type), output->name); > test_properties(display->drm_fd, DRM_MODE_OBJECT_COLOROP, colorop->id, > atomic, display->has_plane_color_pipeline); > - > - colorop_id = igt_colorop_get_prop(display, colorop, > - IGT_COLOROP_NEXT); > - colorop = igt_find_colorop(display, colorop_id); > } > } > ^ permalink raw reply [flat|nested] 19+ messages in thread
* ✓ Xe.CI.BAT: success for test/kms_colorop_helper: don't request colorop updates indefinitely (rev3) 2026-09-02 17:58 [PATCH i-g-t v5 0/8] test/kms_colorop_helper: don't request colorop updates indefinitely Melissa Wen ` (7 preceding siblings ...) 2026-09-02 17:58 ` [PATCH i-g-t v5 8/8] lib/igt_kms: add macros to iterate color pipelines and colorops Melissa Wen @ 2026-09-02 23:19 ` Patchwork 2026-09-02 23:22 ` ✗ i915.CI.BAT: failure " Patchwork 2026-09-03 15:30 ` ✗ Xe.CI.FULL: " Patchwork 10 siblings, 0 replies; 19+ messages in thread From: Patchwork @ 2026-09-02 23:19 UTC (permalink / raw) To: Melissa Wen; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 5406 bytes --] == Series Details == Series: test/kms_colorop_helper: don't request colorop updates indefinitely (rev3) URL : https://patchwork.freedesktop.org/series/167775/ State : success == Summary == CI Bug Log - changes from XEIGT_9081_BAT -> XEIGTPW_15778_BAT ==================================================== Summary ------- **SUCCESS** No regressions found. Participating hosts (13 -> 13) ------------------------------ No changes in participating hosts Known issues ------------ Here are the changes found in XEIGTPW_15778_BAT that come from known issues: ### IGT changes ### #### Issues hit #### * igt@fbdev@eof: - bat-wcl-2: NOTRUN -> [SKIP][1] ([Intel XE#7241]) +4 other tests skip [1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/bat-wcl-2/igt@fbdev@eof.html * igt@kms_addfb_basic@addfb25-y-tiled-small-legacy: - bat-wcl-2: NOTRUN -> [SKIP][2] ([Intel XE#7245]) [2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/bat-wcl-2/igt@kms_addfb_basic@addfb25-y-tiled-small-legacy.html * igt@kms_flip@basic-flip-vs-wf_vblank: - bat-wcl-2: NOTRUN -> [SKIP][3] ([Intel XE#7240]) +3 other tests skip [3]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/bat-wcl-2/igt@kms_flip@basic-flip-vs-wf_vblank.html * igt@kms_frontbuffer_tracking@basic: - bat-wcl-2: NOTRUN -> [SKIP][4] ([Intel XE#7246]) [4]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/bat-wcl-2/igt@kms_frontbuffer_tracking@basic.html * igt@kms_pipe_crc_basic@hang-read-crc: - bat-wcl-2: NOTRUN -> [SKIP][5] ([Intel XE#7237]) +13 other tests skip [5]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/bat-wcl-2/igt@kms_pipe_crc_basic@hang-read-crc.html * igt@kms_psr@psr-sprite-plane-onoff: - bat-wcl-2: NOTRUN -> [SKIP][6] ([Intel XE#2850]) +2 other tests skip [6]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/bat-wcl-2/igt@kms_psr@psr-sprite-plane-onoff.html * igt@xe_evict@evict-small-multi-vm: - bat-wcl-2: NOTRUN -> [SKIP][7] ([Intel XE#7238]) +11 other tests skip [7]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/bat-wcl-2/igt@xe_evict@evict-small-multi-vm.html * igt@xe_exec_balancer@twice-virtual-userptr-rebind: - bat-wcl-2: NOTRUN -> [SKIP][8] ([Intel XE#7482]) +17 other tests skip [8]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/bat-wcl-2/igt@xe_exec_balancer@twice-virtual-userptr-rebind.html * igt@xe_exec_multi_queue@many-queues-userptr-invalidate: - bat-wcl-2: NOTRUN -> [SKIP][9] ([Intel XE#8364]) +13 other tests skip [9]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/bat-wcl-2/igt@xe_exec_multi_queue@many-queues-userptr-invalidate.html * igt@xe_live_ktest@xe_bo@xe_bo_evict_kunit: - bat-wcl-2: NOTRUN -> [SKIP][10] ([Intel XE#7239]) +2 other tests skip [10]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/bat-wcl-2/igt@xe_live_ktest@xe_bo@xe_bo_evict_kunit.html * igt@xe_mmap@vram: - bat-wcl-2: NOTRUN -> [SKIP][11] ([Intel XE#7243]) [11]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/bat-wcl-2/igt@xe_mmap@vram.html * igt@xe_pat@pat-index-xehpc: - bat-wcl-2: NOTRUN -> [SKIP][12] ([Intel XE#7247] / [Intel XE#7590]) [12]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/bat-wcl-2/igt@xe_pat@pat-index-xehpc.html * igt@xe_pat@pat-index-xelp: - bat-wcl-2: NOTRUN -> [SKIP][13] ([Intel XE#7242] / [Intel XE#7590]) [13]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/bat-wcl-2/igt@xe_pat@pat-index-xelp.html * igt@xe_pat@pat-index-xelpg: - bat-wcl-2: NOTRUN -> [SKIP][14] ([Intel XE#7248] / [Intel XE#7590]) [14]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/bat-wcl-2/igt@xe_pat@pat-index-xelpg.html [Intel XE#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850 [Intel XE#7237]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7237 [Intel XE#7238]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7238 [Intel XE#7239]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7239 [Intel XE#7240]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7240 [Intel XE#7241]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7241 [Intel XE#7242]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7242 [Intel XE#7243]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7243 [Intel XE#7245]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7245 [Intel XE#7246]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7246 [Intel XE#7247]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7247 [Intel XE#7248]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7248 [Intel XE#7482]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7482 [Intel XE#7590]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7590 [Intel XE#8364]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8364 Build changes ------------- * IGT: IGT_9081 -> IGTPW_15778 IGTPW_15778: 482b25ec38d75d10925dd0fa8458b76140051b41 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git IGT_9081: 9081 xe-5680-bb742c97086d95b2a04b1b8fbc67822b4cf848c3: bb742c97086d95b2a04b1b8fbc67822b4cf848c3 == Logs == For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/index.html [-- Attachment #2: Type: text/html, Size: 6414 bytes --] ^ permalink raw reply [flat|nested] 19+ messages in thread
* ✗ i915.CI.BAT: failure for test/kms_colorop_helper: don't request colorop updates indefinitely (rev3) 2026-09-02 17:58 [PATCH i-g-t v5 0/8] test/kms_colorop_helper: don't request colorop updates indefinitely Melissa Wen ` (8 preceding siblings ...) 2026-09-02 23:19 ` ✓ Xe.CI.BAT: success for test/kms_colorop_helper: don't request colorop updates indefinitely (rev3) Patchwork @ 2026-09-02 23:22 ` Patchwork 2026-09-03 15:30 ` ✗ Xe.CI.FULL: " Patchwork 10 siblings, 0 replies; 19+ messages in thread From: Patchwork @ 2026-09-02 23:22 UTC (permalink / raw) To: Melissa Wen; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 2307 bytes --] == Series Details == Series: test/kms_colorop_helper: don't request colorop updates indefinitely (rev3) URL : https://patchwork.freedesktop.org/series/167775/ State : failure == Summary == CI Bug Log - changes from IGT_9081 -> IGTPW_15778 ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with IGTPW_15778 absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in IGTPW_15778, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them to document this new failure mode, which will reduce false positives in CI. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15778/index.html Participating hosts (38 -> 37) ------------------------------ Missing (1): bat-dg2-13 Possible new issues ------------------- Here are the unknown changes that may have been introduced in IGTPW_15778: ### IGT changes ### #### Possible regressions #### * igt@i915_selftest@live@gt_lrc: - fi-tgl-1115g4: [PASS][1] -> [ABORT][2] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9081/fi-tgl-1115g4/igt@i915_selftest@live@gt_lrc.html [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15778/fi-tgl-1115g4/igt@i915_selftest@live@gt_lrc.html Known issues ------------ Here are the changes found in IGTPW_15778 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@i915_selftest@live: - fi-tgl-1115g4: [PASS][3] -> [ABORT][4] ([i915#16485]) [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_9081/fi-tgl-1115g4/igt@i915_selftest@live.html [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15778/fi-tgl-1115g4/igt@i915_selftest@live.html [i915#16485]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/16485 Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_9081 -> IGTPW_15778 CI-20190529: 20190529 CI_DRM_19078: bb742c97086d95b2a04b1b8fbc67822b4cf848c3 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_15778: 482b25ec38d75d10925dd0fa8458b76140051b41 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git IGT_9081: 9081 == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15778/index.html [-- Attachment #2: Type: text/html, Size: 2939 bytes --] ^ permalink raw reply [flat|nested] 19+ messages in thread
* ✗ Xe.CI.FULL: failure for test/kms_colorop_helper: don't request colorop updates indefinitely (rev3) 2026-09-02 17:58 [PATCH i-g-t v5 0/8] test/kms_colorop_helper: don't request colorop updates indefinitely Melissa Wen ` (9 preceding siblings ...) 2026-09-02 23:22 ` ✗ i915.CI.BAT: failure " Patchwork @ 2026-09-03 15:30 ` Patchwork 10 siblings, 0 replies; 19+ messages in thread From: Patchwork @ 2026-09-03 15:30 UTC (permalink / raw) To: Melissa Wen; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 95620 bytes --] == Series Details == Series: test/kms_colorop_helper: don't request colorop updates indefinitely (rev3) URL : https://patchwork.freedesktop.org/series/167775/ State : failure == Summary == CI Bug Log - changes from XEIGT_9081_FULL -> XEIGTPW_15778_FULL ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with XEIGTPW_15778_FULL absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in XEIGTPW_15778_FULL, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them to document this new failure mode, which will reduce false positives in CI. Participating hosts (2 -> 2) ------------------------------ No changes in participating hosts Possible new issues ------------------- Here are the unknown changes that may have been introduced in XEIGTPW_15778_FULL: ### IGT changes ### #### Possible regressions #### * igt@kms_setmode@basic-no-cpu-idle: - shard-lnl: [PASS][1] -> [SKIP][2] [1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-3/igt@kms_setmode@basic-no-cpu-idle.html [2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_setmode@basic-no-cpu-idle.html * igt@xe_compute@loop-duration-2s: - shard-lnl: [PASS][3] -> [FAIL][4] [3]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-2/igt@xe_compute@loop-duration-2s.html [4]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-3/igt@xe_compute@loop-duration-2s.html New tests --------- New tests have been introduced between XEIGT_9081_FULL and XEIGTPW_15778_FULL: ### New IGT tests (94) ### * igt@kms_cursor_crc@cursor-offscreen-128x128: - Statuses : 2 pass(s) - Exec time: [5.37, 6.44] s * igt@kms_cursor_crc@cursor-offscreen-128x128@pipe-a-edp-1: - Statuses : 1 pass(s) - Exec time: [2.89] s * igt@kms_cursor_crc@cursor-offscreen-128x128@pipe-c-edp-1: - Statuses : 1 pass(s) - Exec time: [3.47] s * igt@kms_cursor_crc@cursor-offscreen-128x42: - Statuses : 2 skip(s) - Exec time: [0.06, 0.07] s * igt@kms_cursor_crc@cursor-offscreen-256x256: - Statuses : 1 pass(s) 1 skip(s) - Exec time: [0.0, 5.35] s * igt@kms_cursor_crc@cursor-offscreen-256x85: - Statuses : 2 skip(s) - Exec time: [0.05, 0.06] s * igt@kms_cursor_crc@cursor-offscreen-32x10: - Statuses : 2 skip(s) - Exec time: [0.05, 0.06] s * igt@kms_cursor_crc@cursor-offscreen-32x32: - Statuses : 2 skip(s) - Exec time: [0.04, 0.07] s * igt@kms_cursor_crc@cursor-offscreen-512x170: - Statuses : 2 skip(s) - Exec time: [0.02, 0.04] s * igt@kms_cursor_crc@cursor-offscreen-512x512: - Statuses : 2 skip(s) - Exec time: [0.01, 0.04] s * igt@kms_cursor_crc@cursor-offscreen-64x21: - Statuses : 2 skip(s) - Exec time: [0.04, 0.07] s * igt@kms_cursor_crc@cursor-offscreen-64x64: - Statuses : 2 pass(s) - Exec time: [5.17, 6.40] s * igt@kms_cursor_crc@cursor-offscreen-64x64@pipe-a-edp-1: - Statuses : 1 pass(s) - Exec time: [2.88] s * igt@kms_cursor_crc@cursor-offscreen-64x64@pipe-c-edp-1: - Statuses : 1 pass(s) - Exec time: [3.44] s * igt@kms_cursor_crc@cursor-offscreen-max-size: - Statuses : 2 skip(s) - Exec time: [0.02, 0.03] s * igt@kms_cursor_crc@cursor-onscreen-128x128: - Statuses : 2 pass(s) - Exec time: [5.62, 7.56] s * igt@kms_cursor_crc@cursor-onscreen-128x128@pipe-a-edp-1: - Statuses : 1 pass(s) - Exec time: [3.52] s * igt@kms_cursor_crc@cursor-onscreen-128x128@pipe-c-edp-1: - Statuses : 1 pass(s) - Exec time: [3.96] s * igt@kms_cursor_crc@cursor-onscreen-128x42: - Statuses : 2 skip(s) - Exec time: [0.04, 0.07] s * igt@kms_cursor_crc@cursor-onscreen-256x256: - Statuses : 2 pass(s) - Exec time: [5.74, 7.73] s * igt@kms_cursor_crc@cursor-onscreen-256x256@pipe-a-edp-1: - Statuses : 1 pass(s) - Exec time: [3.56] s * igt@kms_cursor_crc@cursor-onscreen-256x256@pipe-c-edp-1: - Statuses : 1 pass(s) - Exec time: [4.12] s * igt@kms_cursor_crc@cursor-onscreen-256x85: - Statuses : 2 skip(s) - Exec time: [0.0, 0.07] s * igt@kms_cursor_crc@cursor-onscreen-32x10: - Statuses : 1 skip(s) - Exec time: [0.05] s * igt@kms_cursor_crc@cursor-onscreen-32x32: - Statuses : 1 skip(s) - Exec time: [0.0] s * igt@kms_cursor_crc@cursor-onscreen-512x170: - Statuses : 2 skip(s) - Exec time: [0.02, 0.03] s * igt@kms_cursor_crc@cursor-onscreen-512x512: - Statuses : 2 skip(s) - Exec time: [0.01] s * igt@kms_cursor_crc@cursor-onscreen-64x21: - Statuses : 2 skip(s) - Exec time: [0.05, 0.07] s * igt@kms_cursor_crc@cursor-onscreen-64x64: - Statuses : 1 skip(s) - Exec time: [0.0] s * igt@kms_cursor_crc@cursor-onscreen-max-size: - Statuses : 2 skip(s) - Exec time: [0.01, 0.02] s * igt@kms_cursor_crc@cursor-random-128x128: - Statuses : 2 pass(s) - Exec time: [9.45, 12.22] s * igt@kms_cursor_crc@cursor-random-128x128@pipe-a-edp-1: - Statuses : 1 pass(s) - Exec time: [5.77] s * igt@kms_cursor_crc@cursor-random-128x128@pipe-c-edp-1: - Statuses : 1 pass(s) - Exec time: [6.38] s * igt@kms_cursor_crc@cursor-random-128x42: - Statuses : 2 skip(s) - Exec time: [0.04, 0.07] s * igt@kms_cursor_crc@cursor-random-256x256: - Statuses : 2 pass(s) - Exec time: [9.41, 12.25] s * igt@kms_cursor_crc@cursor-random-256x256@pipe-a-edp-1: - Statuses : 1 pass(s) - Exec time: [5.75] s * igt@kms_cursor_crc@cursor-random-256x256@pipe-c-edp-1: - Statuses : 1 pass(s) - Exec time: [6.42] s * igt@kms_cursor_crc@cursor-random-256x85: - Statuses : 2 skip(s) - Exec time: [0.05, 0.07] s * igt@kms_cursor_crc@cursor-random-32x10: - Statuses : 2 skip(s) - Exec time: [0.06, 0.07] s * igt@kms_cursor_crc@cursor-random-32x32: - Statuses : 2 skip(s) - Exec time: [0.05, 0.07] s * igt@kms_cursor_crc@cursor-random-512x170: - Statuses : 2 skip(s) - Exec time: [0.02] s * igt@kms_cursor_crc@cursor-random-512x512: - Statuses : 2 skip(s) - Exec time: [0.02] s * igt@kms_cursor_crc@cursor-random-64x21: - Statuses : 2 skip(s) - Exec time: [0.0, 0.07] s * igt@kms_cursor_crc@cursor-random-64x64: - Statuses : 2 pass(s) - Exec time: [9.44, 11.95] s * igt@kms_cursor_crc@cursor-random-64x64@pipe-a-edp-1: - Statuses : 1 pass(s) - Exec time: [5.68] s * igt@kms_cursor_crc@cursor-random-64x64@pipe-c-edp-1: - Statuses : 1 pass(s) - Exec time: [6.21] s * igt@kms_cursor_crc@cursor-random-max-size: - Statuses : 2 skip(s) - Exec time: [0.02, 0.04] s * igt@kms_cursor_crc@cursor-rapid-movement-128x128: - Statuses : 2 pass(s) - Exec time: [1.23, 2.09] s * igt@kms_cursor_crc@cursor-rapid-movement-128x128@pipe-a-edp-1: - Statuses : 1 pass(s) - Exec time: [0.73] s * igt@kms_cursor_crc@cursor-rapid-movement-128x128@pipe-c-edp-1: - Statuses : 1 pass(s) - Exec time: [1.30] s * igt@kms_cursor_crc@cursor-rapid-movement-128x42: - Statuses : 2 skip(s) - Exec time: [0.0, 0.07] s * igt@kms_cursor_crc@cursor-rapid-movement-256x256: - Statuses : 1 pass(s) - Exec time: [1.34] s * igt@kms_cursor_crc@cursor-rapid-movement-256x85: - Statuses : 2 skip(s) - Exec time: [0.05, 0.06] s * igt@kms_cursor_crc@cursor-rapid-movement-32x10: - Statuses : 2 skip(s) - Exec time: [0.05, 0.07] s * igt@kms_cursor_crc@cursor-rapid-movement-32x32: - Statuses : 2 skip(s) - Exec time: [0.0, 0.07] s * igt@kms_cursor_crc@cursor-rapid-movement-512x170: - Statuses : 2 skip(s) - Exec time: [0.01] s * igt@kms_cursor_crc@cursor-rapid-movement-512x512: - Statuses : 2 skip(s) - Exec time: [0.02, 0.03] s * igt@kms_cursor_crc@cursor-rapid-movement-64x21: - Statuses : 2 skip(s) - Exec time: [0.05, 0.07] s * igt@kms_cursor_crc@cursor-rapid-movement-64x64: - Statuses : 2 pass(s) - Exec time: [1.20, 2.09] s * igt@kms_cursor_crc@cursor-rapid-movement-64x64@pipe-a-edp-1: - Statuses : 1 pass(s) - Exec time: [0.69] s * igt@kms_cursor_crc@cursor-rapid-movement-64x64@pipe-c-edp-1: - Statuses : 1 pass(s) - Exec time: [1.34] s * igt@kms_cursor_crc@cursor-rapid-movement-max-size: - Statuses : 1 skip(s) - Exec time: [0.0] s * igt@kms_cursor_crc@cursor-sliding-128x128: - Statuses : 2 pass(s) - Exec time: [9.10, 11.70] s * igt@kms_cursor_crc@cursor-sliding-128x128@pipe-a-edp-1: - Statuses : 1 pass(s) - Exec time: [5.49] s * igt@kms_cursor_crc@cursor-sliding-128x128@pipe-c-edp-1: - Statuses : 1 pass(s) - Exec time: [6.14] s * igt@kms_cursor_crc@cursor-sliding-128x42: - Statuses : 2 skip(s) - Exec time: [0.06, 0.07] s * igt@kms_cursor_crc@cursor-sliding-256x256: - Statuses : 2 pass(s) - Exec time: [9.35, 11.60] s * igt@kms_cursor_crc@cursor-sliding-256x256@pipe-a-edp-1: - Statuses : 1 pass(s) - Exec time: [5.66] s * igt@kms_cursor_crc@cursor-sliding-256x256@pipe-c-edp-1: - Statuses : 1 pass(s) - Exec time: [5.87] s * igt@kms_cursor_crc@cursor-sliding-256x85: - Statuses : 2 skip(s) - Exec time: [0.05, 0.06] s * igt@kms_cursor_crc@cursor-sliding-32x10: - Statuses : 2 skip(s) - Exec time: [0.04, 0.07] s * igt@kms_cursor_crc@cursor-sliding-32x32: - Statuses : 1 skip(s) - Exec time: [0.05] s * igt@kms_cursor_crc@cursor-sliding-512x170: - Statuses : 2 skip(s) - Exec time: [0.02] s * igt@kms_cursor_crc@cursor-sliding-512x512: - Statuses : 1 skip(s) - Exec time: [0.02] s * igt@kms_cursor_crc@cursor-sliding-64x21: - Statuses : 1 skip(s) - Exec time: [0.0] s * igt@kms_cursor_crc@cursor-sliding-64x64: - Statuses : 2 pass(s) - Exec time: [8.99, 11.86] s * igt@kms_cursor_crc@cursor-sliding-64x64@pipe-a-edp-1: - Statuses : 1 pass(s) - Exec time: [5.61] s * igt@kms_cursor_crc@cursor-sliding-64x64@pipe-c-edp-1: - Statuses : 1 pass(s) - Exec time: [6.19] s * igt@kms_cursor_crc@cursor-sliding-max-size: - Statuses : 2 skip(s) - Exec time: [0.01, 0.03] s * igt@kms_plane_cursor@overlay: - Statuses : 2 pass(s) - Exec time: [34.54, 35.71] s * igt@kms_plane_cursor@overlay@pipe-a-edp-1-size-128: - Statuses : 1 pass(s) - Exec time: [3.78] s * igt@kms_plane_cursor@overlay@pipe-a-edp-1-size-256: - Statuses : 1 pass(s) - Exec time: [3.88] s * igt@kms_plane_cursor@overlay@pipe-a-edp-1-size-64: - Statuses : 1 pass(s) - Exec time: [3.83] s * igt@kms_plane_cursor@primary: - Statuses : 2 pass(s) - Exec time: [33.97, 36.40] s * igt@kms_plane_cursor@primary@pipe-a-edp-1-size-128: - Statuses : 1 pass(s) - Exec time: [3.94] s * igt@kms_plane_cursor@primary@pipe-a-edp-1-size-256: - Statuses : 1 pass(s) - Exec time: [3.92] s * igt@kms_plane_cursor@primary@pipe-a-edp-1-size-64: - Statuses : 1 pass(s) - Exec time: [3.91] s * igt@kms_plane_cursor@viewport: - Statuses : 2 pass(s) - Exec time: [34.98, 36.25] s * igt@kms_plane_cursor@viewport@pipe-a-edp-1-size-128: - Statuses : 1 pass(s) - Exec time: [3.85] s * igt@kms_plane_cursor@viewport@pipe-a-edp-1-size-256: - Statuses : 1 pass(s) - Exec time: [3.87] s * igt@kms_plane_cursor@viewport@pipe-a-edp-1-size-64: - Statuses : 1 pass(s) - Exec time: [3.84] s * igt@kms_plane_cursor@viewport@pipe-c-dp-2-size-128: - Statuses : 1 pass(s) - Exec time: [2.77] s * igt@kms_plane_cursor@viewport@pipe-c-dp-2-size-256: - Statuses : 1 pass(s) - Exec time: [2.76] s * igt@kms_plane_cursor@viewport@pipe-c-dp-2-size-64: - Statuses : 1 pass(s) - Exec time: [2.87] s Known issues ------------ Here are the changes found in XEIGTPW_15778_FULL that come from known issues: ### IGT changes ### #### Issues hit #### * igt@fbdev@eof: - shard-lnl: [PASS][5] -> [SKIP][6] ([Intel XE#2134]) [5]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-2/igt@fbdev@eof.html [6]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@fbdev@eof.html * igt@kms_addfb_basic@addfb25-y-tiled-small-legacy: - shard-bmg: NOTRUN -> [SKIP][7] ([Intel XE#2233]) [7]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-1/igt@kms_addfb_basic@addfb25-y-tiled-small-legacy.html * igt@kms_big_fb@4-tiled-32bpp-rotate-180: - shard-bmg: [PASS][8] -> [INCOMPLETE][9] ([Intel XE#9056]) [8]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-bmg-8/igt@kms_big_fb@4-tiled-32bpp-rotate-180.html [9]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-5/igt@kms_big_fb@4-tiled-32bpp-rotate-180.html * igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-180-hflip: - shard-bmg: NOTRUN -> [SKIP][10] ([Intel XE#7059] / [Intel XE#7085]) +2 other tests skip [10]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-4/igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-180-hflip.html * igt@kms_big_fb@x-tiled-32bpp-rotate-90: - shard-bmg: NOTRUN -> [SKIP][11] ([Intel XE#2327]) +1 other test skip [11]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-7/igt@kms_big_fb@x-tiled-32bpp-rotate-90.html * igt@kms_big_fb@y-tiled-addfb-size-overflow: - shard-bmg: NOTRUN -> [SKIP][12] ([Intel XE#610] / [Intel XE#7387]) [12]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-3/igt@kms_big_fb@y-tiled-addfb-size-overflow.html * igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-hflip: - shard-bmg: NOTRUN -> [SKIP][13] ([Intel XE#1124]) +6 other tests skip [13]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-7/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180-hflip.html * igt@kms_big_fb@yf-tiled-addfb: - shard-bmg: NOTRUN -> [SKIP][14] ([Intel XE#2328] / [Intel XE#7367]) [14]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-6/igt@kms_big_fb@yf-tiled-addfb.html * igt@kms_bw@linear-tiling-2-displays-target-2160x1440p: - shard-bmg: NOTRUN -> [SKIP][15] ([Intel XE#367]) +3 other tests skip [15]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-8/igt@kms_bw@linear-tiling-2-displays-target-2160x1440p.html * igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs@pipe-c-hdmi-a-3: - shard-bmg: [PASS][16] -> [INCOMPLETE][17] ([Intel XE#7084] / [Intel XE#8150]) [16]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-bmg-7/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs@pipe-c-hdmi-a-3.html [17]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-1/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs@pipe-c-hdmi-a-3.html * igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs: - shard-bmg: NOTRUN -> [SKIP][18] ([Intel XE#3432]) +1 other test skip [18]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-4/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs.html * igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc: - shard-bmg: NOTRUN -> [SKIP][19] ([Intel XE#2887]) +9 other tests skip [19]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-4/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc.html * igt@kms_ccs@random-ccs-data-4-tiled-lnl-ccs@pipe-c-dp-2: - shard-bmg: NOTRUN -> [SKIP][20] ([Intel XE#2652]) +17 other tests skip [20]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-10/igt@kms_ccs@random-ccs-data-4-tiled-lnl-ccs@pipe-c-dp-2.html * igt@kms_cdclk@plane-scaling@pipe-b-edp-1: - shard-lnl: NOTRUN -> [SKIP][21] ([Intel XE#4416] / [Intel XE#7381]) +2 other tests skip [21]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-4/igt@kms_cdclk@plane-scaling@pipe-b-edp-1.html * igt@kms_chamelium_color@ctm-0-25: - shard-bmg: NOTRUN -> [SKIP][22] ([Intel XE#2325] / [Intel XE#7358]) +1 other test skip [22]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-9/igt@kms_chamelium_color@ctm-0-25.html * igt@kms_chamelium_color_pipeline@plane-ctm3x4-lut1d: - shard-bmg: NOTRUN -> [SKIP][23] ([Intel XE#7358]) [23]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-10/igt@kms_chamelium_color_pipeline@plane-ctm3x4-lut1d.html * igt@kms_chamelium_edid@hdmi-edid-change-during-hibernate: - shard-bmg: NOTRUN -> [SKIP][24] ([Intel XE#2252]) +7 other tests skip [24]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-10/igt@kms_chamelium_edid@hdmi-edid-change-during-hibernate.html * igt@kms_color@ctm-signed: - shard-lnl: [PASS][25] -> [SKIP][26] ([Intel XE#3297]) +1 other test skip [25]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-3/igt@kms_color@ctm-signed.html [26]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_color@ctm-signed.html * igt@kms_color_pipeline@plane-ctm3x4-lut1d: - shard-lnl: [PASS][27] -> [SKIP][28] ([Intel XE#7006]) [27]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-4/igt@kms_color_pipeline@plane-ctm3x4-lut1d.html [28]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_color_pipeline@plane-ctm3x4-lut1d.html * igt@kms_content_protection@legacy-hdcp14@pipe-a-dp-2: - shard-bmg: NOTRUN -> [FAIL][29] ([Intel XE#1178] / [Intel XE#3304] / [Intel XE#7374]) +1 other test fail [29]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-6/igt@kms_content_protection@legacy-hdcp14@pipe-a-dp-2.html * igt@kms_cursor_crc@cursor-offscreen-64x21 (NEW): - shard-lnl: [SKIP][30] ([Intel XE#9125]) -> [SKIP][31] ([Intel XE#1424]) +3 other tests skip [30]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_cursor_crc@cursor-offscreen-64x21.html [31]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-4/igt@kms_cursor_crc@cursor-offscreen-64x21.html * igt@kms_cursor_crc@cursor-onscreen-256x85 (NEW): - shard-lnl: [SKIP][32] ([Intel XE#1424]) -> [SKIP][33] ([Intel XE#9125]) +5 other tests skip [32]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-3/igt@kms_cursor_crc@cursor-onscreen-256x85.html [33]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_cursor_crc@cursor-onscreen-256x85.html * igt@kms_cursor_crc@cursor-random-512x170 (NEW): - shard-bmg: NOTRUN -> [SKIP][34] ([Intel XE#2321] / [Intel XE#7355]) +1 other test skip [34]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-10/igt@kms_cursor_crc@cursor-random-512x170.html * igt@kms_cursor_crc@cursor-rapid-movement-32x10 (NEW): - shard-bmg: NOTRUN -> [SKIP][35] ([Intel XE#2320]) +5 other tests skip [35]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-2/igt@kms_cursor_crc@cursor-rapid-movement-32x10.html * igt@kms_cursor_legacy@flip-vs-cursor-atomic: - shard-bmg: [PASS][36] -> [FAIL][37] ([Intel XE#7809]) [36]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-bmg-5/igt@kms_cursor_legacy@flip-vs-cursor-atomic.html [37]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-8/igt@kms_cursor_legacy@flip-vs-cursor-atomic.html * igt@kms_dp_linktrain_fallback@dsc-fallback: - shard-bmg: NOTRUN -> [SKIP][38] ([Intel XE#4331] / [Intel XE#7227]) [38]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-3/igt@kms_dp_linktrain_fallback@dsc-fallback.html * igt@kms_dsc@dsc-with-output-formats-ultrajoiner: - shard-bmg: NOTRUN -> [SKIP][39] ([Intel XE#8265]) +2 other tests skip [39]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-9/igt@kms_dsc@dsc-with-output-formats-ultrajoiner.html * igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-out-visible-area: - shard-bmg: NOTRUN -> [SKIP][40] ([Intel XE#4422] / [Intel XE#7442]) +1 other test skip [40]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-9/igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-out-visible-area.html * igt@kms_feature_discovery@dp-mst: - shard-bmg: NOTRUN -> [SKIP][41] ([Intel XE#2375]) [41]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-10/igt@kms_feature_discovery@dp-mst.html * igt@kms_flip@dpms-vs-vblank-race: - shard-lnl: [PASS][42] -> [SKIP][43] ([Intel XE#2482]) +5 other tests skip [42]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-3/igt@kms_flip@dpms-vs-vblank-race.html [43]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_flip@dpms-vs-vblank-race.html * igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1: - shard-lnl: [PASS][44] -> [FAIL][45] ([Intel XE#301]) +2 other tests fail [44]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-5/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1.html [45]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-5/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1.html * igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling: - shard-bmg: NOTRUN -> [SKIP][46] ([Intel XE#7178] / [Intel XE#7349]) +2 other tests skip [46]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-9/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling.html * igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-downscaling@pipe-a-default-mode: - shard-lnl: NOTRUN -> [SKIP][47] ([Intel XE#1397] / [Intel XE#7385]) +1 other test skip [47]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-3/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-downscaling@pipe-a-default-mode.html * igt@kms_flip_scaled_crc@flip-32bpp-yuv-linear-to-32bpp-yuv-linear-reflect-x: - shard-bmg: NOTRUN -> [SKIP][48] ([Intel XE#7179]) [48]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-6/igt@kms_flip_scaled_crc@flip-32bpp-yuv-linear-to-32bpp-yuv-linear-reflect-x.html * igt@kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-upscaling: - shard-lnl: [PASS][49] -> [SKIP][50] ([Intel XE#1745]) +3 other tests skip [49]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-4/igt@kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-upscaling.html [50]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-upscaling.html * igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling: - shard-bmg: NOTRUN -> [SKIP][51] ([Intel XE#7178] / [Intel XE#7351]) +1 other test skip [51]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-4/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-upscaling.html * igt@kms_frontbuffer_tracking@fbc-1p-offscreen-pri-shrfb-draw-blt: - shard-lnl: [PASS][52] -> [SKIP][53] ([Intel XE#7779]) +4 other tests skip [52]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-7/igt@kms_frontbuffer_tracking@fbc-1p-offscreen-pri-shrfb-draw-blt.html [53]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_frontbuffer_tracking@fbc-1p-offscreen-pri-shrfb-draw-blt.html * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc: - shard-bmg: NOTRUN -> [SKIP][54] ([Intel XE#4141]) +9 other tests skip [54]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-7/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc.html * igt@kms_frontbuffer_tracking@fbc-rgb101010-draw-render: - shard-lnl: [PASS][55] -> [SKIP][56] ([Intel XE#2548] / [Intel XE#7779]) +16 other tests skip [55]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-7/igt@kms_frontbuffer_tracking@fbc-rgb101010-draw-render.html [56]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_frontbuffer_tracking@fbc-rgb101010-draw-render.html * igt@kms_frontbuffer_tracking@fbcdrrs-argb161616f-draw-blt: - shard-bmg: NOTRUN -> [SKIP][57] ([Intel XE#7061] / [Intel XE#7356]) +5 other tests skip [57]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-10/igt@kms_frontbuffer_tracking@fbcdrrs-argb161616f-draw-blt.html * igt@kms_frontbuffer_tracking@fbcdrrshdr-2p-primscrn-pri-shrfb-draw-mmap-wc: - shard-bmg: NOTRUN -> [SKIP][58] ([Intel XE#2311]) +52 other tests skip [58]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-3/igt@kms_frontbuffer_tracking@fbcdrrshdr-2p-primscrn-pri-shrfb-draw-mmap-wc.html * igt@kms_frontbuffer_tracking@fbcpsrhdr-tiling-y: - shard-bmg: NOTRUN -> [SKIP][59] ([Intel XE#7399]) [59]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-2/igt@kms_frontbuffer_tracking@fbcpsrhdr-tiling-y.html * igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-plflip-blt: - shard-bmg: NOTRUN -> [SKIP][60] ([Intel XE#2313]) +55 other tests skip [60]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-1/igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-plflip-blt.html * igt@kms_frontbuffer_tracking@psrhdr-abgr161616f-draw-render: - shard-bmg: NOTRUN -> [SKIP][61] ([Intel XE#7061]) [61]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-7/igt@kms_frontbuffer_tracking@psrhdr-abgr161616f-draw-render.html * igt@kms_invalid_mode@zero-clock: - shard-lnl: [PASS][62] -> [SKIP][63] ([Intel XE#2568]) [62]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-2/igt@kms_invalid_mode@zero-clock.html [63]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_invalid_mode@zero-clock.html * igt@kms_plane@pixel-format-4-tiled-lnl-ccs-modifier-source-clamping: - shard-bmg: NOTRUN -> [SKIP][64] ([Intel XE#7283]) +4 other tests skip [64]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-9/igt@kms_plane@pixel-format-4-tiled-lnl-ccs-modifier-source-clamping.html * igt@kms_plane@pixel-format-linear-modifier-source-clamping: - shard-lnl: [PASS][65] -> [SKIP][66] ([Intel XE#7250] / [Intel XE#9128]) [65]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-7/igt@kms_plane@pixel-format-linear-modifier-source-clamping.html [66]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_plane@pixel-format-linear-modifier-source-clamping.html * igt@kms_plane@pixel-format-x-tiled-modifier@pipe-b-plane-5: - shard-lnl: NOTRUN -> [SKIP][67] ([Intel XE#8303]) +1 other test skip [67]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-1/igt@kms_plane@pixel-format-x-tiled-modifier@pipe-b-plane-5.html * igt@kms_plane@planar-pixel-format-settings: - shard-lnl: [PASS][68] -> [SKIP][69] ([Intel XE#7780] / [Intel XE#9125]) [68]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-3/igt@kms_plane@planar-pixel-format-settings.html [69]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_plane@planar-pixel-format-settings.html * igt@kms_plane_multiple@2x-tiling-y: - shard-bmg: NOTRUN -> [SKIP][70] ([Intel XE#5021] / [Intel XE#7377]) [70]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-9/igt@kms_plane_multiple@2x-tiling-y.html * igt@kms_plane_scaling@plane-downscale-factor-0-75-with-rotation@pipe-c: - shard-lnl: [PASS][71] -> [SKIP][72] ([Intel XE#2763] / [Intel XE#6886] / [Intel XE#7687] / [Intel XE#9125]) +7 other tests skip [71]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-8/igt@kms_plane_scaling@plane-downscale-factor-0-75-with-rotation@pipe-c.html [72]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_plane_scaling@plane-downscale-factor-0-75-with-rotation@pipe-c.html * igt@kms_plane_scaling@plane-upscale-20x20-with-modifiers@pipe-a: - shard-lnl: [PASS][73] -> [SKIP][74] ([Intel XE#2763] / [Intel XE#6886]) +7 other tests skip [73]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-5/igt@kms_plane_scaling@plane-upscale-20x20-with-modifiers@pipe-a.html [74]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_plane_scaling@plane-upscale-20x20-with-modifiers@pipe-a.html * igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-75@pipe-a: - shard-bmg: NOTRUN -> [SKIP][75] ([Intel XE#2763] / [Intel XE#6886]) +4 other tests skip [75]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-3/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-75@pipe-a.html * igt@kms_pm_backlight@basic-brightness: - shard-lnl: [PASS][76] -> [SKIP][77] ([Intel XE#870]) [76]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-7/igt@kms_pm_backlight@basic-brightness.html [77]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_pm_backlight@basic-brightness.html * igt@kms_pm_dc@dc5-dpms: - shard-lnl: [PASS][78] -> [FAIL][79] ([Intel XE#8399]) [78]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-2/igt@kms_pm_dc@dc5-dpms.html [79]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-2/igt@kms_pm_dc@dc5-dpms.html * igt@kms_pm_dc@dc5-psr-suspend-resume: - shard-lnl: [PASS][80] -> [SKIP][81] ([Intel XE#8854]) [80]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-5/igt@kms_pm_dc@dc5-psr-suspend-resume.html [81]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_pm_dc@dc5-psr-suspend-resume.html * igt@kms_pm_rpm@legacy-planes: - shard-lnl: [PASS][82] -> [SKIP][83] ([Intel XE#4886]) [82]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-5/igt@kms_pm_rpm@legacy-planes.html [83]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_pm_rpm@legacy-planes.html * igt@kms_pm_rpm@modeset-lpsp: - shard-bmg: NOTRUN -> [SKIP][84] ([Intel XE#1439] / [Intel XE#3141] / [Intel XE#7383] / [Intel XE#836]) [84]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-7/igt@kms_pm_rpm@modeset-lpsp.html * igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-sf@pipe-a-edp-1: - shard-lnl: NOTRUN -> [SKIP][85] ([Intel XE#4608]) +1 other test skip [85]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-2/igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-sf@pipe-a-edp-1.html * igt@kms_psr2_sf@fbc-psr2-primary-plane-update-sf-dmg-area@pipe-b-edp-1: - shard-lnl: NOTRUN -> [SKIP][86] ([Intel XE#4608] / [Intel XE#7304]) +1 other test skip [86]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-8/igt@kms_psr2_sf@fbc-psr2-primary-plane-update-sf-dmg-area@pipe-b-edp-1.html * igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-exceed-fully-sf: - shard-bmg: NOTRUN -> [SKIP][87] ([Intel XE#1489]) +5 other tests skip [87]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-2/igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-exceed-fully-sf.html * igt@kms_psr2_sf@psr2-overlay-plane-update-sf-dmg-area: - shard-lnl: [PASS][88] -> [SKIP][89] ([Intel XE#1489]) +1 other test skip [88]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-1/igt@kms_psr2_sf@psr2-overlay-plane-update-sf-dmg-area.html [89]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_psr2_sf@psr2-overlay-plane-update-sf-dmg-area.html * igt@kms_psr@fbc-psr-sprite-render: - shard-lnl: [PASS][90] -> [SKIP][91] ([Intel XE#2850] / [Intel XE#929]) +6 other tests skip [90]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-8/igt@kms_psr@fbc-psr-sprite-render.html [91]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_psr@fbc-psr-sprite-render.html * igt@kms_psr@pr-cursor-plane-onoff: - shard-bmg: NOTRUN -> [SKIP][92] ([Intel XE#2234] / [Intel XE#2850]) +10 other tests skip [92]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-8/igt@kms_psr@pr-cursor-plane-onoff.html * igt@kms_psr_stress_test@flip-primary-invalidate-overlay: - shard-lnl: [PASS][93] -> [SKIP][94] ([Intel XE#7795]) [93]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-4/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html [94]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html * igt@kms_psr_stress_test@invalidate-primary-flip-overlay: - shard-bmg: NOTRUN -> [SKIP][95] ([Intel XE#7795]) [95]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-9/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html * igt@kms_rotation_crc@primary-rotation-270: - shard-bmg: NOTRUN -> [SKIP][96] ([Intel XE#3904] / [Intel XE#7342]) [96]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-2/igt@kms_rotation_crc@primary-rotation-270.html * igt@kms_setmode@basic: - shard-lnl: [PASS][97] -> [SKIP][98] ([Intel XE#1435]) [97]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-7/igt@kms_setmode@basic.html [98]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_setmode@basic.html * igt@kms_sharpness_filter@filter-strength: - shard-bmg: NOTRUN -> [SKIP][99] ([Intel XE#6503]) [99]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-3/igt@kms_sharpness_filter@filter-strength.html * igt@kms_tiled_display@basic-test-pattern: - shard-bmg: NOTRUN -> [FAIL][100] ([Intel XE#1729] / [Intel XE#7424]) [100]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-4/igt@kms_tiled_display@basic-test-pattern.html * igt@kms_vblank@query-forked: - shard-lnl: [PASS][101] -> [SKIP][102] ([Intel XE#9125]) +46 other tests skip [101]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-8/igt@kms_vblank@query-forked.html [102]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_vblank@query-forked.html * igt@kms_vrr@lobf: - shard-bmg: NOTRUN -> [SKIP][103] ([Intel XE#2168] / [Intel XE#7444]) [103]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-8/igt@kms_vrr@lobf.html * igt@kms_vrr@seamless-rr-switch-drrs: - shard-bmg: NOTRUN -> [SKIP][104] ([Intel XE#1499]) [104]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-10/igt@kms_vrr@seamless-rr-switch-drrs.html * igt@xe_exec_basic@multigpu-once-null-rebind: - shard-bmg: NOTRUN -> [SKIP][105] ([Intel XE#2322] / [Intel XE#7372]) +6 other tests skip [105]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-10/igt@xe_exec_basic@multigpu-once-null-rebind.html * igt@xe_exec_fault_mode@twice-multi-queue-userptr-rebind-prefetch: - shard-bmg: NOTRUN -> [SKIP][106] ([Intel XE#8374]) +13 other tests skip [106]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-4/igt@xe_exec_fault_mode@twice-multi-queue-userptr-rebind-prefetch.html * igt@xe_exec_multi_queue@two-queues-preempt-mode-fault-dyn-priority-smem: - shard-bmg: NOTRUN -> [SKIP][107] ([Intel XE#8364]) +19 other tests skip [107]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-5/igt@xe_exec_multi_queue@two-queues-preempt-mode-fault-dyn-priority-smem.html * igt@xe_exec_reset@gt-stress-reset-mixed-engine-usage: - shard-bmg: [PASS][108] -> [INCOMPLETE][109] ([Intel XE#9041]) [108]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-bmg-4/igt@xe_exec_reset@gt-stress-reset-mixed-engine-usage.html [109]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-8/igt@xe_exec_reset@gt-stress-reset-mixed-engine-usage.html * igt@xe_exec_reset@multi-queue-cancel: - shard-bmg: NOTRUN -> [SKIP][110] ([Intel XE#8369]) [110]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-1/igt@xe_exec_reset@multi-queue-cancel.html * igt@xe_exec_threads@threads-hang-fd-userptr-invalidate-race: - shard-lnl: [PASS][111] -> [FAIL][112] ([Intel XE#9096]) [111]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-4/igt@xe_exec_threads@threads-hang-fd-userptr-invalidate-race.html [112]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-2/igt@xe_exec_threads@threads-hang-fd-userptr-invalidate-race.html * igt@xe_exec_threads@threads-multi-queue-mixed-shared-vm-userptr-rebind: - shard-bmg: NOTRUN -> [SKIP][113] ([Intel XE#8378]) +13 other tests skip [113]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-5/igt@xe_exec_threads@threads-multi-queue-mixed-shared-vm-userptr-rebind.html * igt@xe_multigpu_svm@mgpu-atomic-op-basic: - shard-bmg: NOTRUN -> [SKIP][114] ([Intel XE#6964]) +3 other tests skip [114]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-9/igt@xe_multigpu_svm@mgpu-atomic-op-basic.html * igt@xe_oa@oa-tlb-invalidate: - shard-bmg: NOTRUN -> [SKIP][115] ([Intel XE#2248] / [Intel XE#7325] / [Intel XE#7393]) [115]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-6/igt@xe_oa@oa-tlb-invalidate.html * igt@xe_page_reclaim@many-vma-same-bo: - shard-bmg: NOTRUN -> [SKIP][116] ([Intel XE#7793]) +1 other test skip [116]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-3/igt@xe_page_reclaim@many-vma-same-bo.html * igt@xe_peer2peer@write: - shard-bmg: NOTRUN -> [SKIP][117] ([Intel XE#2427] / [Intel XE#6953] / [Intel XE#7326] / [Intel XE#7353]) [117]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-4/igt@xe_peer2peer@write.html * igt@xe_pmu@fn-engine-activity-sched-if-idle: - shard-bmg: NOTRUN -> [FAIL][118] ([Intel XE#7992]) [118]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-3/igt@xe_pmu@fn-engine-activity-sched-if-idle.html * igt@xe_pxp@display-black-pxp-fb: - shard-bmg: NOTRUN -> [SKIP][119] ([Intel XE#4733] / [Intel XE#7417]) [119]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-4/igt@xe_pxp@display-black-pxp-fb.html * igt@xe_query@multigpu-query-config: - shard-bmg: NOTRUN -> [SKIP][120] ([Intel XE#944]) +3 other tests skip [120]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-6/igt@xe_query@multigpu-query-config.html * igt@xe_sriov_flr@flr-vfs-parallel: - shard-bmg: [PASS][121] -> [FAIL][122] ([Intel XE#7992]) [121]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-bmg-1/igt@xe_sriov_flr@flr-vfs-parallel.html [122]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-3/igt@xe_sriov_flr@flr-vfs-parallel.html * igt@xe_wedged@wedged-at-any-timeout: - shard-bmg: NOTRUN -> [DMESG-WARN][123] ([Intel XE#8963]) [123]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-3/igt@xe_wedged@wedged-at-any-timeout.html #### Possible fixes #### * igt@fbdev@unaligned-read: - shard-lnl: [SKIP][124] ([Intel XE#2134]) -> [PASS][125] [124]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@fbdev@unaligned-read.html [125]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-8/igt@fbdev@unaligned-read.html * igt@kms_color@ctm-negative: - shard-lnl: [SKIP][126] ([Intel XE#3297]) -> [PASS][127] +2 other tests pass [126]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_color@ctm-negative.html [127]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-2/igt@kms_color@ctm-negative.html * igt@kms_color_pipeline@plane-ctm3x4: - shard-lnl: [SKIP][128] ([Intel XE#7006]) -> [PASS][129] [128]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_color_pipeline@plane-ctm3x4.html [129]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-5/igt@kms_color_pipeline@plane-ctm3x4.html * igt@kms_cursor_crc@cursor-tearing-position-change: - shard-lnl: [SKIP][130] ([Intel XE#9125]) -> [PASS][131] +39 other tests pass [130]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_cursor_crc@cursor-tearing-position-change.html [131]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-8/igt@kms_cursor_crc@cursor-tearing-position-change.html * igt@kms_dp_aux_dev@basic: - shard-lnl: [SKIP][132] ([Intel XE#3009]) -> [PASS][133] [132]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_dp_aux_dev@basic.html [133]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-2/igt@kms_dp_aux_dev@basic.html * igt@kms_feature_discovery@psr1: - shard-lnl: [SKIP][134] ([Intel XE#1135]) -> [PASS][135] [134]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_feature_discovery@psr1.html [135]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-1/igt@kms_feature_discovery@psr1.html * igt@kms_flip@blocking-absolute-wf_vblank: - shard-lnl: [SKIP][136] ([Intel XE#2482]) -> [PASS][137] +7 other tests pass [136]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_flip@blocking-absolute-wf_vblank.html [137]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-3/igt@kms_flip@blocking-absolute-wf_vblank.html * igt@kms_flip@flip-vs-dpms-on-nop-interruptible: - shard-lnl: [SKIP][138] ([Intel XE#9132]) -> [PASS][139] [138]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_flip@flip-vs-dpms-on-nop-interruptible.html [139]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-5/igt@kms_flip@flip-vs-dpms-on-nop-interruptible.html * igt@kms_flip@flip-vs-expired-vblank@a-edp1: - shard-lnl: [FAIL][140] ([Intel XE#301]) -> [PASS][141] +1 other test pass [140]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-7/igt@kms_flip@flip-vs-expired-vblank@a-edp1.html [141]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-4/igt@kms_flip@flip-vs-expired-vblank@a-edp1.html * igt@kms_flip@flip-vs-expired-vblank@c-edp1: - shard-lnl: [FAIL][142] ([Intel XE#301] / [Intel XE#3149]) -> [PASS][143] +1 other test pass [142]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-7/igt@kms_flip@flip-vs-expired-vblank@c-edp1.html [143]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-4/igt@kms_flip@flip-vs-expired-vblank@c-edp1.html * igt@kms_frontbuffer_tracking@psr-1p-offscreen-pri-indfb-draw-mmap-wc: - shard-lnl: [SKIP][144] ([Intel XE#7779]) -> [PASS][145] [144]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_frontbuffer_tracking@psr-1p-offscreen-pri-indfb-draw-mmap-wc.html [145]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-7/igt@kms_frontbuffer_tracking@psr-1p-offscreen-pri-indfb-draw-mmap-wc.html * igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-move: - shard-lnl: [SKIP][146] ([Intel XE#2548] / [Intel XE#7779]) -> [PASS][147] +13 other tests pass [146]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-move.html [147]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-5/igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-move.html * igt@kms_invalid_mode@uint-max-clock: - shard-lnl: [SKIP][148] ([Intel XE#2568]) -> [PASS][149] +3 other tests pass [148]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_invalid_mode@uint-max-clock.html [149]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-5/igt@kms_invalid_mode@uint-max-clock.html * igt@kms_plane@pixel-format-x-tiled-modifier: - shard-lnl: [SKIP][150] ([Intel XE#7250]) -> [PASS][151] [150]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_plane@pixel-format-x-tiled-modifier.html [151]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-1/igt@kms_plane@pixel-format-x-tiled-modifier.html * igt@kms_plane_cursor@overlay@pipe-d-dp-2-size-256: - shard-bmg: [INCOMPLETE][152] ([Intel XE#9133]) -> [PASS][153] +1 other test pass [152]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-bmg-3/igt@kms_plane_cursor@overlay@pipe-d-dp-2-size-256.html [153]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-9/igt@kms_plane_cursor@overlay@pipe-d-dp-2-size-256.html * igt@kms_plane_scaling@plane-scaler-unity-scaling-with-pixel-format@pipe-a: - shard-lnl: [SKIP][154] ([Intel XE#2763] / [Intel XE#6886]) -> [PASS][155] +3 other tests pass [154]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_plane_scaling@plane-scaler-unity-scaling-with-pixel-format@pipe-a.html [155]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-5/igt@kms_plane_scaling@plane-scaler-unity-scaling-with-pixel-format@pipe-a.html * igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats: - shard-lnl: [SKIP][156] ([Intel XE#2763] / [Intel XE#6886] / [Intel XE#7687]) -> [PASS][157] +5 other tests pass [156]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats.html [157]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-2/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats.html * igt@kms_pm_backlight@bad-brightness: - shard-lnl: [SKIP][158] ([Intel XE#870]) -> [PASS][159] [158]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_pm_backlight@bad-brightness.html [159]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-4/igt@kms_pm_backlight@bad-brightness.html * igt@kms_pm_dc@dc5-dpms-suspend-resume: - shard-lnl: [FAIL][160] ([Intel XE#8399]) -> [PASS][161] [160]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_pm_dc@dc5-dpms-suspend-resume.html [161]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-7/igt@kms_pm_dc@dc5-dpms-suspend-resume.html * igt@kms_pm_rpm@i2c: - shard-lnl: [SKIP][162] ([Intel XE#7106]) -> [PASS][163] +1 other test pass [162]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_pm_rpm@i2c.html [163]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-1/igt@kms_pm_rpm@i2c.html * igt@kms_properties@colorop-properties-atomic: - shard-lnl: [SKIP][164] ([Intel XE#9126]) -> [PASS][165] [164]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_properties@colorop-properties-atomic.html [165]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-8/igt@kms_properties@colorop-properties-atomic.html * igt@kms_properties@plane-properties-legacy: - shard-lnl: [SKIP][166] ([Intel XE#9129]) -> [PASS][167] [166]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_properties@plane-properties-legacy.html [167]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-2/igt@kms_properties@plane-properties-legacy.html * igt@kms_psr2_sf@psr2-cursor-plane-move-continuous-exceed-fully-sf: - shard-lnl: [SKIP][168] ([Intel XE#1489]) -> [PASS][169] +1 other test pass [168]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_psr2_sf@psr2-cursor-plane-move-continuous-exceed-fully-sf.html [169]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-4/igt@kms_psr2_sf@psr2-cursor-plane-move-continuous-exceed-fully-sf.html * igt@kms_psr@psr2-sprite-plane-onoff: - shard-lnl: [SKIP][170] ([Intel XE#2850] / [Intel XE#929]) -> [PASS][171] +5 other tests pass [170]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_psr@psr2-sprite-plane-onoff.html [171]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-2/igt@kms_psr@psr2-sprite-plane-onoff.html * igt@sriov_basic@enable-vfs-autoprobe-off@numvfs-7: - shard-bmg: [FAIL][172] ([Intel XE#7992]) -> [PASS][173] +27 other tests pass [172]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-bmg-4/igt@sriov_basic@enable-vfs-autoprobe-off@numvfs-7.html [173]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-5/igt@sriov_basic@enable-vfs-autoprobe-off@numvfs-7.html * igt@xe_configfs@engines-allowed: - shard-bmg: [ABORT][174] ([Intel XE#8007]) -> [PASS][175] [174]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-bmg-1/igt@xe_configfs@engines-allowed.html [175]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-7/igt@xe_configfs@engines-allowed.html * igt@xe_sriov_flr@flr-vf1-clear: - shard-bmg: [FAIL][176] ([Intel XE#6569]) -> [PASS][177] +1 other test pass [176]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-bmg-3/igt@xe_sriov_flr@flr-vf1-clear.html [177]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-2/igt@xe_sriov_flr@flr-vf1-clear.html #### Warnings #### * igt@kms_atomic_transition@plane-all-modeset-transition: - shard-lnl: [SKIP][178] ([Intel XE#3279]) -> [SKIP][179] ([Intel XE#9125]) [178]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-4/igt@kms_atomic_transition@plane-all-modeset-transition.html [179]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_atomic_transition@plane-all-modeset-transition.html * igt@kms_big_fb@4-tiled-16bpp-rotate-270: - shard-lnl: [SKIP][180] ([Intel XE#9125]) -> [SKIP][181] ([Intel XE#1407]) +6 other tests skip [180]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_big_fb@4-tiled-16bpp-rotate-270.html [181]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-7/igt@kms_big_fb@4-tiled-16bpp-rotate-270.html * igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip: - shard-lnl: [SKIP][182] ([Intel XE#3658] / [Intel XE#7360]) -> [SKIP][183] ([Intel XE#9125]) +1 other test skip [182]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-2/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip.html [183]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip.html * igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip: - shard-lnl: [SKIP][184] ([Intel XE#9125]) -> [SKIP][185] ([Intel XE#3658] / [Intel XE#7360]) [184]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip.html [185]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-5/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip.html * igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-0-hflip: - shard-lnl: [SKIP][186] ([Intel XE#9125]) -> [SKIP][187] ([Intel XE#7059] / [Intel XE#7085]) [186]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-0-hflip.html [187]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-3/igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-0-hflip.html * igt@kms_big_fb@x-tiled-8bpp-rotate-90: - shard-lnl: [SKIP][188] ([Intel XE#1407]) -> [SKIP][189] ([Intel XE#9125]) +1 other test skip [188]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-1/igt@kms_big_fb@x-tiled-8bpp-rotate-90.html [189]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_big_fb@x-tiled-8bpp-rotate-90.html * igt@kms_big_fb@y-tiled-32bpp-rotate-0: - shard-lnl: [SKIP][190] ([Intel XE#9125]) -> [SKIP][191] ([Intel XE#1124]) +7 other tests skip [190]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_big_fb@y-tiled-32bpp-rotate-0.html [191]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-8/igt@kms_big_fb@y-tiled-32bpp-rotate-0.html * igt@kms_big_fb@y-tiled-addfb-size-offset-overflow: - shard-lnl: [SKIP][192] ([Intel XE#1477] / [Intel XE#7361]) -> [SKIP][193] ([Intel XE#9125]) [192]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-4/igt@kms_big_fb@y-tiled-addfb-size-offset-overflow.html [193]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_big_fb@y-tiled-addfb-size-offset-overflow.html * igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip: - shard-lnl: [SKIP][194] ([Intel XE#1124]) -> [SKIP][195] ([Intel XE#9125]) +7 other tests skip [194]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-4/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip.html [195]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip.html * igt@kms_bw@connected-linear-tiling-3-displays-target-2560x1440p: - shard-lnl: [SKIP][196] ([Intel XE#9125]) -> [SKIP][197] ([Intel XE#7679]) [196]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_bw@connected-linear-tiling-3-displays-target-2560x1440p.html [197]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-4/igt@kms_bw@connected-linear-tiling-3-displays-target-2560x1440p.html * igt@kms_bw@connected-linear-tiling-3-displays-target-3840x2160p: - shard-lnl: [SKIP][198] ([Intel XE#7679]) -> [SKIP][199] ([Intel XE#9125]) [198]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-5/igt@kms_bw@connected-linear-tiling-3-displays-target-3840x2160p.html [199]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_bw@connected-linear-tiling-3-displays-target-3840x2160p.html * igt@kms_bw@connected-linear-tiling-4-displays-target-2560x1440p: - shard-lnl: [SKIP][200] ([Intel XE#8365]) -> [SKIP][201] ([Intel XE#9125]) +1 other test skip [200]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-1/igt@kms_bw@connected-linear-tiling-4-displays-target-2560x1440p.html [201]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_bw@connected-linear-tiling-4-displays-target-2560x1440p.html * igt@kms_bw@linear-tiling-2-displays-target-3840x2160p: - shard-lnl: [SKIP][202] ([Intel XE#367]) -> [SKIP][203] ([Intel XE#9125]) [202]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-7/igt@kms_bw@linear-tiling-2-displays-target-3840x2160p.html [203]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_bw@linear-tiling-2-displays-target-3840x2160p.html * igt@kms_bw@linear-tiling-4-displays-target-2160x1440p: - shard-lnl: [SKIP][204] ([Intel XE#9125]) -> [SKIP][205] ([Intel XE#8365]) +2 other tests skip [204]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_bw@linear-tiling-4-displays-target-2160x1440p.html [205]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-7/igt@kms_bw@linear-tiling-4-displays-target-2160x1440p.html * igt@kms_ccs@bad-rotation-90-4-tiled-dg2-rc-ccs: - shard-lnl: [SKIP][206] ([Intel XE#2887]) -> [SKIP][207] ([Intel XE#9125]) +8 other tests skip [206]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-1/igt@kms_ccs@bad-rotation-90-4-tiled-dg2-rc-ccs.html [207]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_ccs@bad-rotation-90-4-tiled-dg2-rc-ccs.html * igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs: - shard-lnl: [SKIP][208] ([Intel XE#2669] / [Intel XE#3433] / [Intel XE#7389]) -> [SKIP][209] ([Intel XE#9125]) [208]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-3/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html [209]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html * igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc: - shard-lnl: [SKIP][210] ([Intel XE#3432]) -> [SKIP][211] ([Intel XE#9125]) +1 other test skip [210]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-3/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc.html [211]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc.html * igt@kms_ccs@crc-primary-suspend-y-tiled-ccs: - shard-lnl: [SKIP][212] ([Intel XE#9125]) -> [SKIP][213] ([Intel XE#3432]) +1 other test skip [212]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_ccs@crc-primary-suspend-y-tiled-ccs.html [213]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-8/igt@kms_ccs@crc-primary-suspend-y-tiled-ccs.html * igt@kms_ccs@random-ccs-data-4-tiled-bmg-ccs: - shard-lnl: [SKIP][214] ([Intel XE#2669] / [Intel XE#7389]) -> [SKIP][215] ([Intel XE#9125]) [214]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-4/igt@kms_ccs@random-ccs-data-4-tiled-bmg-ccs.html [215]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_ccs@random-ccs-data-4-tiled-bmg-ccs.html * igt@kms_ccs@random-ccs-data-4-tiled-mtl-rc-ccs-cc: - shard-lnl: [SKIP][216] ([Intel XE#9125]) -> [SKIP][217] ([Intel XE#2887]) +9 other tests skip [216]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_ccs@random-ccs-data-4-tiled-mtl-rc-ccs-cc.html [217]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-7/igt@kms_ccs@random-ccs-data-4-tiled-mtl-rc-ccs-cc.html * igt@kms_cdclk@mode-transition-all-outputs: - shard-lnl: [SKIP][218] ([Intel XE#9125]) -> [SKIP][219] ([Intel XE#7008]) [218]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_cdclk@mode-transition-all-outputs.html [219]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-1/igt@kms_cdclk@mode-transition-all-outputs.html * igt@kms_cdclk@plane-scaling: - shard-lnl: [SKIP][220] ([Intel XE#9125]) -> [SKIP][221] ([Intel XE#4416] / [Intel XE#7381]) [220]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_cdclk@plane-scaling.html [221]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-4/igt@kms_cdclk@plane-scaling.html * igt@kms_content_protection@dp-mst-type-0-suspend-resume: - shard-lnl: [SKIP][222] ([Intel XE#9125]) -> [SKIP][223] ([Intel XE#6974]) [222]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_content_protection@dp-mst-type-0-suspend-resume.html [223]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-4/igt@kms_content_protection@dp-mst-type-0-suspend-resume.html * igt@kms_content_protection@dp-mst-type-1: - shard-lnl: [SKIP][224] ([Intel XE#307] / [Intel XE#6974]) -> [SKIP][225] ([Intel XE#9125]) [224]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-1/igt@kms_content_protection@dp-mst-type-1.html [225]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_content_protection@dp-mst-type-1.html * igt@kms_content_protection@lic-type-0-hdcp14: - shard-lnl: [SKIP][226] ([Intel XE#9125]) -> [SKIP][227] ([Intel XE#7642]) [226]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_content_protection@lic-type-0-hdcp14.html [227]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-3/igt@kms_content_protection@lic-type-0-hdcp14.html * igt@kms_content_protection@lic-type-1: - shard-lnl: [SKIP][228] ([Intel XE#7642]) -> [SKIP][229] ([Intel XE#9125]) +1 other test skip [228]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-5/igt@kms_content_protection@lic-type-1.html [229]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_content_protection@lic-type-1.html * igt@kms_content_protection@mei-interface: - shard-lnl: [SKIP][230] ([Intel XE#1468] / [Intel XE#7396]) -> [SKIP][231] ([Intel XE#9125]) [230]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-8/igt@kms_content_protection@mei-interface.html [231]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_content_protection@mei-interface.html * igt@kms_cursor_legacy@2x-cursor-vs-flip-legacy: - shard-lnl: [SKIP][232] ([Intel XE#9125]) -> [SKIP][233] ([Intel XE#309] / [Intel XE#7343]) +3 other tests skip [232]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_cursor_legacy@2x-cursor-vs-flip-legacy.html [233]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-4/igt@kms_cursor_legacy@2x-cursor-vs-flip-legacy.html * igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic: - shard-lnl: [SKIP][234] ([Intel XE#309] / [Intel XE#7343]) -> [SKIP][235] ([Intel XE#9125]) +4 other tests skip [234]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-3/igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic.html [235]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic.html * igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions: - shard-lnl: [SKIP][236] ([Intel XE#309] / [Intel XE#7343] / [Intel XE#7935]) -> [SKIP][237] ([Intel XE#9125]) [236]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-8/igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions.html [237]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions.html * igt@kms_dp_linktrain_fallback@dp-fallback: - shard-lnl: [SKIP][238] ([Intel XE#9125]) -> [SKIP][239] ([Intel XE#9009]) [238]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_dp_linktrain_fallback@dp-fallback.html [239]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-1/igt@kms_dp_linktrain_fallback@dp-fallback.html * igt@kms_dp_linktrain_fallback@dsc-fallback: - shard-lnl: [SKIP][240] ([Intel XE#9125]) -> [SKIP][241] ([Intel XE#4331] / [Intel XE#7227]) [240]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_dp_linktrain_fallback@dsc-fallback.html [241]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-3/igt@kms_dp_linktrain_fallback@dsc-fallback.html * igt@kms_dsc@dsc-with-bpc-ultrajoiner: - shard-lnl: [SKIP][242] ([Intel XE#8265]) -> [SKIP][243] ([Intel XE#9125]) +3 other tests skip [242]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-3/igt@kms_dsc@dsc-with-bpc-ultrajoiner.html [243]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_dsc@dsc-with-bpc-ultrajoiner.html * igt@kms_dsc@dsc-with-output-formats-with-bpc-bigjoiner: - shard-lnl: [SKIP][244] ([Intel XE#9125]) -> [SKIP][245] ([Intel XE#8265]) +3 other tests skip [244]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_dsc@dsc-with-output-formats-with-bpc-bigjoiner.html [245]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-1/igt@kms_dsc@dsc-with-output-formats-with-bpc-bigjoiner.html * igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-dirtyfb-tests: - shard-lnl: [SKIP][246] ([Intel XE#4422] / [Intel XE#7442]) -> [SKIP][247] ([Intel XE#9125]) [246]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-4/igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-dirtyfb-tests.html [247]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-dirtyfb-tests.html * igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-downscaling: - shard-lnl: [SKIP][248] ([Intel XE#1745]) -> [SKIP][249] ([Intel XE#1397] / [Intel XE#1745] / [Intel XE#7385]) +1 other test skip [248]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-downscaling.html [249]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-3/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-64bpp-4tile-downscaling.html * igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-downscaling: - shard-lnl: [SKIP][250] ([Intel XE#1397] / [Intel XE#1745] / [Intel XE#7385]) -> [SKIP][251] ([Intel XE#1745]) +1 other test skip [250]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-7/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-downscaling.html [251]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-downscaling.html * igt@kms_frontbuffer_tracking@drrs-1p-primscrn-shrfb-msflip-blt: - shard-lnl: [SKIP][252] ([Intel XE#6312] / [Intel XE#651]) -> [SKIP][253] ([Intel XE#2548] / [Intel XE#7779]) +11 other tests skip [252]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-2/igt@kms_frontbuffer_tracking@drrs-1p-primscrn-shrfb-msflip-blt.html [253]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_frontbuffer_tracking@drrs-1p-primscrn-shrfb-msflip-blt.html * igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-shrfb-plflip-blt: - shard-lnl: [SKIP][254] ([Intel XE#656] / [Intel XE#7905]) -> [SKIP][255] ([Intel XE#2548] / [Intel XE#7779]) +25 other tests skip [254]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-2/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-shrfb-plflip-blt.html [255]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-shrfb-plflip-blt.html * igt@kms_frontbuffer_tracking@drrs-argb161616f-draw-blt: - shard-lnl: [SKIP][256] ([Intel XE#7779]) -> [SKIP][257] ([Intel XE#7061] / [Intel XE#7356]) +4 other tests skip [256]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_frontbuffer_tracking@drrs-argb161616f-draw-blt.html [257]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-3/igt@kms_frontbuffer_tracking@drrs-argb161616f-draw-blt.html * igt@kms_frontbuffer_tracking@drrshdr-argb161616f-draw-render: - shard-lnl: [SKIP][258] ([Intel XE#7061]) -> [SKIP][259] ([Intel XE#7779]) +6 other tests skip [258]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-5/igt@kms_frontbuffer_tracking@drrshdr-argb161616f-draw-render.html [259]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_frontbuffer_tracking@drrshdr-argb161616f-draw-render.html * igt@kms_frontbuffer_tracking@drrshdr-rgb565-draw-render: - shard-lnl: [SKIP][260] ([Intel XE#7779]) -> [SKIP][261] ([Intel XE#6312]) +9 other tests skip [260]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_frontbuffer_tracking@drrshdr-rgb565-draw-render.html [261]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-4/igt@kms_frontbuffer_tracking@drrshdr-rgb565-draw-render.html * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-blt: - shard-lnl: [SKIP][262] ([Intel XE#2548] / [Intel XE#7779]) -> [SKIP][263] ([Intel XE#656] / [Intel XE#7905]) +32 other tests skip [262]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-blt.html [263]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-3/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-blt.html * igt@kms_frontbuffer_tracking@fbc-argb161616f-draw-blt: - shard-lnl: [SKIP][264] ([Intel XE#7061] / [Intel XE#7356]) -> [SKIP][265] ([Intel XE#7779]) +2 other tests skip [264]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-3/igt@kms_frontbuffer_tracking@fbc-argb161616f-draw-blt.html [265]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_frontbuffer_tracking@fbc-argb161616f-draw-blt.html * igt@kms_frontbuffer_tracking@fbc-tiling-y: - shard-lnl: [SKIP][266] ([Intel XE#2548] / [Intel XE#7779]) -> [SKIP][267] ([Intel XE#1469] / [Intel XE#7399]) [266]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_frontbuffer_tracking@fbc-tiling-y.html [267]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-4/igt@kms_frontbuffer_tracking@fbc-tiling-y.html * igt@kms_frontbuffer_tracking@fbcdrrs-1p-offscreen-pri-indfb-draw-blt: - shard-lnl: [SKIP][268] ([Intel XE#6312]) -> [SKIP][269] ([Intel XE#7779]) +7 other tests skip [268]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-1/igt@kms_frontbuffer_tracking@fbcdrrs-1p-offscreen-pri-indfb-draw-blt.html [269]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_frontbuffer_tracking@fbcdrrs-1p-offscreen-pri-indfb-draw-blt.html * igt@kms_frontbuffer_tracking@fbcdrrs-rgb101010-draw-blt: - shard-lnl: [SKIP][270] ([Intel XE#2548] / [Intel XE#7779]) -> [SKIP][271] ([Intel XE#6312] / [Intel XE#651]) +9 other tests skip [270]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_frontbuffer_tracking@fbcdrrs-rgb101010-draw-blt.html [271]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-7/igt@kms_frontbuffer_tracking@fbcdrrs-rgb101010-draw-blt.html * igt@kms_frontbuffer_tracking@fbcdrrshdr-2p-primscrn-cur-indfb-draw-render: - shard-lnl: [SKIP][272] ([Intel XE#7905]) -> [SKIP][273] ([Intel XE#7779]) +35 other tests skip [272]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-8/igt@kms_frontbuffer_tracking@fbcdrrshdr-2p-primscrn-cur-indfb-draw-render.html [273]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_frontbuffer_tracking@fbcdrrshdr-2p-primscrn-cur-indfb-draw-render.html * igt@kms_frontbuffer_tracking@fbchdr-tiling-y: - shard-lnl: [SKIP][274] ([Intel XE#7399]) -> [SKIP][275] ([Intel XE#7779]) [274]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-3/igt@kms_frontbuffer_tracking@fbchdr-tiling-y.html [275]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_frontbuffer_tracking@fbchdr-tiling-y.html * igt@kms_frontbuffer_tracking@fbcpsrhdr-1p-primscrn-cur-indfb-draw-mmap-wc: - shard-lnl: [SKIP][276] ([Intel XE#7779]) -> [SKIP][277] ([Intel XE#7865]) +20 other tests skip [276]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_frontbuffer_tracking@fbcpsrhdr-1p-primscrn-cur-indfb-draw-mmap-wc.html [277]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-3/igt@kms_frontbuffer_tracking@fbcpsrhdr-1p-primscrn-cur-indfb-draw-mmap-wc.html * igt@kms_frontbuffer_tracking@hdr-2p-scndscrn-pri-shrfb-draw-mmap-wc: - shard-lnl: [SKIP][278] ([Intel XE#7779]) -> [SKIP][279] ([Intel XE#7905]) +33 other tests skip [278]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_frontbuffer_tracking@hdr-2p-scndscrn-pri-shrfb-draw-mmap-wc.html [279]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-7/igt@kms_frontbuffer_tracking@hdr-2p-scndscrn-pri-shrfb-draw-mmap-wc.html * igt@kms_frontbuffer_tracking@hdr-rgb565-draw-mmap-wc: - shard-lnl: [SKIP][280] ([Intel XE#7865]) -> [SKIP][281] ([Intel XE#7779]) +21 other tests skip [280]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-1/igt@kms_frontbuffer_tracking@hdr-rgb565-draw-mmap-wc.html [281]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_frontbuffer_tracking@hdr-rgb565-draw-mmap-wc.html * igt@kms_frontbuffer_tracking@psrhdr-abgr161616f-draw-mmap-wc: - shard-lnl: [SKIP][282] ([Intel XE#7779]) -> [SKIP][283] ([Intel XE#7061]) +6 other tests skip [282]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_frontbuffer_tracking@psrhdr-abgr161616f-draw-mmap-wc.html [283]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-1/igt@kms_frontbuffer_tracking@psrhdr-abgr161616f-draw-mmap-wc.html * igt@kms_hdr@brightness-with-hdr: - shard-lnl: [SKIP][284] ([Intel XE#3374] / [Intel XE#3544]) -> [SKIP][285] ([Intel XE#9125]) [284]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-3/igt@kms_hdr@brightness-with-hdr.html [285]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_hdr@brightness-with-hdr.html * igt@kms_plane@pixel-format-linear-modifier: - shard-lnl: [SKIP][286] ([Intel XE#7250]) -> [SKIP][287] ([Intel XE#7250] / [Intel XE#9128]) [286]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_plane@pixel-format-linear-modifier.html [287]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_plane@pixel-format-linear-modifier.html * igt@kms_plane_lowres@tiling-yf: - shard-lnl: [SKIP][288] ([Intel XE#599]) -> [SKIP][289] ([Intel XE#9125]) [288]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-5/igt@kms_plane_lowres@tiling-yf.html [289]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_plane_lowres@tiling-yf.html * igt@kms_plane_scaling@2x-scaler-multi-pipe: - shard-lnl: [SKIP][290] ([Intel XE#7343] / [Intel XE#7687]) -> [SKIP][291] ([Intel XE#309] / [Intel XE#7343]) [290]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_plane_scaling@2x-scaler-multi-pipe.html [291]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-7/igt@kms_plane_scaling@2x-scaler-multi-pipe.html * igt@kms_plane_scaling@intel-max-src-size: - shard-lnl: [SKIP][292] ([Intel XE#3307] / [Intel XE#7687]) -> [SKIP][293] ([Intel XE#3307]) [292]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_plane_scaling@intel-max-src-size.html [293]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-4/igt@kms_plane_scaling@intel-max-src-size.html * igt@kms_plane_scaling@plane-downscale-factor-0-5-with-rotation@pipe-c: - shard-lnl: [SKIP][294] ([Intel XE#2763] / [Intel XE#6886] / [Intel XE#7687]) -> [SKIP][295] ([Intel XE#2763] / [Intel XE#6886] / [Intel XE#7687] / [Intel XE#9125]) +1 other test skip [294]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_plane_scaling@plane-downscale-factor-0-5-with-rotation@pipe-c.html [295]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_plane_scaling@plane-downscale-factor-0-5-with-rotation@pipe-c.html * igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5@pipe-c: - shard-lnl: [SKIP][296] ([Intel XE#2763] / [Intel XE#6886]) -> [SKIP][297] ([Intel XE#2763] / [Intel XE#6886] / [Intel XE#7687] / [Intel XE#9125]) +1 other test skip [296]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-3/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5@pipe-c.html [297]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5@pipe-c.html * igt@kms_pm_dc@deep-pkgc: - shard-lnl: [FAIL][298] ([Intel XE#2029] / [Intel XE#7395]) -> [SKIP][299] ([Intel XE#7778]) [298]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-3/igt@kms_pm_dc@deep-pkgc.html [299]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_pm_dc@deep-pkgc.html * igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-sf: - shard-lnl: [SKIP][300] ([Intel XE#2893] / [Intel XE#4608] / [Intel XE#7304]) -> [SKIP][301] ([Intel XE#1489]) +2 other tests skip [300]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-3/igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-sf.html [301]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-sf.html * igt@kms_psr2_sf@fbc-psr2-primary-plane-update-sf-dmg-area: - shard-lnl: [SKIP][302] ([Intel XE#1489]) -> [SKIP][303] ([Intel XE#2893] / [Intel XE#4608] / [Intel XE#7304]) +1 other test skip [302]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_psr2_sf@fbc-psr2-primary-plane-update-sf-dmg-area.html [303]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-8/igt@kms_psr2_sf@fbc-psr2-primary-plane-update-sf-dmg-area.html * igt@kms_psr2_sf@pr-cursor-plane-move-continuous-sf: - shard-lnl: [SKIP][304] ([Intel XE#2893] / [Intel XE#7304]) -> [SKIP][305] ([Intel XE#1489]) +2 other tests skip [304]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-7/igt@kms_psr2_sf@pr-cursor-plane-move-continuous-sf.html [305]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_psr2_sf@pr-cursor-plane-move-continuous-sf.html * igt@kms_psr2_sf@pr-cursor-plane-update-sf: - shard-lnl: [SKIP][306] ([Intel XE#1489]) -> [SKIP][307] ([Intel XE#2893] / [Intel XE#7304]) +1 other test skip [306]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_psr2_sf@pr-cursor-plane-update-sf.html [307]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-5/igt@kms_psr2_sf@pr-cursor-plane-update-sf.html * igt@kms_psr2_su@frontbuffer-xrgb8888: - shard-lnl: [SKIP][308] ([Intel XE#1122] / [Intel XE#7429]) -> [SKIP][309] ([Intel XE#1128] / [Intel XE#7413]) [308]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_psr2_su@frontbuffer-xrgb8888.html [309]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-8/igt@kms_psr2_su@frontbuffer-xrgb8888.html * igt@kms_psr@fbc-pr-dpms: - shard-lnl: [SKIP][310] ([Intel XE#2850] / [Intel XE#929]) -> [SKIP][311] ([Intel XE#1406]) +4 other tests skip [310]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_psr@fbc-pr-dpms.html [311]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-2/igt@kms_psr@fbc-pr-dpms.html * igt@kms_psr@fbc-pr-sprite-blt: - shard-lnl: [SKIP][312] ([Intel XE#1406]) -> [SKIP][313] ([Intel XE#2850] / [Intel XE#929]) [312]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-5/igt@kms_psr@fbc-pr-sprite-blt.html [313]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_psr@fbc-pr-sprite-blt.html * igt@kms_psr@fbc-psr2-cursor-plane-move: - shard-lnl: [SKIP][314] ([Intel XE#1406] / [Intel XE#7345]) -> [SKIP][315] ([Intel XE#2850] / [Intel XE#929]) +1 other test skip [314]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-2/igt@kms_psr@fbc-psr2-cursor-plane-move.html [315]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_psr@fbc-psr2-cursor-plane-move.html * igt@kms_rotation_crc@primary-y-tiled-reflect-x-180: - shard-lnl: [SKIP][316] ([Intel XE#9125]) -> [SKIP][317] ([Intel XE#1127] / [Intel XE#5813]) [316]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_rotation_crc@primary-y-tiled-reflect-x-180.html [317]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-2/igt@kms_rotation_crc@primary-y-tiled-reflect-x-180.html * igt@kms_rotation_crc@primary-y-tiled-reflect-x-90: - shard-lnl: [SKIP][318] ([Intel XE#3414] / [Intel XE#3904] / [Intel XE#7342]) -> [SKIP][319] ([Intel XE#9125]) +2 other tests skip [318]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-3/igt@kms_rotation_crc@primary-y-tiled-reflect-x-90.html [319]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_rotation_crc@primary-y-tiled-reflect-x-90.html * igt@kms_vrr@lobf-dc3co: - shard-lnl: [SKIP][320] ([Intel XE#9125]) -> [SKIP][321] ([Intel XE#8397]) [320]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-6/igt@kms_vrr@lobf-dc3co.html [321]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-2/igt@kms_vrr@lobf-dc3co.html * igt@kms_vrr@seamless-rr-switch-drrs: - shard-lnl: [SKIP][322] ([Intel XE#1499]) -> [SKIP][323] ([Intel XE#9125]) [322]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-2/igt@kms_vrr@seamless-rr-switch-drrs.html [323]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-6/igt@kms_vrr@seamless-rr-switch-drrs.html * igt@sriov_basic@pf-unbind-with-vf-probed: - shard-bmg: [FAIL][324] ([Intel XE#7992]) -> [ABORT][325] ([Intel XE#8868]) [324]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-bmg-3/igt@sriov_basic@pf-unbind-with-vf-probed.html [325]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-bmg-2/igt@sriov_basic@pf-unbind-with-vf-probed.html * igt@xe_wedged@basic-wedged: - shard-lnl: [DMESG-WARN][326] ([Intel XE#8963]) -> [ABORT][327] ([Intel XE#8963]) [326]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_9081/shard-lnl-1/igt@xe_wedged@basic-wedged.html [327]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/shard-lnl-1/igt@xe_wedged@basic-wedged.html [Intel XE#1122]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1122 [Intel XE#1124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1124 [Intel XE#1127]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1127 [Intel XE#1128]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1128 [Intel XE#1135]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1135 [Intel XE#1178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1178 [Intel XE#1397]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1397 [Intel XE#1406]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1406 [Intel XE#1407]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1407 [Intel XE#1424]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1424 [Intel XE#1435]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1435 [Intel XE#1439]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1439 [Intel XE#1468]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1468 [Intel XE#1469]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1469 [Intel XE#1477]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1477 [Intel XE#1489]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1489 [Intel XE#1499]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1499 [Intel XE#1729]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1729 [Intel XE#1745]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1745 [Intel XE#2029]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2029 [Intel XE#2134]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2134 [Intel XE#2168]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2168 [Intel XE#2233]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2233 [Intel XE#2234]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2234 [Intel XE#2248]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2248 [Intel XE#2252]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2252 [Intel XE#2311]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2311 [Intel XE#2313]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2313 [Intel XE#2320]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2320 [Intel XE#2321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2321 [Intel XE#2322]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2322 [Intel XE#2325]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2325 [Intel XE#2327]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2327 [Intel XE#2328]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2328 [Intel XE#2375]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2375 [Intel XE#2427]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2427 [Intel XE#2482]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2482 [Intel XE#2548]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2548 [Intel XE#2568]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2568 [Intel XE#2652]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2652 [Intel XE#2669]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2669 [Intel XE#2763]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2763 [Intel XE#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850 [Intel XE#2887]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2887 [Intel XE#2893]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2893 [Intel XE#3009]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3009 [Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301 [Intel XE#307]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/307 [Intel XE#309]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/309 [Intel XE#3141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3141 [Intel XE#3149]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3149 [Intel XE#3279]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3279 [Intel XE#3297]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3297 [Intel XE#3304]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3304 [Intel XE#3307]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3307 [Intel XE#3374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3374 [Intel XE#3414]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3414 [Intel XE#3432]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3432 [Intel XE#3433]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3433 [Intel XE#3544]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3544 [Intel XE#3658]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3658 [Intel XE#367]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/367 [Intel XE#3904]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3904 [Intel XE#4141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4141 [Intel XE#4331]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4331 [Intel XE#4416]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4416 [Intel XE#4422]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4422 [Intel XE#4608]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4608 [Intel XE#4733]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4733 [Intel XE#4886]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4886 [Intel XE#5021]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5021 [Intel XE#5813]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5813 [Intel XE#599]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/599 [Intel XE#610]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/610 [Intel XE#6312]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6312 [Intel XE#6503]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6503 [Intel XE#651]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/651 [Intel XE#656]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/656 [Intel XE#6569]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6569 [Intel XE#6886]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6886 [Intel XE#6953]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6953 [Intel XE#6964]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6964 [Intel XE#6974]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6974 [Intel XE#7006]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7006 [Intel XE#7008]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7008 [Intel XE#7059]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7059 [Intel XE#7061]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7061 [Intel XE#7084]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7084 [Intel XE#7085]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7085 [Intel XE#7106]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7106 [Intel XE#7178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7178 [Intel XE#7179]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7179 [Intel XE#7227]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7227 [Intel XE#7250]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7250 [Intel XE#7283]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7283 [Intel XE#7304]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7304 [Intel XE#7325]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7325 [Intel XE#7326]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7326 [Intel XE#7342]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7342 [Intel XE#7343]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7343 [Intel XE#7345]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7345 [Intel XE#7349]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7349 [Intel XE#7351]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7351 [Intel XE#7353]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7353 [Intel XE#7355]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7355 [Intel XE#7356]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7356 [Intel XE#7358]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7358 [Intel XE#7360]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7360 [Intel XE#7361]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7361 [Intel XE#7367]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7367 [Intel XE#7372]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7372 [Intel XE#7374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7374 [Intel XE#7377]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7377 [Intel XE#7381]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7381 [Intel XE#7383]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7383 [Intel XE#7385]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7385 [Intel XE#7387]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7387 [Intel XE#7389]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7389 [Intel XE#7393]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7393 [Intel XE#7395]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7395 [Intel XE#7396]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7396 [Intel XE#7399]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7399 [Intel XE#7413]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7413 [Intel XE#7417]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7417 [Intel XE#7424]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7424 [Intel XE#7429]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7429 [Intel XE#7442]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7442 [Intel XE#7444]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7444 [Intel XE#7642]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7642 [Intel XE#7679]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7679 [Intel XE#7687]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7687 [Intel XE#7778]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7778 [Intel XE#7779]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7779 [Intel XE#7780]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7780 [Intel XE#7793]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7793 [Intel XE#7795]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7795 [Intel XE#7809]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7809 [Intel XE#7865]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7865 [Intel XE#7905]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7905 [Intel XE#7935]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7935 [Intel XE#7992]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7992 [Intel XE#8007]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8007 [Intel XE#8150]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8150 [Intel XE#8265]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8265 [Intel XE#8303]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8303 [Intel XE#836]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/836 [Intel XE#8364]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8364 [Intel XE#8365]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8365 [Intel XE#8369]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8369 [Intel XE#8374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8374 [Intel XE#8378]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8378 [Intel XE#8397]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8397 [Intel XE#8399]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8399 [Intel XE#870]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/870 [Intel XE#8854]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8854 [Intel XE#8868]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8868 [Intel XE#8963]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8963 [Intel XE#9009]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9009 [Intel XE#9041]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9041 [Intel XE#9056]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9056 [Intel XE#9096]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9096 [Intel XE#9125]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9125 [Intel XE#9126]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9126 [Intel XE#9128]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9128 [Intel XE#9129]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9129 [Intel XE#9132]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9132 [Intel XE#9133]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/9133 [Intel XE#929]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/929 [Intel XE#944]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/944 Build changes ------------- * IGT: IGT_9081 -> IGTPW_15778 IGTPW_15778: 482b25ec38d75d10925dd0fa8458b76140051b41 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git IGT_9081: 9081 xe-5680-bb742c97086d95b2a04b1b8fbc67822b4cf848c3: bb742c97086d95b2a04b1b8fbc67822b4cf848c3 == Logs == For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15778/index.html [-- Attachment #2: Type: text/html, Size: 117154 bytes --] ^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2026-09-09 8:32 UTC | newest] Thread overview: 19+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2026-09-02 17:58 [PATCH i-g-t v5 0/8] test/kms_colorop_helper: don't request colorop updates indefinitely Melissa Wen 2026-09-02 17:58 ` [PATCH i-g-t v5 1/8] lib/igt_kms: clear colorop-changed flag after commit Melissa Wen 2026-09-02 17:58 ` [PATCH i-g-t v5 2/8] tests/kms_colorop_helper: only check if a given enum value exists Melissa Wen 2026-09-02 17:58 ` [PATCH i-g-t v5 3/8] tests/kms_properties: don't check colorop if no plane color pipeline prop Melissa Wen 2026-09-02 17:58 ` [PATCH i-g-t v5 4/8] tests/kms_properties: give non-primary planes their own fb Melissa Wen 2026-09-02 17:58 ` [PATCH i-g-t v5 5/8] lib/igt_kms: extend igt_plane_set_color_pipeline to accept Bypass Melissa Wen 2026-09-09 7:54 ` Borah, Chaitanya Kumar 2026-09-02 17:58 ` [PATCH i-g-t v5 6/8] tests/kms_properties: check colorop properties on active color pipelines Melissa Wen 2026-09-09 7:55 ` Borah, Chaitanya Kumar 2026-09-02 17:58 ` [PATCH i-g-t v5 7/8] tests/intel/kms_color_pipeline: move driver-specific test to intel's folder Melissa Wen 2026-09-08 19:17 ` Sharma, Swati2 2026-09-09 7:56 ` Borah, Chaitanya Kumar 2026-09-02 17:58 ` [PATCH i-g-t v5 8/8] lib/igt_kms: add macros to iterate color pipelines and colorops Melissa Wen 2026-09-03 10:44 ` Jani Nikula 2026-09-09 8:31 ` Jani Nikula 2026-09-09 7:56 ` Borah, Chaitanya Kumar 2026-09-02 23:19 ` ✓ Xe.CI.BAT: success for test/kms_colorop_helper: don't request colorop updates indefinitely (rev3) Patchwork 2026-09-02 23:22 ` ✗ i915.CI.BAT: failure " Patchwork 2026-09-03 15:30 ` ✗ Xe.CI.FULL: " Patchwork
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.