* [PATCH i-g-t 1/3] lib/kms: Introduce for_each_plane_format()
@ 2026-04-16 14:13 Ville Syrjala
2026-04-16 14:13 ` [PATCH i-g-t 2/3] lib/kms: Use for_each_plane_format() for the msm scaler counting Ville Syrjala
` (5 more replies)
0 siblings, 6 replies; 10+ messages in thread
From: Ville Syrjala @ 2026-04-16 14:13 UTC (permalink / raw)
To: igt-dev
From: Ville Syrjälä <ville.syrjala@linux.intel.com>
A few places want to iterate just the formats supported by a plane,
ignoring the modifier aspect entirely. Add a new iterator for this
(for_each_plane_format()) to avoid everyone just open coding it.
Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
---
lib/igt_kms.h | 12 ++++++++++++
1 file changed, 12 insertions(+)
diff --git a/lib/igt_kms.h b/lib/igt_kms.h
index fcbb6a5ade3a..a58cb5cd3430 100644
--- a/lib/igt_kms.h
+++ b/lib/igt_kms.h
@@ -816,6 +816,18 @@ igt_output_crtc_t *__igt_output_crtc_populate(igt_display_t *display,
(mode) < &(output)->config.connector->modes[(output)->config.connector->count_modes]; \
(mode)++)
+/**
+ * for_each_plane_format:
+ * @plane: a pointer to an #igt_plane_t structure
+ * @format: format iterator
+ *
+ * This for loop iterates over all formats supported by @plane.
+ */
+#define for_each_plane_format(plane, format) \
+ for (int __i = 0; __i < (plane)->drm_plane->count_formats; __i++) \
+ for_each_if (((format) = (plane)->drm_plane->formats[__i], \
+ 1))
+
#define IGT_FIXED(i,f) ((i) << 16 | (f))
/**
--
2.52.0
^ permalink raw reply related [flat|nested] 10+ messages in thread* [PATCH i-g-t 2/3] lib/kms: Use for_each_plane_format() for the msm scaler counting 2026-04-16 14:13 [PATCH i-g-t 1/3] lib/kms: Introduce for_each_plane_format() Ville Syrjala @ 2026-04-16 14:13 ` Ville Syrjala 2026-04-16 15:47 ` Jani Nikula 2026-04-16 14:13 ` [PATCH i-g-t 3/3] tests/kms: Use for_each_plane_format() Ville Syrjala ` (4 subsequent siblings) 5 siblings, 1 reply; 10+ messages in thread From: Ville Syrjala @ 2026-04-16 14:13 UTC (permalink / raw) To: igt-dev; +Cc: Rob Clark From: Ville Syrjälä <ville.syrjala@linux.intel.com> Currently the scaler counting loop iterates over the entire format_mod blob format list. That list may contain a lot of duplicate formats (one for each modifier supported with that format), so this is a bit inefficient. Iterate the plane's format list instead which has no duplicates. Cc: Rob Clark <robdclark@chromium.org> Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- lib/igt_kms.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/lib/igt_kms.c b/lib/igt_kms.c index 2d758b63c043..4cc7c06812c8 100644 --- a/lib/igt_kms.c +++ b/lib/igt_kms.c @@ -7504,10 +7504,11 @@ int igt_crtc_num_scalers(igt_crtc_t *crtc) * as a rough approximation of the # of scalars.. it may * undercount on some hw, but it will not overcount */ - for_each_plane_on_crtc(crtc, - plane) { - for (unsigned i = 0; i < plane->format_mod_count; i++) { - if (igt_format_is_yuv(plane->formats[i])) { + for_each_plane_on_crtc(crtc, plane) { + uint32_t format; + + for_each_plane_format(plane, format) { + if (igt_format_is_yuv(format)) { num_scalers++; break; } -- 2.52.0 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH i-g-t 2/3] lib/kms: Use for_each_plane_format() for the msm scaler counting 2026-04-16 14:13 ` [PATCH i-g-t 2/3] lib/kms: Use for_each_plane_format() for the msm scaler counting Ville Syrjala @ 2026-04-16 15:47 ` Jani Nikula 0 siblings, 0 replies; 10+ messages in thread From: Jani Nikula @ 2026-04-16 15:47 UTC (permalink / raw) To: Ville Syrjala, igt-dev; +Cc: Rob Clark On Thu, 16 Apr 2026, Ville Syrjala <ville.syrjala@linux.intel.com> wrote: > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Currently the scaler counting loop iterates over the entire > format_mod blob format list. That list may contain a lot of duplicate > formats (one for each modifier supported with that format), so this > is a bit inefficient. Iterate the plane's format list instead which > has no duplicates. > > Cc: Rob Clark <robdclark@chromium.org> > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> I think this is probably fine, but would be nice to get rb from Rob. Reviewed-by: Jani Nikula <jani.nikula@intel.com> > --- > lib/igt_kms.c | 9 +++++---- > 1 file changed, 5 insertions(+), 4 deletions(-) > > diff --git a/lib/igt_kms.c b/lib/igt_kms.c > index 2d758b63c043..4cc7c06812c8 100644 > --- a/lib/igt_kms.c > +++ b/lib/igt_kms.c > @@ -7504,10 +7504,11 @@ int igt_crtc_num_scalers(igt_crtc_t *crtc) > * as a rough approximation of the # of scalars.. it may > * undercount on some hw, but it will not overcount > */ > - for_each_plane_on_crtc(crtc, > - plane) { > - for (unsigned i = 0; i < plane->format_mod_count; i++) { > - if (igt_format_is_yuv(plane->formats[i])) { > + for_each_plane_on_crtc(crtc, plane) { > + uint32_t format; > + > + for_each_plane_format(plane, format) { > + if (igt_format_is_yuv(format)) { > num_scalers++; > break; > } -- Jani Nikula, Intel ^ permalink raw reply [flat|nested] 10+ messages in thread
* [PATCH i-g-t 3/3] tests/kms: Use for_each_plane_format() 2026-04-16 14:13 [PATCH i-g-t 1/3] lib/kms: Introduce for_each_plane_format() Ville Syrjala 2026-04-16 14:13 ` [PATCH i-g-t 2/3] lib/kms: Use for_each_plane_format() for the msm scaler counting Ville Syrjala @ 2026-04-16 14:13 ` Ville Syrjala 2026-04-16 15:44 ` Jani Nikula 2026-04-16 15:44 ` [PATCH i-g-t 1/3] lib/kms: Introduce for_each_plane_format() Jani Nikula ` (3 subsequent siblings) 5 siblings, 1 reply; 10+ messages in thread From: Ville Syrjala @ 2026-04-16 14:13 UTC (permalink / raw) To: igt-dev From: Ville Syrjälä <ville.syrjala@linux.intel.com> Replace the open coded copies of for_each_plane_format() with the real thing. Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> --- tests/kms_plane_scaling.c | 8 ++++---- tests/kms_rotation_crc.c | 7 +++---- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/tests/kms_plane_scaling.c b/tests/kms_plane_scaling.c index fde8b8370c9f..90dc5593579f 100644 --- a/tests/kms_plane_scaling.c +++ b/tests/kms_plane_scaling.c @@ -800,16 +800,16 @@ test_scaler_with_pixel_format_crtc(data_t *d, double sf_plane, for_each_plane_on_crtc(crtc, plane) { struct igt_vec tested_formats; + int iteration = 0; + uint32_t format; if (plane->type == DRM_PLANE_TYPE_CURSOR) continue; igt_vec_init(&tested_formats, sizeof(uint32_t)); - for (int j = 0; j < plane->drm_plane->count_formats; j++) { - uint32_t format = plane->drm_plane->formats[j]; - - if (!test_crtc_iteration(d, crtc, j)) + for_each_plane_format(plane, format) { + if (!test_crtc_iteration(d, crtc, iteration++)) continue; if (test_format(d, &tested_formats, format) && diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c index 4420053f1c6d..4a249ed21801 100644 --- a/tests/kms_rotation_crc.c +++ b/tests/kms_rotation_crc.c @@ -606,7 +606,7 @@ static void test_plane_rotation(data_t *data, int plane_type, bool test_bad_form for_each_crtc_with_valid_output(display, crtc, output) { igt_plane_t *plane; - int i, j, c; + int i, c; igt_display_reset(display); @@ -678,12 +678,11 @@ static void test_plane_rotation(data_t *data, int plane_type, bool test_bad_form if (!data->override_fmt) { struct igt_vec tested_formats; + uint32_t format; igt_vec_init(&tested_formats, sizeof(uint32_t)); - for (j = 0; j < plane->drm_plane->count_formats; j++) { - uint32_t format = plane->drm_plane->formats[j]; - + for_each_plane_format(plane, format) { if (!test_format(data, &tested_formats, format)) continue; -- 2.52.0 ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH i-g-t 3/3] tests/kms: Use for_each_plane_format() 2026-04-16 14:13 ` [PATCH i-g-t 3/3] tests/kms: Use for_each_plane_format() Ville Syrjala @ 2026-04-16 15:44 ` Jani Nikula 0 siblings, 0 replies; 10+ messages in thread From: Jani Nikula @ 2026-04-16 15:44 UTC (permalink / raw) To: Ville Syrjala, igt-dev On Thu, 16 Apr 2026, Ville Syrjala <ville.syrjala@linux.intel.com> wrote: > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > Replace the open coded copies of for_each_plane_format() > with the real thing. > > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by: Jani Nikula <jani.nikula@intel.com> > --- > tests/kms_plane_scaling.c | 8 ++++---- > tests/kms_rotation_crc.c | 7 +++---- > 2 files changed, 7 insertions(+), 8 deletions(-) > > diff --git a/tests/kms_plane_scaling.c b/tests/kms_plane_scaling.c > index fde8b8370c9f..90dc5593579f 100644 > --- a/tests/kms_plane_scaling.c > +++ b/tests/kms_plane_scaling.c > @@ -800,16 +800,16 @@ test_scaler_with_pixel_format_crtc(data_t *d, double sf_plane, > > for_each_plane_on_crtc(crtc, plane) { > struct igt_vec tested_formats; > + int iteration = 0; > + uint32_t format; > > if (plane->type == DRM_PLANE_TYPE_CURSOR) > continue; > > igt_vec_init(&tested_formats, sizeof(uint32_t)); > > - for (int j = 0; j < plane->drm_plane->count_formats; j++) { > - uint32_t format = plane->drm_plane->formats[j]; > - > - if (!test_crtc_iteration(d, crtc, j)) > + for_each_plane_format(plane, format) { > + if (!test_crtc_iteration(d, crtc, iteration++)) > continue; > > if (test_format(d, &tested_formats, format) && > diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c > index 4420053f1c6d..4a249ed21801 100644 > --- a/tests/kms_rotation_crc.c > +++ b/tests/kms_rotation_crc.c > @@ -606,7 +606,7 @@ static void test_plane_rotation(data_t *data, int plane_type, bool test_bad_form > > for_each_crtc_with_valid_output(display, crtc, output) { > igt_plane_t *plane; > - int i, j, c; > + int i, c; > > igt_display_reset(display); > > @@ -678,12 +678,11 @@ static void test_plane_rotation(data_t *data, int plane_type, bool test_bad_form > > if (!data->override_fmt) { > struct igt_vec tested_formats; > + uint32_t format; > > igt_vec_init(&tested_formats, sizeof(uint32_t)); > > - for (j = 0; j < plane->drm_plane->count_formats; j++) { > - uint32_t format = plane->drm_plane->formats[j]; > - > + for_each_plane_format(plane, format) { > if (!test_format(data, &tested_formats, format)) > continue; -- Jani Nikula, Intel ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH i-g-t 1/3] lib/kms: Introduce for_each_plane_format() 2026-04-16 14:13 [PATCH i-g-t 1/3] lib/kms: Introduce for_each_plane_format() Ville Syrjala 2026-04-16 14:13 ` [PATCH i-g-t 2/3] lib/kms: Use for_each_plane_format() for the msm scaler counting Ville Syrjala 2026-04-16 14:13 ` [PATCH i-g-t 3/3] tests/kms: Use for_each_plane_format() Ville Syrjala @ 2026-04-16 15:44 ` Jani Nikula 2026-04-16 16:07 ` Ville Syrjälä 2026-04-16 22:39 ` ✓ i915.CI.BAT: success for series starting with [i-g-t,1/3] " Patchwork ` (2 subsequent siblings) 5 siblings, 1 reply; 10+ messages in thread From: Jani Nikula @ 2026-04-16 15:44 UTC (permalink / raw) To: Ville Syrjala, igt-dev On Thu, 16 Apr 2026, Ville Syrjala <ville.syrjala@linux.intel.com> wrote: > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > A few places want to iterate just the formats supported by a plane, > ignoring the modifier aspect entirely. Add a new iterator for this > (for_each_plane_format()) to avoid everyone just open coding it. > > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > --- > lib/igt_kms.h | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > > diff --git a/lib/igt_kms.h b/lib/igt_kms.h > index fcbb6a5ade3a..a58cb5cd3430 100644 > --- a/lib/igt_kms.h > +++ b/lib/igt_kms.h > @@ -816,6 +816,18 @@ igt_output_crtc_t *__igt_output_crtc_populate(igt_display_t *display, > (mode) < &(output)->config.connector->modes[(output)->config.connector->count_modes]; \ > (mode)++) > > +/** > + * for_each_plane_format: > + * @plane: a pointer to an #igt_plane_t structure > + * @format: format iterator > + * > + * This for loop iterates over all formats supported by @plane. > + */ > +#define for_each_plane_format(plane, format) \ > + for (int __i = 0; __i < (plane)->drm_plane->count_formats; __i++) \ > + for_each_if (((format) = (plane)->drm_plane->formats[__i], \ > + 1)) Using kernel-style __UNIQUE_ID() for __i would be nice to have, but I guess we don't have that facility in IGT. Reviewed-by: Jani Nikula <jani.nikula@intel.com> > + > #define IGT_FIXED(i,f) ((i) << 16 | (f)) > > /** -- Jani Nikula, Intel ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH i-g-t 1/3] lib/kms: Introduce for_each_plane_format() 2026-04-16 15:44 ` [PATCH i-g-t 1/3] lib/kms: Introduce for_each_plane_format() Jani Nikula @ 2026-04-16 16:07 ` Ville Syrjälä 0 siblings, 0 replies; 10+ messages in thread From: Ville Syrjälä @ 2026-04-16 16:07 UTC (permalink / raw) To: Jani Nikula; +Cc: igt-dev On Thu, Apr 16, 2026 at 06:44:05PM +0300, Jani Nikula wrote: > On Thu, 16 Apr 2026, Ville Syrjala <ville.syrjala@linux.intel.com> wrote: > > From: Ville Syrjälä <ville.syrjala@linux.intel.com> > > > > A few places want to iterate just the formats supported by a plane, > > ignoring the modifier aspect entirely. Add a new iterator for this > > (for_each_plane_format()) to avoid everyone just open coding it. > > > > Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com> > > --- > > lib/igt_kms.h | 12 ++++++++++++ > > 1 file changed, 12 insertions(+) > > > > diff --git a/lib/igt_kms.h b/lib/igt_kms.h > > index fcbb6a5ade3a..a58cb5cd3430 100644 > > --- a/lib/igt_kms.h > > +++ b/lib/igt_kms.h > > @@ -816,6 +816,18 @@ igt_output_crtc_t *__igt_output_crtc_populate(igt_display_t *display, > > (mode) < &(output)->config.connector->modes[(output)->config.connector->count_modes]; \ > > (mode)++) > > > > +/** > > + * for_each_plane_format: > > + * @plane: a pointer to an #igt_plane_t structure > > + * @format: format iterator > > + * > > + * This for loop iterates over all formats supported by @plane. > > + */ > > +#define for_each_plane_format(plane, format) \ > > + for (int __i = 0; __i < (plane)->drm_plane->count_formats; __i++) \ > > + for_each_if (((format) = (plane)->drm_plane->formats[__i], \ > > + 1)) > > Using kernel-style __UNIQUE_ID() for __i would be nice to have, but I > guess we don't have that facility in IGT. We do (igt_unique()), but I didn't actually need it here so didn't bother with it. I do have some other iterators lined up where I did need nested use, and so used it there. I suppose using it here too might make sense, just in case someone does come up with some nested use case. > Reviewed-by: Jani Nikula <jani.nikula@intel.com> > > > + > > #define IGT_FIXED(i,f) ((i) << 16 | (f)) > > > > /** > > -- > Jani Nikula, Intel -- Ville Syrjälä Intel ^ permalink raw reply [flat|nested] 10+ messages in thread
* ✓ i915.CI.BAT: success for series starting with [i-g-t,1/3] lib/kms: Introduce for_each_plane_format() 2026-04-16 14:13 [PATCH i-g-t 1/3] lib/kms: Introduce for_each_plane_format() Ville Syrjala ` (2 preceding siblings ...) 2026-04-16 15:44 ` [PATCH i-g-t 1/3] lib/kms: Introduce for_each_plane_format() Jani Nikula @ 2026-04-16 22:39 ` Patchwork 2026-04-16 22:58 ` ✓ Xe.CI.BAT: " Patchwork 2026-04-17 1:22 ` ✗ Xe.CI.FULL: failure " Patchwork 5 siblings, 0 replies; 10+ messages in thread From: Patchwork @ 2026-04-16 22:39 UTC (permalink / raw) To: Ville Syrjala; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 2853 bytes --] == Series Details == Series: series starting with [i-g-t,1/3] lib/kms: Introduce for_each_plane_format() URL : https://patchwork.freedesktop.org/series/165004/ State : success == Summary == CI Bug Log - changes from IGT_8863 -> IGTPW_15000 ==================================================== Summary ------- **SUCCESS** No regressions found. External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15000/index.html Participating hosts (42 -> 40) ------------------------------ Missing (2): bat-dg2-13 fi-snb-2520m Known issues ------------ Here are the changes found in IGTPW_15000 that come from known issues: ### IGT changes ### #### Issues hit #### * igt@dmabuf@all-tests: - fi-skl-6600u: NOTRUN -> [SKIP][1] [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15000/fi-skl-6600u/igt@dmabuf@all-tests.html * igt@i915_selftest@live: - bat-dg2-8: [PASS][2] -> [DMESG-FAIL][3] ([i915#12061]) +1 other test dmesg-fail [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8863/bat-dg2-8/igt@i915_selftest@live.html [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15000/bat-dg2-8/igt@i915_selftest@live.html #### Possible fixes #### * igt@i915_selftest@live: - fi-skl-6600u: [INCOMPLETE][4] ([i915#15859]) -> [PASS][5] [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8863/fi-skl-6600u/igt@i915_selftest@live.html [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15000/fi-skl-6600u/igt@i915_selftest@live.html * igt@i915_selftest@live@gtt: - fi-skl-6600u: [INCOMPLETE][6] -> [PASS][7] [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8863/fi-skl-6600u/igt@i915_selftest@live@gtt.html [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15000/fi-skl-6600u/igt@i915_selftest@live@gtt.html * igt@i915_selftest@live@workarounds: - bat-arls-6: [DMESG-FAIL][8] ([i915#12061]) -> [PASS][9] +1 other test pass [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8863/bat-arls-6/igt@i915_selftest@live@workarounds.html [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15000/bat-arls-6/igt@i915_selftest@live@workarounds.html [i915#12061]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12061 [i915#15859]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/15859 Build changes ------------- * CI: CI-20190529 -> None * IGT: IGT_8863 -> IGTPW_15000 CI-20190529: 20190529 CI_DRM_18347: 2a1c604bebed8cbbe6aea00f761777eed424dc55 @ git://anongit.freedesktop.org/gfx-ci/linux IGTPW_15000: fb76a241e005de7f25e0e14b619eac3ec736008a @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git IGT_8863: 5b279a8b71dc1672099205a1a9e8135c7c7fadb5 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git == Logs == For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_15000/index.html [-- Attachment #2: Type: text/html, Size: 3651 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
* ✓ Xe.CI.BAT: success for series starting with [i-g-t,1/3] lib/kms: Introduce for_each_plane_format() 2026-04-16 14:13 [PATCH i-g-t 1/3] lib/kms: Introduce for_each_plane_format() Ville Syrjala ` (3 preceding siblings ...) 2026-04-16 22:39 ` ✓ i915.CI.BAT: success for series starting with [i-g-t,1/3] " Patchwork @ 2026-04-16 22:58 ` Patchwork 2026-04-17 1:22 ` ✗ Xe.CI.FULL: failure " Patchwork 5 siblings, 0 replies; 10+ messages in thread From: Patchwork @ 2026-04-16 22:58 UTC (permalink / raw) To: Ville Syrjala; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 1191 bytes --] == Series Details == Series: series starting with [i-g-t,1/3] lib/kms: Introduce for_each_plane_format() URL : https://patchwork.freedesktop.org/series/165004/ State : success == Summary == CI Bug Log - changes from XEIGT_8863_BAT -> XEIGTPW_15000_BAT ==================================================== Summary ------- **SUCCESS** No regressions found. Participating hosts (13 -> 13) ------------------------------ No changes in participating hosts Changes ------- No changes found Build changes ------------- * IGT: IGT_8863 -> IGTPW_15000 * Linux: xe-4917-ff84b38d86b994ebb03d940be1c73a63e231f454 -> xe-4918-2a1c604bebed8cbbe6aea00f761777eed424dc55 IGTPW_15000: fb76a241e005de7f25e0e14b619eac3ec736008a @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git IGT_8863: 5b279a8b71dc1672099205a1a9e8135c7c7fadb5 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git xe-4917-ff84b38d86b994ebb03d940be1c73a63e231f454: ff84b38d86b994ebb03d940be1c73a63e231f454 xe-4918-2a1c604bebed8cbbe6aea00f761777eed424dc55: 2a1c604bebed8cbbe6aea00f761777eed424dc55 == Logs == For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/index.html [-- Attachment #2: Type: text/html, Size: 1750 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
* ✗ Xe.CI.FULL: failure for series starting with [i-g-t,1/3] lib/kms: Introduce for_each_plane_format() 2026-04-16 14:13 [PATCH i-g-t 1/3] lib/kms: Introduce for_each_plane_format() Ville Syrjala ` (4 preceding siblings ...) 2026-04-16 22:58 ` ✓ Xe.CI.BAT: " Patchwork @ 2026-04-17 1:22 ` Patchwork 5 siblings, 0 replies; 10+ messages in thread From: Patchwork @ 2026-04-17 1:22 UTC (permalink / raw) To: Ville Syrjala; +Cc: igt-dev [-- Attachment #1: Type: text/plain, Size: 15455 bytes --] == Series Details == Series: series starting with [i-g-t,1/3] lib/kms: Introduce for_each_plane_format() URL : https://patchwork.freedesktop.org/series/165004/ State : failure == Summary == CI Bug Log - changes from XEIGT_8863_FULL -> XEIGTPW_15000_FULL ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with XEIGTPW_15000_FULL absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in XEIGTPW_15000_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_15000_FULL: ### IGT changes ### #### Possible regressions #### * igt@xe_pm@d3hot-mmap-system: - shard-bmg: [PASS][1] -> [FAIL][2] [1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-2/igt@xe_pm@d3hot-mmap-system.html [2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-3/igt@xe_pm@d3hot-mmap-system.html New tests --------- New tests have been introduced between XEIGT_8863_FULL and XEIGTPW_15000_FULL: ### New IGT tests (2) ### * igt@kms_hdr@static-swap@pipe-a-hdmi-a-3-xrgb16161616f: - Statuses : 1 pass(s) - Exec time: [1.08] s * igt@kms_hdr@static-swap@pipe-a-hdmi-a-3-xrgb2101010: - Statuses : 1 pass(s) - Exec time: [1.41] s Known issues ------------ Here are the changes found in XEIGTPW_15000_FULL that come from known issues: ### IGT changes ### #### Issues hit #### * igt@kms_addfb_basic@too-high: - shard-bmg: [PASS][3] -> [DMESG-WARN][4] ([Intel XE#1727] / [Intel XE#6819]) [3]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-7/igt@kms_addfb_basic@too-high.html [4]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-2/igt@kms_addfb_basic@too-high.html * igt@kms_big_fb@x-tiled-16bpp-rotate-90: - shard-bmg: NOTRUN -> [SKIP][5] ([Intel XE#2327]) [5]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-7/igt@kms_big_fb@x-tiled-16bpp-rotate-90.html * igt@kms_ccs@bad-aux-stride-yf-tiled-ccs: - shard-bmg: NOTRUN -> [SKIP][6] ([Intel XE#2887]) [6]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-9/igt@kms_ccs@bad-aux-stride-yf-tiled-ccs.html * igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs: - shard-bmg: [PASS][7] -> [INCOMPLETE][8] ([Intel XE#7084]) +1 other test incomplete [7]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-10/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html [8]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-6/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html * igt@kms_content_protection@dp-mst-lic-type-0-hdcp14: - shard-bmg: NOTRUN -> [SKIP][9] ([Intel XE#6974]) [9]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-9/igt@kms_content_protection@dp-mst-lic-type-0-hdcp14.html * igt@kms_flip@blocking-absolute-wf_vblank@b-dp2: - shard-bmg: [PASS][10] -> [FAIL][11] ([Intel XE#7705]) +1 other test fail [10]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-3/igt@kms_flip@blocking-absolute-wf_vblank@b-dp2.html [11]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-3/igt@kms_flip@blocking-absolute-wf_vblank@b-dp2.html * igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling: - shard-bmg: NOTRUN -> [SKIP][12] ([Intel XE#7178] / [Intel XE#7351]) [12]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-1/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling.html * igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-render: - shard-bmg: NOTRUN -> [SKIP][13] ([Intel XE#2311]) +2 other tests skip [13]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-6/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-render.html * igt@kms_pm_dc@dc5-psr: - shard-lnl: [PASS][14] -> [FAIL][15] ([Intel XE#7340]) [14]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-lnl-1/igt@kms_pm_dc@dc5-psr.html [15]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-lnl-2/igt@kms_pm_dc@dc5-psr.html * igt@kms_psr@fbc-psr2-primary-blt: - shard-bmg: NOTRUN -> [SKIP][16] ([Intel XE#2234] / [Intel XE#2850]) [16]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-2/igt@kms_psr@fbc-psr2-primary-blt.html * igt@kms_vrr@flip-dpms: - shard-bmg: NOTRUN -> [SKIP][17] ([Intel XE#1499]) [17]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-2/igt@kms_vrr@flip-dpms.html * igt@sriov_basic@enable-vfs-autoprobe-off@numvfs-7: - shard-bmg: [PASS][18] -> [FAIL][19] ([Intel XE#5937]) +51 other tests fail [18]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-2/igt@sriov_basic@enable-vfs-autoprobe-off@numvfs-7.html [19]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-4/igt@sriov_basic@enable-vfs-autoprobe-off@numvfs-7.html * igt@xe_exec_multi_queue@two-queues-preempt-mode-dyn-priority: - shard-bmg: NOTRUN -> [SKIP][20] ([Intel XE#6874]) [20]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-7/igt@xe_exec_multi_queue@two-queues-preempt-mode-dyn-priority.html * igt@xe_exec_system_allocator@many-64k-mmap-remap-ro-dontunmap-eocheck: - shard-bmg: [PASS][21] -> [DMESG-WARN][22] ([Intel XE#7725]) [21]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-5/igt@xe_exec_system_allocator@many-64k-mmap-remap-ro-dontunmap-eocheck.html [22]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-3/igt@xe_exec_system_allocator@many-64k-mmap-remap-ro-dontunmap-eocheck.html * igt@xe_fault_injection@inject-fault-probe-function-xe_wopcm_init: - shard-bmg: [PASS][23] -> [ABORT][24] ([Intel XE#7578]) [23]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-8/igt@xe_fault_injection@inject-fault-probe-function-xe_wopcm_init.html [24]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-9/igt@xe_fault_injection@inject-fault-probe-function-xe_wopcm_init.html * igt@xe_sriov_flr@flr-vf1-clear: - shard-bmg: [PASS][25] -> [FAIL][26] ([Intel XE#6569]) [25]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-8/igt@xe_sriov_flr@flr-vf1-clear.html [26]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-2/igt@xe_sriov_flr@flr-vf1-clear.html #### Possible fixes #### * igt@intel_hwmon@hwmon-write: - shard-bmg: [FAIL][27] ([Intel XE#7445]) -> [PASS][28] [27]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-10/igt@intel_hwmon@hwmon-write.html [28]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-4/igt@intel_hwmon@hwmon-write.html * igt@kms_flip@2x-flip-vs-expired-vblank@ac-dp2-hdmi-a3: - shard-bmg: [FAIL][29] ([Intel XE#3321]) -> [PASS][30] +1 other test pass [29]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-10/igt@kms_flip@2x-flip-vs-expired-vblank@ac-dp2-hdmi-a3.html [30]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-2/igt@kms_flip@2x-flip-vs-expired-vblank@ac-dp2-hdmi-a3.html * igt@kms_flip@flip-vs-expired-vblank-interruptible: - shard-lnl: [FAIL][31] ([Intel XE#301]) -> [PASS][32] +3 other tests pass [31]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-lnl-8/igt@kms_flip@flip-vs-expired-vblank-interruptible.html [32]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-lnl-4/igt@kms_flip@flip-vs-expired-vblank-interruptible.html * igt@kms_universal_plane@disable-primary-vs-flip: - shard-bmg: [DMESG-WARN][33] ([Intel XE#7725]) -> [PASS][34] +1 other test pass [33]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-3/igt@kms_universal_plane@disable-primary-vs-flip.html [34]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-10/igt@kms_universal_plane@disable-primary-vs-flip.html * igt@kms_vrr@flipline: - shard-lnl: [FAIL][35] ([Intel XE#4227] / [Intel XE#7397]) -> [PASS][36] +1 other test pass [35]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-lnl-2/igt@kms_vrr@flipline.html [36]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-lnl-4/igt@kms_vrr@flipline.html * igt@kms_vrr@seamless-rr-switch-virtual@pipe-a-edp-1: - shard-lnl: [FAIL][37] ([Intel XE#2142]) -> [PASS][38] +1 other test pass [37]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-lnl-5/igt@kms_vrr@seamless-rr-switch-virtual@pipe-a-edp-1.html [38]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-lnl-6/igt@kms_vrr@seamless-rr-switch-virtual@pipe-a-edp-1.html * igt@xe_evict@evict-mixed-many-threads-small: - shard-bmg: [INCOMPLETE][39] ([Intel XE#6321]) -> [PASS][40] [39]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-4/igt@xe_evict@evict-mixed-many-threads-small.html [40]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-10/igt@xe_evict@evict-mixed-many-threads-small.html * igt@xe_exec_system_allocator@pat-index-madvise-pat-idx-uc-multi-vma: - shard-lnl: [FAIL][41] ([Intel XE#5625]) -> [PASS][42] +1 other test pass [41]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-lnl-1/igt@xe_exec_system_allocator@pat-index-madvise-pat-idx-uc-multi-vma.html [42]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-lnl-7/igt@xe_exec_system_allocator@pat-index-madvise-pat-idx-uc-multi-vma.html * igt@xe_sriov_flr@flr-each-isolation: - shard-bmg: [FAIL][43] ([Intel XE#6569]) -> [PASS][44] [43]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-7/igt@xe_sriov_flr@flr-each-isolation.html [44]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-1/igt@xe_sriov_flr@flr-each-isolation.html #### Warnings #### * igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-blt: - shard-bmg: [SKIP][45] ([Intel XE#2312]) -> [SKIP][46] ([Intel XE#2311]) [45]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-3/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-blt.html [46]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-5/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-blt.html * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-onoff: - shard-bmg: [SKIP][47] ([Intel XE#2313]) -> [SKIP][48] ([Intel XE#2312]) [47]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-7/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-onoff.html [48]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-3/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-onoff.html * igt@kms_tiled_display@basic-test-pattern: - shard-bmg: [FAIL][49] ([Intel XE#1729] / [Intel XE#7424]) -> [SKIP][50] ([Intel XE#2426] / [Intel XE#5848]) [49]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-4/igt@kms_tiled_display@basic-test-pattern.html [50]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-3/igt@kms_tiled_display@basic-test-pattern.html * igt@kms_tiled_display@basic-test-pattern-with-chamelium: - shard-bmg: [SKIP][51] ([Intel XE#2509] / [Intel XE#7437]) -> [SKIP][52] ([Intel XE#2426] / [Intel XE#5848]) [51]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8863/shard-bmg-2/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html [52]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/shard-bmg-7/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html [Intel XE#1499]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1499 [Intel XE#1727]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1727 [Intel XE#1729]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1729 [Intel XE#2142]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2142 [Intel XE#2234]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2234 [Intel XE#2311]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2311 [Intel XE#2312]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2312 [Intel XE#2313]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2313 [Intel XE#2327]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2327 [Intel XE#2426]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2426 [Intel XE#2509]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2509 [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#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301 [Intel XE#3321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3321 [Intel XE#4227]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4227 [Intel XE#5625]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5625 [Intel XE#5848]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5848 [Intel XE#5937]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5937 [Intel XE#6321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6321 [Intel XE#6569]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6569 [Intel XE#6819]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6819 [Intel XE#6874]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6874 [Intel XE#6974]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6974 [Intel XE#7084]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7084 [Intel XE#7178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7178 [Intel XE#7340]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7340 [Intel XE#7351]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7351 [Intel XE#7397]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7397 [Intel XE#7424]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7424 [Intel XE#7437]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7437 [Intel XE#7445]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7445 [Intel XE#7578]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7578 [Intel XE#7705]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7705 [Intel XE#7725]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7725 Build changes ------------- * IGT: IGT_8863 -> IGTPW_15000 * Linux: xe-4917-ff84b38d86b994ebb03d940be1c73a63e231f454 -> xe-4918-2a1c604bebed8cbbe6aea00f761777eed424dc55 IGTPW_15000: fb76a241e005de7f25e0e14b619eac3ec736008a @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git IGT_8863: 5b279a8b71dc1672099205a1a9e8135c7c7fadb5 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git xe-4917-ff84b38d86b994ebb03d940be1c73a63e231f454: ff84b38d86b994ebb03d940be1c73a63e231f454 xe-4918-2a1c604bebed8cbbe6aea00f761777eed424dc55: 2a1c604bebed8cbbe6aea00f761777eed424dc55 == Logs == For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_15000/index.html [-- Attachment #2: Type: text/html, Size: 17141 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2026-04-17 1:22 UTC | newest] Thread overview: 10+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2026-04-16 14:13 [PATCH i-g-t 1/3] lib/kms: Introduce for_each_plane_format() Ville Syrjala 2026-04-16 14:13 ` [PATCH i-g-t 2/3] lib/kms: Use for_each_plane_format() for the msm scaler counting Ville Syrjala 2026-04-16 15:47 ` Jani Nikula 2026-04-16 14:13 ` [PATCH i-g-t 3/3] tests/kms: Use for_each_plane_format() Ville Syrjala 2026-04-16 15:44 ` Jani Nikula 2026-04-16 15:44 ` [PATCH i-g-t 1/3] lib/kms: Introduce for_each_plane_format() Jani Nikula 2026-04-16 16:07 ` Ville Syrjälä 2026-04-16 22:39 ` ✓ i915.CI.BAT: success for series starting with [i-g-t,1/3] " Patchwork 2026-04-16 22:58 ` ✓ Xe.CI.BAT: " Patchwork 2026-04-17 1:22 ` ✗ Xe.CI.FULL: failure " Patchwork
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox