Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH v2 0/2] Add atomic DRM cursor hotspot test
@ 2023-07-28 14:37 Albert Esteve
  2023-07-28 14:37 ` [igt-dev] [PATCH v2 1/2] igt_kms: add hotspot plane property Albert Esteve
                   ` (4 more replies)
  0 siblings, 5 replies; 16+ messages in thread
From: Albert Esteve @ 2023-07-28 14:37 UTC (permalink / raw)
  To: igt-dev; +Cc: belmouss, javierm

Add test to verify the kernel patch at [1].

The test modifies the hotspot x and y properties and
checks that they get properly updated after every
display commit.

Note: the patch adds a DRM capability definition taken
directly from the kernel patch. Once the definition
lands on IGT after the drm.h is updated, the local
definition shall be removed.

[1] - https://lists.freedesktop.org/archives/dri-devel/2023-July/414509.html

Albert Esteve (2):
  igt_kms: add hotspot plane property
  kms_cursor_legacy: modeset-atomic-cursor-hotspot

 lib/igt_kms.c             | 10 ++++++
 lib/igt_kms.h             | 11 +++++-
 tests/kms_cursor_legacy.c | 76 +++++++++++++++++++++++++++++++++++++++
 3 files changed, 96 insertions(+), 1 deletion(-)

-- 
2.40.0

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [igt-dev] [PATCH v2 1/2] igt_kms: add hotspot plane property
  2023-07-28 14:37 [igt-dev] [PATCH v2 0/2] Add atomic DRM cursor hotspot test Albert Esteve
@ 2023-07-28 14:37 ` Albert Esteve
  2023-07-31  5:16   ` Zbigniew Kempczyński
  2023-07-31  6:28   ` Modem, Bhanuprakash
  2023-07-28 14:37 ` [igt-dev] [PATCH v2 2/2] kms_cursor_legacy: modeset-atomic-cursor-hotspot Albert Esteve
                   ` (3 subsequent siblings)
  4 siblings, 2 replies; 16+ messages in thread
From: Albert Esteve @ 2023-07-28 14:37 UTC (permalink / raw)
  To: igt-dev; +Cc: belmouss, javierm

Introduce LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT
capability definition until patched drm.h uapi header
is upstreamed and lands on IGT.

CURSOR_PLANE_HOTSPOT capability is enabled
conditionally, and then tracked in the igt_display
struct.

Add HOTSPOT_X and HOTSPOT_Y properties
to the atomic_plane_properties struct.

Signed-off-by: Albert Esteve <aesteve@redhat.com>
---
 lib/igt_kms.c | 10 ++++++++++
 lib/igt_kms.h | 11 ++++++++++-
 2 files changed, 20 insertions(+), 1 deletion(-)

diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index f2b0eed57..73119d0e5 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -601,6 +601,8 @@ const char * const igt_plane_prop_names[IGT_NUM_PLANE_PROPS] = {
 	[IGT_PLANE_CRTC_Y] = "CRTC_Y",
 	[IGT_PLANE_CRTC_W] = "CRTC_W",
 	[IGT_PLANE_CRTC_H] = "CRTC_H",
+	[IGT_PLANE_HOTSPOT_X] = "HOTSPOT_X",
+	[IGT_PLANE_HOTSPOT_Y] = "HOTSPOT_Y",
 	[IGT_PLANE_FB_ID] = "FB_ID",
 	[IGT_PLANE_CRTC_ID] = "CRTC_ID",
 	[IGT_PLANE_IN_FENCE_FD] = "IN_FENCE_FD",
@@ -2296,6 +2298,11 @@ static void igt_plane_reset(igt_plane_t *plane)
 	if (igt_plane_has_prop(plane, IGT_PLANE_SCALING_FILTER))
 		igt_plane_set_prop_enum(plane, IGT_PLANE_SCALING_FILTER, "Default");
 
+	if (igt_plane_has_prop(plane, IGT_PLANE_HOTSPOT_X))
+		igt_plane_set_prop_value(plane, IGT_PLANE_HOTSPOT_X, 0);
+	if (igt_plane_has_prop(plane, IGT_PLANE_HOTSPOT_Y))
+		igt_plane_set_prop_value(plane, IGT_PLANE_HOTSPOT_Y, 0);
+
 	igt_plane_clear_prop_changed(plane, IGT_PLANE_IN_FENCE_FD);
 	plane->values[IGT_PLANE_IN_FENCE_FD] = ~0ULL;
 	plane->gem_handle = 0;
@@ -2679,6 +2686,9 @@ void igt_display_require(igt_display_t *display, int drm_fd)
 	drmSetClientCap(drm_fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
 	if (drmSetClientCap(drm_fd, DRM_CLIENT_CAP_ATOMIC, 1) == 0)
 		display->is_atomic = 1;
+	
+	if (drmSetClientCap(drm_fd, LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT, 1) == 0)
+		display->set_hotspots = 1;
 
 	plane_resources = drmModeGetPlaneResources(display->drm_fd);
 	igt_assert(plane_resources);
diff --git a/lib/igt_kms.h b/lib/igt_kms.h
index 1b6988c17..cf0a6d82b 100644
--- a/lib/igt_kms.h
+++ b/lib/igt_kms.h
@@ -41,6 +41,12 @@
 
 /* Low-level helpers with kmstest_ prefix */
 
+/**
+ * Clients which do set cursor hotspot and treat the cursor plane
+ * like a mouse cursor should set this property.
+ */
+#define LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT	6
+
 /**
  * pipe:
  * @PIPE_NONE: Invalid pipe, used for disconnecting a output from a pipe.
@@ -318,7 +324,9 @@ enum igt_atomic_plane_properties {
        IGT_PLANE_ZPOS,
        IGT_PLANE_FB_DAMAGE_CLIPS,
        IGT_PLANE_SCALING_FILTER,
-       IGT_NUM_PLANE_PROPS
+       IGT_PLANE_HOTSPOT_X,
+       IGT_PLANE_HOTSPOT_Y,
+       IGT_NUM_PLANE_PROPS      
 };
 
 /**
@@ -448,6 +456,7 @@ struct igt_display {
 	igt_pipe_t *pipes;
 	bool has_cursor_plane;
 	bool is_atomic;
+	bool set_hotspots;
 	bool first_commit;
 
 	uint64_t *modifiers;
-- 
2.40.0

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [igt-dev] [PATCH v2 2/2] kms_cursor_legacy: modeset-atomic-cursor-hotspot
  2023-07-28 14:37 [igt-dev] [PATCH v2 0/2] Add atomic DRM cursor hotspot test Albert Esteve
  2023-07-28 14:37 ` [igt-dev] [PATCH v2 1/2] igt_kms: add hotspot plane property Albert Esteve
@ 2023-07-28 14:37 ` Albert Esteve
  2023-07-31  5:18   ` Zbigniew Kempczyński
  2023-07-31  7:28   ` Modem, Bhanuprakash
  2023-07-28 15:21 ` [igt-dev] ○ CI.xeBAT: info for Add atomic DRM cursor hotspot test (rev2) Patchwork
                   ` (2 subsequent siblings)
  4 siblings, 2 replies; 16+ messages in thread
From: Albert Esteve @ 2023-07-28 14:37 UTC (permalink / raw)
  To: igt-dev; +Cc: belmouss, javierm

Add a test for modesetting an atomic cursor plane
hotspot property. Test added to verify the kernel
patch at [1]. The test first checks if the
plane is atomic and has the hotspot property.
and if it does, it sets different random hot_x
and hot_y values and checks that it is updated
correctly after an atomic commit.

[1] https://lists.freedesktop.org/archives/dri-devel/2023-July/414509.html

Signed-off-by: Albert Esteve <aesteve@redhat.com>
---
 tests/kms_cursor_legacy.c | 76 +++++++++++++++++++++++++++++++++++++++
 1 file changed, 76 insertions(+)

diff --git a/tests/kms_cursor_legacy.c b/tests/kms_cursor_legacy.c
index 1ebac9d31..ba68dc481 100644
--- a/tests/kms_cursor_legacy.c
+++ b/tests/kms_cursor_legacy.c
@@ -1607,6 +1607,71 @@ static void flip_vs_cursor_busy_crc(igt_display_t *display, bool atomic)
 	put_ahnd(ahnd);
 }
 
+static void modeset_atomic_cursor_hotspot(igt_display_t *display)
+{
+	struct igt_fb cursor_fb;
+	igt_output_t *output;
+	enum pipe pipe;
+	igt_plane_t *cursor = NULL;
+	bool has_hotspot_prop;
+	uint64_t cursor_width, cursor_height;
+	uint32_t hot_x, hot_y, prev_hot_x, prev_hot_y;
+
+	igt_require(display->is_atomic);
+	igt_require(display->set_hotspots);
+	pipe = find_connected_pipe(display, false, &output);
+	igt_require(output);
+
+	igt_info("Using pipe %s & %s\n",
+		 kmstest_pipe_name(pipe), igt_output_name(output));
+
+	cursor_width = cursor_height = 64;
+	igt_create_color_fb(display->drm_fd, cursor_width, cursor_height, DRM_FORMAT_ARGB8888,
+			    DRM_FORMAT_MOD_LINEAR, 1., 1., 1., &cursor_fb);
+
+	igt_display_commit2(display, COMMIT_ATOMIC);
+
+	cursor = set_cursor_on_pipe(display, pipe, &cursor_fb);
+
+	has_hotspot_prop = cursor->props[IGT_PLANE_HOTSPOT_X] ||
+		cursor->props[IGT_PLANE_HOTSPOT_Y];
+	igt_require_f(has_hotspot_prop, "Cursor plane lacks the hotspot property");
+
+	/*
+	 * Change the hotspot coordinates randomly and check that the property
+	 * is updated accordingly.
+	 */
+	srand(time(NULL));
+	for (int i = 0; i < 20; i++) {
+		hot_x = rand() % cursor_width;
+		hot_y = rand() % cursor_height;
+		prev_hot_x = igt_plane_get_prop(cursor, IGT_PLANE_HOTSPOT_X);
+		prev_hot_y = igt_plane_get_prop(cursor, IGT_PLANE_HOTSPOT_Y);
+		igt_debug("Update cursor hotspot: (%d, %d)\n", hot_x, hot_y);
+		
+		/* Set cursor hotspot property values */
+		igt_output_set_prop_value(cursor, IGT_PLANE_HOTSPOT_X, hot_x);
+		igt_output_set_prop_value(cursor, IGT_PLANE_HOTSPOT_Y, hot_y);
+
+		/* Properties are not updated until the commit */
+		igt_assert_eq(igt_plane_get_prop(cursor, IGT_PLANE_HOTSPOT_X), prev_hot_x);
+		igt_assert_eq(igt_plane_get_prop(cursor, IGT_PLANE_HOTSPOT_Y), prev_hot_y);
+
+		igt_display_commit2(display, COMMIT_ATOMIC);
+
+		/* After the commit, the cursor hotspot property values are updated */
+		igt_assert_eq(igt_plane_get_prop(cursor, IGT_PLANE_HOTSPOT_X), hot_x);
+		igt_assert_eq(igt_plane_get_prop(cursor, IGT_PLANE_HOTSPOT_Y), hot_y);
+	}
+
+	/* Clean-up */
+	igt_plane_set_fb(cursor, NULL);
+	igt_output_set_pipe(output, PIPE_NONE);
+	igt_display_commit2(display, COMMIT_ATOMIC);
+
+	igt_remove_fb(display->drm_fd, &cursor_fb);
+}
+
 igt_main
 {
 	const int ncpus = sysconf(_SC_NPROCESSORS_ONLN);
@@ -1681,6 +1746,17 @@ igt_main
 			nonblocking_modeset_vs_cursor(&display, 16);
 	}
 
+	igt_describe("Test changes the cursor hotspot and checks that the "
+		      "property is updated accordignly");
+	igt_subtest_group {
+		igt_fixture {
+			igt_display_require_output(&display);
+		}
+
+		igt_subtest("modeset-atomic-cursor-hotspot")
+			modeset_atomic_cursor_hotspot(&display);
+	}
+
 	igt_describe("This test executes flips on both CRTCs "
 		     "while running cursor updates in parallel");
 	igt_subtest_group {
-- 
2.40.0

^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [igt-dev] ○ CI.xeBAT: info for Add atomic DRM cursor hotspot test (rev2)
  2023-07-28 14:37 [igt-dev] [PATCH v2 0/2] Add atomic DRM cursor hotspot test Albert Esteve
  2023-07-28 14:37 ` [igt-dev] [PATCH v2 1/2] igt_kms: add hotspot plane property Albert Esteve
  2023-07-28 14:37 ` [igt-dev] [PATCH v2 2/2] kms_cursor_legacy: modeset-atomic-cursor-hotspot Albert Esteve
@ 2023-07-28 15:21 ` Patchwork
  2023-07-28 15:30 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
  2023-07-28 17:34 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  4 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2023-07-28 15:21 UTC (permalink / raw)
  To: Albert Esteve; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 339 bytes --]

== Series Details ==

Series: Add atomic DRM cursor hotspot test (rev2)
URL   : https://patchwork.freedesktop.org/series/121225/
State : info

== Summary ==

Participating hosts:
bat-pvc-2
bat-atsm-2
bat-dg2-oem2
bat-adlp-7
Missing hosts results[0]:
Results: [IGTPW_9481](https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_9481/index.html)



[-- Attachment #2: Type: text/html, Size: 855 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [igt-dev] ✓ Fi.CI.BAT: success for Add atomic DRM cursor hotspot test (rev2)
  2023-07-28 14:37 [igt-dev] [PATCH v2 0/2] Add atomic DRM cursor hotspot test Albert Esteve
                   ` (2 preceding siblings ...)
  2023-07-28 15:21 ` [igt-dev] ○ CI.xeBAT: info for Add atomic DRM cursor hotspot test (rev2) Patchwork
@ 2023-07-28 15:30 ` Patchwork
  2023-07-28 17:34 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  4 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2023-07-28 15:30 UTC (permalink / raw)
  To: Albert Esteve; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 8843 bytes --]

== Series Details ==

Series: Add atomic DRM cursor hotspot test (rev2)
URL   : https://patchwork.freedesktop.org/series/121225/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13436 -> IGTPW_9481
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/index.html

Participating hosts (42 -> 42)
------------------------------

  Additional (1): fi-kbl-soraka 
  Missing    (1): fi-snb-2520m 

Known issues
------------

  Here are the changes found in IGTPW_9481 that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@gem_huc_copy@huc-copy:
    - fi-kbl-soraka:      NOTRUN -> [SKIP][1] ([fdo#109271] / [i915#2190])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/fi-kbl-soraka/igt@gem_huc_copy@huc-copy.html

  * igt@gem_lmem_swapping@basic:
    - fi-kbl-soraka:      NOTRUN -> [SKIP][2] ([fdo#109271] / [i915#4613]) +3 similar issues
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/fi-kbl-soraka/igt@gem_lmem_swapping@basic.html

  * igt@gem_lmem_swapping@parallel-random-engines:
    - bat-adlp-9:         NOTRUN -> [SKIP][3] ([i915#4613]) +3 similar issues
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/bat-adlp-9/igt@gem_lmem_swapping@parallel-random-engines.html

  * igt@i915_pm_rpm@module-reload:
    - fi-tgl-1115g4:      [PASS][4] -> [FAIL][5] ([i915#7940])
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/fi-tgl-1115g4/igt@i915_pm_rpm@module-reload.html
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/fi-tgl-1115g4/igt@i915_pm_rpm@module-reload.html

  * igt@i915_pm_rps@basic-api:
    - bat-adlp-9:         NOTRUN -> [SKIP][6] ([i915#6621])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/bat-adlp-9/igt@i915_pm_rps@basic-api.html

  * igt@i915_selftest@live@gt_mocs:
    - bat-mtlp-6:         [PASS][7] -> [DMESG-FAIL][8] ([i915#7059])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/bat-mtlp-6/igt@i915_selftest@live@gt_mocs.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/bat-mtlp-6/igt@i915_selftest@live@gt_mocs.html

  * igt@i915_selftest@live@gt_pm:
    - fi-kbl-soraka:      NOTRUN -> [DMESG-FAIL][9] ([i915#1886] / [i915#7913])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/fi-kbl-soraka/igt@i915_selftest@live@gt_pm.html

  * igt@i915_selftest@live@slpc:
    - bat-mtlp-6:         [PASS][10] -> [DMESG-WARN][11] ([i915#6367])
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/bat-mtlp-6/igt@i915_selftest@live@slpc.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/bat-mtlp-6/igt@i915_selftest@live@slpc.html
    - bat-rpls-1:         [PASS][12] -> [DMESG-WARN][13] ([i915#6367])
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/bat-rpls-1/igt@i915_selftest@live@slpc.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/bat-rpls-1/igt@i915_selftest@live@slpc.html

  * igt@kms_chamelium_hpd@common-hpd-after-suspend:
    - bat-adlp-9:         NOTRUN -> [SKIP][14] ([i915#7828])
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/bat-adlp-9/igt@kms_chamelium_hpd@common-hpd-after-suspend.html
    - fi-apl-guc:         NOTRUN -> [SKIP][15] ([fdo#109271])
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/fi-apl-guc/igt@kms_chamelium_hpd@common-hpd-after-suspend.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
    - fi-kbl-soraka:      NOTRUN -> [SKIP][16] ([fdo#109271]) +15 similar issues
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/fi-kbl-soraka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html

  * igt@kms_psr@primary_mmap_gtt:
    - bat-rplp-1:         NOTRUN -> [SKIP][17] ([i915#1072])
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/bat-rplp-1/igt@kms_psr@primary_mmap_gtt.html

  * igt@kms_setmode@basic-clone-single-crtc:
    - bat-rplp-1:         NOTRUN -> [ABORT][18] ([i915#8260] / [i915#8668])
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/bat-rplp-1/igt@kms_setmode@basic-clone-single-crtc.html

  * igt@prime_vgem@basic-fence-read:
    - bat-adlp-9:         NOTRUN -> [SKIP][19] ([fdo#109295] / [i915#3291] / [i915#3708]) +2 similar issues
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/bat-adlp-9/igt@prime_vgem@basic-fence-read.html

  
#### Possible fixes ####

  * igt@i915_pm_rpm@basic-pci-d3-state:
    - bat-adlp-9:         [FAIL][20] ([i915#7940]) -> [PASS][21]
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/bat-adlp-9/igt@i915_pm_rpm@basic-pci-d3-state.html
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/bat-adlp-9/igt@i915_pm_rpm@basic-pci-d3-state.html

  * igt@i915_pm_rpm@basic-rte:
    - bat-adlp-9:         [ABORT][22] ([i915#7977] / [i915#8668]) -> [PASS][23]
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/bat-adlp-9/igt@i915_pm_rpm@basic-rte.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/bat-adlp-9/igt@i915_pm_rpm@basic-rte.html

  * igt@i915_pm_rpm@module-reload:
    - fi-apl-guc:         [DMESG-FAIL][24] ([i915#8585]) -> [PASS][25]
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/fi-apl-guc/igt@i915_pm_rpm@module-reload.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/fi-apl-guc/igt@i915_pm_rpm@module-reload.html
    - fi-skl-guc:         [FAIL][26] ([i915#7940]) -> [PASS][27]
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/fi-skl-guc/igt@i915_pm_rpm@module-reload.html
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/fi-skl-guc/igt@i915_pm_rpm@module-reload.html

  * igt@i915_selftest@live@requests:
    - bat-mtlp-8:         [DMESG-FAIL][28] ([i915#8497]) -> [PASS][29]
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/bat-mtlp-8/igt@i915_selftest@live@requests.html
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/bat-mtlp-8/igt@i915_selftest@live@requests.html

  
#### Warnings ####

  * igt@kms_psr@sprite_plane_onoff:
    - bat-rplp-1:         [ABORT][30] ([i915#8712]) -> [SKIP][31] ([i915#1072])
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/bat-rplp-1/igt@kms_psr@sprite_plane_onoff.html
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/bat-rplp-1/igt@kms_psr@sprite_plane_onoff.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [Intel XE#486]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/486
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1886]: https://gitlab.freedesktop.org/drm/intel/issues/1886
  [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
  [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
  [i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
  [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#6367]: https://gitlab.freedesktop.org/drm/intel/issues/6367
  [i915#6621]: https://gitlab.freedesktop.org/drm/intel/issues/6621
  [i915#7059]: https://gitlab.freedesktop.org/drm/intel/issues/7059
  [i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
  [i915#7913]: https://gitlab.freedesktop.org/drm/intel/issues/7913
  [i915#7940]: https://gitlab.freedesktop.org/drm/intel/issues/7940
  [i915#7977]: https://gitlab.freedesktop.org/drm/intel/issues/7977
  [i915#8260]: https://gitlab.freedesktop.org/drm/intel/issues/8260
  [i915#8497]: https://gitlab.freedesktop.org/drm/intel/issues/8497
  [i915#8585]: https://gitlab.freedesktop.org/drm/intel/issues/8585
  [i915#8668]: https://gitlab.freedesktop.org/drm/intel/issues/8668
  [i915#8712]: https://gitlab.freedesktop.org/drm/intel/issues/8712
  [i915#8879]: https://gitlab.freedesktop.org/drm/intel/issues/8879


Build changes
-------------

  * CI: CI-20190529 -> None
  * IGT: IGT_7408 -> IGTPW_9481

  CI-20190529: 20190529
  CI_DRM_13436: 0727bfdb8be472a249839720d845b1c45b8ed611 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_9481: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/index.html
  IGT_7408: 93482edd02839f9eb6ceffca9418d03f570f34f3 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git


Testlist changes
----------------

+igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot
-igt@kms_dsc@dsc-fractional-bpp
-igt@kms_dsc@dsc-fractional-bpp-with-bpc
-igt@kms_dsc@dsc-with-output-formats-with-bpc

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/index.html

[-- Attachment #2: Type: text/html, Size: 10351 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* [igt-dev] ✗ Fi.CI.IGT: failure for Add atomic DRM cursor hotspot test (rev2)
  2023-07-28 14:37 [igt-dev] [PATCH v2 0/2] Add atomic DRM cursor hotspot test Albert Esteve
                   ` (3 preceding siblings ...)
  2023-07-28 15:30 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
@ 2023-07-28 17:34 ` Patchwork
  4 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2023-07-28 17:34 UTC (permalink / raw)
  To: Albert Esteve; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 85777 bytes --]

== Series Details ==

Series: Add atomic DRM cursor hotspot test (rev2)
URL   : https://patchwork.freedesktop.org/series/121225/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_13436_full -> IGTPW_9481_full
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with IGTPW_9481_full absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_9481_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/index.html

Participating hosts (10 -> 9)
------------------------------

  Missing    (1): pig-kbl-iris 

Possible new issues
-------------------

  Here are the unknown changes that may have been introduced in IGTPW_9481_full:

### IGT changes ###

#### Possible regressions ####

  * igt@kms_cursor_crc@cursor-suspend@pipe-a-hdmi-a-3:
    - shard-dg1:          NOTRUN -> [INCOMPLETE][1]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-13/igt@kms_cursor_crc@cursor-suspend@pipe-a-hdmi-a-3.html

  * {igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot} (NEW):
    - shard-rkl:          NOTRUN -> [SKIP][2]
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-6/igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot.html
    - shard-dg1:          NOTRUN -> [SKIP][3]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-12/igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot.html
    - shard-tglu:         NOTRUN -> [SKIP][4]
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-9/igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot.html
    - shard-mtlp:         NOTRUN -> [SKIP][5]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-1/igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot.html

  * igt@kms_vblank@pipe-d-ts-continuation-suspend:
    - shard-mtlp:         [PASS][6] -> [ABORT][7]
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-mtlp-6/igt@kms_vblank@pipe-d-ts-continuation-suspend.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-3/igt@kms_vblank@pipe-d-ts-continuation-suspend.html

  
New tests
---------

  New tests have been introduced between CI_DRM_13436_full and IGTPW_9481_full:

### New IGT tests (1) ###

  * igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot:
    - Statuses : 7 skip(s)
    - Exec time: [0.0] s

  

Known issues
------------

  Here are the changes found in IGTPW_9481_full that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@api_intel_bb@render-ccs:
    - shard-dg2:          NOTRUN -> [FAIL][8] ([i915#6122])
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-5/igt@api_intel_bb@render-ccs.html

  * igt@device_reset@unbind-cold-reset-rebind:
    - shard-mtlp:         NOTRUN -> [SKIP][9] ([i915#7701])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-7/igt@device_reset@unbind-cold-reset-rebind.html

  * igt@drm_fdinfo@busy-check-all@vecs1:
    - shard-dg2:          NOTRUN -> [SKIP][10] ([i915#8414]) +9 similar issues
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-8/igt@drm_fdinfo@busy-check-all@vecs1.html

  * igt@drm_fdinfo@busy-hang@bcs0:
    - shard-dg1:          NOTRUN -> [SKIP][11] ([i915#8414]) +4 similar issues
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-18/igt@drm_fdinfo@busy-hang@bcs0.html

  * igt@drm_fdinfo@busy-hang@rcs0:
    - shard-mtlp:         NOTRUN -> [SKIP][12] ([i915#8414]) +12 similar issues
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-8/igt@drm_fdinfo@busy-hang@rcs0.html

  * igt@drm_fdinfo@virtual-idle:
    - shard-rkl:          NOTRUN -> [FAIL][13] ([i915#7742])
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-7/igt@drm_fdinfo@virtual-idle.html

  * igt@feature_discovery@chamelium:
    - shard-mtlp:         NOTRUN -> [SKIP][14] ([i915#4854])
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-4/igt@feature_discovery@chamelium.html

  * igt@feature_discovery@psr1:
    - shard-dg2:          NOTRUN -> [SKIP][15] ([i915#658]) +2 similar issues
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-11/igt@feature_discovery@psr1.html
    - shard-rkl:          NOTRUN -> [SKIP][16] ([i915#658]) +1 similar issue
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-1/igt@feature_discovery@psr1.html

  * igt@feature_discovery@psr2:
    - shard-tglu:         NOTRUN -> [SKIP][17] ([i915#658])
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-10/igt@feature_discovery@psr2.html

  * igt@gem_barrier_race@remote-request@rcs0:
    - shard-dg2:          [PASS][18] -> [ABORT][19] ([i915#7461] / [i915#8211] / [i915#8234])
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-dg2-5/igt@gem_barrier_race@remote-request@rcs0.html
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-10/igt@gem_barrier_race@remote-request@rcs0.html

  * igt@gem_basic@multigpu-create-close:
    - shard-mtlp:         NOTRUN -> [SKIP][20] ([i915#7697])
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-7/igt@gem_basic@multigpu-create-close.html

  * igt@gem_create@create-ext-set-pat:
    - shard-tglu:         NOTRUN -> [SKIP][21] ([i915#8562])
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-10/igt@gem_create@create-ext-set-pat.html

  * igt@gem_ctx_exec@basic-nohangcheck:
    - shard-mtlp:         [PASS][22] -> [FAIL][23] ([i915#6121] / [i915#7916])
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-mtlp-2/igt@gem_ctx_exec@basic-nohangcheck.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-1/igt@gem_ctx_exec@basic-nohangcheck.html

  * igt@gem_ctx_persistence@engines-hang@vcs0:
    - shard-mtlp:         [PASS][24] -> [FAIL][25] ([i915#2410])
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-mtlp-2/igt@gem_ctx_persistence@engines-hang@vcs0.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-5/igt@gem_ctx_persistence@engines-hang@vcs0.html

  * igt@gem_ctx_persistence@heartbeat-stop:
    - shard-dg2:          NOTRUN -> [SKIP][26] ([i915#8555])
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-10/igt@gem_ctx_persistence@heartbeat-stop.html

  * igt@gem_ctx_persistence@legacy-engines-hostile@vebox:
    - shard-mtlp:         NOTRUN -> [FAIL][27] ([i915#2410]) +2 similar issues
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-7/igt@gem_ctx_persistence@legacy-engines-hostile@vebox.html

  * igt@gem_ctx_persistence@legacy-engines-mixed:
    - shard-snb:          NOTRUN -> [SKIP][28] ([fdo#109271] / [i915#1099]) +1 similar issue
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-snb2/igt@gem_ctx_persistence@legacy-engines-mixed.html

  * igt@gem_ctx_sseu@engines:
    - shard-tglu:         NOTRUN -> [SKIP][29] ([i915#280])
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-2/igt@gem_ctx_sseu@engines.html

  * igt@gem_eio@hibernate:
    - shard-dg2:          NOTRUN -> [ABORT][30] ([i915#7975] / [i915#8213])
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-2/igt@gem_eio@hibernate.html

  * igt@gem_eio@kms:
    - shard-dg2:          [PASS][31] -> [INCOMPLETE][32] ([i915#1982] / [i915#7892])
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-dg2-7/igt@gem_eio@kms.html
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-6/igt@gem_eio@kms.html

  * igt@gem_exec_await@wide-contexts:
    - shard-dg2:          [PASS][33] -> [FAIL][34] ([i915#5892])
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-dg2-1/igt@gem_exec_await@wide-contexts.html
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-6/igt@gem_exec_await@wide-contexts.html

  * igt@gem_exec_balancer@sliced:
    - shard-dg2:          NOTRUN -> [SKIP][35] ([i915#4812])
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-5/igt@gem_exec_balancer@sliced.html

  * igt@gem_exec_endless@dispatch@bcs0:
    - shard-dg2:          [PASS][36] -> [TIMEOUT][37] ([i915#3778] / [i915#7016] / [i915#7921])
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-dg2-1/igt@gem_exec_endless@dispatch@bcs0.html
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-11/igt@gem_exec_endless@dispatch@bcs0.html

  * igt@gem_exec_fair@basic-deadline:
    - shard-rkl:          [PASS][38] -> [FAIL][39] ([i915#2846])
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-rkl-2/igt@gem_exec_fair@basic-deadline.html
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-6/igt@gem_exec_fair@basic-deadline.html
    - shard-glk:          [PASS][40] -> [FAIL][41] ([i915#2846])
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-glk2/igt@gem_exec_fair@basic-deadline.html
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-glk6/igt@gem_exec_fair@basic-deadline.html

  * igt@gem_exec_fair@basic-none-vip@rcs0:
    - shard-tglu:         NOTRUN -> [FAIL][42] ([i915#2842])
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-6/igt@gem_exec_fair@basic-none-vip@rcs0.html

  * igt@gem_exec_fair@basic-pace@bcs0:
    - shard-rkl:          [PASS][43] -> [FAIL][44] ([i915#2842]) +1 similar issue
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-rkl-2/igt@gem_exec_fair@basic-pace@bcs0.html
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-2/igt@gem_exec_fair@basic-pace@bcs0.html

  * igt@gem_exec_fair@basic-sync:
    - shard-dg2:          NOTRUN -> [SKIP][45] ([i915#3539])
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-3/igt@gem_exec_fair@basic-sync.html

  * igt@gem_exec_fence@submit67:
    - shard-mtlp:         NOTRUN -> [SKIP][46] ([i915#4812])
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-7/igt@gem_exec_fence@submit67.html

  * igt@gem_exec_flush@basic-uc-ro-default:
    - shard-dg2:          NOTRUN -> [SKIP][47] ([i915#3539] / [i915#4852]) +2 similar issues
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-8/igt@gem_exec_flush@basic-uc-ro-default.html

  * igt@gem_exec_flush@basic-wb-set-default:
    - shard-dg1:          NOTRUN -> [SKIP][48] ([i915#3539] / [i915#4852])
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-17/igt@gem_exec_flush@basic-wb-set-default.html

  * igt@gem_exec_params@secure-non-master:
    - shard-tglu:         NOTRUN -> [SKIP][49] ([fdo#112283])
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-4/igt@gem_exec_params@secure-non-master.html

  * igt@gem_exec_params@secure-non-root:
    - shard-rkl:          NOTRUN -> [SKIP][50] ([fdo#112283])
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-7/igt@gem_exec_params@secure-non-root.html

  * igt@gem_exec_reloc@basic-concurrent0:
    - shard-mtlp:         NOTRUN -> [SKIP][51] ([i915#3281]) +1 similar issue
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-4/igt@gem_exec_reloc@basic-concurrent0.html

  * igt@gem_exec_reloc@basic-cpu-wc:
    - shard-dg1:          NOTRUN -> [SKIP][52] ([i915#3281]) +1 similar issue
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-19/igt@gem_exec_reloc@basic-cpu-wc.html

  * igt@gem_exec_reloc@basic-gtt:
    - shard-rkl:          NOTRUN -> [SKIP][53] ([i915#3281]) +2 similar issues
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-7/igt@gem_exec_reloc@basic-gtt.html

  * igt@gem_exec_reloc@basic-wc:
    - shard-dg2:          NOTRUN -> [SKIP][54] ([i915#3281]) +6 similar issues
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-7/igt@gem_exec_reloc@basic-wc.html

  * igt@gem_exec_whisper@basic-contexts-forked-all:
    - shard-mtlp:         NOTRUN -> [ABORT][55] ([i915#7392] / [i915#8131])
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-3/igt@gem_exec_whisper@basic-contexts-forked-all.html

  * igt@gem_fence_thrash@bo-write-verify-none:
    - shard-dg2:          NOTRUN -> [SKIP][56] ([i915#4860])
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-10/igt@gem_fence_thrash@bo-write-verify-none.html

  * igt@gem_huc_copy@huc-copy:
    - shard-tglu:         NOTRUN -> [SKIP][57] ([i915#2190])
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-6/igt@gem_huc_copy@huc-copy.html

  * igt@gem_lmem_swapping@heavy-multi:
    - shard-tglu:         NOTRUN -> [SKIP][58] ([i915#4613])
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-8/igt@gem_lmem_swapping@heavy-multi.html

  * igt@gem_lmem_swapping@parallel-random-verify:
    - shard-rkl:          NOTRUN -> [SKIP][59] ([i915#4613])
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-6/igt@gem_lmem_swapping@parallel-random-verify.html

  * igt@gem_media_vme:
    - shard-dg2:          NOTRUN -> [SKIP][60] ([i915#284])
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-6/igt@gem_media_vme.html

  * igt@gem_mmap@big-bo:
    - shard-dg2:          NOTRUN -> [SKIP][61] ([i915#4083]) +2 similar issues
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-5/igt@gem_mmap@big-bo.html

  * igt@gem_mmap_gtt@cpuset-big-copy:
    - shard-dg2:          NOTRUN -> [SKIP][62] ([i915#4077]) +3 similar issues
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-1/igt@gem_mmap_gtt@cpuset-big-copy.html

  * igt@gem_mmap_gtt@flink-race:
    - shard-mtlp:         NOTRUN -> [SKIP][63] ([i915#4077]) +2 similar issues
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-8/igt@gem_mmap_gtt@flink-race.html

  * igt@gem_mmap_wc@write-gtt-read-wc:
    - shard-mtlp:         NOTRUN -> [SKIP][64] ([i915#4083]) +2 similar issues
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-2/igt@gem_mmap_wc@write-gtt-read-wc.html

  * igt@gem_partial_pwrite_pread@reads:
    - shard-mtlp:         NOTRUN -> [SKIP][65] ([i915#3282]) +1 similar issue
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-8/igt@gem_partial_pwrite_pread@reads.html

  * igt@gem_partial_pwrite_pread@write-uncached:
    - shard-dg1:          NOTRUN -> [SKIP][66] ([i915#3282])
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-12/igt@gem_partial_pwrite_pread@write-uncached.html

  * igt@gem_pread@exhaustion:
    - shard-snb:          NOTRUN -> [WARN][67] ([i915#2658])
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-snb1/igt@gem_pread@exhaustion.html

  * igt@gem_pxp@create-protected-buffer:
    - shard-tglu:         NOTRUN -> [SKIP][68] ([i915#4270]) +1 similar issue
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-4/igt@gem_pxp@create-protected-buffer.html

  * igt@gem_pxp@protected-encrypted-src-copy-not-readible:
    - shard-dg2:          NOTRUN -> [SKIP][69] ([i915#4270]) +1 similar issue
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-7/igt@gem_pxp@protected-encrypted-src-copy-not-readible.html

  * igt@gem_pxp@reject-modify-context-protection-off-3:
    - shard-rkl:          NOTRUN -> [SKIP][70] ([i915#4270]) +2 similar issues
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-2/igt@gem_pxp@reject-modify-context-protection-off-3.html

  * igt@gem_pxp@verify-pxp-execution-after-suspend-resume:
    - shard-dg1:          NOTRUN -> [SKIP][71] ([i915#4270]) +1 similar issue
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-15/igt@gem_pxp@verify-pxp-execution-after-suspend-resume.html

  * igt@gem_readwrite@read-write:
    - shard-dg2:          NOTRUN -> [SKIP][72] ([i915#3282]) +3 similar issues
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-1/igt@gem_readwrite@read-write.html

  * igt@gem_render_copy@yf-tiled-ccs-to-yf-tiled-ccs:
    - shard-dg2:          NOTRUN -> [SKIP][73] ([i915#5190]) +4 similar issues
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-8/igt@gem_render_copy@yf-tiled-ccs-to-yf-tiled-ccs.html

  * igt@gem_render_copy@yf-tiled-to-vebox-yf-tiled:
    - shard-mtlp:         NOTRUN -> [SKIP][74] ([i915#8428]) +1 similar issue
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-7/igt@gem_render_copy@yf-tiled-to-vebox-yf-tiled.html

  * igt@gem_render_tiled_blits@basic:
    - shard-dg1:          NOTRUN -> [SKIP][75] ([i915#4079])
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-18/igt@gem_render_tiled_blits@basic.html

  * igt@gem_unfence_active_buffers:
    - shard-dg1:          NOTRUN -> [SKIP][76] ([i915#4879])
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-17/igt@gem_unfence_active_buffers.html

  * igt@gem_userptr_blits@forbidden-operations:
    - shard-rkl:          NOTRUN -> [SKIP][77] ([i915#3282]) +1 similar issue
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-7/igt@gem_userptr_blits@forbidden-operations.html

  * igt@gem_userptr_blits@invalid-mmap-offset-unsync:
    - shard-mtlp:         NOTRUN -> [SKIP][78] ([i915#3297]) +2 similar issues
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-4/igt@gem_userptr_blits@invalid-mmap-offset-unsync.html

  * igt@gem_userptr_blits@readonly-pwrite-unsync:
    - shard-rkl:          NOTRUN -> [SKIP][79] ([i915#3297]) +1 similar issue
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-4/igt@gem_userptr_blits@readonly-pwrite-unsync.html

  * igt@gem_userptr_blits@unsync-unmap:
    - shard-dg1:          NOTRUN -> [SKIP][80] ([i915#3297])
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-15/igt@gem_userptr_blits@unsync-unmap.html

  * igt@gem_userptr_blits@unsync-unmap-cycles:
    - shard-dg2:          NOTRUN -> [SKIP][81] ([i915#3297])
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-6/igt@gem_userptr_blits@unsync-unmap-cycles.html

  * igt@gen7_exec_parse@basic-allocation:
    - shard-dg1:          NOTRUN -> [SKIP][82] ([fdo#109289])
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-13/igt@gen7_exec_parse@basic-allocation.html

  * igt@gen7_exec_parse@basic-offset:
    - shard-mtlp:         NOTRUN -> [SKIP][83] ([fdo#109289]) +1 similar issue
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-7/igt@gen7_exec_parse@basic-offset.html

  * igt@gen7_exec_parse@chained-batch:
    - shard-dg2:          NOTRUN -> [SKIP][84] ([fdo#109289])
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-3/igt@gen7_exec_parse@chained-batch.html

  * igt@gen9_exec_parse@allowed-single:
    - shard-glk:          [PASS][85] -> [ABORT][86] ([i915#5566])
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-glk1/igt@gen9_exec_parse@allowed-single.html
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-glk7/igt@gen9_exec_parse@allowed-single.html

  * igt@gen9_exec_parse@batch-invalid-length:
    - shard-mtlp:         NOTRUN -> [SKIP][87] ([i915#2856])
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-1/igt@gen9_exec_parse@batch-invalid-length.html

  * igt@gen9_exec_parse@bb-start-param:
    - shard-dg2:          NOTRUN -> [SKIP][88] ([i915#2856]) +1 similar issue
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-11/igt@gen9_exec_parse@bb-start-param.html
    - shard-rkl:          NOTRUN -> [SKIP][89] ([i915#2527]) +1 similar issue
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-4/igt@gen9_exec_parse@bb-start-param.html

  * igt@i915_module_load@load:
    - shard-snb:          NOTRUN -> [SKIP][90] ([fdo#109271] / [i915#6227])
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-snb4/igt@i915_module_load@load.html

  * igt@i915_module_load@reload-with-fault-injection:
    - shard-mtlp:         [PASS][91] -> [ABORT][92] ([i915#8489] / [i915#8668])
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-mtlp-3/igt@i915_module_load@reload-with-fault-injection.html
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-6/igt@i915_module_load@reload-with-fault-injection.html

  * igt@i915_pm_backlight@fade-with-dpms:
    - shard-tglu:         NOTRUN -> [SKIP][93] ([i915#7561])
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-9/igt@i915_pm_backlight@fade-with-dpms.html

  * igt@i915_pm_dc@dc5-dpms-negative:
    - shard-mtlp:         NOTRUN -> [SKIP][94] ([i915#8018])
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-1/igt@i915_pm_dc@dc5-dpms-negative.html

  * igt@i915_pm_dc@dc6-dpms:
    - shard-tglu:         [PASS][95] -> [FAIL][96] ([i915#3989] / [i915#454])
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-tglu-4/igt@i915_pm_dc@dc6-dpms.html
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-8/igt@i915_pm_dc@dc6-dpms.html

  * igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-hdmi-a:
    - shard-dg2:          [PASS][97] -> [SKIP][98] ([i915#1937])
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-dg2-10/igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-hdmi-a.html
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-7/igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-hdmi-a.html
    - shard-rkl:          NOTRUN -> [SKIP][99] ([i915#1937])
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-1/igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-hdmi-a.html

  * igt@i915_pm_rc6_residency@rc6-accuracy:
    - shard-mtlp:         [PASS][100] -> [SKIP][101] ([fdo#109289] / [i915#8403])
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-mtlp-5/igt@i915_pm_rc6_residency@rc6-accuracy.html
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-4/igt@i915_pm_rc6_residency@rc6-accuracy.html

  * igt@i915_pm_rpm@dpms-non-lpsp:
    - shard-rkl:          [PASS][102] -> [SKIP][103] ([i915#1397])
   [102]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-rkl-6/igt@i915_pm_rpm@dpms-non-lpsp.html
   [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-7/igt@i915_pm_rpm@dpms-non-lpsp.html

  * igt@i915_pm_rpm@pc8-residency:
    - shard-dg1:          NOTRUN -> [SKIP][104] ([fdo#109506])
   [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-12/igt@i915_pm_rpm@pc8-residency.html

  * igt@i915_pm_rpm@system-suspend-modeset:
    - shard-dg1:          [PASS][105] -> [FAIL][106] ([i915#7940]) +2 similar issues
   [105]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-dg1-19/igt@i915_pm_rpm@system-suspend-modeset.html
   [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-14/igt@i915_pm_rpm@system-suspend-modeset.html

  * igt@i915_query@hwconfig_table:
    - shard-tglu:         NOTRUN -> [SKIP][107] ([i915#6245])
   [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-7/igt@i915_query@hwconfig_table.html

  * igt@i915_selftest@live@workarounds:
    - shard-mtlp:         [PASS][108] -> [DMESG-FAIL][109] ([i915#6763])
   [108]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-mtlp-8/igt@i915_selftest@live@workarounds.html
   [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-8/igt@i915_selftest@live@workarounds.html

  * igt@i915_suspend@fence-restore-tiled2untiled:
    - shard-snb:          NOTRUN -> [DMESG-WARN][110] ([i915#8841]) +4 similar issues
   [110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-snb2/igt@i915_suspend@fence-restore-tiled2untiled.html
    - shard-apl:          [PASS][111] -> [ABORT][112] ([i915#180])
   [111]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-apl6/igt@i915_suspend@fence-restore-tiled2untiled.html
   [112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-apl1/igt@i915_suspend@fence-restore-tiled2untiled.html

  * igt@kms_addfb_basic@invalid-smem-bo-on-discrete:
    - shard-rkl:          NOTRUN -> [SKIP][113] ([i915#3826])
   [113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-6/igt@kms_addfb_basic@invalid-smem-bo-on-discrete.html

  * igt@kms_addfb_basic@tile-pitch-mismatch:
    - shard-mtlp:         NOTRUN -> [SKIP][114] ([i915#4212])
   [114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-6/igt@kms_addfb_basic@tile-pitch-mismatch.html
    - shard-dg2:          NOTRUN -> [SKIP][115] ([i915#4212])
   [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-1/igt@kms_addfb_basic@tile-pitch-mismatch.html

  * igt@kms_async_flips@crc@pipe-a-hdmi-a-3:
    - shard-dg2:          NOTRUN -> [FAIL][116] ([i915#8247]) +3 similar issues
   [116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-7/igt@kms_async_flips@crc@pipe-a-hdmi-a-3.html

  * igt@kms_async_flips@crc@pipe-b-hdmi-a-1:
    - shard-snb:          NOTRUN -> [FAIL][117] ([i915#8247]) +1 similar issue
   [117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-snb1/igt@kms_async_flips@crc@pipe-b-hdmi-a-1.html

  * igt@kms_atomic@atomic_plane_damage:
    - shard-mtlp:         [PASS][118] -> [DMESG-WARN][119] ([i915#2017]) +1 similar issue
   [118]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-mtlp-2/igt@kms_atomic@atomic_plane_damage.html
   [119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-5/igt@kms_atomic@atomic_plane_damage.html

  * igt@kms_atomic@plane-primary-overlay-mutable-zpos:
    - shard-mtlp:         NOTRUN -> [SKIP][120] ([i915#404])
   [120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-2/igt@kms_atomic@plane-primary-overlay-mutable-zpos.html
    - shard-dg2:          NOTRUN -> [SKIP][121] ([i915#404])
   [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-5/igt@kms_atomic@plane-primary-overlay-mutable-zpos.html
    - shard-rkl:          NOTRUN -> [SKIP][122] ([i915#404])
   [122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-2/igt@kms_atomic@plane-primary-overlay-mutable-zpos.html

  * igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels:
    - shard-dg2:          NOTRUN -> [SKIP][123] ([i915#1769] / [i915#3555])
   [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-5/igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels.html
    - shard-rkl:          NOTRUN -> [SKIP][124] ([i915#1769] / [i915#3555])
   [124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-4/igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels.html

  * igt@kms_big_fb@4-tiled-32bpp-rotate-180:
    - shard-rkl:          NOTRUN -> [SKIP][125] ([i915#5286])
   [125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-2/igt@kms_big_fb@4-tiled-32bpp-rotate-180.html
    - shard-dg1:          NOTRUN -> [SKIP][126] ([i915#4538] / [i915#5286]) +1 similar issue
   [126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-14/igt@kms_big_fb@4-tiled-32bpp-rotate-180.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip:
    - shard-tglu:         NOTRUN -> [SKIP][127] ([fdo#111615] / [i915#5286]) +1 similar issue
   [127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-4/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip:
    - shard-mtlp:         [PASS][128] -> [FAIL][129] ([i915#3743]) +2 similar issues
   [128]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-mtlp-7/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip.html
   [129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-8/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip.html

  * igt@kms_big_fb@linear-16bpp-rotate-90:
    - shard-dg2:          NOTRUN -> [SKIP][130] ([fdo#111614]) +2 similar issues
   [130]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-1/igt@kms_big_fb@linear-16bpp-rotate-90.html
    - shard-mtlp:         NOTRUN -> [SKIP][131] ([fdo#111614]) +2 similar issues
   [131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-6/igt@kms_big_fb@linear-16bpp-rotate-90.html

  * igt@kms_big_fb@x-tiled-64bpp-rotate-270:
    - shard-dg1:          NOTRUN -> [SKIP][132] ([i915#3638])
   [132]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-14/igt@kms_big_fb@x-tiled-64bpp-rotate-270.html
    - shard-tglu:         NOTRUN -> [SKIP][133] ([fdo#111614])
   [133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-6/igt@kms_big_fb@x-tiled-64bpp-rotate-270.html

  * igt@kms_big_fb@y-tiled-8bpp-rotate-270:
    - shard-rkl:          NOTRUN -> [SKIP][134] ([fdo#111614] / [i915#3638]) +3 similar issues
   [134]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-7/igt@kms_big_fb@y-tiled-8bpp-rotate-270.html

  * igt@kms_big_fb@yf-tiled-16bpp-rotate-270:
    - shard-tglu:         NOTRUN -> [SKIP][135] ([fdo#111615]) +1 similar issue
   [135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-2/igt@kms_big_fb@yf-tiled-16bpp-rotate-270.html

  * igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180:
    - shard-mtlp:         NOTRUN -> [SKIP][136] ([fdo#111615]) +4 similar issues
   [136]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-3/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180.html

  * igt@kms_ccs@pipe-a-bad-aux-stride-y_tiled_ccs:
    - shard-dg2:          NOTRUN -> [SKIP][137] ([i915#3689] / [i915#5354]) +15 similar issues
   [137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-5/igt@kms_ccs@pipe-a-bad-aux-stride-y_tiled_ccs.html

  * igt@kms_ccs@pipe-a-bad-rotation-90-y_tiled_gen12_mc_ccs:
    - shard-dg1:          NOTRUN -> [SKIP][138] ([i915#3689] / [i915#3886] / [i915#5354] / [i915#6095])
   [138]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-15/igt@kms_ccs@pipe-a-bad-rotation-90-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-a-bad-rotation-90-y_tiled_gen12_rc_ccs:
    - shard-mtlp:         NOTRUN -> [SKIP][139] ([i915#6095]) +19 similar issues
   [139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-2/igt@kms_ccs@pipe-a-bad-rotation-90-y_tiled_gen12_rc_ccs.html

  * igt@kms_ccs@pipe-a-ccs-on-another-bo-y_tiled_gen12_mc_ccs:
    - shard-tglu:         NOTRUN -> [SKIP][140] ([i915#3689] / [i915#3886] / [i915#5354] / [i915#6095]) +2 similar issues
   [140]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-5/igt@kms_ccs@pipe-a-ccs-on-another-bo-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-a-crc-primary-basic-4_tiled_mtl_mc_ccs:
    - shard-rkl:          NOTRUN -> [SKIP][141] ([i915#5354] / [i915#6095]) +7 similar issues
   [141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-4/igt@kms_ccs@pipe-a-crc-primary-basic-4_tiled_mtl_mc_ccs.html

  * igt@kms_ccs@pipe-a-random-ccs-data-y_tiled_gen12_mc_ccs:
    - shard-rkl:          NOTRUN -> [SKIP][142] ([i915#3886] / [i915#5354] / [i915#6095])
   [142]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-1/igt@kms_ccs@pipe-a-random-ccs-data-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-b-bad-aux-stride-yf_tiled_ccs:
    - shard-rkl:          NOTRUN -> [SKIP][143] ([i915#3734] / [i915#5354] / [i915#6095]) +1 similar issue
   [143]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-1/igt@kms_ccs@pipe-b-bad-aux-stride-yf_tiled_ccs.html
    - shard-dg1:          NOTRUN -> [SKIP][144] ([i915#3689] / [i915#5354] / [i915#6095]) +3 similar issues
   [144]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-12/igt@kms_ccs@pipe-b-bad-aux-stride-yf_tiled_ccs.html

  * igt@kms_ccs@pipe-b-crc-primary-basic-y_tiled_gen12_rc_ccs_cc:
    - shard-mtlp:         NOTRUN -> [SKIP][145] ([i915#3886] / [i915#6095]) +2 similar issues
   [145]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-7/igt@kms_ccs@pipe-b-crc-primary-basic-y_tiled_gen12_rc_ccs_cc.html
    - shard-apl:          NOTRUN -> [SKIP][146] ([fdo#109271] / [i915#3886])
   [146]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-apl7/igt@kms_ccs@pipe-b-crc-primary-basic-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-b-crc-primary-rotation-180-y_tiled_gen12_mc_ccs:
    - shard-dg2:          NOTRUN -> [SKIP][147] ([i915#3689] / [i915#3886] / [i915#5354]) +2 similar issues
   [147]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-11/igt@kms_ccs@pipe-b-crc-primary-rotation-180-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-b-random-ccs-data-4_tiled_mtl_rc_ccs_cc:
    - shard-tglu:         NOTRUN -> [SKIP][148] ([i915#5354] / [i915#6095]) +11 similar issues
   [148]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-4/igt@kms_ccs@pipe-b-random-ccs-data-4_tiled_mtl_rc_ccs_cc.html

  * igt@kms_ccs@pipe-c-bad-pixel-format-4_tiled_dg2_rc_ccs_cc:
    - shard-tglu:         NOTRUN -> [SKIP][149] ([i915#3689] / [i915#5354] / [i915#6095]) +2 similar issues
   [149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-7/igt@kms_ccs@pipe-c-bad-pixel-format-4_tiled_dg2_rc_ccs_cc.html

  * igt@kms_ccs@pipe-c-bad-pixel-format-4_tiled_mtl_rc_ccs_cc:
    - shard-apl:          NOTRUN -> [SKIP][150] ([fdo#109271]) +20 similar issues
   [150]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-apl4/igt@kms_ccs@pipe-c-bad-pixel-format-4_tiled_mtl_rc_ccs_cc.html

  * igt@kms_ccs@pipe-c-crc-primary-rotation-180-4_tiled_mtl_rc_ccs_cc:
    - shard-dg1:          NOTRUN -> [SKIP][151] ([i915#5354] / [i915#6095]) +1 similar issue
   [151]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-16/igt@kms_ccs@pipe-c-crc-primary-rotation-180-4_tiled_mtl_rc_ccs_cc.html

  * igt@kms_ccs@pipe-d-missing-ccs-buffer-y_tiled_gen12_rc_ccs:
    - shard-rkl:          NOTRUN -> [SKIP][152] ([i915#5354]) +10 similar issues
   [152]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-4/igt@kms_ccs@pipe-d-missing-ccs-buffer-y_tiled_gen12_rc_ccs.html

  * igt@kms_ccs@pipe-d-missing-ccs-buffer-yf_tiled_ccs:
    - shard-tglu:         NOTRUN -> [SKIP][153] ([fdo#111615] / [i915#3689] / [i915#5354] / [i915#6095]) +3 similar issues
   [153]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-4/igt@kms_ccs@pipe-d-missing-ccs-buffer-yf_tiled_ccs.html

  * igt@kms_cdclk@mode-transition:
    - shard-tglu:         NOTRUN -> [SKIP][154] ([i915#3742])
   [154]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-2/igt@kms_cdclk@mode-transition.html

  * igt@kms_cdclk@plane-scaling@pipe-c-hdmi-a-3:
    - shard-dg2:          NOTRUN -> [SKIP][155] ([i915#4087]) +3 similar issues
   [155]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-5/igt@kms_cdclk@plane-scaling@pipe-c-hdmi-a-3.html

  * igt@kms_chamelium_frames@dp-crc-single:
    - shard-dg1:          NOTRUN -> [SKIP][156] ([i915#7828]) +2 similar issues
   [156]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-15/igt@kms_chamelium_frames@dp-crc-single.html

  * igt@kms_chamelium_frames@hdmi-crc-multiple:
    - shard-dg2:          NOTRUN -> [SKIP][157] ([i915#7828]) +4 similar issues
   [157]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-1/igt@kms_chamelium_frames@hdmi-crc-multiple.html

  * igt@kms_chamelium_frames@hdmi-frame-dump:
    - shard-tglu:         NOTRUN -> [SKIP][158] ([i915#7828]) +2 similar issues
   [158]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-7/igt@kms_chamelium_frames@hdmi-frame-dump.html

  * igt@kms_chamelium_hpd@hdmi-hpd:
    - shard-mtlp:         NOTRUN -> [SKIP][159] ([i915#7828]) +5 similar issues
   [159]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-7/igt@kms_chamelium_hpd@hdmi-hpd.html

  * igt@kms_chamelium_hpd@hdmi-hpd-storm:
    - shard-rkl:          NOTRUN -> [SKIP][160] ([i915#7828]) +4 similar issues
   [160]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-2/igt@kms_chamelium_hpd@hdmi-hpd-storm.html

  * igt@kms_content_protection@atomic@pipe-a-dp-4:
    - shard-dg2:          NOTRUN -> [TIMEOUT][161] ([i915#7173])
   [161]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-11/igt@kms_content_protection@atomic@pipe-a-dp-4.html

  * igt@kms_content_protection@dp-mst-lic-type-1:
    - shard-mtlp:         NOTRUN -> [SKIP][162] ([i915#3299])
   [162]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-5/igt@kms_content_protection@dp-mst-lic-type-1.html

  * igt@kms_content_protection@lic:
    - shard-dg2:          NOTRUN -> [SKIP][163] ([i915#7118])
   [163]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-1/igt@kms_content_protection@lic.html

  * igt@kms_content_protection@srm:
    - shard-dg1:          NOTRUN -> [SKIP][164] ([i915#7116])
   [164]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-13/igt@kms_content_protection@srm.html

  * igt@kms_cursor_crc@cursor-offscreen-32x10:
    - shard-tglu:         NOTRUN -> [SKIP][165] ([i915#3555]) +3 similar issues
   [165]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-7/igt@kms_cursor_crc@cursor-offscreen-32x10.html

  * igt@kms_cursor_crc@cursor-offscreen-512x170:
    - shard-dg2:          NOTRUN -> [SKIP][166] ([i915#3359]) +1 similar issue
   [166]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-1/igt@kms_cursor_crc@cursor-offscreen-512x170.html
    - shard-rkl:          NOTRUN -> [SKIP][167] ([fdo#109279] / [i915#3359])
   [167]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-6/igt@kms_cursor_crc@cursor-offscreen-512x170.html

  * igt@kms_cursor_crc@cursor-rapid-movement-32x32:
    - shard-dg2:          NOTRUN -> [SKIP][168] ([i915#3555])
   [168]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-5/igt@kms_cursor_crc@cursor-rapid-movement-32x32.html
    - shard-mtlp:         NOTRUN -> [SKIP][169] ([i915#8814]) +1 similar issue
   [169]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-2/igt@kms_cursor_crc@cursor-rapid-movement-32x32.html

  * igt@kms_cursor_crc@cursor-rapid-movement-512x512:
    - shard-tglu:         NOTRUN -> [SKIP][170] ([i915#3359])
   [170]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-2/igt@kms_cursor_crc@cursor-rapid-movement-512x512.html
    - shard-mtlp:         NOTRUN -> [SKIP][171] ([i915#3359])
   [171]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-7/igt@kms_cursor_crc@cursor-rapid-movement-512x512.html
    - shard-rkl:          NOTRUN -> [SKIP][172] ([i915#3359])
   [172]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-4/igt@kms_cursor_crc@cursor-rapid-movement-512x512.html
    - shard-dg1:          NOTRUN -> [SKIP][173] ([i915#3359])
   [173]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-16/igt@kms_cursor_crc@cursor-rapid-movement-512x512.html

  * igt@kms_cursor_crc@cursor-sliding-32x10:
    - shard-dg1:          NOTRUN -> [SKIP][174] ([i915#3555])
   [174]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-19/igt@kms_cursor_crc@cursor-sliding-32x10.html

  * igt@kms_cursor_legacy@2x-flip-vs-cursor-atomic:
    - shard-dg2:          NOTRUN -> [SKIP][175] ([fdo#109274] / [fdo#111767] / [i915#5354])
   [175]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-3/igt@kms_cursor_legacy@2x-flip-vs-cursor-atomic.html
    - shard-mtlp:         NOTRUN -> [SKIP][176] ([fdo#111767] / [i915#3546])
   [176]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-2/igt@kms_cursor_legacy@2x-flip-vs-cursor-atomic.html

  * igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic:
    - shard-dg2:          NOTRUN -> [SKIP][177] ([fdo#109274] / [i915#5354]) +1 similar issue
   [177]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-11/igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
    - shard-mtlp:         NOTRUN -> [SKIP][178] ([i915#4213])
   [178]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-7/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html

  * igt@kms_cursor_legacy@cursor-vs-flip-toggle:
    - shard-mtlp:         [PASS][179] -> [FAIL][180] ([i915#8248])
   [179]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-mtlp-1/igt@kms_cursor_legacy@cursor-vs-flip-toggle.html
   [180]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-7/igt@kms_cursor_legacy@cursor-vs-flip-toggle.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa-varying-size:
    - shard-mtlp:         NOTRUN -> [SKIP][181] ([i915#3546])
   [181]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-5/igt@kms_cursor_legacy@cursorb-vs-flipa-varying-size.html

  * igt@kms_cursor_legacy@cursorb-vs-flipb-legacy:
    - shard-dg1:          NOTRUN -> [SKIP][182] ([fdo#111825]) +4 similar issues
   [182]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-16/igt@kms_cursor_legacy@cursorb-vs-flipb-legacy.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
    - shard-apl:          [PASS][183] -> [FAIL][184] ([i915#2346]) +1 similar issue
   [183]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-apl4/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
   [184]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-apl2/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
    - shard-glk:          [PASS][185] -> [FAIL][186] ([i915#2346])
   [185]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-glk7/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
   [186]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-glk5/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html

  * {igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot} (NEW):
    - shard-glk:          NOTRUN -> [SKIP][187] ([fdo#109271])
   [187]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-glk1/igt@kms_cursor_legacy@modeset-atomic-cursor-hotspot.html

  * igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-1:
    - shard-rkl:          NOTRUN -> [SKIP][188] ([i915#3804])
   [188]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-7/igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-1.html

  * igt@kms_draw_crc@draw-method-mmap-wc:
    - shard-dg2:          NOTRUN -> [SKIP][189] ([i915#8812]) +1 similar issue
   [189]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-11/igt@kms_draw_crc@draw-method-mmap-wc.html

  * igt@kms_flip@2x-absolute-wf_vblank:
    - shard-dg2:          NOTRUN -> [SKIP][190] ([fdo#109274]) +3 similar issues
   [190]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-1/igt@kms_flip@2x-absolute-wf_vblank.html

  * igt@kms_flip@2x-blocking-absolute-wf_vblank:
    - shard-mtlp:         NOTRUN -> [SKIP][191] ([i915#3637]) +4 similar issues
   [191]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-6/igt@kms_flip@2x-blocking-absolute-wf_vblank.html

  * igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@ab-hdmi-a1-hdmi-a2:
    - shard-glk:          [PASS][192] -> [FAIL][193] ([i915#2122])
   [192]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-glk6/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@ab-hdmi-a1-hdmi-a2.html
   [193]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-glk6/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@ab-hdmi-a1-hdmi-a2.html

  * igt@kms_flip@2x-flip-vs-panning:
    - shard-tglu:         NOTRUN -> [SKIP][194] ([fdo#109274] / [i915#3637]) +1 similar issue
   [194]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-2/igt@kms_flip@2x-flip-vs-panning.html

  * igt@kms_flip@2x-flip-vs-wf_vblank-interruptible:
    - shard-rkl:          NOTRUN -> [SKIP][195] ([fdo#111825]) +4 similar issues
   [195]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-7/igt@kms_flip@2x-flip-vs-wf_vblank-interruptible.html

  * igt@kms_flip@flip-vs-fences:
    - shard-mtlp:         NOTRUN -> [SKIP][196] ([i915#8381])
   [196]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-1/igt@kms_flip@flip-vs-fences.html

  * igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling@pipe-a-valid-mode:
    - shard-dg1:          NOTRUN -> [SKIP][197] ([i915#2587] / [i915#2672])
   [197]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-19/igt@kms_flip_scaled_crc@flip-32bpp-4tile-to-32bpp-4tiledg2rcccs-upscaling@pipe-a-valid-mode.html

  * igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling@pipe-a-valid-mode:
    - shard-rkl:          NOTRUN -> [SKIP][198] ([i915#2672]) +1 similar issue
   [198]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-2/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling@pipe-a-valid-mode.html

  * igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling@pipe-a-default-mode:
    - shard-mtlp:         NOTRUN -> [SKIP][199] ([i915#2672]) +1 similar issue
   [199]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-3/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling@pipe-a-default-mode.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling@pipe-a-valid-mode:
    - shard-dg2:          NOTRUN -> [SKIP][200] ([i915#2672])
   [200]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-8/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling@pipe-a-valid-mode.html

  * igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling@pipe-a-valid-mode:
    - shard-tglu:         NOTRUN -> [SKIP][201] ([i915#2587] / [i915#2672]) +1 similar issue
   [201]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-4/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling@pipe-a-valid-mode.html

  * igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-downscaling@pipe-a-default-mode:
    - shard-mtlp:         NOTRUN -> [SKIP][202] ([i915#8810])
   [202]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-5/igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-downscaling@pipe-a-default-mode.html

  * igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-blt:
    - shard-dg2:          [PASS][203] -> [FAIL][204] ([i915#6880])
   [203]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-dg2-10/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-blt.html
   [204]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-6/igt@kms_frontbuffer_tracking@fbc-1p-offscren-pri-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw:
    - shard-dg2:          NOTRUN -> [FAIL][205] ([i915#6880])
   [205]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-6/igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-gtt:
    - shard-dg2:          NOTRUN -> [SKIP][206] ([i915#8708]) +8 similar issues
   [206]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-5/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-indfb-plflip-blt:
    - shard-dg2:          NOTRUN -> [SKIP][207] ([i915#5354]) +23 similar issues
   [207]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-1/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-indfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-plflip-blt:
    - shard-tglu:         NOTRUN -> [SKIP][208] ([fdo#109280]) +14 similar issues
   [208]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-10/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-indfb-pgflip-blt:
    - shard-tglu:         NOTRUN -> [SKIP][209] ([fdo#110189]) +11 similar issues
   [209]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-10/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-indfb-pgflip-blt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-shrfb-draw-blt:
    - shard-rkl:          NOTRUN -> [SKIP][210] ([fdo#111825] / [i915#1825]) +11 similar issues
   [210]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-2/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-shrfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-mmap-gtt:
    - shard-dg1:          NOTRUN -> [SKIP][211] ([i915#8708]) +3 similar issues
   [211]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-19/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-mmap-gtt:
    - shard-mtlp:         NOTRUN -> [SKIP][212] ([i915#8708]) +7 similar issues
   [212]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-3/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-pri-indfb-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-mmap-cpu:
    - shard-dg2:          NOTRUN -> [SKIP][213] ([i915#3458]) +11 similar issues
   [213]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-7/igt@kms_frontbuffer_tracking@psr-1p-offscren-pri-shrfb-draw-mmap-cpu.html

  * igt@kms_frontbuffer_tracking@psr-1p-primscrn-shrfb-msflip-blt:
    - shard-rkl:          NOTRUN -> [SKIP][214] ([i915#3023]) +9 similar issues
   [214]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-4/igt@kms_frontbuffer_tracking@psr-1p-primscrn-shrfb-msflip-blt.html

  * igt@kms_frontbuffer_tracking@psr-1p-rte:
    - shard-dg1:          NOTRUN -> [SKIP][215] ([i915#3458]) +2 similar issues
   [215]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-12/igt@kms_frontbuffer_tracking@psr-1p-rte.html

  * igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-mmap-wc:
    - shard-mtlp:         NOTRUN -> [SKIP][216] ([i915#1825]) +16 similar issues
   [216]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-6/igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-mmap-wc.html

  * igt@kms_hdr@bpc-switch-suspend:
    - shard-rkl:          NOTRUN -> [SKIP][217] ([i915#3555] / [i915#8228]) +1 similar issue
   [217]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-2/igt@kms_hdr@bpc-switch-suspend.html

  * igt@kms_hdr@invalid-metadata-sizes:
    - shard-dg2:          NOTRUN -> [SKIP][218] ([i915#3555] / [i915#8228])
   [218]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-8/igt@kms_hdr@invalid-metadata-sizes.html

  * igt@kms_plane_lowres@tiling-x@pipe-c-edp-1:
    - shard-mtlp:         NOTRUN -> [SKIP][219] ([i915#3582]) +3 similar issues
   [219]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-1/igt@kms_plane_lowres@tiling-x@pipe-c-edp-1.html

  * igt@kms_plane_multiple@tiling-yf:
    - shard-mtlp:         NOTRUN -> [SKIP][220] ([i915#8806])
   [220]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-1/igt@kms_plane_multiple@tiling-yf.html

  * igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-4:
    - shard-dg1:          NOTRUN -> [FAIL][221] ([i915#8292])
   [221]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-14/igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-4.html

  * igt@kms_plane_scaling@plane-downscale-with-modifiers-factor-0-25@pipe-c-hdmi-a-1:
    - shard-tglu:         NOTRUN -> [SKIP][222] ([i915#5176]) +3 similar issues
   [222]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-9/igt@kms_plane_scaling@plane-downscale-with-modifiers-factor-0-25@pipe-c-hdmi-a-1.html

  * igt@kms_plane_scaling@plane-downscale-with-modifiers-factor-0-25@pipe-d-hdmi-a-3:
    - shard-dg2:          NOTRUN -> [SKIP][223] ([i915#5176]) +7 similar issues
   [223]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-7/igt@kms_plane_scaling@plane-downscale-with-modifiers-factor-0-25@pipe-d-hdmi-a-3.html

  * igt@kms_plane_scaling@plane-downscale-with-pixel-format-factor-0-25@pipe-d-edp-1:
    - shard-mtlp:         NOTRUN -> [SKIP][224] ([i915#5176]) +3 similar issues
   [224]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-2/igt@kms_plane_scaling@plane-downscale-with-pixel-format-factor-0-25@pipe-d-edp-1.html

  * igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-a-vga-1:
    - shard-snb:          NOTRUN -> [SKIP][225] ([fdo#109271]) +266 similar issues
   [225]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-snb4/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-a-vga-1.html

  * igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-d-hdmi-a-1:
    - shard-dg1:          NOTRUN -> [SKIP][226] ([i915#5176]) +11 similar issues
   [226]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-19/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-d-hdmi-a-1.html

  * igt@kms_plane_scaling@plane-upscale-with-rotation-factor-0-25@pipe-a-hdmi-a-2:
    - shard-rkl:          NOTRUN -> [SKIP][227] ([i915#5176]) +5 similar issues
   [227]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-4/igt@kms_plane_scaling@plane-upscale-with-rotation-factor-0-25@pipe-a-hdmi-a-2.html

  * igt@kms_plane_scaling@planes-downscale-factor-0-25-unity-scaling@pipe-b-edp-1:
    - shard-mtlp:         NOTRUN -> [SKIP][228] ([i915#5235]) +3 similar issues
   [228]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-7/igt@kms_plane_scaling@planes-downscale-factor-0-25-unity-scaling@pipe-b-edp-1.html

  * igt@kms_plane_scaling@planes-downscale-factor-0-25@pipe-d-hdmi-a-3:
    - shard-dg2:          NOTRUN -> [SKIP][229] ([i915#5235]) +11 similar issues
   [229]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-7/igt@kms_plane_scaling@planes-downscale-factor-0-25@pipe-d-hdmi-a-3.html

  * igt@kms_plane_scaling@planes-unity-scaling-downscale-factor-0-25@pipe-b-hdmi-a-2:
    - shard-rkl:          NOTRUN -> [SKIP][230] ([i915#5235]) +3 similar issues
   [230]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-6/igt@kms_plane_scaling@planes-unity-scaling-downscale-factor-0-25@pipe-b-hdmi-a-2.html

  * igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-25@pipe-d-hdmi-a-4:
    - shard-dg1:          NOTRUN -> [SKIP][231] ([i915#5235]) +15 similar issues
   [231]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-15/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-25@pipe-d-hdmi-a-4.html

  * igt@kms_prime@basic-crc-hybrid:
    - shard-dg2:          NOTRUN -> [SKIP][232] ([i915#6524] / [i915#6805])
   [232]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-5/igt@kms_prime@basic-crc-hybrid.html

  * igt@kms_psr2_sf@overlay-plane-move-continuous-exceed-sf:
    - shard-dg1:          NOTRUN -> [SKIP][233] ([i915#658])
   [233]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-19/igt@kms_psr2_sf@overlay-plane-move-continuous-exceed-sf.html

  * igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area:
    - shard-rkl:          NOTRUN -> [SKIP][234] ([fdo#111068] / [i915#658])
   [234]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-6/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area.html

  * igt@kms_psr2_su@page_flip-nv12:
    - shard-tglu:         NOTRUN -> [SKIP][235] ([fdo#109642] / [fdo#111068] / [i915#658])
   [235]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-10/igt@kms_psr2_su@page_flip-nv12.html

  * igt@kms_psr@cursor_mmap_gtt:
    - shard-dg1:          NOTRUN -> [SKIP][236] ([i915#1072]) +1 similar issue
   [236]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-13/igt@kms_psr@cursor_mmap_gtt.html

  * igt@kms_psr@psr2_sprite_mmap_gtt:
    - shard-dg2:          NOTRUN -> [SKIP][237] ([i915#1072]) +3 similar issues
   [237]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-6/igt@kms_psr@psr2_sprite_mmap_gtt.html

  * igt@kms_psr@sprite_mmap_gtt:
    - shard-rkl:          NOTRUN -> [SKIP][238] ([i915#1072])
   [238]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-4/igt@kms_psr@sprite_mmap_gtt.html

  * igt@kms_rotation_crc@bad-pixel-format:
    - shard-mtlp:         NOTRUN -> [SKIP][239] ([i915#4235]) +1 similar issue
   [239]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-6/igt@kms_rotation_crc@bad-pixel-format.html

  * igt@kms_rotation_crc@exhaust-fences:
    - shard-dg1:          NOTRUN -> [SKIP][240] ([i915#4884])
   [240]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-15/igt@kms_rotation_crc@exhaust-fences.html

  * igt@kms_rotation_crc@primary-rotation-90:
    - shard-dg2:          NOTRUN -> [SKIP][241] ([i915#4235])
   [241]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-7/igt@kms_rotation_crc@primary-rotation-90.html

  * igt@kms_rotation_crc@primary-yf-tiled-reflect-x-90:
    - shard-dg1:          NOTRUN -> [SKIP][242] ([fdo#111615] / [i915#5289])
   [242]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-16/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-90.html

  * igt@kms_setmode@basic@pipe-a-hdmi-a-1:
    - shard-snb:          NOTRUN -> [FAIL][243] ([i915#5465]) +1 similar issue
   [243]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-snb1/igt@kms_setmode@basic@pipe-a-hdmi-a-1.html

  * igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend:
    - shard-dg2:          [PASS][244] -> [FAIL][245] ([fdo#103375]) +3 similar issues
   [244]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-dg2-8/igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend.html
   [245]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-5/igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend.html

  * igt@kms_vblank@pipe-c-wait-idle:
    - shard-rkl:          NOTRUN -> [SKIP][246] ([i915#4070] / [i915#6768]) +1 similar issue
   [246]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-1/igt@kms_vblank@pipe-c-wait-idle.html

  * igt@kms_vblank@pipe-d-ts-continuation-idle:
    - shard-rkl:          NOTRUN -> [SKIP][247] ([i915#4070] / [i915#533] / [i915#6768]) +1 similar issue
   [247]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-2/igt@kms_vblank@pipe-d-ts-continuation-idle.html

  * igt@perf_pmu@frequency@gt0:
    - shard-dg2:          NOTRUN -> [FAIL][248] ([i915#6806])
   [248]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-5/igt@perf_pmu@frequency@gt0.html

  * igt@perf_pmu@module-unload:
    - shard-dg2:          NOTRUN -> [FAIL][249] ([i915#5793] / [i915#6121])
   [249]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-10/igt@perf_pmu@module-unload.html

  * igt@perf_pmu@rc6@other-idle-gt0:
    - shard-tglu:         NOTRUN -> [SKIP][250] ([i915#8516])
   [250]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-10/igt@perf_pmu@rc6@other-idle-gt0.html

  * igt@prime_vgem@basic-write:
    - shard-dg2:          NOTRUN -> [SKIP][251] ([i915#3291] / [i915#3708])
   [251]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-5/igt@prime_vgem@basic-write.html

  * igt@prime_vgem@fence-write-hang:
    - shard-tglu:         NOTRUN -> [SKIP][252] ([fdo#109295])
   [252]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-7/igt@prime_vgem@fence-write-hang.html

  * igt@sysfs_heartbeat_interval@nopreempt@ccs0:
    - shard-mtlp:         [PASS][253] -> [FAIL][254] ([i915#6015]) +3 similar issues
   [253]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-mtlp-2/igt@sysfs_heartbeat_interval@nopreempt@ccs0.html
   [254]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-3/igt@sysfs_heartbeat_interval@nopreempt@ccs0.html

  * igt@v3d/v3d_submit_cl@single-out-sync:
    - shard-mtlp:         NOTRUN -> [SKIP][255] ([i915#2575]) +4 similar issues
   [255]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-8/igt@v3d/v3d_submit_cl@single-out-sync.html

  * igt@v3d/v3d_submit_csd@single-out-sync:
    - shard-tglu:         NOTRUN -> [SKIP][256] ([fdo#109315] / [i915#2575]) +4 similar issues
   [256]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-10/igt@v3d/v3d_submit_csd@single-out-sync.html

  * igt@v3d/v3d_wait_bo@map-bo-0ns:
    - shard-dg1:          NOTRUN -> [SKIP][257] ([i915#2575])
   [257]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-17/igt@v3d/v3d_wait_bo@map-bo-0ns.html

  * igt@v3d/v3d_wait_bo@used-bo-1ns:
    - shard-dg2:          NOTRUN -> [SKIP][258] ([i915#2575]) +3 similar issues
   [258]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-2/igt@v3d/v3d_wait_bo@used-bo-1ns.html
    - shard-rkl:          NOTRUN -> [SKIP][259] ([fdo#109315]) +4 similar issues
   [259]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-2/igt@v3d/v3d_wait_bo@used-bo-1ns.html

  * igt@vc4/vc4_perfmon@create-single-perfmon:
    - shard-tglu:         NOTRUN -> [SKIP][260] ([i915#2575]) +3 similar issues
   [260]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-5/igt@vc4/vc4_perfmon@create-single-perfmon.html

  * igt@vc4/vc4_purgeable_bo@mark-willneed:
    - shard-mtlp:         NOTRUN -> [SKIP][261] ([i915#7711]) +1 similar issue
   [261]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-5/igt@vc4/vc4_purgeable_bo@mark-willneed.html

  * igt@vc4/vc4_tiling@set-bad-flags:
    - shard-rkl:          NOTRUN -> [SKIP][262] ([i915#7711]) +1 similar issue
   [262]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-1/igt@vc4/vc4_tiling@set-bad-flags.html

  * igt@vc4/vc4_wait_seqno@bad-seqno-0ns:
    - shard-dg2:          NOTRUN -> [SKIP][263] ([i915#7711]) +3 similar issues
   [263]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-1/igt@vc4/vc4_wait_seqno@bad-seqno-0ns.html

  
#### Possible fixes ####

  * igt@drm_fdinfo@most-busy-check-all@rcs0:
    - shard-rkl:          [FAIL][264] ([i915#7742]) -> [PASS][265]
   [264]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-rkl-7/igt@drm_fdinfo@most-busy-check-all@rcs0.html
   [265]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-4/igt@drm_fdinfo@most-busy-check-all@rcs0.html

  * igt@gem_ctx_exec@basic-nohangcheck:
    - shard-tglu:         [FAIL][266] ([i915#6268]) -> [PASS][267]
   [266]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-tglu-5/igt@gem_ctx_exec@basic-nohangcheck.html
   [267]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-2/igt@gem_ctx_exec@basic-nohangcheck.html

  * igt@gem_eio@hibernate:
    - shard-tglu:         [ABORT][268] ([i915#7975] / [i915#8213] / [i915#8398]) -> [PASS][269]
   [268]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-tglu-10/igt@gem_eio@hibernate.html
   [269]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-6/igt@gem_eio@hibernate.html

  * igt@gem_eio@in-flight-contexts-1us:
    - shard-mtlp:         [ABORT][270] ([i915#8503]) -> [PASS][271] +1 similar issue
   [270]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-mtlp-8/igt@gem_eio@in-flight-contexts-1us.html
   [271]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-4/igt@gem_eio@in-flight-contexts-1us.html

  * igt@gem_exec_fair@basic-pace-share@rcs0:
    - shard-glk:          [FAIL][272] ([i915#2842]) -> [PASS][273] +1 similar issue
   [272]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-glk6/igt@gem_exec_fair@basic-pace-share@rcs0.html
   [273]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-glk8/igt@gem_exec_fair@basic-pace-share@rcs0.html

  * igt@gem_lmem_swapping@smem-oom@lmem0:
    - shard-dg2:          [TIMEOUT][274] ([i915#5493]) -> [PASS][275]
   [274]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-dg2-5/igt@gem_lmem_swapping@smem-oom@lmem0.html
   [275]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-7/igt@gem_lmem_swapping@smem-oom@lmem0.html

  * igt@gem_ppgtt@shrink-vs-evict-any:
    - shard-rkl:          [ABORT][276] -> [PASS][277]
   [276]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-rkl-1/igt@gem_ppgtt@shrink-vs-evict-any.html
   [277]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-7/igt@gem_ppgtt@shrink-vs-evict-any.html

  * igt@gem_workarounds@suspend-resume:
    - shard-dg2:          [FAIL][278] ([fdo#103375]) -> [PASS][279]
   [278]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-dg2-11/igt@gem_workarounds@suspend-resume.html
   [279]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-1/igt@gem_workarounds@suspend-resume.html

  * igt@i915_hangman@gt-engine-hang@vcs0:
    - shard-mtlp:         [FAIL][280] ([i915#7069]) -> [PASS][281]
   [280]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-mtlp-1/igt@i915_hangman@gt-engine-hang@vcs0.html
   [281]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-7/igt@i915_hangman@gt-engine-hang@vcs0.html

  * igt@i915_pm_rpm@dpms-mode-unset-non-lpsp:
    - shard-dg1:          [SKIP][282] ([i915#1397]) -> [PASS][283]
   [282]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-dg1-19/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html
   [283]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-15/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html

  * igt@i915_pm_rpm@dpms-non-lpsp:
    - shard-dg2:          [SKIP][284] ([i915#1397]) -> [PASS][285]
   [284]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-dg2-10/igt@i915_pm_rpm@dpms-non-lpsp.html
   [285]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-1/igt@i915_pm_rpm@dpms-non-lpsp.html

  * igt@i915_pm_rpm@system-suspend-devices:
    - shard-tglu:         [FAIL][286] ([i915#7940]) -> [PASS][287]
   [286]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-tglu-2/igt@i915_pm_rpm@system-suspend-devices.html
   [287]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-7/igt@i915_pm_rpm@system-suspend-devices.html

  * igt@i915_pm_rps@reset:
    - shard-tglu:         [INCOMPLETE][288] ([i915#8320]) -> [PASS][289]
   [288]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-tglu-5/igt@i915_pm_rps@reset.html
   [289]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-2/igt@i915_pm_rps@reset.html

  * igt@kms_async_flips@alternate-sync-async-flip@pipe-a-edp-1:
    - shard-mtlp:         [FAIL][290] ([i915#2521]) -> [PASS][291]
   [290]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-mtlp-6/igt@kms_async_flips@alternate-sync-async-flip@pipe-a-edp-1.html
   [291]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-6/igt@kms_async_flips@alternate-sync-async-flip@pipe-a-edp-1.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-async-flip:
    - shard-mtlp:         [FAIL][292] ([i915#3743]) -> [PASS][293] +1 similar issue
   [292]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-mtlp-1/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-async-flip.html
   [293]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-3/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-async-flip.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions:
    - shard-glk:          [FAIL][294] ([i915#2346]) -> [PASS][295]
   [294]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-glk5/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
   [295]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-glk1/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html

  * igt@kms_fbcon_fbt@fbc-suspend:
    - shard-apl:          [ABORT][296] ([i915#180]) -> [PASS][297]
   [296]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-apl1/igt@kms_fbcon_fbt@fbc-suspend.html
   [297]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-apl2/igt@kms_fbcon_fbt@fbc-suspend.html

  * igt@kms_frontbuffer_tracking@fbc-tiling-linear:
    - shard-dg2:          [FAIL][298] ([i915#6880]) -> [PASS][299] +2 similar issues
   [298]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-dg2-5/igt@kms_frontbuffer_tracking@fbc-tiling-linear.html
   [299]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-11/igt@kms_frontbuffer_tracking@fbc-tiling-linear.html

  * igt@kms_plane@pixel-format-source-clamping@pipe-b-planes:
    - shard-mtlp:         [FAIL][300] ([i915#1623]) -> [PASS][301]
   [300]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-mtlp-4/igt@kms_plane@pixel-format-source-clamping@pipe-b-planes.html
   [301]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-3/igt@kms_plane@pixel-format-source-clamping@pipe-b-planes.html

  * igt@kms_vblank@pipe-b-ts-continuation-dpms-suspend:
    - shard-tglu:         [ABORT][302] ([i915#5122]) -> [PASS][303]
   [302]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-tglu-6/igt@kms_vblank@pipe-b-ts-continuation-dpms-suspend.html
   [303]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-2/igt@kms_vblank@pipe-b-ts-continuation-dpms-suspend.html

  * igt@perf@enable-disable@0-rcs0:
    - shard-dg2:          [FAIL][304] ([i915#8724]) -> [PASS][305]
   [304]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-dg2-11/igt@perf@enable-disable@0-rcs0.html
   [305]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg2-7/igt@perf@enable-disable@0-rcs0.html

  * igt@perf_pmu@busy-double-start@rcs0:
    - shard-mtlp:         [FAIL][306] ([i915#4349]) -> [PASS][307]
   [306]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-mtlp-8/igt@perf_pmu@busy-double-start@rcs0.html
   [307]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-mtlp-7/igt@perf_pmu@busy-double-start@rcs0.html

  * igt@sysfs_heartbeat_interval@mixed@vecs0:
    - shard-glk:          [FAIL][308] ([i915#1731]) -> [PASS][309]
   [308]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-glk7/igt@sysfs_heartbeat_interval@mixed@vecs0.html
   [309]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-glk6/igt@sysfs_heartbeat_interval@mixed@vecs0.html

  
#### Warnings ####

  * igt@i915_pm_dc@dc9-dpms:
    - shard-tglu:         [SKIP][310] ([i915#4281]) -> [FAIL][311] ([i915#4275])
   [310]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-tglu-7/igt@i915_pm_dc@dc9-dpms.html
   [311]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-4/igt@i915_pm_dc@dc9-dpms.html

  * igt@i915_pm_rc6_residency@rc6-idle@bcs0:
    - shard-tglu:         [FAIL][312] ([i915#2681] / [i915#3591]) -> [WARN][313] ([i915#2681])
   [312]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-tglu-3/igt@i915_pm_rc6_residency@rc6-idle@bcs0.html
   [313]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-6/igt@i915_pm_rc6_residency@rc6-idle@bcs0.html

  * igt@i915_pm_rc6_residency@rc6-idle@rcs0:
    - shard-tglu:         [WARN][314] ([i915#2681]) -> [FAIL][315] ([i915#2681] / [i915#3591]) +1 similar issue
   [314]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-tglu-3/igt@i915_pm_rc6_residency@rc6-idle@rcs0.html
   [315]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-tglu-6/igt@i915_pm_rc6_residency@rc6-idle@rcs0.html

  * igt@kms_fbcon_fbt@psr:
    - shard-rkl:          [SKIP][316] ([i915#3955]) -> [SKIP][317] ([fdo#110189] / [i915#3955])
   [316]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-rkl-4/igt@kms_fbcon_fbt@psr.html
   [317]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-2/igt@kms_fbcon_fbt@psr.html

  * igt@kms_multipipe_modeset@basic-max-pipe-crc-check:
    - shard-rkl:          [SKIP][318] ([i915#4816]) -> [SKIP][319] ([i915#4070] / [i915#4816])
   [318]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-rkl-7/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
   [319]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-rkl-1/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html

  * igt@kms_psr@cursor_plane_move:
    - shard-dg1:          [SKIP][320] ([i915#1072] / [i915#4078]) -> [SKIP][321] ([i915#1072])
   [320]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-dg1-13/igt@kms_psr@cursor_plane_move.html
   [321]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-19/igt@kms_psr@cursor_plane_move.html

  * igt@kms_psr@primary_page_flip:
    - shard-dg1:          [SKIP][322] ([i915#1072]) -> [SKIP][323] ([i915#1072] / [i915#4078]) +1 similar issue
   [322]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13436/shard-dg1-15/igt@kms_psr@primary_page_flip.html
   [323]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/shard-dg1-12/igt@kms_psr@primary_page_flip.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
  [fdo#109279]: https://bugs.freedesktop.org/show_bug.cgi?id=109279
  [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
  [fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
  [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
  [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
  [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
  [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
  [fdo#111767]: https://bugs.freedesktop.org/show_bug.cgi?id=111767
  [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
  [fdo#112283]: https://bugs.freedesktop.org/show_bug.cgi?id=112283
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099
  [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
  [i915#1623]: https://gitlab.freedesktop.org/drm/intel/issues/1623
  [i915#1731]: https://gitlab.freedesktop.org/drm/intel/issues/1731
  [i915#1769]: https://gitlab.freedesktop.org/drm/intel/issues/1769
  [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
  [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
  [i915#1937]: https://gitlab.freedesktop.org/drm/intel/issues/1937
  [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
  [i915#2017]: https://gitlab.freedesktop.org/drm/intel/issues/2017
  [i915#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122
  [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
  [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
  [i915#2410]: https://gitlab.freedesktop.org/drm/intel/issues/2410
  [i915#2521]: https://gitlab.freedesktop.org/drm/intel/issues/2521
  [i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
  [i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575
  [i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
  [i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658
  [i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
  [i915#2681]: https://gitlab.freedesktop.org/drm/intel/issues/2681
  [i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
  [i915#284]: https://gitlab.freedesktop.org/drm/intel/issues/284
  [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
  [i915#2846]: https://gitlab.freedesktop.org/drm/intel/issues/2846
  [i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
  [i915#3023]: https://gitlab.freedesktop.org/drm/intel/issues/3023
  [i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
  [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
  [i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
  [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
  [i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
  [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
  [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
  [i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
  [i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3582]: https://gitlab.freedesktop.org/drm/intel/issues/3582
  [i915#3591]: https://gitlab.freedesktop.org/drm/intel/issues/3591
  [i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
  [i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
  [i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
  [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
  [i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734
  [i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
  [i915#3743]: https://gitlab.freedesktop.org/drm/intel/issues/3743
  [i915#3778]: https://gitlab.freedesktop.org/drm/intel/issues/3778
  [i915#3804]: https://gitlab.freedesktop.org/drm/intel/issues/3804
  [i915#3826]: https://gitlab.freedesktop.org/drm/intel/issues/3826
  [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
  [i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955
  [i915#3989]: https://gitlab.freedesktop.org/drm/intel/issues/3989
  [i915#404]: https://gitlab.freedesktop.org/drm/intel/issues/404
  [i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078
  [i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
  [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
  [i915#4087]: https://gitlab.freedesktop.org/drm/intel/issues/4087
  [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
  [i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213
  [i915#4235]: https://gitlab.freedesktop.org/drm/intel/issues/4235
  [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#4275]: https://gitlab.freedesktop.org/drm/intel/issues/4275
  [i915#4281]: https://gitlab.freedesktop.org/drm/intel/issues/4281
  [i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
  [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
  [i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
  [i915#4816]: https://gitlab.freedesktop.org/drm/intel/issues/4816
  [i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
  [i915#4854]: https://gitlab.freedesktop.org/drm/intel/issues/4854
  [i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
  [i915#4879]: https://gitlab.freedesktop.org/drm/intel/issues/4879
  [i915#4884]: https://gitlab.freedesktop.org/drm/intel/issues/4884
  [i915#5122]: https://gitlab.freedesktop.org/drm/intel/issues/5122
  [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
  [i915#5190]: https://gitlab.freedesktop.org/drm/intel/issues/5190
  [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
  [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
  [i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
  [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
  [i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354
  [i915#5465]: https://gitlab.freedesktop.org/drm/intel/issues/5465
  [i915#5493]: https://gitlab.freedesktop.org/drm/intel/issues/5493
  [i915#5566]: https://gitlab.freedesktop.org/drm/intel/issues/5566
  [i915#5793]: https://gitlab.freedesktop.org/drm/intel/issues/5793
  [i915#5892]: https://gitlab.freedesktop.org/drm/intel/issues/5892
  [i915#6015]: https://gitlab.freedesktop.org/drm/intel/issues/6015
  [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
  [i915#6121]: https://gitlab.freedesktop.org/drm/intel/issues/6121
  [i915#6122]: https://gitlab.freedesktop.org/drm/intel/issues/6122
  [i915#6227]: https://gitlab.freedesktop.org/drm/intel/issues/6227
  [i915#6245]: https://gitlab.freedesktop.org/drm/intel/issues/6245
  [i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268
  [i915#6524]: https://gitlab.freedesktop.org/drm/intel/issues/6524
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#6645]: https://gitlab.freedesktop.org/drm/intel/issues/6645
  [i915#6763]: https://gitlab.freedesktop.org/drm/intel/issues/6763
  [i915#6768]: https://gitlab.freedesktop.org/drm/intel/issues/6768
  [i915#6805]: https://gitlab.freedesktop.org/drm/intel/issues/6805
  [i915#6806]: https://gitlab.freedesktop.org/drm/intel/issues/6806
  [i915#6880]: https://gitlab.freedesktop.org/drm/intel/issues/6880
  [i915#7016]: https://gitlab.freedesktop.org/drm/intel/issues/7016
  [i915#7069]: https://gitlab.freedesktop.org/drm/intel/issues/7069
  [i915#7116]: https://gitlab.freedesktop.org/drm/intel/issues/7116
  [i915#7118]: https://gitlab.freedesktop.org/drm/intel/issues/7118
  [i915#7173]: https://gitlab.freedesktop.org/drm/intel/issues/7173
  [i915#7392]: https://gitlab.freedesktop.org/drm/intel/issues/7392
  [i915#7461]: https://gitlab.freedesktop.org/drm/intel/issues/7461
  [i915#7561]: https://gitlab.freedesktop.org/drm/intel/issues/7561
  [i915#7697]: https://gitlab.freedesktop.org/drm/intel/issues/7697
  [i915#7701]: https://gitlab.freedesktop.org/drm/intel/issues/7701
  [i915#7711]: https://gitlab.freedesktop.org/drm/intel/issues/7711
  [i915#7742]: https://gitlab.freedesktop.org/drm/intel/issues/7742
  [i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
  [i915#7892]: https://gitlab.freedesktop.org/drm/intel/issues/7892
  [i915#7916]: https://gitlab.freedesktop.org/drm/intel/issues/7916
  [i915#7921]: https://gitlab.freedesktop.org/drm/intel/issues/7921
  [i915#7940]: https://gitlab.freedesktop.org/drm/intel/issues/7940
  [i915#7975]: https://gitlab.freedesktop.org/drm/intel/issues/7975
  [i915#8018]: https://gitlab.freedesktop.org/drm/intel/issues/8018
  [i915#8131]: https://gitlab.freedesktop.org/drm/intel/issues/8131
  [i915#8211]: https://gitlab.freedesktop.org/drm/intel/issues/8211
  [i915#8213]: https://gitlab.freedesktop.org/drm/intel/issues/8213
  [i915#8228]: https://gitlab.freedesktop.org/drm/intel/issues/8228
  [i915#8234]: https://gitlab.freedesktop.org/drm/intel/issues/8234
  [i915#8247]: https://gitlab.freedesktop.org/drm/intel/issues/8247
  [i915#8248]: https://gitlab.freedesktop.org/drm/intel/issues/8248
  [i915#8292]: https://gitlab.freedesktop.org/drm/intel/issues/8292
  [i915#8320]: https://gitlab.freedesktop.org/drm/intel/issues/8320
  [i915#8381]: https://gitlab.freedesktop.org/drm/intel/issues/8381
  [i915#8398]: https://gitlab.freedesktop.org/drm/intel/issues/8398
  [i915#8399]: https://gitlab.freedesktop.org/drm/intel/issues/8399
  [i915#8403]: https://gitlab.freedesktop.org/drm/intel/issues/8403
  [i915#8414]: https://gitlab.freedesktop.org/drm/intel/issues/8414
  [i915#8428]: https://gitlab.freedesktop.org/drm/intel/issues/8428
  [i915#8489]: https://gitlab.freedesktop.org/drm/intel/issues/8489
  [i915#8503]: https://gitlab.freedesktop.org/drm/intel/issues/8503
  [i915#8516]: https://gitlab.freedesktop.org/drm/intel/issues/8516
  [i915#8555]: https://gitlab.freedesktop.org/drm/intel/issues/8555
  [i915#8562]: https://gitlab.freedesktop.org/drm/intel/issues/8562
  [i915#8661]: https://gitlab.freedesktop.org/drm/intel/issues/8661
  [i915#8668]: https://gitlab.freedesktop.org/drm/intel/issues/8668
  [i915#8708]: https://gitlab.freedesktop.org/drm/intel/issues/8708
  [i915#8724]: https://gitlab.freedesktop.org/drm/intel/issues/8724
  [i915#8805]: https://gitlab.freedesktop.org/drm/intel/issues/8805
  [i915#8806]: https://gitlab.freedesktop.org/drm/intel/issues/8806
  [i915#8810]: https://gitlab.freedesktop.org/drm/intel/issues/8810
  [i915#8812]: https://gitlab.freedesktop.org/drm/intel/issues/8812
  [i915#8814]: https://gitlab.freedesktop.org/drm/intel/issues/8814
  [i915#8841]: https://gitlab.freedesktop.org/drm/intel/issues/8841
  [i915#8925]: https://gitlab.freedesktop.org/drm/intel/issues/8925


Build changes
-------------

  * CI: CI-20190529 -> None
  * IGT: IGT_7408 -> IGTPW_9481
  * Piglit: piglit_4509 -> None

  CI-20190529: 20190529
  CI_DRM_13436: 0727bfdb8be472a249839720d845b1c45b8ed611 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_9481: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/index.html
  IGT_7408: 93482edd02839f9eb6ceffca9418d03f570f34f3 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9481/index.html

[-- Attachment #2: Type: text/html, Size: 103789 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [igt-dev] [PATCH v2 1/2] igt_kms: add hotspot plane property
  2023-07-28 14:37 ` [igt-dev] [PATCH v2 1/2] igt_kms: add hotspot plane property Albert Esteve
@ 2023-07-31  5:16   ` Zbigniew Kempczyński
  2023-07-31  6:28   ` Modem, Bhanuprakash
  1 sibling, 0 replies; 16+ messages in thread
From: Zbigniew Kempczyński @ 2023-07-31  5:16 UTC (permalink / raw)
  To: Albert Esteve; +Cc: igt-dev, belmouss, javierm

On Fri, Jul 28, 2023 at 04:37:41PM +0200, Albert Esteve wrote:
> Introduce LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT
> capability definition until patched drm.h uapi header
> is upstreamed and lands on IGT.
> 
> CURSOR_PLANE_HOTSPOT capability is enabled
> conditionally, and then tracked in the igt_display
> struct.
> 
> Add HOTSPOT_X and HOTSPOT_Y properties
> to the atomic_plane_properties struct.
> 
> Signed-off-by: Albert Esteve <aesteve@redhat.com>
> ---
>  lib/igt_kms.c | 10 ++++++++++
>  lib/igt_kms.h | 11 ++++++++++-
>  2 files changed, 20 insertions(+), 1 deletion(-)
> 
> diff --git a/lib/igt_kms.c b/lib/igt_kms.c
> index f2b0eed57..73119d0e5 100644
> --- a/lib/igt_kms.c
> +++ b/lib/igt_kms.c
> @@ -601,6 +601,8 @@ const char * const igt_plane_prop_names[IGT_NUM_PLANE_PROPS] = {
>  	[IGT_PLANE_CRTC_Y] = "CRTC_Y",
>  	[IGT_PLANE_CRTC_W] = "CRTC_W",
>  	[IGT_PLANE_CRTC_H] = "CRTC_H",
> +	[IGT_PLANE_HOTSPOT_X] = "HOTSPOT_X",
> +	[IGT_PLANE_HOTSPOT_Y] = "HOTSPOT_Y",
>  	[IGT_PLANE_FB_ID] = "FB_ID",
>  	[IGT_PLANE_CRTC_ID] = "CRTC_ID",
>  	[IGT_PLANE_IN_FENCE_FD] = "IN_FENCE_FD",
> @@ -2296,6 +2298,11 @@ static void igt_plane_reset(igt_plane_t *plane)
>  	if (igt_plane_has_prop(plane, IGT_PLANE_SCALING_FILTER))
>  		igt_plane_set_prop_enum(plane, IGT_PLANE_SCALING_FILTER, "Default");
>  
> +	if (igt_plane_has_prop(plane, IGT_PLANE_HOTSPOT_X))
> +		igt_plane_set_prop_value(plane, IGT_PLANE_HOTSPOT_X, 0);
> +	if (igt_plane_has_prop(plane, IGT_PLANE_HOTSPOT_Y))
> +		igt_plane_set_prop_value(plane, IGT_PLANE_HOTSPOT_Y, 0);
> +
>  	igt_plane_clear_prop_changed(plane, IGT_PLANE_IN_FENCE_FD);
>  	plane->values[IGT_PLANE_IN_FENCE_FD] = ~0ULL;
>  	plane->gem_handle = 0;
> @@ -2679,6 +2686,9 @@ void igt_display_require(igt_display_t *display, int drm_fd)
>  	drmSetClientCap(drm_fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
>  	if (drmSetClientCap(drm_fd, DRM_CLIENT_CAP_ATOMIC, 1) == 0)
>  		display->is_atomic = 1;
> +	

Trailing tab.

> +	if (drmSetClientCap(drm_fd, LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT, 1) == 0)
> +		display->set_hotspots = 1;
>  
>  	plane_resources = drmModeGetPlaneResources(display->drm_fd);
>  	igt_assert(plane_resources);
> diff --git a/lib/igt_kms.h b/lib/igt_kms.h
> index 1b6988c17..cf0a6d82b 100644
> --- a/lib/igt_kms.h
> +++ b/lib/igt_kms.h
> @@ -41,6 +41,12 @@
>  
>  /* Low-level helpers with kmstest_ prefix */
>  
> +/**
> + * Clients which do set cursor hotspot and treat the cursor plane
> + * like a mouse cursor should set this property.
> + */
> +#define LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT	6
> +
>  /**
>   * pipe:
>   * @PIPE_NONE: Invalid pipe, used for disconnecting a output from a pipe.
> @@ -318,7 +324,9 @@ enum igt_atomic_plane_properties {
>         IGT_PLANE_ZPOS,
>         IGT_PLANE_FB_DAMAGE_CLIPS,
>         IGT_PLANE_SCALING_FILTER,
> -       IGT_NUM_PLANE_PROPS
> +       IGT_PLANE_HOTSPOT_X,
> +       IGT_PLANE_HOTSPOT_Y,
> +       IGT_NUM_PLANE_PROPS      

Trailing spaces.

Rest is ok for me, fix nits above and mark with:

Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>

--
Zbigniew

>  };
>  
>  /**
> @@ -448,6 +456,7 @@ struct igt_display {
>  	igt_pipe_t *pipes;
>  	bool has_cursor_plane;
>  	bool is_atomic;
> +	bool set_hotspots;
>  	bool first_commit;
>  
>  	uint64_t *modifiers;
> -- 
> 2.40.0
> 

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [igt-dev] [PATCH v2 2/2] kms_cursor_legacy: modeset-atomic-cursor-hotspot
  2023-07-28 14:37 ` [igt-dev] [PATCH v2 2/2] kms_cursor_legacy: modeset-atomic-cursor-hotspot Albert Esteve
@ 2023-07-31  5:18   ` Zbigniew Kempczyński
  2023-07-31  7:28   ` Modem, Bhanuprakash
  1 sibling, 0 replies; 16+ messages in thread
From: Zbigniew Kempczyński @ 2023-07-31  5:18 UTC (permalink / raw)
  To: Albert Esteve; +Cc: igt-dev, belmouss, javierm

On Fri, Jul 28, 2023 at 04:37:42PM +0200, Albert Esteve wrote:
> Add a test for modesetting an atomic cursor plane
> hotspot property. Test added to verify the kernel
> patch at [1]. The test first checks if the
> plane is atomic and has the hotspot property.
> and if it does, it sets different random hot_x
> and hot_y values and checks that it is updated
> correctly after an atomic commit.
> 
> [1] https://lists.freedesktop.org/archives/dri-devel/2023-July/414509.html
> 
> Signed-off-by: Albert Esteve <aesteve@redhat.com>
> ---
>  tests/kms_cursor_legacy.c | 76 +++++++++++++++++++++++++++++++++++++++
>  1 file changed, 76 insertions(+)
> 
> diff --git a/tests/kms_cursor_legacy.c b/tests/kms_cursor_legacy.c
> index 1ebac9d31..ba68dc481 100644
> --- a/tests/kms_cursor_legacy.c
> +++ b/tests/kms_cursor_legacy.c
> @@ -1607,6 +1607,71 @@ static void flip_vs_cursor_busy_crc(igt_display_t *display, bool atomic)
>  	put_ahnd(ahnd);
>  }
>  
> +static void modeset_atomic_cursor_hotspot(igt_display_t *display)
> +{
> +	struct igt_fb cursor_fb;
> +	igt_output_t *output;
> +	enum pipe pipe;
> +	igt_plane_t *cursor = NULL;
> +	bool has_hotspot_prop;
> +	uint64_t cursor_width, cursor_height;
> +	uint32_t hot_x, hot_y, prev_hot_x, prev_hot_y;
> +
> +	igt_require(display->is_atomic);
> +	igt_require(display->set_hotspots);
> +	pipe = find_connected_pipe(display, false, &output);
> +	igt_require(output);
> +
> +	igt_info("Using pipe %s & %s\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output));
> +
> +	cursor_width = cursor_height = 64;
> +	igt_create_color_fb(display->drm_fd, cursor_width, cursor_height, DRM_FORMAT_ARGB8888,
> +			    DRM_FORMAT_MOD_LINEAR, 1., 1., 1., &cursor_fb);
> +
> +	igt_display_commit2(display, COMMIT_ATOMIC);
> +
> +	cursor = set_cursor_on_pipe(display, pipe, &cursor_fb);
> +
> +	has_hotspot_prop = cursor->props[IGT_PLANE_HOTSPOT_X] ||
> +		cursor->props[IGT_PLANE_HOTSPOT_Y];
> +	igt_require_f(has_hotspot_prop, "Cursor plane lacks the hotspot property");
> +
> +	/*
> +	 * Change the hotspot coordinates randomly and check that the property
> +	 * is updated accordingly.
> +	 */
> +	srand(time(NULL));
> +	for (int i = 0; i < 20; i++) {
> +		hot_x = rand() % cursor_width;
> +		hot_y = rand() % cursor_height;
> +		prev_hot_x = igt_plane_get_prop(cursor, IGT_PLANE_HOTSPOT_X);
> +		prev_hot_y = igt_plane_get_prop(cursor, IGT_PLANE_HOTSPOT_Y);
> +		igt_debug("Update cursor hotspot: (%d, %d)\n", hot_x, hot_y);
> +		

Trailing tabs, please remove them.

For this:

Acked-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>

--
Zbigniew

> +		/* Set cursor hotspot property values */
> +		igt_output_set_prop_value(cursor, IGT_PLANE_HOTSPOT_X, hot_x);
> +		igt_output_set_prop_value(cursor, IGT_PLANE_HOTSPOT_Y, hot_y);
> +
> +		/* Properties are not updated until the commit */
> +		igt_assert_eq(igt_plane_get_prop(cursor, IGT_PLANE_HOTSPOT_X), prev_hot_x);
> +		igt_assert_eq(igt_plane_get_prop(cursor, IGT_PLANE_HOTSPOT_Y), prev_hot_y);
> +
> +		igt_display_commit2(display, COMMIT_ATOMIC);
> +
> +		/* After the commit, the cursor hotspot property values are updated */
> +		igt_assert_eq(igt_plane_get_prop(cursor, IGT_PLANE_HOTSPOT_X), hot_x);
> +		igt_assert_eq(igt_plane_get_prop(cursor, IGT_PLANE_HOTSPOT_Y), hot_y);
> +	}
> +
> +	/* Clean-up */
> +	igt_plane_set_fb(cursor, NULL);
> +	igt_output_set_pipe(output, PIPE_NONE);
> +	igt_display_commit2(display, COMMIT_ATOMIC);
> +
> +	igt_remove_fb(display->drm_fd, &cursor_fb);
> +}
> +
>  igt_main
>  {
>  	const int ncpus = sysconf(_SC_NPROCESSORS_ONLN);
> @@ -1681,6 +1746,17 @@ igt_main
>  			nonblocking_modeset_vs_cursor(&display, 16);
>  	}
>  
> +	igt_describe("Test changes the cursor hotspot and checks that the "
> +		      "property is updated accordignly");
> +	igt_subtest_group {
> +		igt_fixture {
> +			igt_display_require_output(&display);
> +		}
> +
> +		igt_subtest("modeset-atomic-cursor-hotspot")
> +			modeset_atomic_cursor_hotspot(&display);
> +	}
> +
>  	igt_describe("This test executes flips on both CRTCs "
>  		     "while running cursor updates in parallel");
>  	igt_subtest_group {
> -- 
> 2.40.0
>

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [igt-dev] [PATCH v2 1/2] igt_kms: add hotspot plane property
  2023-07-28 14:37 ` [igt-dev] [PATCH v2 1/2] igt_kms: add hotspot plane property Albert Esteve
  2023-07-31  5:16   ` Zbigniew Kempczyński
@ 2023-07-31  6:28   ` Modem, Bhanuprakash
  2023-07-31  8:12     ` Albert Esteve
  1 sibling, 1 reply; 16+ messages in thread
From: Modem, Bhanuprakash @ 2023-07-31  6:28 UTC (permalink / raw)
  To: Albert Esteve, igt-dev; +Cc: belmouss, javierm

Hello,

On Fri-28-07-2023 08:07 pm, Albert Esteve wrote:
> Introduce LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT
> capability definition until patched drm.h uapi header
> is upstreamed and lands on IGT.
> 
> CURSOR_PLANE_HOTSPOT capability is enabled
> conditionally, and then tracked in the igt_display
> struct.
> 
> Add HOTSPOT_X and HOTSPOT_Y properties
> to the atomic_plane_properties struct.
> 
> Signed-off-by: Albert Esteve <aesteve@redhat.com>
> ---
>   lib/igt_kms.c | 10 ++++++++++
>   lib/igt_kms.h | 11 ++++++++++-
>   2 files changed, 20 insertions(+), 1 deletion(-)
> 
> diff --git a/lib/igt_kms.c b/lib/igt_kms.c
> index f2b0eed57..73119d0e5 100644
> --- a/lib/igt_kms.c
> +++ b/lib/igt_kms.c
> @@ -601,6 +601,8 @@ const char * const igt_plane_prop_names[IGT_NUM_PLANE_PROPS] = {
>   	[IGT_PLANE_CRTC_Y] = "CRTC_Y",
>   	[IGT_PLANE_CRTC_W] = "CRTC_W",
>   	[IGT_PLANE_CRTC_H] = "CRTC_H",
> +	[IGT_PLANE_HOTSPOT_X] = "HOTSPOT_X",
> +	[IGT_PLANE_HOTSPOT_Y] = "HOTSPOT_Y",
>   	[IGT_PLANE_FB_ID] = "FB_ID",
>   	[IGT_PLANE_CRTC_ID] = "CRTC_ID",
>   	[IGT_PLANE_IN_FENCE_FD] = "IN_FENCE_FD",
> @@ -2296,6 +2298,11 @@ static void igt_plane_reset(igt_plane_t *plane)
>   	if (igt_plane_has_prop(plane, IGT_PLANE_SCALING_FILTER))
>   		igt_plane_set_prop_enum(plane, IGT_PLANE_SCALING_FILTER, "Default");
>   
> +	if (igt_plane_has_prop(plane, IGT_PLANE_HOTSPOT_X))
> +		igt_plane_set_prop_value(plane, IGT_PLANE_HOTSPOT_X, 0);
> +	if (igt_plane_has_prop(plane, IGT_PLANE_HOTSPOT_Y))
> +		igt_plane_set_prop_value(plane, IGT_PLANE_HOTSPOT_Y, 0);
> +
>   	igt_plane_clear_prop_changed(plane, IGT_PLANE_IN_FENCE_FD);
>   	plane->values[IGT_PLANE_IN_FENCE_FD] = ~0ULL;
>   	plane->gem_handle = 0;
> @@ -2679,6 +2686,9 @@ void igt_display_require(igt_display_t *display, int drm_fd)
>   	drmSetClientCap(drm_fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
>   	if (drmSetClientCap(drm_fd, DRM_CLIENT_CAP_ATOMIC, 1) == 0)
>   		display->is_atomic = 1;
> +	
> +	if (drmSetClientCap(drm_fd, LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT, 1) == 0)
> +		display->set_hotspots = 1;

Any special reason to add this to display struct?
IMHO, it is better to handle it at test level.

- Bhanu

>   
>   	plane_resources = drmModeGetPlaneResources(display->drm_fd);
>   	igt_assert(plane_resources);
> diff --git a/lib/igt_kms.h b/lib/igt_kms.h
> index 1b6988c17..cf0a6d82b 100644
> --- a/lib/igt_kms.h
> +++ b/lib/igt_kms.h
> @@ -41,6 +41,12 @@
>   
>   /* Low-level helpers with kmstest_ prefix */
>   
> +/**
> + * Clients which do set cursor hotspot and treat the cursor plane
> + * like a mouse cursor should set this property.
> + */
> +#define LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT	6
> +
>   /**
>    * pipe:
>    * @PIPE_NONE: Invalid pipe, used for disconnecting a output from a pipe.
> @@ -318,7 +324,9 @@ enum igt_atomic_plane_properties {
>          IGT_PLANE_ZPOS,
>          IGT_PLANE_FB_DAMAGE_CLIPS,
>          IGT_PLANE_SCALING_FILTER,
> -       IGT_NUM_PLANE_PROPS
> +       IGT_PLANE_HOTSPOT_X,
> +       IGT_PLANE_HOTSPOT_Y,
> +       IGT_NUM_PLANE_PROPS
>   };
>   
>   /**
> @@ -448,6 +456,7 @@ struct igt_display {
>   	igt_pipe_t *pipes;
>   	bool has_cursor_plane;
>   	bool is_atomic;
> +	bool set_hotspots;
>   	bool first_commit;
>   
>   	uint64_t *modifiers;

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [igt-dev] [PATCH v2 2/2] kms_cursor_legacy: modeset-atomic-cursor-hotspot
  2023-07-28 14:37 ` [igt-dev] [PATCH v2 2/2] kms_cursor_legacy: modeset-atomic-cursor-hotspot Albert Esteve
  2023-07-31  5:18   ` Zbigniew Kempczyński
@ 2023-07-31  7:28   ` Modem, Bhanuprakash
  2023-07-31  8:18     ` Albert Esteve
  1 sibling, 1 reply; 16+ messages in thread
From: Modem, Bhanuprakash @ 2023-07-31  7:28 UTC (permalink / raw)
  To: Albert Esteve, igt-dev; +Cc: belmouss, javierm

Hello,

On Fri-28-07-2023 08:07 pm, Albert Esteve wrote:
> Add a test for modesetting an atomic cursor plane
> hotspot property. Test added to verify the kernel
> patch at [1]. The test first checks if the
> plane is atomic and has the hotspot property.
> and if it does, it sets different random hot_x
> and hot_y values and checks that it is updated
> correctly after an atomic commit.
> 
> [1] https://lists.freedesktop.org/archives/dri-devel/2023-July/414509.html
> 
> Signed-off-by: Albert Esteve <aesteve@redhat.com>
> ---
>   tests/kms_cursor_legacy.c | 76 +++++++++++++++++++++++++++++++++++++++
>   1 file changed, 76 insertions(+)
> 
> diff --git a/tests/kms_cursor_legacy.c b/tests/kms_cursor_legacy.c
> index 1ebac9d31..ba68dc481 100644
> --- a/tests/kms_cursor_legacy.c
> +++ b/tests/kms_cursor_legacy.c
> @@ -1607,6 +1607,71 @@ static void flip_vs_cursor_busy_crc(igt_display_t *display, bool atomic)
>   	put_ahnd(ahnd);
>   }
>   
> +static void modeset_atomic_cursor_hotspot(igt_display_t *display)
> +{
> +	struct igt_fb cursor_fb;
> +	igt_output_t *output;
> +	enum pipe pipe;
> +	igt_plane_t *cursor = NULL;
> +	bool has_hotspot_prop;
> +	uint64_t cursor_width, cursor_height;
> +	uint32_t hot_x, hot_y, prev_hot_x, prev_hot_y;
> +
> +	igt_require(display->is_atomic);
> +	igt_require(display->set_hotspots);
> +	pipe = find_connected_pipe(display, false, &output);
> +	igt_require(output);
> +
> +	igt_info("Using pipe %s & %s\n",
> +		 kmstest_pipe_name(pipe), igt_output_name(output));
> +
> +	cursor_width = cursor_height = 64;
> +	igt_create_color_fb(display->drm_fd, cursor_width, cursor_height, DRM_FORMAT_ARGB8888,
> +			    DRM_FORMAT_MOD_LINEAR, 1., 1., 1., &cursor_fb);
> +
> +	igt_display_commit2(display, COMMIT_ATOMIC);
> +
> +	cursor = set_cursor_on_pipe(display, pipe, &cursor_fb);
> +
> +	has_hotspot_prop = cursor->props[IGT_PLANE_HOTSPOT_X] ||
> +		cursor->props[IGT_PLANE_HOTSPOT_Y];
> +	igt_require_f(has_hotspot_prop, "Cursor plane lacks the hotspot property");
> +
> +	/*
> +	 * Change the hotspot coordinates randomly and check that the property
> +	 * is updated accordingly.
> +	 */
> +	srand(time(NULL));
> +	for (int i = 0; i < 20; i++) {
> +		hot_x = rand() % cursor_width;
> +		hot_y = rand() % cursor_height;
> +		prev_hot_x = igt_plane_get_prop(cursor, IGT_PLANE_HOTSPOT_X);
> +		prev_hot_y = igt_plane_get_prop(cursor, IGT_PLANE_HOTSPOT_Y);
> +		igt_debug("Update cursor hotspot: (%d, %d)\n", hot_x, hot_y);
> +		
> +		/* Set cursor hotspot property values */
> +		igt_output_set_prop_value(cursor, IGT_PLANE_HOTSPOT_X, hot_x);
> +		igt_output_set_prop_value(cursor, IGT_PLANE_HOTSPOT_Y, hot_y);
> +
> +		/* Properties are not updated until the commit */
> +		igt_assert_eq(igt_plane_get_prop(cursor, IGT_PLANE_HOTSPOT_X), prev_hot_x);
> +		igt_assert_eq(igt_plane_get_prop(cursor, IGT_PLANE_HOTSPOT_Y), prev_hot_y);

I think, this check is not required since it is an obvious.

> +
> +		igt_display_commit2(display, COMMIT_ATOMIC);
> +
> +		/* After the commit, the cursor hotspot property values are updated */
> +		igt_assert_eq(igt_plane_get_prop(cursor, IGT_PLANE_HOTSPOT_X), hot_x);
> +		igt_assert_eq(igt_plane_get_prop(cursor, IGT_PLANE_HOTSPOT_Y), hot_y);
> +	}
> +
> +	/* Clean-up */
> +	igt_plane_set_fb(cursor, NULL);
> +	igt_output_set_pipe(output, PIPE_NONE);

We need to cleanup/set to default hotspot before exiting the subtest.

- Bhanu

> +	igt_display_commit2(display, COMMIT_ATOMIC);
> +
> +	igt_remove_fb(display->drm_fd, &cursor_fb);
> +}
> +
>   igt_main
>   {
>   	const int ncpus = sysconf(_SC_NPROCESSORS_ONLN);
> @@ -1681,6 +1746,17 @@ igt_main
>   			nonblocking_modeset_vs_cursor(&display, 16);
>   	}
>   
> +	igt_describe("Test changes the cursor hotspot and checks that the "
> +		      "property is updated accordignly");
> +	igt_subtest_group {
> +		igt_fixture {
> +			igt_display_require_output(&display);
> +		}
> +
> +		igt_subtest("modeset-atomic-cursor-hotspot")
> +			modeset_atomic_cursor_hotspot(&display);
> +	}
> +
>   	igt_describe("This test executes flips on both CRTCs "
>   		     "while running cursor updates in parallel");
>   	igt_subtest_group {

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [igt-dev] [PATCH v2 1/2] igt_kms: add hotspot plane property
  2023-07-31  6:28   ` Modem, Bhanuprakash
@ 2023-07-31  8:12     ` Albert Esteve
  2023-07-31  8:48       ` Modem, Bhanuprakash
  0 siblings, 1 reply; 16+ messages in thread
From: Albert Esteve @ 2023-07-31  8:12 UTC (permalink / raw)
  To: Modem, Bhanuprakash; +Cc: igt-dev, belmouss, javierm

[-- Attachment #1: Type: text/plain, Size: 4052 bytes --]

On Mon, Jul 31, 2023 at 8:30 AM Modem, Bhanuprakash <
bhanuprakash.modem@intel.com> wrote:

> Hello,
>
> On Fri-28-07-2023 08:07 pm, Albert Esteve wrote:
> > Introduce LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT
> > capability definition until patched drm.h uapi header
> > is upstreamed and lands on IGT.
> >
> > CURSOR_PLANE_HOTSPOT capability is enabled
> > conditionally, and then tracked in the igt_display
> > struct.
> >
> > Add HOTSPOT_X and HOTSPOT_Y properties
> > to the atomic_plane_properties struct.
> >
> > Signed-off-by: Albert Esteve <aesteve@redhat.com>
> > ---
> >   lib/igt_kms.c | 10 ++++++++++
> >   lib/igt_kms.h | 11 ++++++++++-
> >   2 files changed, 20 insertions(+), 1 deletion(-)
> >
> > diff --git a/lib/igt_kms.c b/lib/igt_kms.c
> > index f2b0eed57..73119d0e5 100644
> > --- a/lib/igt_kms.c
> > +++ b/lib/igt_kms.c
> > @@ -601,6 +601,8 @@ const char * const
> igt_plane_prop_names[IGT_NUM_PLANE_PROPS] = {
> >       [IGT_PLANE_CRTC_Y] = "CRTC_Y",
> >       [IGT_PLANE_CRTC_W] = "CRTC_W",
> >       [IGT_PLANE_CRTC_H] = "CRTC_H",
> > +     [IGT_PLANE_HOTSPOT_X] = "HOTSPOT_X",
> > +     [IGT_PLANE_HOTSPOT_Y] = "HOTSPOT_Y",
> >       [IGT_PLANE_FB_ID] = "FB_ID",
> >       [IGT_PLANE_CRTC_ID] = "CRTC_ID",
> >       [IGT_PLANE_IN_FENCE_FD] = "IN_FENCE_FD",
> > @@ -2296,6 +2298,11 @@ static void igt_plane_reset(igt_plane_t *plane)
> >       if (igt_plane_has_prop(plane, IGT_PLANE_SCALING_FILTER))
> >               igt_plane_set_prop_enum(plane, IGT_PLANE_SCALING_FILTER,
> "Default");
> >
> > +     if (igt_plane_has_prop(plane, IGT_PLANE_HOTSPOT_X))
> > +             igt_plane_set_prop_value(plane, IGT_PLANE_HOTSPOT_X, 0);
> > +     if (igt_plane_has_prop(plane, IGT_PLANE_HOTSPOT_Y))
> > +             igt_plane_set_prop_value(plane, IGT_PLANE_HOTSPOT_Y, 0);
> > +
> >       igt_plane_clear_prop_changed(plane, IGT_PLANE_IN_FENCE_FD);
> >       plane->values[IGT_PLANE_IN_FENCE_FD] = ~0ULL;
> >       plane->gem_handle = 0;
> > @@ -2679,6 +2686,9 @@ void igt_display_require(igt_display_t *display,
> int drm_fd)
> >       drmSetClientCap(drm_fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
> >       if (drmSetClientCap(drm_fd, DRM_CLIENT_CAP_ATOMIC, 1) == 0)
> >               display->is_atomic = 1;
> > +
> > +     if (drmSetClientCap(drm_fd,
> LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT, 1) == 0)
> > +             display->set_hotspots = 1;
>
> Any special reason to add this to display struct?
> IMHO, it is better to handle it at test level.
>

Hi Bhanu,

Mostly for keeping it consistent with the `is_atomic` capability.

Are you suggesting moving the `drmSetClientCap` to the test?
I am ok with changing this, just trying to understand what would
be the preferred way here.

Thanks!


>
> - Bhanu
>
> >
> >       plane_resources = drmModeGetPlaneResources(display->drm_fd);
> >       igt_assert(plane_resources);
> > diff --git a/lib/igt_kms.h b/lib/igt_kms.h
> > index 1b6988c17..cf0a6d82b 100644
> > --- a/lib/igt_kms.h
> > +++ b/lib/igt_kms.h
> > @@ -41,6 +41,12 @@
> >
> >   /* Low-level helpers with kmstest_ prefix */
> >
> > +/**
> > + * Clients which do set cursor hotspot and treat the cursor plane
> > + * like a mouse cursor should set this property.
> > + */
> > +#define LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT    6
> > +
> >   /**
> >    * pipe:
> >    * @PIPE_NONE: Invalid pipe, used for disconnecting a output from a
> pipe.
> > @@ -318,7 +324,9 @@ enum igt_atomic_plane_properties {
> >          IGT_PLANE_ZPOS,
> >          IGT_PLANE_FB_DAMAGE_CLIPS,
> >          IGT_PLANE_SCALING_FILTER,
> > -       IGT_NUM_PLANE_PROPS
> > +       IGT_PLANE_HOTSPOT_X,
> > +       IGT_PLANE_HOTSPOT_Y,
> > +       IGT_NUM_PLANE_PROPS
> >   };
> >
> >   /**
> > @@ -448,6 +456,7 @@ struct igt_display {
> >       igt_pipe_t *pipes;
> >       bool has_cursor_plane;
> >       bool is_atomic;
> > +     bool set_hotspots;
> >       bool first_commit;
> >
> >       uint64_t *modifiers;
>
>

[-- Attachment #2: Type: text/html, Size: 5661 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [igt-dev] [PATCH v2 2/2] kms_cursor_legacy: modeset-atomic-cursor-hotspot
  2023-07-31  7:28   ` Modem, Bhanuprakash
@ 2023-07-31  8:18     ` Albert Esteve
  0 siblings, 0 replies; 16+ messages in thread
From: Albert Esteve @ 2023-07-31  8:18 UTC (permalink / raw)
  To: Modem, Bhanuprakash; +Cc: igt-dev, belmouss, javierm

[-- Attachment #1: Type: text/plain, Size: 5464 bytes --]

On Mon, Jul 31, 2023 at 9:30 AM Modem, Bhanuprakash <
bhanuprakash.modem@intel.com> wrote:

> Hello,
>
> On Fri-28-07-2023 08:07 pm, Albert Esteve wrote:
> > Add a test for modesetting an atomic cursor plane
> > hotspot property. Test added to verify the kernel
> > patch at [1]. The test first checks if the
> > plane is atomic and has the hotspot property.
> > and if it does, it sets different random hot_x
> > and hot_y values and checks that it is updated
> > correctly after an atomic commit.
> >
> > [1]
> https://lists.freedesktop.org/archives/dri-devel/2023-July/414509.html
> >
> > Signed-off-by: Albert Esteve <aesteve@redhat.com>
> > ---
> >   tests/kms_cursor_legacy.c | 76 +++++++++++++++++++++++++++++++++++++++
> >   1 file changed, 76 insertions(+)
> >
> > diff --git a/tests/kms_cursor_legacy.c b/tests/kms_cursor_legacy.c
> > index 1ebac9d31..ba68dc481 100644
> > --- a/tests/kms_cursor_legacy.c
> > +++ b/tests/kms_cursor_legacy.c
> > @@ -1607,6 +1607,71 @@ static void flip_vs_cursor_busy_crc(igt_display_t
> *display, bool atomic)
> >       put_ahnd(ahnd);
> >   }
> >
> > +static void modeset_atomic_cursor_hotspot(igt_display_t *display)
> > +{
> > +     struct igt_fb cursor_fb;
> > +     igt_output_t *output;
> > +     enum pipe pipe;
> > +     igt_plane_t *cursor = NULL;
> > +     bool has_hotspot_prop;
> > +     uint64_t cursor_width, cursor_height;
> > +     uint32_t hot_x, hot_y, prev_hot_x, prev_hot_y;
> > +
> > +     igt_require(display->is_atomic);
> > +     igt_require(display->set_hotspots);
> > +     pipe = find_connected_pipe(display, false, &output);
> > +     igt_require(output);
> > +
> > +     igt_info("Using pipe %s & %s\n",
> > +              kmstest_pipe_name(pipe), igt_output_name(output));
> > +
> > +     cursor_width = cursor_height = 64;
> > +     igt_create_color_fb(display->drm_fd, cursor_width, cursor_height,
> DRM_FORMAT_ARGB8888,
> > +                         DRM_FORMAT_MOD_LINEAR, 1., 1., 1., &cursor_fb);
> > +
> > +     igt_display_commit2(display, COMMIT_ATOMIC);
> > +
> > +     cursor = set_cursor_on_pipe(display, pipe, &cursor_fb);
> > +
> > +     has_hotspot_prop = cursor->props[IGT_PLANE_HOTSPOT_X] ||
> > +             cursor->props[IGT_PLANE_HOTSPOT_Y];
> > +     igt_require_f(has_hotspot_prop, "Cursor plane lacks the hotspot
> property");
> > +
> > +     /*
> > +      * Change the hotspot coordinates randomly and check that the
> property
> > +      * is updated accordingly.
> > +      */
> > +     srand(time(NULL));
> > +     for (int i = 0; i < 20; i++) {
> > +             hot_x = rand() % cursor_width;
> > +             hot_y = rand() % cursor_height;
> > +             prev_hot_x = igt_plane_get_prop(cursor,
> IGT_PLANE_HOTSPOT_X);
> > +             prev_hot_y = igt_plane_get_prop(cursor,
> IGT_PLANE_HOTSPOT_Y);
> > +             igt_debug("Update cursor hotspot: (%d, %d)\n", hot_x,
> hot_y);
> > +
> > +             /* Set cursor hotspot property values */
> > +             igt_output_set_prop_value(cursor, IGT_PLANE_HOTSPOT_X,
> hot_x);
> > +             igt_output_set_prop_value(cursor, IGT_PLANE_HOTSPOT_Y,
> hot_y);
> > +
> > +             /* Properties are not updated until the commit */
> > +             igt_assert_eq(igt_plane_get_prop(cursor,
> IGT_PLANE_HOTSPOT_X), prev_hot_x);
> > +             igt_assert_eq(igt_plane_get_prop(cursor,
> IGT_PLANE_HOTSPOT_Y), prev_hot_y);
>
> I think, this check is not required since it is an obvious.
>

It is indeed a bit redundant, and probably out of the scope of the hotspot
setting.
But it was low effort and adds a layer that helps to understand what the
test is doing, and how the properties are updated.
That said, I am ok with removing this. Actually, I added these checks only
in a
later step of the development.


>
> > +
> > +             igt_display_commit2(display, COMMIT_ATOMIC);
> > +
> > +             /* After the commit, the cursor hotspot property values
> are updated */
> > +             igt_assert_eq(igt_plane_get_prop(cursor,
> IGT_PLANE_HOTSPOT_X), hot_x);
> > +             igt_assert_eq(igt_plane_get_prop(cursor,
> IGT_PLANE_HOTSPOT_Y), hot_y);
> > +     }
> > +
> > +     /* Clean-up */
> > +     igt_plane_set_fb(cursor, NULL);
> > +     igt_output_set_pipe(output, PIPE_NONE);
>
> We need to cleanup/set to default hotspot before exiting the subtest.
>

Sure, will do!


>
> - Bhanu
>
> > +     igt_display_commit2(display, COMMIT_ATOMIC);
> > +
> > +     igt_remove_fb(display->drm_fd, &cursor_fb);
> > +}
> > +
> >   igt_main
> >   {
> >       const int ncpus = sysconf(_SC_NPROCESSORS_ONLN);
> > @@ -1681,6 +1746,17 @@ igt_main
> >                       nonblocking_modeset_vs_cursor(&display, 16);
> >       }
> >
> > +     igt_describe("Test changes the cursor hotspot and checks that the "
> > +                   "property is updated accordignly");
> > +     igt_subtest_group {
> > +             igt_fixture {
> > +                     igt_display_require_output(&display);
> > +             }
> > +
> > +             igt_subtest("modeset-atomic-cursor-hotspot")
> > +                     modeset_atomic_cursor_hotspot(&display);
> > +     }
> > +
> >       igt_describe("This test executes flips on both CRTCs "
> >                    "while running cursor updates in parallel");
> >       igt_subtest_group {
>
>

[-- Attachment #2: Type: text/html, Size: 7420 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [igt-dev] [PATCH v2 1/2] igt_kms: add hotspot plane property
  2023-07-31  8:12     ` Albert Esteve
@ 2023-07-31  8:48       ` Modem, Bhanuprakash
  2023-07-31 11:27         ` Albert Esteve
  0 siblings, 1 reply; 16+ messages in thread
From: Modem, Bhanuprakash @ 2023-07-31  8:48 UTC (permalink / raw)
  To: Albert Esteve; +Cc: igt-dev, belmouss, javierm



On Mon-31-07-2023 01:42 pm, Albert Esteve wrote:
> 
> 
> 
> On Mon, Jul 31, 2023 at 8:30 AM Modem, Bhanuprakash 
> <bhanuprakash.modem@intel.com <mailto:bhanuprakash.modem@intel.com>> wrote:
> 
>     Hello,
> 
>     On Fri-28-07-2023 08:07 pm, Albert Esteve wrote:
>      > Introduce LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT
>      > capability definition until patched drm.h uapi header
>      > is upstreamed and lands on IGT.
>      >
>      > CURSOR_PLANE_HOTSPOT capability is enabled
>      > conditionally, and then tracked in the igt_display
>      > struct.
>      >
>      > Add HOTSPOT_X and HOTSPOT_Y properties
>      > to the atomic_plane_properties struct.
>      >
>      > Signed-off-by: Albert Esteve <aesteve@redhat.com
>     <mailto:aesteve@redhat.com>>
>      > ---
>      >   lib/igt_kms.c | 10 ++++++++++
>      >   lib/igt_kms.h | 11 ++++++++++-
>      >   2 files changed, 20 insertions(+), 1 deletion(-)
>      >
>      > diff --git a/lib/igt_kms.c b/lib/igt_kms.c
>      > index f2b0eed57..73119d0e5 100644
>      > --- a/lib/igt_kms.c
>      > +++ b/lib/igt_kms.c
>      > @@ -601,6 +601,8 @@ const char * const
>     igt_plane_prop_names[IGT_NUM_PLANE_PROPS] = {
>      >       [IGT_PLANE_CRTC_Y] = "CRTC_Y",
>      >       [IGT_PLANE_CRTC_W] = "CRTC_W",
>      >       [IGT_PLANE_CRTC_H] = "CRTC_H",
>      > +     [IGT_PLANE_HOTSPOT_X] = "HOTSPOT_X",
>      > +     [IGT_PLANE_HOTSPOT_Y] = "HOTSPOT_Y",
>      >       [IGT_PLANE_FB_ID] = "FB_ID",
>      >       [IGT_PLANE_CRTC_ID] = "CRTC_ID",
>      >       [IGT_PLANE_IN_FENCE_FD] = "IN_FENCE_FD",
>      > @@ -2296,6 +2298,11 @@ static void igt_plane_reset(igt_plane_t
>     *plane)
>      >       if (igt_plane_has_prop(plane, IGT_PLANE_SCALING_FILTER))
>      >               igt_plane_set_prop_enum(plane,
>     IGT_PLANE_SCALING_FILTER, "Default");
>      >
>      > +     if (igt_plane_has_prop(plane, IGT_PLANE_HOTSPOT_X))
>      > +             igt_plane_set_prop_value(plane,
>     IGT_PLANE_HOTSPOT_X, 0);
>      > +     if (igt_plane_has_prop(plane, IGT_PLANE_HOTSPOT_Y))
>      > +             igt_plane_set_prop_value(plane,
>     IGT_PLANE_HOTSPOT_Y, 0);
>      > +
>      >       igt_plane_clear_prop_changed(plane, IGT_PLANE_IN_FENCE_FD);
>      >       plane->values[IGT_PLANE_IN_FENCE_FD] = ~0ULL;
>      >       plane->gem_handle = 0;
>      > @@ -2679,6 +2686,9 @@ void igt_display_require(igt_display_t
>     *display, int drm_fd)
>      >       drmSetClientCap(drm_fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
>      >       if (drmSetClientCap(drm_fd, DRM_CLIENT_CAP_ATOMIC, 1) == 0)
>      >               display->is_atomic = 1;
>      > +
>      > +     if (drmSetClientCap(drm_fd,
>     LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT, 1) == 0)
>      > +             display->set_hotspots = 1;
> 
>     Any special reason to add this to display struct?
>     IMHO, it is better to handle it at test level.
> 
> 
> Hi Bhanu,
> 
> Mostly for keeping it consistent with the `is_atomic` capability.
> 
> Are you suggesting moving the `drmSetClientCap` to the test?

Yes.

> I am ok with changing this, just trying to understand what would
> be the preferred way here.

Either way (adding to display struct or checking at test level) is fine.

Generally to maintain the re-usability (ex: checking for the same 
capability multiple times) we used to cache the capabilities to display 
struct. If multiple tests (or multiple places in your test) want to use 
this hotspot capability, you can add it to the display struct.

- Bhanu

> 
> Thanks!
> 
> 
>     - Bhanu
> 
>      >
>      >       plane_resources = drmModeGetPlaneResources(display->drm_fd);
>      >       igt_assert(plane_resources);
>      > diff --git a/lib/igt_kms.h b/lib/igt_kms.h
>      > index 1b6988c17..cf0a6d82b 100644
>      > --- a/lib/igt_kms.h
>      > +++ b/lib/igt_kms.h
>      > @@ -41,6 +41,12 @@
>      >
>      >   /* Low-level helpers with kmstest_ prefix */
>      >
>      > +/**
>      > + * Clients which do set cursor hotspot and treat the cursor plane
>      > + * like a mouse cursor should set this property.
>      > + */
>      > +#define LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT    6
>      > +
>      >   /**
>      >    * pipe:
>      >    * @PIPE_NONE: Invalid pipe, used for disconnecting a output
>     from a pipe.
>      > @@ -318,7 +324,9 @@ enum igt_atomic_plane_properties {
>      >          IGT_PLANE_ZPOS,
>      >          IGT_PLANE_FB_DAMAGE_CLIPS,
>      >          IGT_PLANE_SCALING_FILTER,
>      > -       IGT_NUM_PLANE_PROPS
>      > +       IGT_PLANE_HOTSPOT_X,
>      > +       IGT_PLANE_HOTSPOT_Y,
>      > +       IGT_NUM_PLANE_PROPS
>      >   };
>      >
>      >   /**
>      > @@ -448,6 +456,7 @@ struct igt_display {
>      >       igt_pipe_t *pipes;
>      >       bool has_cursor_plane;
>      >       bool is_atomic;
>      > +     bool set_hotspots;
>      >       bool first_commit;
>      >
>      >       uint64_t *modifiers;
> 

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [igt-dev] [PATCH v2 1/2] igt_kms: add hotspot plane property
  2023-07-31  8:48       ` Modem, Bhanuprakash
@ 2023-07-31 11:27         ` Albert Esteve
  2023-07-31 13:36           ` Albert Esteve
  0 siblings, 1 reply; 16+ messages in thread
From: Albert Esteve @ 2023-07-31 11:27 UTC (permalink / raw)
  To: Modem, Bhanuprakash; +Cc: igt-dev, belmouss, javierm

[-- Attachment #1: Type: text/plain, Size: 5985 bytes --]

On Mon, Jul 31, 2023 at 10:49 AM Modem, Bhanuprakash <
bhanuprakash.modem@intel.com> wrote:

>
>
> On Mon-31-07-2023 01:42 pm, Albert Esteve wrote:
> >
> >
> >
> > On Mon, Jul 31, 2023 at 8:30 AM Modem, Bhanuprakash
> > <bhanuprakash.modem@intel.com <mailto:bhanuprakash.modem@intel.com>>
> wrote:
> >
> >     Hello,
> >
> >     On Fri-28-07-2023 08:07 pm, Albert Esteve wrote:
> >      > Introduce LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT
> >      > capability definition until patched drm.h uapi header
> >      > is upstreamed and lands on IGT.
> >      >
> >      > CURSOR_PLANE_HOTSPOT capability is enabled
> >      > conditionally, and then tracked in the igt_display
> >      > struct.
> >      >
> >      > Add HOTSPOT_X and HOTSPOT_Y properties
> >      > to the atomic_plane_properties struct.
> >      >
> >      > Signed-off-by: Albert Esteve <aesteve@redhat.com
> >     <mailto:aesteve@redhat.com>>
> >      > ---
> >      >   lib/igt_kms.c | 10 ++++++++++
> >      >   lib/igt_kms.h | 11 ++++++++++-
> >      >   2 files changed, 20 insertions(+), 1 deletion(-)
> >      >
> >      > diff --git a/lib/igt_kms.c b/lib/igt_kms.c
> >      > index f2b0eed57..73119d0e5 100644
> >      > --- a/lib/igt_kms.c
> >      > +++ b/lib/igt_kms.c
> >      > @@ -601,6 +601,8 @@ const char * const
> >     igt_plane_prop_names[IGT_NUM_PLANE_PROPS] = {
> >      >       [IGT_PLANE_CRTC_Y] = "CRTC_Y",
> >      >       [IGT_PLANE_CRTC_W] = "CRTC_W",
> >      >       [IGT_PLANE_CRTC_H] = "CRTC_H",
> >      > +     [IGT_PLANE_HOTSPOT_X] = "HOTSPOT_X",
> >      > +     [IGT_PLANE_HOTSPOT_Y] = "HOTSPOT_Y",
> >      >       [IGT_PLANE_FB_ID] = "FB_ID",
> >      >       [IGT_PLANE_CRTC_ID] = "CRTC_ID",
> >      >       [IGT_PLANE_IN_FENCE_FD] = "IN_FENCE_FD",
> >      > @@ -2296,6 +2298,11 @@ static void igt_plane_reset(igt_plane_t
> >     *plane)
> >      >       if (igt_plane_has_prop(plane, IGT_PLANE_SCALING_FILTER))
> >      >               igt_plane_set_prop_enum(plane,
> >     IGT_PLANE_SCALING_FILTER, "Default");
> >      >
> >      > +     if (igt_plane_has_prop(plane, IGT_PLANE_HOTSPOT_X))
> >      > +             igt_plane_set_prop_value(plane,
> >     IGT_PLANE_HOTSPOT_X, 0);
> >      > +     if (igt_plane_has_prop(plane, IGT_PLANE_HOTSPOT_Y))
> >      > +             igt_plane_set_prop_value(plane,
> >     IGT_PLANE_HOTSPOT_Y, 0);
> >      > +
> >      >       igt_plane_clear_prop_changed(plane, IGT_PLANE_IN_FENCE_FD);
> >      >       plane->values[IGT_PLANE_IN_FENCE_FD] = ~0ULL;
> >      >       plane->gem_handle = 0;
> >      > @@ -2679,6 +2686,9 @@ void igt_display_require(igt_display_t
> >     *display, int drm_fd)
> >      >       drmSetClientCap(drm_fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
> >      >       if (drmSetClientCap(drm_fd, DRM_CLIENT_CAP_ATOMIC, 1) == 0)
> >      >               display->is_atomic = 1;
> >      > +
> >      > +     if (drmSetClientCap(drm_fd,
> >     LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT, 1) == 0)
> >      > +             display->set_hotspots = 1;
> >
> >     Any special reason to add this to display struct?
> >     IMHO, it is better to handle it at test level.
> >
> >
> > Hi Bhanu,
> >
> > Mostly for keeping it consistent with the `is_atomic` capability.
> >
> > Are you suggesting moving the `drmSetClientCap` to the test?
>
> Yes.
>
> > I am ok with changing this, just trying to understand what would
> > be the preferred way here.
>
> Either way (adding to display struct or checking at test level) is fine.
>
> Generally to maintain the re-usability (ex: checking for the same
> capability multiple times) we used to cache the capabilities to display
> struct. If multiple tests (or multiple places in your test) want to use
> this hotspot capability, you can add it to the display struct.
>

ATM it is only this test. If there is a need for more tests,
we can move capability setting back to display, but for the time being I
will follow
your advice and move it to the test.

Something like...?
igt_subtest("modeset-atomic-cursor-hotspot") {
    igt_require(drmSetClientCap(display.drm_fd,
LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT, 1) == 0);
    modeset_atomic_cursor_hotspot(&display);
    igt_assert_eq(drmSetClientCap(display.drm_fd,
LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT, 0), 0);
}


>
> - Bhanu
>
> >
> > Thanks!
> >
> >
> >     - Bhanu
> >
> >      >
> >      >       plane_resources = drmModeGetPlaneResources(display->drm_fd);
> >      >       igt_assert(plane_resources);
> >      > diff --git a/lib/igt_kms.h b/lib/igt_kms.h
> >      > index 1b6988c17..cf0a6d82b 100644
> >      > --- a/lib/igt_kms.h
> >      > +++ b/lib/igt_kms.h
> >      > @@ -41,6 +41,12 @@
> >      >
> >      >   /* Low-level helpers with kmstest_ prefix */
> >      >
> >      > +/**
> >      > + * Clients which do set cursor hotspot and treat the cursor plane
> >      > + * like a mouse cursor should set this property.
> >      > + */
> >      > +#define LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT    6
> >      > +
> >      >   /**
> >      >    * pipe:
> >      >    * @PIPE_NONE: Invalid pipe, used for disconnecting a output
> >     from a pipe.
> >      > @@ -318,7 +324,9 @@ enum igt_atomic_plane_properties {
> >      >          IGT_PLANE_ZPOS,
> >      >          IGT_PLANE_FB_DAMAGE_CLIPS,
> >      >          IGT_PLANE_SCALING_FILTER,
> >      > -       IGT_NUM_PLANE_PROPS
> >      > +       IGT_PLANE_HOTSPOT_X,
> >      > +       IGT_PLANE_HOTSPOT_Y,
> >      > +       IGT_NUM_PLANE_PROPS
> >      >   };
> >      >
> >      >   /**
> >      > @@ -448,6 +456,7 @@ struct igt_display {
> >      >       igt_pipe_t *pipes;
> >      >       bool has_cursor_plane;
> >      >       bool is_atomic;
> >      > +     bool set_hotspots;
> >      >       bool first_commit;
> >      >
> >      >       uint64_t *modifiers;
> >
>
>

[-- Attachment #2: Type: text/html, Size: 8432 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [igt-dev] [PATCH v2 1/2] igt_kms: add hotspot plane property
  2023-07-31 11:27         ` Albert Esteve
@ 2023-07-31 13:36           ` Albert Esteve
  2023-08-01  7:57             ` Modem, Bhanuprakash
  0 siblings, 1 reply; 16+ messages in thread
From: Albert Esteve @ 2023-07-31 13:36 UTC (permalink / raw)
  To: Modem, Bhanuprakash; +Cc: igt-dev, belmouss, javierm

[-- Attachment #1: Type: text/plain, Size: 6819 bytes --]

On Mon, Jul 31, 2023 at 1:27 PM Albert Esteve <aesteve@redhat.com> wrote:

>
>
> On Mon, Jul 31, 2023 at 10:49 AM Modem, Bhanuprakash <
> bhanuprakash.modem@intel.com> wrote:
>
>>
>>
>> On Mon-31-07-2023 01:42 pm, Albert Esteve wrote:
>> >
>> >
>> >
>> > On Mon, Jul 31, 2023 at 8:30 AM Modem, Bhanuprakash
>> > <bhanuprakash.modem@intel.com <mailto:bhanuprakash.modem@intel.com>>
>> wrote:
>> >
>> >     Hello,
>> >
>> >     On Fri-28-07-2023 08:07 pm, Albert Esteve wrote:
>> >      > Introduce LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT
>> >      > capability definition until patched drm.h uapi header
>> >      > is upstreamed and lands on IGT.
>> >      >
>> >      > CURSOR_PLANE_HOTSPOT capability is enabled
>> >      > conditionally, and then tracked in the igt_display
>> >      > struct.
>> >      >
>> >      > Add HOTSPOT_X and HOTSPOT_Y properties
>> >      > to the atomic_plane_properties struct.
>> >      >
>> >      > Signed-off-by: Albert Esteve <aesteve@redhat.com
>> >     <mailto:aesteve@redhat.com>>
>> >      > ---
>> >      >   lib/igt_kms.c | 10 ++++++++++
>> >      >   lib/igt_kms.h | 11 ++++++++++-
>> >      >   2 files changed, 20 insertions(+), 1 deletion(-)
>> >      >
>> >      > diff --git a/lib/igt_kms.c b/lib/igt_kms.c
>> >      > index f2b0eed57..73119d0e5 100644
>> >      > --- a/lib/igt_kms.c
>> >      > +++ b/lib/igt_kms.c
>> >      > @@ -601,6 +601,8 @@ const char * const
>> >     igt_plane_prop_names[IGT_NUM_PLANE_PROPS] = {
>> >      >       [IGT_PLANE_CRTC_Y] = "CRTC_Y",
>> >      >       [IGT_PLANE_CRTC_W] = "CRTC_W",
>> >      >       [IGT_PLANE_CRTC_H] = "CRTC_H",
>> >      > +     [IGT_PLANE_HOTSPOT_X] = "HOTSPOT_X",
>> >      > +     [IGT_PLANE_HOTSPOT_Y] = "HOTSPOT_Y",
>> >      >       [IGT_PLANE_FB_ID] = "FB_ID",
>> >      >       [IGT_PLANE_CRTC_ID] = "CRTC_ID",
>> >      >       [IGT_PLANE_IN_FENCE_FD] = "IN_FENCE_FD",
>> >      > @@ -2296,6 +2298,11 @@ static void igt_plane_reset(igt_plane_t
>> >     *plane)
>> >      >       if (igt_plane_has_prop(plane, IGT_PLANE_SCALING_FILTER))
>> >      >               igt_plane_set_prop_enum(plane,
>> >     IGT_PLANE_SCALING_FILTER, "Default");
>> >      >
>> >      > +     if (igt_plane_has_prop(plane, IGT_PLANE_HOTSPOT_X))
>> >      > +             igt_plane_set_prop_value(plane,
>> >     IGT_PLANE_HOTSPOT_X, 0);
>> >      > +     if (igt_plane_has_prop(plane, IGT_PLANE_HOTSPOT_Y))
>> >      > +             igt_plane_set_prop_value(plane,
>> >     IGT_PLANE_HOTSPOT_Y, 0);
>> >      > +
>> >      >       igt_plane_clear_prop_changed(plane, IGT_PLANE_IN_FENCE_FD);
>> >      >       plane->values[IGT_PLANE_IN_FENCE_FD] = ~0ULL;
>> >      >       plane->gem_handle = 0;
>> >      > @@ -2679,6 +2686,9 @@ void igt_display_require(igt_display_t
>> >     *display, int drm_fd)
>> >      >       drmSetClientCap(drm_fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES,
>> 1);
>> >      >       if (drmSetClientCap(drm_fd, DRM_CLIENT_CAP_ATOMIC, 1) == 0)
>> >      >               display->is_atomic = 1;
>> >      > +
>> >      > +     if (drmSetClientCap(drm_fd,
>> >     LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT, 1) == 0)
>> >      > +             display->set_hotspots = 1;
>> >
>> >     Any special reason to add this to display struct?
>> >     IMHO, it is better to handle it at test level.
>> >
>> >
>> > Hi Bhanu,
>> >
>> > Mostly for keeping it consistent with the `is_atomic` capability.
>> >
>> > Are you suggesting moving the `drmSetClientCap` to the test?
>>
>> Yes.
>>
>> > I am ok with changing this, just trying to understand what would
>> > be the preferred way here.
>>
>> Either way (adding to display struct or checking at test level) is fine.
>>
>> Generally to maintain the re-usability (ex: checking for the same
>> capability multiple times) we used to cache the capabilities to display
>> struct. If multiple tests (or multiple places in your test) want to use
>> this hotspot capability, you can add it to the display struct.
>>
>
> ATM it is only this test. If there is a need for more tests,
> we can move capability setting back to display, but for the time being I
> will follow
> your advice and move it to the test.
>
> Something like...?
> igt_subtest("modeset-atomic-cursor-hotspot") {
>     igt_require(drmSetClientCap(display.drm_fd,
> LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT, 1) == 0);
>     modeset_atomic_cursor_hotspot(&display);
>     igt_assert_eq(drmSetClientCap(display.drm_fd,
> LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT, 0), 0);
> }
>
>

Hi Bhanu,

As I was testing this, I realized that if I delay setting the capability,
the
`igt_display_require` function will not find the cursor planes as they get
disabled
with the kernel patch that I am testing:
https://www.spinics.net/lists/stable/msg667033.html

Specifically, we need to set the capability before:
plane_resources = drmModeGetPlaneResources(display->drm_fd);

... or else the test will be skipped.

Therefore, I need to keep it where it is now, and then I can also keep
storing
the capability in the display struct.


>
>> - Bhanu
>>
>> >
>> > Thanks!
>> >
>> >
>> >     - Bhanu
>> >
>> >      >
>> >      >       plane_resources =
>> drmModeGetPlaneResources(display->drm_fd);
>> >      >       igt_assert(plane_resources);
>> >      > diff --git a/lib/igt_kms.h b/lib/igt_kms.h
>> >      > index 1b6988c17..cf0a6d82b 100644
>> >      > --- a/lib/igt_kms.h
>> >      > +++ b/lib/igt_kms.h
>> >      > @@ -41,6 +41,12 @@
>> >      >
>> >      >   /* Low-level helpers with kmstest_ prefix */
>> >      >
>> >      > +/**
>> >      > + * Clients which do set cursor hotspot and treat the cursor
>> plane
>> >      > + * like a mouse cursor should set this property.
>> >      > + */
>> >      > +#define LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT    6
>> >      > +
>> >      >   /**
>> >      >    * pipe:
>> >      >    * @PIPE_NONE: Invalid pipe, used for disconnecting a output
>> >     from a pipe.
>> >      > @@ -318,7 +324,9 @@ enum igt_atomic_plane_properties {
>> >      >          IGT_PLANE_ZPOS,
>> >      >          IGT_PLANE_FB_DAMAGE_CLIPS,
>> >      >          IGT_PLANE_SCALING_FILTER,
>> >      > -       IGT_NUM_PLANE_PROPS
>> >      > +       IGT_PLANE_HOTSPOT_X,
>> >      > +       IGT_PLANE_HOTSPOT_Y,
>> >      > +       IGT_NUM_PLANE_PROPS
>> >      >   };
>> >      >
>> >      >   /**
>> >      > @@ -448,6 +456,7 @@ struct igt_display {
>> >      >       igt_pipe_t *pipes;
>> >      >       bool has_cursor_plane;
>> >      >       bool is_atomic;
>> >      > +     bool set_hotspots;
>> >      >       bool first_commit;
>> >      >
>> >      >       uint64_t *modifiers;
>> >
>>
>>

[-- Attachment #2: Type: text/html, Size: 9878 bytes --]

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [igt-dev] [PATCH v2 1/2] igt_kms: add hotspot plane property
  2023-07-31 13:36           ` Albert Esteve
@ 2023-08-01  7:57             ` Modem, Bhanuprakash
  0 siblings, 0 replies; 16+ messages in thread
From: Modem, Bhanuprakash @ 2023-08-01  7:57 UTC (permalink / raw)
  To: Albert Esteve; +Cc: igt-dev, belmouss, javierm



On Mon-31-07-2023 07:06 pm, Albert Esteve wrote:
> 
> 
> On Mon, Jul 31, 2023 at 1:27 PM Albert Esteve <aesteve@redhat.com 
> <mailto:aesteve@redhat.com>> wrote:
> 
> 
> 
>     On Mon, Jul 31, 2023 at 10:49 AM Modem, Bhanuprakash
>     <bhanuprakash.modem@intel.com <mailto:bhanuprakash.modem@intel.com>>
>     wrote:
> 
> 
> 
>         On Mon-31-07-2023 01:42 pm, Albert Esteve wrote:
>          >
>          >
>          >
>          > On Mon, Jul 31, 2023 at 8:30 AM Modem, Bhanuprakash
>          > <bhanuprakash.modem@intel.com
>         <mailto:bhanuprakash.modem@intel.com>
>         <mailto:bhanuprakash.modem@intel.com
>         <mailto:bhanuprakash.modem@intel.com>>> wrote:
>          >
>          >     Hello,
>          >
>          >     On Fri-28-07-2023 08:07 pm, Albert Esteve wrote:
>          >      > Introduce LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT
>          >      > capability definition until patched drm.h uapi header
>          >      > is upstreamed and lands on IGT.
>          >      >
>          >      > CURSOR_PLANE_HOTSPOT capability is enabled
>          >      > conditionally, and then tracked in the igt_display
>          >      > struct.
>          >      >
>          >      > Add HOTSPOT_X and HOTSPOT_Y properties
>          >      > to the atomic_plane_properties struct.
>          >      >
>          >      > Signed-off-by: Albert Esteve <aesteve@redhat.com
>         <mailto:aesteve@redhat.com>
>          >     <mailto:aesteve@redhat.com <mailto:aesteve@redhat.com>>>
>          >      > ---
>          >      >   lib/igt_kms.c | 10 ++++++++++
>          >      >   lib/igt_kms.h | 11 ++++++++++-
>          >      >   2 files changed, 20 insertions(+), 1 deletion(-)
>          >      >
>          >      > diff --git a/lib/igt_kms.c b/lib/igt_kms.c
>          >      > index f2b0eed57..73119d0e5 100644
>          >      > --- a/lib/igt_kms.c
>          >      > +++ b/lib/igt_kms.c
>          >      > @@ -601,6 +601,8 @@ const char * const
>          >     igt_plane_prop_names[IGT_NUM_PLANE_PROPS] = {
>          >      >       [IGT_PLANE_CRTC_Y] = "CRTC_Y",
>          >      >       [IGT_PLANE_CRTC_W] = "CRTC_W",
>          >      >       [IGT_PLANE_CRTC_H] = "CRTC_H",
>          >      > +     [IGT_PLANE_HOTSPOT_X] = "HOTSPOT_X",
>          >      > +     [IGT_PLANE_HOTSPOT_Y] = "HOTSPOT_Y",
>          >      >       [IGT_PLANE_FB_ID] = "FB_ID",
>          >      >       [IGT_PLANE_CRTC_ID] = "CRTC_ID",
>          >      >       [IGT_PLANE_IN_FENCE_FD] = "IN_FENCE_FD",
>          >      > @@ -2296,6 +2298,11 @@ static void
>         igt_plane_reset(igt_plane_t
>          >     *plane)
>          >      >       if (igt_plane_has_prop(plane,
>         IGT_PLANE_SCALING_FILTER))
>          >      >               igt_plane_set_prop_enum(plane,
>          >     IGT_PLANE_SCALING_FILTER, "Default");
>          >      >
>          >      > +     if (igt_plane_has_prop(plane, IGT_PLANE_HOTSPOT_X))
>          >      > +             igt_plane_set_prop_value(plane,
>          >     IGT_PLANE_HOTSPOT_X, 0);
>          >      > +     if (igt_plane_has_prop(plane, IGT_PLANE_HOTSPOT_Y))
>          >      > +             igt_plane_set_prop_value(plane,
>          >     IGT_PLANE_HOTSPOT_Y, 0);
>          >      > +
>          >      >       igt_plane_clear_prop_changed(plane,
>         IGT_PLANE_IN_FENCE_FD);
>          >      >       plane->values[IGT_PLANE_IN_FENCE_FD] = ~0ULL;
>          >      >       plane->gem_handle = 0;
>          >      > @@ -2679,6 +2686,9 @@ void
>         igt_display_require(igt_display_t
>          >     *display, int drm_fd)
>          >      >       drmSetClientCap(drm_fd,
>         DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
>          >      >       if (drmSetClientCap(drm_fd,
>         DRM_CLIENT_CAP_ATOMIC, 1) == 0)
>          >      >               display->is_atomic = 1;
>          >      > +
>          >      > +     if (drmSetClientCap(drm_fd,
>          >     LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT, 1) == 0)
>          >      > +             display->set_hotspots = 1;
>          >
>          >     Any special reason to add this to display struct?
>          >     IMHO, it is better to handle it at test level.
>          >
>          >
>          > Hi Bhanu,
>          >
>          > Mostly for keeping it consistent with the `is_atomic` capability.
>          >
>          > Are you suggesting moving the `drmSetClientCap` to the test?
> 
>         Yes.
> 
>          > I am ok with changing this, just trying to understand what would
>          > be the preferred way here.
> 
>         Either way (adding to display struct or checking at test level)
>         is fine.
> 
>         Generally to maintain the re-usability (ex: checking for the same
>         capability multiple times) we used to cache the capabilities to
>         display
>         struct. If multiple tests (or multiple places in your test) want
>         to use
>         this hotspot capability, you can add it to the display struct.
> 
> 
>     ATM it is only this test. If there is a need for more tests,
>     we can move capability setting back to display, but for the time
>     being I will follow
>     your advice and move it to the test.
> 
>     Something like...?
>     igt_subtest("modeset-atomic-cursor-hotspot") {
>          igt_require(drmSetClientCap(display.drm_fd,
>     LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT, 1) == 0);
>          modeset_atomic_cursor_hotspot(&display);
>          igt_assert_eq(drmSetClientCap(display.drm_fd,
>     LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT, 0), 0);
>     }
> 
> 
> Hi Bhanu,
> 
> As I was testing this, I realized that if I delay setting the 
> capability, the
> `igt_display_require` function will not find the cursor planes as they 
> get disabled
> with the kernel patch that I am testing: 
> https://www.spinics.net/lists/stable/msg667033.html 
> <https://www.spinics.net/lists/stable/msg667033.html>
> 
> Specifically, we need to set the capability before:
> plane_resources = drmModeGetPlaneResources(display->drm_fd);
> 
> ... or else the test will be skipped.
> 
> Therefore, I need to keep it where it is now, and then I can also keep 
> storing
> the capability in the display struct.

Make sense to set the capability in igt_display_require().

Acked-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>

> 
> 
>         - Bhanu
> 
>          >
>          > Thanks!
>          >
>          >
>          >     - Bhanu
>          >
>          >      >
>          >      >       plane_resources =
>         drmModeGetPlaneResources(display->drm_fd);
>          >      >       igt_assert(plane_resources);
>          >      > diff --git a/lib/igt_kms.h b/lib/igt_kms.h
>          >      > index 1b6988c17..cf0a6d82b 100644
>          >      > --- a/lib/igt_kms.h
>          >      > +++ b/lib/igt_kms.h
>          >      > @@ -41,6 +41,12 @@
>          >      >
>          >      >   /* Low-level helpers with kmstest_ prefix */
>          >      >
>          >      > +/**
>          >      > + * Clients which do set cursor hotspot and treat the
>         cursor plane
>          >      > + * like a mouse cursor should set this property.
>          >      > + */
>          >      > +#define LOCAL_DRM_CLIENT_CAP_CURSOR_PLANE_HOTSPOT    6
>          >      > +
>          >      >   /**
>          >      >    * pipe:
>          >      >    * @PIPE_NONE: Invalid pipe, used for disconnecting
>         a output
>          >     from a pipe.
>          >      > @@ -318,7 +324,9 @@ enum igt_atomic_plane_properties {
>          >      >          IGT_PLANE_ZPOS,
>          >      >          IGT_PLANE_FB_DAMAGE_CLIPS,
>          >      >          IGT_PLANE_SCALING_FILTER,
>          >      > -       IGT_NUM_PLANE_PROPS
>          >      > +       IGT_PLANE_HOTSPOT_X,
>          >      > +       IGT_PLANE_HOTSPOT_Y,
>          >      > +       IGT_NUM_PLANE_PROPS
>          >      >   };
>          >      >
>          >      >   /**
>          >      > @@ -448,6 +456,7 @@ struct igt_display {
>          >      >       igt_pipe_t *pipes;
>          >      >       bool has_cursor_plane;
>          >      >       bool is_atomic;
>          >      > +     bool set_hotspots;
>          >      >       bool first_commit;
>          >      >
>          >      >       uint64_t *modifiers;
>          >
> 

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2023-08-01  7:58 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-07-28 14:37 [igt-dev] [PATCH v2 0/2] Add atomic DRM cursor hotspot test Albert Esteve
2023-07-28 14:37 ` [igt-dev] [PATCH v2 1/2] igt_kms: add hotspot plane property Albert Esteve
2023-07-31  5:16   ` Zbigniew Kempczyński
2023-07-31  6:28   ` Modem, Bhanuprakash
2023-07-31  8:12     ` Albert Esteve
2023-07-31  8:48       ` Modem, Bhanuprakash
2023-07-31 11:27         ` Albert Esteve
2023-07-31 13:36           ` Albert Esteve
2023-08-01  7:57             ` Modem, Bhanuprakash
2023-07-28 14:37 ` [igt-dev] [PATCH v2 2/2] kms_cursor_legacy: modeset-atomic-cursor-hotspot Albert Esteve
2023-07-31  5:18   ` Zbigniew Kempczyński
2023-07-31  7:28   ` Modem, Bhanuprakash
2023-07-31  8:18     ` Albert Esteve
2023-07-28 15:21 ` [igt-dev] ○ CI.xeBAT: info for Add atomic DRM cursor hotspot test (rev2) Patchwork
2023-07-28 15:30 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
2023-07-28 17:34 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox