All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH v4 0/2] kms lease
@ 2023-10-10 19:27 Mohammed Thasleem
  2023-10-10 19:27 ` [igt-dev] [PATCH v4 1/2] tests/kms_lease: Terminate lease fd before subtests and remove lease_t from all sub-tests Mohammed Thasleem
                   ` (5 more replies)
  0 siblings, 6 replies; 10+ messages in thread
From: Mohammed Thasleem @ 2023-10-10 19:27 UTC (permalink / raw)
  To: igt-dev

Terminate the lease fd when any assert happen with out termination
of lease fd and on any drmModeSetCrtc or drmModeGetCrtc exit.
Terminate lease fd on every display dependent subtests execution.

Mohammed Thasleem (2):
  tests/kms_lease: Terminate lease fd before subtests and remove lease_t
    from all sub-tests
  tests/kms_lease: Add wrapper to create lease and store mcl.fd

 tests/kms_lease.c | 235 ++++++++++++++++++++++------------------------
 1 file changed, 110 insertions(+), 125 deletions(-)

-- 
2.25.1

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

* [igt-dev] [PATCH v4 1/2] tests/kms_lease: Terminate lease fd before subtests and remove lease_t from all sub-tests
  2023-10-10 19:27 [igt-dev] [PATCH v4 0/2] kms lease Mohammed Thasleem
@ 2023-10-10 19:27 ` Mohammed Thasleem
  2023-10-11  3:37   ` Karthik B S
  2023-10-10 19:27 ` [igt-dev] [PATCH v4 2/2] tests/kms_lease: Add wrapper to create lease and store mcl.fd Mohammed Thasleem
                   ` (4 subsequent siblings)
  5 siblings, 1 reply; 10+ messages in thread
From: Mohammed Thasleem @ 2023-10-10 19:27 UTC (permalink / raw)
  To: igt-dev

Failures happen at drmModeSetCursor and prepare_crtc_master or
prepare_crtc_lease which exit tests without termination of lease fd
which resulting in resource busy for sub-sequence execution, when
new lessor request for lease.

Terminate the lease fd when any assert happens without termination
of lease fd and on any drmModeSetCrtc or drmModeGetCrtc exit.
Terminate lease fd on every display dependent subtests execution.

Remove lease_t from all sub-tests and move it to data_t and
send data struct instead lease struct and avoid duplicating
of prepare_crtc in to master crtc and lease crtc.

v2: -Separated prepare crtc for master and lease.
    -Replace close with terminate_lease.
    -Removed lease_t from all sub-tests. (Ankit)
v3: Updated commit message. (Ankit)
v4: Avoid duplicating prepare_crtc. (Ankit)
v5: Send fd to close instead structure address.
v6: -Use lease fd instead mcl.fd for display dependent tests.
    -Remove terminate_lease and close fd from display dependent subtests.

Signed-off-by: Mohammed Thasleem <mohammed.thasleem@intel.com>
---
 tests/kms_lease.c | 168 +++++++++++++++++++++-------------------------
 1 file changed, 76 insertions(+), 92 deletions(-)

diff --git a/tests/kms_lease.c b/tests/kms_lease.c
index 343cdb812..44aa51362 100644
--- a/tests/kms_lease.c
+++ b/tests/kms_lease.c
@@ -211,6 +211,7 @@ typedef struct {
 } lease_t;
 
 typedef struct {
+	lease_t lease;
 	lease_t master;
 	enum pipe pipe;
 	uint32_t crtc_id;
@@ -226,9 +227,10 @@ static igt_output_t *connector_id_to_output(igt_display_t *display, uint32_t con
 	return igt_output_from_connector(display, &connector);
 }
 
-static int prepare_crtc(lease_t *lease, data_t *data)
+static int prepare_crtc(data_t *data, bool is_master)
 {
 	drmModeModeInfo *mode;
+	lease_t *lease = is_master ? &data->master : &data->lease;
 	igt_display_t *display = &lease->display;
 	igt_output_t *output = connector_id_to_output(display, data->connector_id);
 	enum pipe pipe = display->pipes[data->pipe].pipe;
@@ -314,7 +316,7 @@ static int get_lease(int fd, struct drm_mode_get_lease *mgl)
 	return err;
 }
 
-static int make_lease(data_t *data, lease_t *lease)
+static int make_lease(data_t *data)
 {
 	uint32_t object_ids[3];
 	struct drm_mode_create_lease mcl;
@@ -334,14 +336,14 @@ static int make_lease(data_t *data, lease_t *lease)
 	if (ret)
 		return ret;
 
-	lease->fd = mcl.fd;
-	lease->lessee_id = mcl.lessee_id;
+	data->lease.fd = mcl.fd;
+	data->lease.lessee_id = mcl.lessee_id;
 	return 0;
 }
 
-static void terminate_lease(lease_t *lease)
+static void terminate_lease(int lease_fd)
 {
-	close(lease->fd);
+	close(lease_fd);
 }
 
 static int paint_fb(int drm_fd, struct igt_fb *fb, const char *test_name,
@@ -370,24 +372,21 @@ static void simple_lease(data_t *data)
 {
 	enum pipe pipe = data->pipe;
 
-	lease_t lease;
-
 	/* Create a valid lease */
-	igt_assert_eq(make_lease(data, &lease), 0);
+	igt_assert_eq(make_lease(data), 0);
 
-	igt_display_require(&lease.display, lease.fd);
+	igt_display_require(&data->lease.display, data->lease.fd);
 
 	/* Set a mode on the leased output */
-	igt_assert_eq(0, prepare_crtc(&lease, data));
+	igt_assert_eq(0, prepare_crtc(data, false));
 
 	/* Paint something attractive */
-	paint_fb(lease.fd, &lease.primary_fb, "simple-lease",
-		 lease.mode->name, igt_output_name(lease.output), kmstest_pipe_name(pipe));
+	paint_fb(data->lease.fd, &data->lease.primary_fb, "simple-lease",
+		 data->lease.mode->name, igt_output_name(data->lease.output),
+		 kmstest_pipe_name(pipe));
 	igt_debug_wait_for_keypress("lease");
-	cleanup_crtc(&lease,
-		     connector_id_to_output(&lease.display, data->connector_id));
-
-	terminate_lease(&lease);
+	cleanup_crtc(&data->lease,
+		     connector_id_to_output(&data->lease.display, data->connector_id));
 }
 
 static void empty_lease(data_t *data)
@@ -395,8 +394,7 @@ static void empty_lease(data_t *data)
 	struct drm_mode_create_lease mcl = {0};
 
 	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
-
-	close(mcl.fd);
+	data->lease.fd = mcl.fd;
 }
 
 static void page_flip_implicit_plane(data_t *data)
@@ -429,10 +427,11 @@ static void page_flip_implicit_plane(data_t *data)
 
 	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
 	do_or_die(create_lease(data->master.fd, &mcl));
+	data->lease.fd = mcl.fd;
 	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
 
 	/* Set a mode on the leased output */
-	igt_assert_eq(0, prepare_crtc(&data->master, data));
+	igt_assert_eq(0, prepare_crtc(data, true));
 
 	/* sanity check */
 	do_or_die(drmModePageFlip(data->master.fd, data->crtc_id,
@@ -444,22 +443,22 @@ static void page_flip_implicit_plane(data_t *data)
 	igt_wait_for_vblank(data->master.fd,
 			display->pipes[pipe].crtc_offset);
 
-	do_or_die(drmModePageFlip(mcl.fd, data->crtc_id,
+	do_or_die(drmModePageFlip(data->lease.fd, data->crtc_id,
 			      data->master.primary_fb.fb_id,
 			      0, NULL));
-	close(mcl.fd);
+	close(data->lease.fd);
 
 	object_ids[mcl.object_count++] = wrong_plane_id;
 	do_or_die(create_lease(data->master.fd, &mcl));
+	data->lease.fd = mcl.fd;
 
 	igt_wait_for_vblank(data->master.fd,
 			display->pipes[pipe].crtc_offset);
 
-	igt_assert_eq(drmModePageFlip(mcl.fd, data->crtc_id,
+	igt_assert_eq(drmModePageFlip(data->lease.fd, data->crtc_id,
 				      data->master.primary_fb.fb_id,
 				      0, NULL),
 		      -EACCES);
-	close(mcl.fd);
 
 	cleanup_crtc(&data->master,
 		     connector_id_to_output(&data->master.display, data->connector_id));
@@ -498,6 +497,7 @@ static void setcrtc_implicit_plane(data_t *data)
 
 	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
 	do_or_die(create_lease(data->master.fd, &mcl));
+	data->lease.fd = mcl.fd;
 	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
 
 	/*
@@ -505,31 +505,31 @@ static void setcrtc_implicit_plane(data_t *data)
 	 * then the client cap for aspect-ratio bits must be set.
 	 */
 	if (mode->flags & DRM_MODE_FLAG_PIC_AR_MASK) {
-		drmSetClientCap(mcl.fd, DRM_CLIENT_CAP_ASPECT_RATIO, 1);
+		drmSetClientCap(data->lease.fd, DRM_CLIENT_CAP_ASPECT_RATIO, 1);
 	}
 
 	/* Set a mode on the leased output */
-	igt_assert_eq(0, prepare_crtc(&data->master, data));
+	igt_assert_eq(0, prepare_crtc(data, true));
 
 	/* sanity check */
 	ret = drmModeSetCrtc(data->master.fd, data->crtc_id, -1,
 			     0, 0, object_ids, 1, mode);
-	ret_mcl = drmModeSetCrtc(mcl.fd, data->crtc_id, -1,
+	ret_mcl = drmModeSetCrtc(data->lease.fd, data->crtc_id, -1,
 				 0, 0, object_ids, 1, mode);
-	close(mcl.fd);
+	close(data->lease.fd);
 	igt_assert_eq(ret, 0);
 	igt_assert_eq(ret_mcl, 0);
 
 	object_ids[mcl.object_count++] = wrong_plane_id;
 	do_or_die(create_lease(data->master.fd, &mcl));
+	data->lease.fd = mcl.fd;
 
-	igt_assert_eq(drmModeSetCrtc(mcl.fd, data->crtc_id, -1,
+	igt_assert_eq(drmModeSetCrtc(data->lease.fd, data->crtc_id, -1,
 				     0, 0, object_ids, 1, mode),
 		      -EACCES);
 	/* make sure we are allowed to turn the CRTC off */
-	do_or_die(drmModeSetCrtc(mcl.fd, data->crtc_id,
+	do_or_die(drmModeSetCrtc(data->lease.fd, data->crtc_id,
 				 0, 0, 0, NULL, 0, NULL));
-	close(mcl.fd);
 
 	cleanup_crtc(&data->master,
 		     connector_id_to_output(&data->master.display, data->connector_id));
@@ -549,23 +549,24 @@ static void cursor_implicit_plane(data_t *data)
 
 	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
 	do_or_die(create_lease(data->master.fd, &mcl));
+	data->lease.fd = mcl.fd;
 	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
 
 	/* Set a mode on the leased output */
-	igt_assert_eq(0, prepare_crtc(&data->master, data));
+	igt_assert_eq(0, prepare_crtc(data, true));
 
 	/* sanity check */
 	do_or_die(drmModeSetCursor(data->master.fd, data->crtc_id, 0, 0, 0));
-	do_or_die(drmModeSetCursor(mcl.fd, data->crtc_id, 0, 0, 0));
-	close(mcl.fd);
+	do_or_die(drmModeSetCursor(data->lease.fd, data->crtc_id, 0, 0, 0));
+	close(data->lease.fd);
 
 	/* primary plane is never the cursor */
 	object_ids[mcl.object_count++] = data->plane_id;
 	do_or_die(create_lease(data->master.fd, &mcl));
+	data->lease.fd = mcl.fd;
 
-	igt_assert_eq(drmModeSetCursor(mcl.fd, data->crtc_id, 0, 0, 0),
+	igt_assert_eq(drmModeSetCursor(data->lease.fd, data->crtc_id, 0, 0, 0),
 		      -EACCES);
-	close(mcl.fd);
 
 	cleanup_crtc(&data->master,
 		     connector_id_to_output(&data->master.display, data->connector_id));
@@ -624,7 +625,8 @@ static void atomic_implicit_crtc(data_t *data)
 	igt_assert(crtc_id_prop);
 
 	do_or_die(create_lease(data->master.fd, &mcl));
-	do_or_die(drmSetClientCap(mcl.fd, DRM_CLIENT_CAP_ATOMIC, 1));
+	data->lease.fd = mcl.fd;
+	do_or_die(drmSetClientCap(data->lease.fd, DRM_CLIENT_CAP_ATOMIC, 1));
 
 	/* check CRTC_ID property on the plane */
 	req = drmModeAtomicAlloc();
@@ -637,7 +639,7 @@ static void atomic_implicit_crtc(data_t *data)
 	ret = drmModeAtomicCommit(data->master.fd, req, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
 	igt_assert(ret == 0 || ret == -EINVAL);
 
-	ret = drmModeAtomicCommit(mcl.fd, req, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
+	ret = drmModeAtomicCommit(data->lease.fd, req, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
 	igt_assert(ret == -EACCES);
 	drmModeAtomicFree(req);
 
@@ -652,29 +654,26 @@ static void atomic_implicit_crtc(data_t *data)
 	ret = drmModeAtomicCommit(data->master.fd, req, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
 	igt_assert(ret == 0 || ret == -EINVAL);
 
-	ret = drmModeAtomicCommit(mcl.fd, req, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
+	ret = drmModeAtomicCommit(data->lease.fd, req, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
 	igt_assert(ret == -EACCES);
 	drmModeAtomicFree(req);
-
-	close(mcl.fd);
 }
 
 /* Test listing lessees */
 static void lessee_list(data_t *data)
 {
-	lease_t lease;
 	struct drm_mode_list_lessees mll;
 	uint32_t lessees[1];
 
 	mll.pad = 0;
 
 	/* Create a valid lease */
-	igt_assert_eq(make_lease(data, &lease), 0);
+	igt_assert_eq(make_lease(data), 0);
 
 	/* check for nested leases */
 	mll.count_lessees = 0;
 	mll.lessees_ptr = 0;
-	igt_assert_eq(list_lessees(lease.fd, &mll), 0);
+	igt_assert_eq(list_lessees(data->lease.fd, &mll), 0);
 	igt_assert_eq(mll.count_lessees, 0);
 
 	/* Get the number of lessees */
@@ -696,14 +695,14 @@ static void lessee_list(data_t *data)
 	igt_assert_eq(mll.count_lessees, 1);
 
 	/* Make sure the listed lease is the same as the one we created */
-	igt_assert_eq(lessees[0], lease.lessee_id);
+	igt_assert_eq(lessees[0], data->lease.lessee_id);
 
 	/* invalid pad */
 	mll.pad = -1;
 	igt_assert_eq(list_lessees(data->master.fd, &mll), -EINVAL);
 	mll.pad = 0;
 
-	terminate_lease(&lease);
+	terminate_lease(data->lease.fd);
 
 	/* Make sure the lease is gone */
 	igt_assert_eq(list_lessees(data->master.fd, &mll), 0);
@@ -713,7 +712,6 @@ static void lessee_list(data_t *data)
 /* Test getting the contents of a lease */
 static void lease_get(data_t *data)
 {
-	lease_t lease;
 	struct drm_mode_get_lease mgl;
 	int num_leased_obj = 3;
 	uint32_t objects[num_leased_obj];
@@ -722,12 +720,12 @@ static void lease_get(data_t *data)
 	mgl.pad = 0;
 
 	/* Create a valid lease */
-	igt_assert_eq(make_lease(data, &lease), 0);
+	igt_assert_eq(make_lease(data), 0);
 
 	/* Get the number of objects */
 	mgl.count_objects = 0;
 	mgl.objects_ptr = 0;
-	igt_assert_eq(get_lease(lease.fd, &mgl), 0);
+	igt_assert_eq(get_lease(data->lease.fd, &mgl), 0);
 
 	/* Make sure it's 2 */
 	igt_assert_eq(mgl.count_objects, num_leased_obj);
@@ -735,7 +733,7 @@ static void lease_get(data_t *data)
 	/* Get the objects */
 	mgl.objects_ptr = (uint64_t) (uintptr_t) objects;
 
-	igt_assert_eq(get_lease(lease.fd, &mgl), 0);
+	igt_assert_eq(get_lease(data->lease.fd, &mgl), 0);
 
 	/* Make sure it's 2 */
 	igt_assert_eq(mgl.count_objects, num_leased_obj);
@@ -761,28 +759,25 @@ static void lease_get(data_t *data)
 
 	/* invalid pad */
 	mgl.pad = -1;
-	igt_assert_eq(get_lease(lease.fd, &mgl), -EINVAL);
+	igt_assert_eq(get_lease(data->lease.fd, &mgl), -EINVAL);
 	mgl.pad = 0;
 
 	/* invalid pointer */
 	mgl.objects_ptr = 0;
-	igt_assert_eq(get_lease(lease.fd, &mgl), -EFAULT);
-
-	terminate_lease(&lease);
+	igt_assert_eq(get_lease(data->lease.fd, &mgl), -EFAULT);
 }
 
 static void lease_unleased_crtc(data_t *data)
 {
-	lease_t lease;
 	enum pipe p;
 	uint32_t bad_crtc_id;
 	drmModeCrtc *crtc;
 	int ret;
 
 	/* Create a valid lease */
-	igt_assert_eq(make_lease(data, &lease), 0);
+	igt_assert_eq(make_lease(data), 0);
 
-	igt_display_require(&lease.display, lease.fd);
+	igt_display_require(&data->lease.display, data->lease.fd);
 
 	/* Find another CRTC that we don't control */
 	bad_crtc_id = 0;
@@ -798,36 +793,33 @@ static void lease_unleased_crtc(data_t *data)
 	igt_skip_on(bad_crtc_id == 0);
 
 	/* sanity check */
-	ret = drmModeSetCrtc(lease.fd, data->crtc_id, 0, 0, 0, NULL, 0, NULL);
+	ret = drmModeSetCrtc(data->lease.fd, data->crtc_id, 0, 0, 0, NULL, 0, NULL);
 	igt_assert_eq(ret, 0);
-	crtc = drmModeGetCrtc(lease.fd, data->crtc_id);
+	crtc = drmModeGetCrtc(data->lease.fd, data->crtc_id);
 	igt_assert(crtc);
 	drmModeFreeCrtc(crtc);
 
 	/* Attempt to use the unleased crtc id. We need raw ioctl to bypass the
 	 * igt_kms helpers.
 	 */
-	ret = drmModeSetCrtc(lease.fd, bad_crtc_id, 0, 0, 0, NULL, 0, NULL);
+	ret = drmModeSetCrtc(data->lease.fd, bad_crtc_id, 0, 0, 0, NULL, 0, NULL);
 	igt_assert_eq(ret, -ENOENT);
-	crtc = drmModeGetCrtc(lease.fd, bad_crtc_id);
+	crtc = drmModeGetCrtc(data->lease.fd, bad_crtc_id);
 	igt_assert(!crtc);
 	igt_assert_eq(errno, ENOENT);
 	drmModeFreeCrtc(crtc);
-
-	terminate_lease(&lease);
 }
 
 static void lease_unleased_connector(data_t *data)
 {
-	lease_t lease;
 	int o;
 	uint32_t bad_connector_id;
 	drmModeConnector *c;
 
 	/* Create a valid lease */
-	igt_assert_eq(make_lease(data, &lease), 0);
+	igt_assert_eq(make_lease(data), 0);
 
-	igt_display_require(&lease.display, lease.fd);
+	igt_display_require(&data->lease.display, data->lease.fd);
 
 	/* Find another connector that we don't control */
 	bad_connector_id = 0;
@@ -840,72 +832,66 @@ static void lease_unleased_connector(data_t *data)
 	igt_skip_on(bad_connector_id == 0);
 
 	/* sanity check */
-	c = drmModeGetConnector(lease.fd, data->connector_id);
+	c = drmModeGetConnector(data->lease.fd, data->connector_id);
 	igt_assert(c);
 
 	/* Attempt to use the unleased connector id. Note that the
 	 */
-	c = drmModeGetConnector(lease.fd, bad_connector_id);
+	c = drmModeGetConnector(data->lease.fd, bad_connector_id);
 	igt_assert(!c);
 	igt_assert_eq(errno, ENOENT);
-
-	terminate_lease(&lease);
 }
 
 /* Test revocation of lease */
 static void lease_revoke(data_t *data)
 {
-	lease_t lease;
 	struct drm_mode_revoke_lease mrl;
 	int ret;
 
 	/* Create a valid lease */
-	igt_assert_eq(make_lease(data, &lease), 0);
+	igt_assert_eq(make_lease(data), 0);
 
-	igt_display_require(&lease.display, lease.fd);
+	igt_display_require(&data->lease.display, data->lease.fd);
 
 	/* try to revoke an invalid lease */
 	mrl.lessee_id = 0;
 	igt_assert_eq(revoke_lease(data->master.fd, &mrl), -ENOENT);
 
 	/* try to revoke with the wrong fd */
-	mrl.lessee_id = lease.lessee_id;
-	igt_assert_eq(revoke_lease(lease.fd, &mrl), -EACCES);
+	mrl.lessee_id = data->lease.lessee_id;
+	igt_assert_eq(revoke_lease(data->lease.fd, &mrl), -EACCES);
 
 	/* Revoke the lease using the master fd */
-	mrl.lessee_id = lease.lessee_id;
+	mrl.lessee_id = data->lease.lessee_id;
 	igt_assert_eq(revoke_lease(data->master.fd, &mrl), 0);
 
 	/* Try to use the leased objects */
-	ret = prepare_crtc(&lease, data);
+	ret = prepare_crtc(data, false);
 
 	/* Ensure that the expected error is returned */
 	igt_assert_eq(ret, -ENOENT);
 
-	terminate_lease(&lease);
+	terminate_lease(data->lease.fd);
 
 	/* make sure the lease is gone */
-	mrl.lessee_id = lease.lessee_id;
+	mrl.lessee_id = data->lease.lessee_id;
 	igt_assert_eq(revoke_lease(data->master.fd, &mrl), -ENOENT);
 }
 
 /* Test leasing objects more than once */
 static void lease_again(data_t *data)
 {
-	lease_t lease_a, lease_b;
 
 	/* Create a valid lease */
-	igt_assert_eq(make_lease(data, &lease_a), 0);
+	igt_assert_eq(make_lease(data), 0);
 
 	/* Attempt to re-lease the same objects */
-	igt_assert_eq(make_lease(data, &lease_b), -EBUSY);
+	igt_assert_eq(make_lease(data), -EBUSY);
 
-	terminate_lease(&lease_a);
+	terminate_lease(data->lease.fd);
 
 	/* Now attempt to lease the same objects */
-	igt_assert_eq(make_lease(data, &lease_b), 0);
-
-	terminate_lease(&lease_b);
+	igt_assert_eq(make_lease(data), 0);
 }
 
 #define assert_unleased(ret) \
@@ -915,14 +901,13 @@ static void lease_again(data_t *data)
 /* Test leasing an invalid connector */
 static void lease_invalid_connector(data_t *data)
 {
-	lease_t lease;
 	uint32_t save_connector_id;
 	int ret;
 
 	/* Create an invalid lease */
 	save_connector_id = data->connector_id;
 	data->connector_id = 0xbaadf00d;
-	ret = make_lease(data, &lease);
+	ret = make_lease(data);
 	data->connector_id = save_connector_id;
 	assert_unleased(ret);
 }
@@ -930,28 +915,26 @@ static void lease_invalid_connector(data_t *data)
 /* Test leasing an invalid crtc */
 static void lease_invalid_crtc(data_t *data)
 {
-	lease_t lease;
 	uint32_t save_crtc_id;
 	int ret;
 
 	/* Create an invalid lease */
 	save_crtc_id = data->crtc_id;
 	data->crtc_id = 0xbaadf00d;
-	ret = make_lease(data, &lease);
+	ret = make_lease(data);
 	data->crtc_id = save_crtc_id;
 	assert_unleased(ret);
 }
 
 static void lease_invalid_plane(data_t *data)
 {
-	lease_t lease;
 	uint32_t save_plane_id;
 	int ret;
 
 	/* Create an invalid lease */
 	save_plane_id = data->plane_id;
 	data->plane_id = 0xbaadf00d;
-	ret = make_lease(data, &lease);
+	ret = make_lease(data);
 	data->plane_id = save_plane_id;
 	assert_unleased(ret);
 }
@@ -1393,6 +1376,7 @@ igt_main
 									DRM_PLANE_TYPE_PRIMARY)->drm_plane->plane_id;
 						f->func(&data);
 					}
+					terminate_lease(data.lease.fd);
 				}
 			}
 		}
-- 
2.25.1

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

* [igt-dev] [PATCH v4 2/2] tests/kms_lease: Add wrapper to create lease and store mcl.fd
  2023-10-10 19:27 [igt-dev] [PATCH v4 0/2] kms lease Mohammed Thasleem
  2023-10-10 19:27 ` [igt-dev] [PATCH v4 1/2] tests/kms_lease: Terminate lease fd before subtests and remove lease_t from all sub-tests Mohammed Thasleem
@ 2023-10-10 19:27 ` Mohammed Thasleem
  2023-10-11  3:22   ` Karthik B S
  2023-10-10 20:57 ` [igt-dev] ✓ Fi.CI.BAT: success for kms lease (rev6) Patchwork
                   ` (3 subsequent siblings)
  5 siblings, 1 reply; 10+ messages in thread
From: Mohammed Thasleem @ 2023-10-10 19:27 UTC (permalink / raw)
  To: igt-dev

Add wrapper to create_lease and store mcl.fd and to all
required subtests.

v2: -Add wrapper to create lease and store mcl.fd. (Ankit)
    -Update terminate lease.
v3: Add wrapper to all required subtests. (Ankit)
v4: -Update create_lease. (Karthik)
v5: Use lease fd instead mcl.fd for display dependent tests.
v6: Replace all _create_lease calls with create_lease. (Karthik)

Signed-off-by: Mohammed Thasleem <mohammed.thasleem@intel.com>
---
 tests/kms_lease.c | 85 ++++++++++++++++++++++++-----------------------
 1 file changed, 43 insertions(+), 42 deletions(-)

diff --git a/tests/kms_lease.c b/tests/kms_lease.c
index 44aa51362..a704601f5 100644
--- a/tests/kms_lease.c
+++ b/tests/kms_lease.c
@@ -280,7 +280,7 @@ static void cleanup_crtc(lease_t *lease, igt_output_t *output)
 	igt_display_commit(display);
 }
 
-static int create_lease(int fd, struct drm_mode_create_lease *mcl)
+static int _create_lease(int fd, struct drm_mode_create_lease *mcl)
 {
 	int err = 0;
 
@@ -289,6 +289,17 @@ static int create_lease(int fd, struct drm_mode_create_lease *mcl)
 	return err;
 }
 
+static int create_lease(int fd, struct drm_mode_create_lease *mcl, int *lease_fd)
+{
+	int ret;
+
+	ret = _create_lease(fd, mcl);
+
+	if (lease_fd != NULL)
+		*lease_fd = mcl->fd;
+	return ret;
+}
+
 static int revoke_lease(int fd, struct drm_mode_revoke_lease *mrl)
 {
 	int err = 0;
@@ -331,12 +342,11 @@ static int make_lease(data_t *data)
 	/* We use universal planes, must add the primary plane */
 	object_ids[mcl.object_count++] = data->plane_id;
 
-	ret = create_lease(data->master.fd, &mcl);
+	ret = create_lease(data->master.fd, &mcl, &data->lease.fd);
 
 	if (ret)
 		return ret;
 
-	data->lease.fd = mcl.fd;
 	data->lease.lessee_id = mcl.lessee_id;
 	return 0;
 }
@@ -393,8 +403,7 @@ static void empty_lease(data_t *data)
 {
 	struct drm_mode_create_lease mcl = {0};
 
-	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
-	data->lease.fd = mcl.fd;
+	igt_assert_eq(create_lease(data->master.fd, &mcl, &data->lease.fd), 0);
 }
 
 static void page_flip_implicit_plane(data_t *data)
@@ -426,8 +435,7 @@ static void page_flip_implicit_plane(data_t *data)
 	object_ids[mcl.object_count++] = data->crtc_id;
 
 	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
-	do_or_die(create_lease(data->master.fd, &mcl));
-	data->lease.fd = mcl.fd;
+	do_or_die(create_lease(data->master.fd, &mcl, &data->lease.fd));
 	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
 
 	/* Set a mode on the leased output */
@@ -449,8 +457,7 @@ static void page_flip_implicit_plane(data_t *data)
 	close(data->lease.fd);
 
 	object_ids[mcl.object_count++] = wrong_plane_id;
-	do_or_die(create_lease(data->master.fd, &mcl));
-	data->lease.fd = mcl.fd;
+	do_or_die(create_lease(data->master.fd, &mcl, &data->lease.fd));
 
 	igt_wait_for_vblank(data->master.fd,
 			display->pipes[pipe].crtc_offset);
@@ -496,8 +503,7 @@ static void setcrtc_implicit_plane(data_t *data)
 	object_ids[mcl.object_count++] = data->crtc_id;
 
 	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
-	do_or_die(create_lease(data->master.fd, &mcl));
-	data->lease.fd = mcl.fd;
+	do_or_die(create_lease(data->master.fd, &mcl, &data->lease.fd));
 	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
 
 	/*
@@ -521,9 +527,7 @@ static void setcrtc_implicit_plane(data_t *data)
 	igt_assert_eq(ret_mcl, 0);
 
 	object_ids[mcl.object_count++] = wrong_plane_id;
-	do_or_die(create_lease(data->master.fd, &mcl));
-	data->lease.fd = mcl.fd;
-
+	do_or_die(create_lease(data->master.fd, &mcl, &data->lease.fd));
 	igt_assert_eq(drmModeSetCrtc(data->lease.fd, data->crtc_id, -1,
 				     0, 0, object_ids, 1, mode),
 		      -EACCES);
@@ -548,8 +552,7 @@ static void cursor_implicit_plane(data_t *data)
 	object_ids[mcl.object_count++] = data->crtc_id;
 
 	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
-	do_or_die(create_lease(data->master.fd, &mcl));
-	data->lease.fd = mcl.fd;
+	do_or_die(create_lease(data->master.fd, &mcl, &data->lease.fd));
 	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
 
 	/* Set a mode on the leased output */
@@ -562,8 +565,7 @@ static void cursor_implicit_plane(data_t *data)
 
 	/* primary plane is never the cursor */
 	object_ids[mcl.object_count++] = data->plane_id;
-	do_or_die(create_lease(data->master.fd, &mcl));
-	data->lease.fd = mcl.fd;
+	do_or_die(create_lease(data->master.fd, &mcl, &data->lease.fd));
 
 	igt_assert_eq(drmModeSetCursor(data->lease.fd, data->crtc_id, 0, 0, 0),
 		      -EACCES);
@@ -624,8 +626,7 @@ static void atomic_implicit_crtc(data_t *data)
 	drmModeFreeObjectProperties(props);
 	igt_assert(crtc_id_prop);
 
-	do_or_die(create_lease(data->master.fd, &mcl));
-	data->lease.fd = mcl.fd;
+	do_or_die(create_lease(data->master.fd, &mcl, &data->lease.fd));
 	do_or_die(drmSetClientCap(data->lease.fd, DRM_CLIENT_CAP_ATOMIC, 1));
 
 	/* check CRTC_ID property on the plane */
@@ -952,76 +953,76 @@ static void invalid_create_leases(data_t *data)
 
 	/* NULL array pointer */
 	mcl.object_count = 1;
-	igt_assert_eq(create_lease(data->master.fd, &mcl), -EFAULT);
+	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), -EFAULT);
 
 	/* nil object */
 	object_ids[0] = 0;
 	mcl.object_ids = (uint64_t) (uintptr_t) object_ids;
 	mcl.object_count = 1;
-	igt_assert_eq(create_lease(data->master.fd, &mcl), -ENOENT);
+	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), -ENOENT);
 
 	/* no crtc, non-universal_plane */
 	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
 	object_ids[0] = data->master.display.outputs[0].id;
-	igt_assert_eq(create_lease(data->master.fd, &mcl), -EINVAL);
+	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), -EINVAL);
 
 	/* no connector, non-universal_plane */
 	object_ids[0] = data->master.display.pipes[0].crtc_id;
-	igt_assert_eq(create_lease(data->master.fd, &mcl), -EINVAL);
+	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), -EINVAL);
 
 	/* sanity check */
 	object_ids[0] = data->master.display.pipes[0].crtc_id;
 	object_ids[1] = data->master.display.outputs[0].id;
 	mcl.object_count = 2;
-	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
+	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), 0);
 	close(mcl.fd);
 
 	/* no plane, universal planes */
 	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
-	igt_assert_eq(create_lease(data->master.fd, &mcl), -EINVAL);
+	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), -EINVAL);
 
 	/* sanity check */
 	object_ids[2] = igt_pipe_get_plane_type(&data->master.display.pipes[0],
 						DRM_PLANE_TYPE_PRIMARY)->drm_plane->plane_id;
 	mcl.object_count = 3;
-	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
+	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), 0);
 	close(mcl.fd);
 
 	/* array overflow, do a small scan around overflow sizes */
 	for (int i = 1; i <= 4; i++) {
 		mcl.object_count = UINT32_MAX / sizeof(object_ids[0]) + i;
-		igt_assert_eq(create_lease(data->master.fd, &mcl), -ENOMEM);
+		igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), -ENOMEM);
 	}
 
 	/* sanity check */
 	mcl.object_count = 3;
 	mcl.flags = O_CLOEXEC | O_NONBLOCK;
-	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
+	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), 0);
 	close(mcl.fd);
 
 	/* invalid flags */
 	mcl.flags = -1;
-	igt_assert_eq(create_lease(data->master.fd, &mcl), -EINVAL);
+	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), -EINVAL);
 
 	/* no subleasing */
 	mcl.object_count = 3;
 	mcl.flags = 0;
-	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
+	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), 0);
 	tmp_fd = mcl.fd;
-	igt_assert_eq(create_lease(tmp_fd, &mcl), -EINVAL);
+	igt_assert_eq(create_lease(tmp_fd, &mcl, NULL), -EINVAL);
 	close(tmp_fd);
 
 	/* no double-leasing */
-	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
+	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), 0);
 	tmp_fd = mcl.fd;
-	igt_assert_eq(create_lease(data->master.fd, &mcl), -EBUSY);
+	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), -EBUSY);
 	close(tmp_fd);
 
 	/* no double leasing */
 	object_ids[3] = object_ids[2];
 	mcl.object_count = 4;
 	/* Note: the ENOSPC is from idr double-insertion failing */
-	ret = create_lease(data->master.fd, &mcl);
+	ret = create_lease(data->master.fd, &mcl, NULL);
 	assert_double_id_err(ret);
 
 	/* no encoder leasing */
@@ -1029,7 +1030,7 @@ static void invalid_create_leases(data_t *data)
 	igt_assert(resources);
 	igt_assert(resources->count_encoders > 0);
 	object_ids[3] = resources->encoders[0];
-	igt_assert_eq(create_lease(data->master.fd, &mcl), -EINVAL);
+	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), -EINVAL);
 	drmModeFreeResources(resources);
 }
 
@@ -1120,7 +1121,7 @@ static void possible_crtcs_filtering(data_t *data)
 		object_ids[mcl.object_count - 1] =
 			resources->crtcs[i];
 
-		igt_assert_eq(create_lease(master_fd, &mcl), 0);
+		igt_assert_eq(create_lease(master_fd, &mcl, NULL), 0);
 		lease_fd = mcl.fd;
 
 		drmSetClientCap(lease_fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
@@ -1154,7 +1155,7 @@ static int _create_simple_lease(int master_fd, data_t *data, int expected_ret)
 	mcl.object_count = 3;
 	mcl.flags = 0;
 
-	igt_assert_eq(create_lease(master_fd, &mcl), expected_ret);
+	igt_assert_eq(create_lease(master_fd, &mcl, NULL), expected_ret);
 
 	return expected_ret == 0 ? mcl.fd : 0;
 }
@@ -1248,13 +1249,13 @@ static void implicit_plane_lease(data_t *data)
 	mcl.flags = 0;
 
 	/* sanity check */
-	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
+	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), 0);
 	close(mcl.fd);
 	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
 
 	/* non universal plane automatically adds primary/cursor plane */
 	mcl.object_count = 2;
-	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
+	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), 0);
 
 	mgl.pad = 0;
 	mgl.count_objects = 0;
@@ -1268,12 +1269,12 @@ static void implicit_plane_lease(data_t *data)
 	/* check that implicit lease doesn't lead to confusion when
 	 * explicitly adding primary plane */
 	mcl.object_count = 3;
-	ret = create_lease(data->master.fd, &mcl);
+	ret = create_lease(data->master.fd, &mcl, NULL);
 	assert_double_id_err(ret);
 
 	/* same for the cursor */
 	object_ids[2] = cursor_id;
-	ret = create_lease(data->master.fd, &mcl);
+	ret = create_lease(data->master.fd, &mcl, NULL);
 	assert_double_id_err(ret);
 
 	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
-- 
2.25.1

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

* [igt-dev] ✓ Fi.CI.BAT: success for kms lease (rev6)
  2023-10-10 19:27 [igt-dev] [PATCH v4 0/2] kms lease Mohammed Thasleem
  2023-10-10 19:27 ` [igt-dev] [PATCH v4 1/2] tests/kms_lease: Terminate lease fd before subtests and remove lease_t from all sub-tests Mohammed Thasleem
  2023-10-10 19:27 ` [igt-dev] [PATCH v4 2/2] tests/kms_lease: Add wrapper to create lease and store mcl.fd Mohammed Thasleem
@ 2023-10-10 20:57 ` Patchwork
  2023-10-10 21:07 ` [igt-dev] ✓ CI.xeBAT: " Patchwork
                   ` (2 subsequent siblings)
  5 siblings, 0 replies; 10+ messages in thread
From: Patchwork @ 2023-10-10 20:57 UTC (permalink / raw)
  To: Mohammed Thasleem; +Cc: igt-dev

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

== Series Details ==

Series: kms lease (rev6)
URL   : https://patchwork.freedesktop.org/series/122944/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13736 -> IGTPW_9966
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

Participating hosts (36 -> 37)
------------------------------

  Additional (2): fi-kbl-soraka fi-hsw-4770 
  Missing    (1): bat-dg2-9 

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

  Here are the changes found in IGTPW_9966 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_9966/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 other tests skip
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/fi-kbl-soraka/igt@gem_lmem_swapping@basic.html

  * igt@i915_selftest@live@gt_heartbeat:
    - fi-apl-guc:         [PASS][3] -> [DMESG-FAIL][4] ([i915#5334])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/fi-apl-guc/igt@i915_selftest@live@gt_heartbeat.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/fi-apl-guc/igt@i915_selftest@live@gt_heartbeat.html

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

  * igt@i915_suspend@basic-s3-without-i915:
    - bat-mtlp-8:         NOTRUN -> [SKIP][6] ([i915#6645])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/bat-mtlp-8/igt@i915_suspend@basic-s3-without-i915.html

  * igt@kms_addfb_basic@addfb25-y-tiled-small-legacy:
    - fi-hsw-4770:        NOTRUN -> [SKIP][7] ([fdo#109271] / [i915#5190])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/fi-hsw-4770/igt@kms_addfb_basic@addfb25-y-tiled-small-legacy.html

  * igt@kms_dsc@dsc-basic:
    - fi-kbl-soraka:      NOTRUN -> [SKIP][8] ([fdo#109271]) +9 other tests skip
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/fi-kbl-soraka/igt@kms_dsc@dsc-basic.html

  * igt@kms_hdmi_inject@inject-audio:
    - fi-kbl-guc:         [PASS][9] -> [FAIL][10] ([IGT#3])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/fi-kbl-guc/igt@kms_hdmi_inject@inject-audio.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/fi-kbl-guc/igt@kms_hdmi_inject@inject-audio.html

  * igt@kms_pipe_crc_basic@compare-crc-sanitycheck-nv12@pipe-a-vga-1:
    - fi-hsw-4770:        NOTRUN -> [SKIP][11] ([fdo#109271]) +12 other tests skip
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/fi-hsw-4770/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-nv12@pipe-a-vga-1.html

  * igt@kms_pipe_crc_basic@suspend-read-crc:
    - fi-kbl-guc:         NOTRUN -> [SKIP][12] ([fdo#109271])
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/fi-kbl-guc/igt@kms_pipe_crc_basic@suspend-read-crc.html

  * igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-vga-1:
    - fi-hsw-4770:        NOTRUN -> [DMESG-WARN][13] ([i915#8841]) +6 other tests dmesg-warn
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/fi-hsw-4770/igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-vga-1.html

  * igt@kms_psr@sprite_plane_onoff:
    - fi-hsw-4770:        NOTRUN -> [SKIP][14] ([fdo#109271] / [i915#1072]) +3 other tests skip
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/fi-hsw-4770/igt@kms_psr@sprite_plane_onoff.html

  
#### Possible fixes ####

  * igt@i915_selftest@live@requests:
    - bat-mtlp-8:         [ABORT][15] ([i915#9414]) -> [PASS][16]
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/bat-mtlp-8/igt@i915_selftest@live@requests.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/bat-mtlp-8/igt@i915_selftest@live@requests.html

  * igt@i915_suspend@basic-s2idle-without-i915:
    - bat-mtlp-6:         [FAIL][17] ([fdo#103375]) -> [PASS][18] +2 other tests pass
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/bat-mtlp-6/igt@i915_suspend@basic-s2idle-without-i915.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/bat-mtlp-6/igt@i915_suspend@basic-s2idle-without-i915.html
    - fi-apl-guc:         [INCOMPLETE][19] ([i915#1982] / [i915#4528]) -> [PASS][20]
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/fi-apl-guc/igt@i915_suspend@basic-s2idle-without-i915.html
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/fi-apl-guc/igt@i915_suspend@basic-s2idle-without-i915.html

  * igt@i915_suspend@basic-s3-without-i915:
    - fi-kbl-guc:         [ABORT][21] -> [PASS][22]
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/fi-kbl-guc/igt@i915_suspend@basic-s3-without-i915.html
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/fi-kbl-guc/igt@i915_suspend@basic-s3-without-i915.html

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

  [IGT#3]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/3
  [fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [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#4528]: https://gitlab.freedesktop.org/drm/intel/issues/4528
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#5190]: https://gitlab.freedesktop.org/drm/intel/issues/5190
  [i915#5334]: https://gitlab.freedesktop.org/drm/intel/issues/5334
  [i915#6645]: https://gitlab.freedesktop.org/drm/intel/issues/6645
  [i915#8841]: https://gitlab.freedesktop.org/drm/intel/issues/8841
  [i915#9414]: https://gitlab.freedesktop.org/drm/intel/issues/9414


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7527 -> IGTPW_9966

  CI-20190529: 20190529
  CI_DRM_13736: 251e78c6b6f76712187d25034bc2ebed0eb33654 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_9966: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/index.html
  IGT_7527: 46f98a3041f73a1d6ee7ec3ace6eba79b15369c4 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git


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

+igt@kms_selftest@drm_cmdline
+igt@kms_selftest@drm_damage
+igt@kms_selftest@drm_dp_mst
+igt@kms_selftest@drm_plane
+igt@kms_selftest@framebuffer
-igt@kms_selftest@drm_cmdline_parser
-igt@kms_selftest@drm_damage_helper
-igt@kms_selftest@drm_dp_mst_helper
-igt@kms_selftest@drm_framebuffer
-igt@kms_selftest@drm_plane_helper

== Logs ==

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

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

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

* [igt-dev] ✓ CI.xeBAT: success for kms lease (rev6)
  2023-10-10 19:27 [igt-dev] [PATCH v4 0/2] kms lease Mohammed Thasleem
                   ` (2 preceding siblings ...)
  2023-10-10 20:57 ` [igt-dev] ✓ Fi.CI.BAT: success for kms lease (rev6) Patchwork
@ 2023-10-10 21:07 ` Patchwork
  2023-10-11  8:37 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  2023-10-11 13:30 ` [igt-dev] ✓ Fi.CI.IGT: success " Patchwork
  5 siblings, 0 replies; 10+ messages in thread
From: Patchwork @ 2023-10-10 21:07 UTC (permalink / raw)
  To: Mohammed Thasleem; +Cc: igt-dev

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

== Series Details ==

Series: kms lease (rev6)
URL   : https://patchwork.freedesktop.org/series/122944/
State : success

== Summary ==

CI Bug Log - changes from XEIGT_7527_BAT -> XEIGTPW_9966_BAT
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Participating hosts (4 -> 4)
------------------------------

  No changes in participating hosts

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

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

### IGT changes ###

#### Issues hit ####

  * igt@kms_flip@basic-flip-vs-wf_vblank@b-edp1:
    - bat-adlp-7:         [PASS][1] -> [FAIL][2] ([Intel XE#480])
   [1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7527/bat-adlp-7/igt@kms_flip@basic-flip-vs-wf_vblank@b-edp1.html
   [2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_9966/bat-adlp-7/igt@kms_flip@basic-flip-vs-wf_vblank@b-edp1.html

  
#### Possible fixes ####

  * {igt@xe_create@create-execqueues-noleak}:
    - bat-adlp-7:         [FAIL][3] ([Intel XE#524]) -> [PASS][4]
   [3]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7527/bat-adlp-7/igt@xe_create@create-execqueues-noleak.html
   [4]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_9966/bat-adlp-7/igt@xe_create@create-execqueues-noleak.html
    - bat-pvc-2:          [FAIL][5] -> [PASS][6]
   [5]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_7527/bat-pvc-2/igt@xe_create@create-execqueues-noleak.html
   [6]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_9966/bat-pvc-2/igt@xe_create@create-execqueues-noleak.html

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

  [Intel XE#480]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/480
  [Intel XE#524]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/524


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

  * IGT: IGT_7527 -> IGTPW_9966

  IGTPW_9966: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/index.html
  IGT_7527: 46f98a3041f73a1d6ee7ec3ace6eba79b15369c4 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
  xe-423-37b2d042c23ae6a10055ea92101a15083d64c718: 37b2d042c23ae6a10055ea92101a15083d64c718

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_9966/index.html

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

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

* Re: [igt-dev] [PATCH v4 2/2] tests/kms_lease: Add wrapper to create lease and store mcl.fd
  2023-10-10 19:27 ` [igt-dev] [PATCH v4 2/2] tests/kms_lease: Add wrapper to create lease and store mcl.fd Mohammed Thasleem
@ 2023-10-11  3:22   ` Karthik B S
  0 siblings, 0 replies; 10+ messages in thread
From: Karthik B S @ 2023-10-11  3:22 UTC (permalink / raw)
  To: Mohammed Thasleem, igt-dev

Hi,

Overall the patch looks good to me now. Will wait for the CI results for 
this subtest before rb'ing.

On 10/11/2023 12:57 AM, Mohammed Thasleem wrote:
> Add wrapper to create_lease and store mcl.fd and to all
> required subtests.

"and to all required subtests"?

Could you please make this more clear.

>
> v2: -Add wrapper to create lease and store mcl.fd. (Ankit)
>      -Update terminate lease.
> v3: Add wrapper to all required subtests. (Ankit)
> v4: -Update create_lease. (Karthik)
> v5: Use lease fd instead mcl.fd for display dependent tests.
> v6: Replace all _create_lease calls with create_lease. (Karthik)

Nit: Please keep the version history comments uniform. Few have have 
'-', while others don't. I think we can remove it. Also few lines have 
mention has to whose review feedback is being addressed and few don't. 
(Same in patch 1). Please make this uniform.

Thanks,
Karthik.B.S
>
> Signed-off-by: Mohammed Thasleem <mohammed.thasleem@intel.com>
> ---
>   tests/kms_lease.c | 85 ++++++++++++++++++++++++-----------------------
>   1 file changed, 43 insertions(+), 42 deletions(-)
>
> diff --git a/tests/kms_lease.c b/tests/kms_lease.c
> index 44aa51362..a704601f5 100644
> --- a/tests/kms_lease.c
> +++ b/tests/kms_lease.c
> @@ -280,7 +280,7 @@ static void cleanup_crtc(lease_t *lease, igt_output_t *output)
>   	igt_display_commit(display);
>   }
>   
> -static int create_lease(int fd, struct drm_mode_create_lease *mcl)
> +static int _create_lease(int fd, struct drm_mode_create_lease *mcl)
>   {
>   	int err = 0;
>   
> @@ -289,6 +289,17 @@ static int create_lease(int fd, struct drm_mode_create_lease *mcl)
>   	return err;
>   }
>   
> +static int create_lease(int fd, struct drm_mode_create_lease *mcl, int *lease_fd)
> +{
> +	int ret;
> +
> +	ret = _create_lease(fd, mcl);
> +
> +	if (lease_fd != NULL)
> +		*lease_fd = mcl->fd;
> +	return ret;
> +}
> +
>   static int revoke_lease(int fd, struct drm_mode_revoke_lease *mrl)
>   {
>   	int err = 0;
> @@ -331,12 +342,11 @@ static int make_lease(data_t *data)
>   	/* We use universal planes, must add the primary plane */
>   	object_ids[mcl.object_count++] = data->plane_id;
>   
> -	ret = create_lease(data->master.fd, &mcl);
> +	ret = create_lease(data->master.fd, &mcl, &data->lease.fd);
>   
>   	if (ret)
>   		return ret;
>   
> -	data->lease.fd = mcl.fd;
>   	data->lease.lessee_id = mcl.lessee_id;
>   	return 0;
>   }
> @@ -393,8 +403,7 @@ static void empty_lease(data_t *data)
>   {
>   	struct drm_mode_create_lease mcl = {0};
>   
> -	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
> -	data->lease.fd = mcl.fd;
> +	igt_assert_eq(create_lease(data->master.fd, &mcl, &data->lease.fd), 0);
>   }
>   
>   static void page_flip_implicit_plane(data_t *data)
> @@ -426,8 +435,7 @@ static void page_flip_implicit_plane(data_t *data)
>   	object_ids[mcl.object_count++] = data->crtc_id;
>   
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
> -	do_or_die(create_lease(data->master.fd, &mcl));
> -	data->lease.fd = mcl.fd;
> +	do_or_die(create_lease(data->master.fd, &mcl, &data->lease.fd));
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
>   
>   	/* Set a mode on the leased output */
> @@ -449,8 +457,7 @@ static void page_flip_implicit_plane(data_t *data)
>   	close(data->lease.fd);
>   
>   	object_ids[mcl.object_count++] = wrong_plane_id;
> -	do_or_die(create_lease(data->master.fd, &mcl));
> -	data->lease.fd = mcl.fd;
> +	do_or_die(create_lease(data->master.fd, &mcl, &data->lease.fd));
>   
>   	igt_wait_for_vblank(data->master.fd,
>   			display->pipes[pipe].crtc_offset);
> @@ -496,8 +503,7 @@ static void setcrtc_implicit_plane(data_t *data)
>   	object_ids[mcl.object_count++] = data->crtc_id;
>   
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
> -	do_or_die(create_lease(data->master.fd, &mcl));
> -	data->lease.fd = mcl.fd;
> +	do_or_die(create_lease(data->master.fd, &mcl, &data->lease.fd));
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
>   
>   	/*
> @@ -521,9 +527,7 @@ static void setcrtc_implicit_plane(data_t *data)
>   	igt_assert_eq(ret_mcl, 0);
>   
>   	object_ids[mcl.object_count++] = wrong_plane_id;
> -	do_or_die(create_lease(data->master.fd, &mcl));
> -	data->lease.fd = mcl.fd;
> -
> +	do_or_die(create_lease(data->master.fd, &mcl, &data->lease.fd));
>   	igt_assert_eq(drmModeSetCrtc(data->lease.fd, data->crtc_id, -1,
>   				     0, 0, object_ids, 1, mode),
>   		      -EACCES);
> @@ -548,8 +552,7 @@ static void cursor_implicit_plane(data_t *data)
>   	object_ids[mcl.object_count++] = data->crtc_id;
>   
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
> -	do_or_die(create_lease(data->master.fd, &mcl));
> -	data->lease.fd = mcl.fd;
> +	do_or_die(create_lease(data->master.fd, &mcl, &data->lease.fd));
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
>   
>   	/* Set a mode on the leased output */
> @@ -562,8 +565,7 @@ static void cursor_implicit_plane(data_t *data)
>   
>   	/* primary plane is never the cursor */
>   	object_ids[mcl.object_count++] = data->plane_id;
> -	do_or_die(create_lease(data->master.fd, &mcl));
> -	data->lease.fd = mcl.fd;
> +	do_or_die(create_lease(data->master.fd, &mcl, &data->lease.fd));
>   
>   	igt_assert_eq(drmModeSetCursor(data->lease.fd, data->crtc_id, 0, 0, 0),
>   		      -EACCES);
> @@ -624,8 +626,7 @@ static void atomic_implicit_crtc(data_t *data)
>   	drmModeFreeObjectProperties(props);
>   	igt_assert(crtc_id_prop);
>   
> -	do_or_die(create_lease(data->master.fd, &mcl));
> -	data->lease.fd = mcl.fd;
> +	do_or_die(create_lease(data->master.fd, &mcl, &data->lease.fd));
>   	do_or_die(drmSetClientCap(data->lease.fd, DRM_CLIENT_CAP_ATOMIC, 1));
>   
>   	/* check CRTC_ID property on the plane */
> @@ -952,76 +953,76 @@ static void invalid_create_leases(data_t *data)
>   
>   	/* NULL array pointer */
>   	mcl.object_count = 1;
> -	igt_assert_eq(create_lease(data->master.fd, &mcl), -EFAULT);
> +	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), -EFAULT);
>   
>   	/* nil object */
>   	object_ids[0] = 0;
>   	mcl.object_ids = (uint64_t) (uintptr_t) object_ids;
>   	mcl.object_count = 1;
> -	igt_assert_eq(create_lease(data->master.fd, &mcl), -ENOENT);
> +	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), -ENOENT);
>   
>   	/* no crtc, non-universal_plane */
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
>   	object_ids[0] = data->master.display.outputs[0].id;
> -	igt_assert_eq(create_lease(data->master.fd, &mcl), -EINVAL);
> +	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), -EINVAL);
>   
>   	/* no connector, non-universal_plane */
>   	object_ids[0] = data->master.display.pipes[0].crtc_id;
> -	igt_assert_eq(create_lease(data->master.fd, &mcl), -EINVAL);
> +	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), -EINVAL);
>   
>   	/* sanity check */
>   	object_ids[0] = data->master.display.pipes[0].crtc_id;
>   	object_ids[1] = data->master.display.outputs[0].id;
>   	mcl.object_count = 2;
> -	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
> +	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), 0);
>   	close(mcl.fd);
>   
>   	/* no plane, universal planes */
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
> -	igt_assert_eq(create_lease(data->master.fd, &mcl), -EINVAL);
> +	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), -EINVAL);
>   
>   	/* sanity check */
>   	object_ids[2] = igt_pipe_get_plane_type(&data->master.display.pipes[0],
>   						DRM_PLANE_TYPE_PRIMARY)->drm_plane->plane_id;
>   	mcl.object_count = 3;
> -	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
> +	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), 0);
>   	close(mcl.fd);
>   
>   	/* array overflow, do a small scan around overflow sizes */
>   	for (int i = 1; i <= 4; i++) {
>   		mcl.object_count = UINT32_MAX / sizeof(object_ids[0]) + i;
> -		igt_assert_eq(create_lease(data->master.fd, &mcl), -ENOMEM);
> +		igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), -ENOMEM);
>   	}
>   
>   	/* sanity check */
>   	mcl.object_count = 3;
>   	mcl.flags = O_CLOEXEC | O_NONBLOCK;
> -	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
> +	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), 0);
>   	close(mcl.fd);
>   
>   	/* invalid flags */
>   	mcl.flags = -1;
> -	igt_assert_eq(create_lease(data->master.fd, &mcl), -EINVAL);
> +	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), -EINVAL);
>   
>   	/* no subleasing */
>   	mcl.object_count = 3;
>   	mcl.flags = 0;
> -	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
> +	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), 0);
>   	tmp_fd = mcl.fd;
> -	igt_assert_eq(create_lease(tmp_fd, &mcl), -EINVAL);
> +	igt_assert_eq(create_lease(tmp_fd, &mcl, NULL), -EINVAL);
>   	close(tmp_fd);
>   
>   	/* no double-leasing */
> -	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
> +	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), 0);
>   	tmp_fd = mcl.fd;
> -	igt_assert_eq(create_lease(data->master.fd, &mcl), -EBUSY);
> +	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), -EBUSY);
>   	close(tmp_fd);
>   
>   	/* no double leasing */
>   	object_ids[3] = object_ids[2];
>   	mcl.object_count = 4;
>   	/* Note: the ENOSPC is from idr double-insertion failing */
> -	ret = create_lease(data->master.fd, &mcl);
> +	ret = create_lease(data->master.fd, &mcl, NULL);
>   	assert_double_id_err(ret);
>   
>   	/* no encoder leasing */
> @@ -1029,7 +1030,7 @@ static void invalid_create_leases(data_t *data)
>   	igt_assert(resources);
>   	igt_assert(resources->count_encoders > 0);
>   	object_ids[3] = resources->encoders[0];
> -	igt_assert_eq(create_lease(data->master.fd, &mcl), -EINVAL);
> +	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), -EINVAL);
>   	drmModeFreeResources(resources);
>   }
>   
> @@ -1120,7 +1121,7 @@ static void possible_crtcs_filtering(data_t *data)
>   		object_ids[mcl.object_count - 1] =
>   			resources->crtcs[i];
>   
> -		igt_assert_eq(create_lease(master_fd, &mcl), 0);
> +		igt_assert_eq(create_lease(master_fd, &mcl, NULL), 0);
>   		lease_fd = mcl.fd;
>   
>   		drmSetClientCap(lease_fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
> @@ -1154,7 +1155,7 @@ static int _create_simple_lease(int master_fd, data_t *data, int expected_ret)
>   	mcl.object_count = 3;
>   	mcl.flags = 0;
>   
> -	igt_assert_eq(create_lease(master_fd, &mcl), expected_ret);
> +	igt_assert_eq(create_lease(master_fd, &mcl, NULL), expected_ret);
>   
>   	return expected_ret == 0 ? mcl.fd : 0;
>   }
> @@ -1248,13 +1249,13 @@ static void implicit_plane_lease(data_t *data)
>   	mcl.flags = 0;
>   
>   	/* sanity check */
> -	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
> +	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), 0);
>   	close(mcl.fd);
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
>   
>   	/* non universal plane automatically adds primary/cursor plane */
>   	mcl.object_count = 2;
> -	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
> +	igt_assert_eq(create_lease(data->master.fd, &mcl, NULL), 0);
>   
>   	mgl.pad = 0;
>   	mgl.count_objects = 0;
> @@ -1268,12 +1269,12 @@ static void implicit_plane_lease(data_t *data)
>   	/* check that implicit lease doesn't lead to confusion when
>   	 * explicitly adding primary plane */
>   	mcl.object_count = 3;
> -	ret = create_lease(data->master.fd, &mcl);
> +	ret = create_lease(data->master.fd, &mcl, NULL);
>   	assert_double_id_err(ret);
>   
>   	/* same for the cursor */
>   	object_ids[2] = cursor_id;
> -	ret = create_lease(data->master.fd, &mcl);
> +	ret = create_lease(data->master.fd, &mcl, NULL);
>   	assert_double_id_err(ret);
>   
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);

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

* Re: [igt-dev] [PATCH v4 1/2] tests/kms_lease: Terminate lease fd before subtests and remove lease_t from all sub-tests
  2023-10-10 19:27 ` [igt-dev] [PATCH v4 1/2] tests/kms_lease: Terminate lease fd before subtests and remove lease_t from all sub-tests Mohammed Thasleem
@ 2023-10-11  3:37   ` Karthik B S
  2023-10-16  5:23     ` Thasleem, Mohammed
  0 siblings, 1 reply; 10+ messages in thread
From: Karthik B S @ 2023-10-11  3:37 UTC (permalink / raw)
  To: Mohammed Thasleem, igt-dev

Hi,

On 10/11/2023 12:57 AM, Mohammed Thasleem wrote:
> Failures happen at drmModeSetCursor and prepare_crtc_master or
> prepare_crtc_lease which exit tests without termination of lease fd
> which resulting in resource busy for sub-sequence execution, when
> new lessor request for lease.
>
> Terminate the lease fd when any assert happens without termination
> of lease fd and on any drmModeSetCrtc or drmModeGetCrtc exit.
> Terminate lease fd on every display dependent subtests execution.
>
> Remove lease_t from all sub-tests and move it to data_t and
> send data struct instead lease struct and avoid duplicating
%s/instead lease struct/instaed of lease struct/
> of prepare_crtc in to master crtc and lease crtc.

'in to' -> 'into'.

Also better to have this "avoid duplicating of prepare_crtc in to master 
crtc and lease crtc." as a separate sentence IMHO.

>
> v2: -Separated prepare crtc for master and lease.
>      -Replace close with terminate_lease.
>      -Removed lease_t from all sub-tests. (Ankit)
> v3: Updated commit message. (Ankit)
> v4: Avoid duplicating prepare_crtc. (Ankit)
> v5: Send fd to close instead structure address.
> v6: -Use lease fd instead mcl.fd for display dependent tests.
>      -Remove terminate_lease and close fd from display dependent subtests.
>
> Signed-off-by: Mohammed Thasleem <mohammed.thasleem@intel.com>
> ---
>   tests/kms_lease.c | 168 +++++++++++++++++++++-------------------------
>   1 file changed, 76 insertions(+), 92 deletions(-)
>
> diff --git a/tests/kms_lease.c b/tests/kms_lease.c
> index 343cdb812..44aa51362 100644
> --- a/tests/kms_lease.c
> +++ b/tests/kms_lease.c
> @@ -211,6 +211,7 @@ typedef struct {
>   } lease_t;
>   
>   typedef struct {
> +	lease_t lease;
>   	lease_t master;
>   	enum pipe pipe;
>   	uint32_t crtc_id;
> @@ -226,9 +227,10 @@ static igt_output_t *connector_id_to_output(igt_display_t *display, uint32_t con
>   	return igt_output_from_connector(display, &connector);
>   }
>   
> -static int prepare_crtc(lease_t *lease, data_t *data)
> +static int prepare_crtc(data_t *data, bool is_master)
>   {
>   	drmModeModeInfo *mode;
> +	lease_t *lease = is_master ? &data->master : &data->lease;
>   	igt_display_t *display = &lease->display;
>   	igt_output_t *output = connector_id_to_output(display, data->connector_id);
>   	enum pipe pipe = display->pipes[data->pipe].pipe;
> @@ -314,7 +316,7 @@ static int get_lease(int fd, struct drm_mode_get_lease *mgl)
>   	return err;
>   }
>   
> -static int make_lease(data_t *data, lease_t *lease)
> +static int make_lease(data_t *data)
>   {
>   	uint32_t object_ids[3];
>   	struct drm_mode_create_lease mcl;
> @@ -334,14 +336,14 @@ static int make_lease(data_t *data, lease_t *lease)
>   	if (ret)
>   		return ret;
>   
> -	lease->fd = mcl.fd;
> -	lease->lessee_id = mcl.lessee_id;
> +	data->lease.fd = mcl.fd;
> +	data->lease.lessee_id = mcl.lessee_id;
>   	return 0;
>   }
>   
> -static void terminate_lease(lease_t *lease)
> +static void terminate_lease(int lease_fd)
>   {
> -	close(lease->fd);
> +	close(lease_fd);
>   }
>   
>   static int paint_fb(int drm_fd, struct igt_fb *fb, const char *test_name,
> @@ -370,24 +372,21 @@ static void simple_lease(data_t *data)
>   {
>   	enum pipe pipe = data->pipe;
>   
> -	lease_t lease;
> -
>   	/* Create a valid lease */
> -	igt_assert_eq(make_lease(data, &lease), 0);
> +	igt_assert_eq(make_lease(data), 0);
>   
> -	igt_display_require(&lease.display, lease.fd);
> +	igt_display_require(&data->lease.display, data->lease.fd);
>   
>   	/* Set a mode on the leased output */
> -	igt_assert_eq(0, prepare_crtc(&lease, data));
> +	igt_assert_eq(0, prepare_crtc(data, false));
>   
>   	/* Paint something attractive */
> -	paint_fb(lease.fd, &lease.primary_fb, "simple-lease",
> -		 lease.mode->name, igt_output_name(lease.output), kmstest_pipe_name(pipe));
> +	paint_fb(data->lease.fd, &data->lease.primary_fb, "simple-lease",
> +		 data->lease.mode->name, igt_output_name(data->lease.output),
> +		 kmstest_pipe_name(pipe));
>   	igt_debug_wait_for_keypress("lease");
> -	cleanup_crtc(&lease,
> -		     connector_id_to_output(&lease.display, data->connector_id));
> -
> -	terminate_lease(&lease);
> +	cleanup_crtc(&data->lease,
> +		     connector_id_to_output(&data->lease.display, data->connector_id));
>   }
>   
>   static void empty_lease(data_t *data)
> @@ -395,8 +394,7 @@ static void empty_lease(data_t *data)
>   	struct drm_mode_create_lease mcl = {0};
>   
>   	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
> -
> -	close(mcl.fd);
> +	data->lease.fd = mcl.fd;
>   }
>   
>   static void page_flip_implicit_plane(data_t *data)
> @@ -429,10 +427,11 @@ static void page_flip_implicit_plane(data_t *data)
>   
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
>   	do_or_die(create_lease(data->master.fd, &mcl));
> +	data->lease.fd = mcl.fd;
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
>   
>   	/* Set a mode on the leased output */
> -	igt_assert_eq(0, prepare_crtc(&data->master, data));
> +	igt_assert_eq(0, prepare_crtc(data, true));
>   
>   	/* sanity check */
>   	do_or_die(drmModePageFlip(data->master.fd, data->crtc_id,
> @@ -444,22 +443,22 @@ static void page_flip_implicit_plane(data_t *data)
>   	igt_wait_for_vblank(data->master.fd,
>   			display->pipes[pipe].crtc_offset);
>   
> -	do_or_die(drmModePageFlip(mcl.fd, data->crtc_id,
> +	do_or_die(drmModePageFlip(data->lease.fd, data->crtc_id,
>   			      data->master.primary_fb.fb_id,
>   			      0, NULL));
> -	close(mcl.fd);
> +	close(data->lease.fd);
>   
>   	object_ids[mcl.object_count++] = wrong_plane_id;
>   	do_or_die(create_lease(data->master.fd, &mcl));
> +	data->lease.fd = mcl.fd;
>   
>   	igt_wait_for_vblank(data->master.fd,
>   			display->pipes[pipe].crtc_offset);
>   
> -	igt_assert_eq(drmModePageFlip(mcl.fd, data->crtc_id,
> +	igt_assert_eq(drmModePageFlip(data->lease.fd, data->crtc_id,
>   				      data->master.primary_fb.fb_id,
>   				      0, NULL),
>   		      -EACCES);
> -	close(mcl.fd);
>   
>   	cleanup_crtc(&data->master,
>   		     connector_id_to_output(&data->master.display, data->connector_id));
> @@ -498,6 +497,7 @@ static void setcrtc_implicit_plane(data_t *data)
>   
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
>   	do_or_die(create_lease(data->master.fd, &mcl));
> +	data->lease.fd = mcl.fd;
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
>   
>   	/*
> @@ -505,31 +505,31 @@ static void setcrtc_implicit_plane(data_t *data)
>   	 * then the client cap for aspect-ratio bits must be set.
>   	 */
>   	if (mode->flags & DRM_MODE_FLAG_PIC_AR_MASK) {
> -		drmSetClientCap(mcl.fd, DRM_CLIENT_CAP_ASPECT_RATIO, 1);
> +		drmSetClientCap(data->lease.fd, DRM_CLIENT_CAP_ASPECT_RATIO, 1);
>   	}
>   
>   	/* Set a mode on the leased output */
> -	igt_assert_eq(0, prepare_crtc(&data->master, data));
> +	igt_assert_eq(0, prepare_crtc(data, true));
>   
>   	/* sanity check */
>   	ret = drmModeSetCrtc(data->master.fd, data->crtc_id, -1,
>   			     0, 0, object_ids, 1, mode);
> -	ret_mcl = drmModeSetCrtc(mcl.fd, data->crtc_id, -1,
> +	ret_mcl = drmModeSetCrtc(data->lease.fd, data->crtc_id, -1,
>   				 0, 0, object_ids, 1, mode);
> -	close(mcl.fd);
> +	close(data->lease.fd);
>   	igt_assert_eq(ret, 0);
>   	igt_assert_eq(ret_mcl, 0);
>   
>   	object_ids[mcl.object_count++] = wrong_plane_id;
>   	do_or_die(create_lease(data->master.fd, &mcl));
> +	data->lease.fd = mcl.fd;
>   
> -	igt_assert_eq(drmModeSetCrtc(mcl.fd, data->crtc_id, -1,
> +	igt_assert_eq(drmModeSetCrtc(data->lease.fd, data->crtc_id, -1,
>   				     0, 0, object_ids, 1, mode),
>   		      -EACCES);
>   	/* make sure we are allowed to turn the CRTC off */
> -	do_or_die(drmModeSetCrtc(mcl.fd, data->crtc_id,
> +	do_or_die(drmModeSetCrtc(data->lease.fd, data->crtc_id,
>   				 0, 0, 0, NULL, 0, NULL));
> -	close(mcl.fd);
>   
>   	cleanup_crtc(&data->master,
>   		     connector_id_to_output(&data->master.display, data->connector_id));
> @@ -549,23 +549,24 @@ static void cursor_implicit_plane(data_t *data)
>   
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
>   	do_or_die(create_lease(data->master.fd, &mcl));
> +	data->lease.fd = mcl.fd;
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 1);
>   
>   	/* Set a mode on the leased output */
> -	igt_assert_eq(0, prepare_crtc(&data->master, data));
> +	igt_assert_eq(0, prepare_crtc(data, true));
>   
>   	/* sanity check */
>   	do_or_die(drmModeSetCursor(data->master.fd, data->crtc_id, 0, 0, 0));
> -	do_or_die(drmModeSetCursor(mcl.fd, data->crtc_id, 0, 0, 0));
> -	close(mcl.fd);
> +	do_or_die(drmModeSetCursor(data->lease.fd, data->crtc_id, 0, 0, 0));
> +	close(data->lease.fd);
>   
>   	/* primary plane is never the cursor */
>   	object_ids[mcl.object_count++] = data->plane_id;
>   	do_or_die(create_lease(data->master.fd, &mcl));
> +	data->lease.fd = mcl.fd;
>   
> -	igt_assert_eq(drmModeSetCursor(mcl.fd, data->crtc_id, 0, 0, 0),
> +	igt_assert_eq(drmModeSetCursor(data->lease.fd, data->crtc_id, 0, 0, 0),
>   		      -EACCES);
> -	close(mcl.fd);
>   
>   	cleanup_crtc(&data->master,
>   		     connector_id_to_output(&data->master.display, data->connector_id));
> @@ -624,7 +625,8 @@ static void atomic_implicit_crtc(data_t *data)
>   	igt_assert(crtc_id_prop);
>   
>   	do_or_die(create_lease(data->master.fd, &mcl));
> -	do_or_die(drmSetClientCap(mcl.fd, DRM_CLIENT_CAP_ATOMIC, 1));
> +	data->lease.fd = mcl.fd;
> +	do_or_die(drmSetClientCap(data->lease.fd, DRM_CLIENT_CAP_ATOMIC, 1));
>   
>   	/* check CRTC_ID property on the plane */
>   	req = drmModeAtomicAlloc();
> @@ -637,7 +639,7 @@ static void atomic_implicit_crtc(data_t *data)
>   	ret = drmModeAtomicCommit(data->master.fd, req, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
>   	igt_assert(ret == 0 || ret == -EINVAL);
>   
> -	ret = drmModeAtomicCommit(mcl.fd, req, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
> +	ret = drmModeAtomicCommit(data->lease.fd, req, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
>   	igt_assert(ret == -EACCES);
>   	drmModeAtomicFree(req);
>   
> @@ -652,29 +654,26 @@ static void atomic_implicit_crtc(data_t *data)
>   	ret = drmModeAtomicCommit(data->master.fd, req, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
>   	igt_assert(ret == 0 || ret == -EINVAL);
>   
> -	ret = drmModeAtomicCommit(mcl.fd, req, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
> +	ret = drmModeAtomicCommit(data->lease.fd, req, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
>   	igt_assert(ret == -EACCES);
>   	drmModeAtomicFree(req);
> -
> -	close(mcl.fd);
>   }
>   
>   /* Test listing lessees */
>   static void lessee_list(data_t *data)
>   {
> -	lease_t lease;
>   	struct drm_mode_list_lessees mll;
>   	uint32_t lessees[1];
>   
>   	mll.pad = 0;
>   
>   	/* Create a valid lease */
> -	igt_assert_eq(make_lease(data, &lease), 0);
> +	igt_assert_eq(make_lease(data), 0);
>   
>   	/* check for nested leases */
>   	mll.count_lessees = 0;
>   	mll.lessees_ptr = 0;
> -	igt_assert_eq(list_lessees(lease.fd, &mll), 0);
> +	igt_assert_eq(list_lessees(data->lease.fd, &mll), 0);
>   	igt_assert_eq(mll.count_lessees, 0);
>   
>   	/* Get the number of lessees */
> @@ -696,14 +695,14 @@ static void lessee_list(data_t *data)
>   	igt_assert_eq(mll.count_lessees, 1);
>   
>   	/* Make sure the listed lease is the same as the one we created */
> -	igt_assert_eq(lessees[0], lease.lessee_id);
> +	igt_assert_eq(lessees[0], data->lease.lessee_id);
>   
>   	/* invalid pad */
>   	mll.pad = -1;
>   	igt_assert_eq(list_lessees(data->master.fd, &mll), -EINVAL);
>   	mll.pad = 0;
>   
> -	terminate_lease(&lease);
> +	terminate_lease(data->lease.fd);
Any reason why we still need this?
>   
>   	/* Make sure the lease is gone */
>   	igt_assert_eq(list_lessees(data->master.fd, &mll), 0);
> @@ -713,7 +712,6 @@ static void lessee_list(data_t *data)
>   /* Test getting the contents of a lease */
>   static void lease_get(data_t *data)
>   {
> -	lease_t lease;
>   	struct drm_mode_get_lease mgl;
>   	int num_leased_obj = 3;
>   	uint32_t objects[num_leased_obj];
> @@ -722,12 +720,12 @@ static void lease_get(data_t *data)
>   	mgl.pad = 0;
>   
>   	/* Create a valid lease */
> -	igt_assert_eq(make_lease(data, &lease), 0);
> +	igt_assert_eq(make_lease(data), 0);
>   
>   	/* Get the number of objects */
>   	mgl.count_objects = 0;
>   	mgl.objects_ptr = 0;
> -	igt_assert_eq(get_lease(lease.fd, &mgl), 0);
> +	igt_assert_eq(get_lease(data->lease.fd, &mgl), 0);
>   
>   	/* Make sure it's 2 */
>   	igt_assert_eq(mgl.count_objects, num_leased_obj);
> @@ -735,7 +733,7 @@ static void lease_get(data_t *data)
>   	/* Get the objects */
>   	mgl.objects_ptr = (uint64_t) (uintptr_t) objects;
>   
> -	igt_assert_eq(get_lease(lease.fd, &mgl), 0);
> +	igt_assert_eq(get_lease(data->lease.fd, &mgl), 0);
>   
>   	/* Make sure it's 2 */
>   	igt_assert_eq(mgl.count_objects, num_leased_obj);
> @@ -761,28 +759,25 @@ static void lease_get(data_t *data)
>   
>   	/* invalid pad */
>   	mgl.pad = -1;
> -	igt_assert_eq(get_lease(lease.fd, &mgl), -EINVAL);
> +	igt_assert_eq(get_lease(data->lease.fd, &mgl), -EINVAL);
>   	mgl.pad = 0;
>   
>   	/* invalid pointer */
>   	mgl.objects_ptr = 0;
> -	igt_assert_eq(get_lease(lease.fd, &mgl), -EFAULT);
> -
> -	terminate_lease(&lease);
> +	igt_assert_eq(get_lease(data->lease.fd, &mgl), -EFAULT);
>   }
>   
>   static void lease_unleased_crtc(data_t *data)
>   {
> -	lease_t lease;
>   	enum pipe p;
>   	uint32_t bad_crtc_id;
>   	drmModeCrtc *crtc;
>   	int ret;
>   
>   	/* Create a valid lease */
> -	igt_assert_eq(make_lease(data, &lease), 0);
> +	igt_assert_eq(make_lease(data), 0);
>   
> -	igt_display_require(&lease.display, lease.fd);
> +	igt_display_require(&data->lease.display, data->lease.fd);
>   
>   	/* Find another CRTC that we don't control */
>   	bad_crtc_id = 0;
> @@ -798,36 +793,33 @@ static void lease_unleased_crtc(data_t *data)
>   	igt_skip_on(bad_crtc_id == 0);
>   
>   	/* sanity check */
> -	ret = drmModeSetCrtc(lease.fd, data->crtc_id, 0, 0, 0, NULL, 0, NULL);
> +	ret = drmModeSetCrtc(data->lease.fd, data->crtc_id, 0, 0, 0, NULL, 0, NULL);
>   	igt_assert_eq(ret, 0);
> -	crtc = drmModeGetCrtc(lease.fd, data->crtc_id);
> +	crtc = drmModeGetCrtc(data->lease.fd, data->crtc_id);
>   	igt_assert(crtc);
>   	drmModeFreeCrtc(crtc);
>   
>   	/* Attempt to use the unleased crtc id. We need raw ioctl to bypass the
>   	 * igt_kms helpers.
>   	 */
> -	ret = drmModeSetCrtc(lease.fd, bad_crtc_id, 0, 0, 0, NULL, 0, NULL);
> +	ret = drmModeSetCrtc(data->lease.fd, bad_crtc_id, 0, 0, 0, NULL, 0, NULL);
>   	igt_assert_eq(ret, -ENOENT);
> -	crtc = drmModeGetCrtc(lease.fd, bad_crtc_id);
> +	crtc = drmModeGetCrtc(data->lease.fd, bad_crtc_id);
>   	igt_assert(!crtc);
>   	igt_assert_eq(errno, ENOENT);
>   	drmModeFreeCrtc(crtc);
> -
> -	terminate_lease(&lease);
>   }
>   
>   static void lease_unleased_connector(data_t *data)
>   {
> -	lease_t lease;
>   	int o;
>   	uint32_t bad_connector_id;
>   	drmModeConnector *c;
>   
>   	/* Create a valid lease */
> -	igt_assert_eq(make_lease(data, &lease), 0);
> +	igt_assert_eq(make_lease(data), 0);
>   
> -	igt_display_require(&lease.display, lease.fd);
> +	igt_display_require(&data->lease.display, data->lease.fd);
>   
>   	/* Find another connector that we don't control */
>   	bad_connector_id = 0;
> @@ -840,72 +832,66 @@ static void lease_unleased_connector(data_t *data)
>   	igt_skip_on(bad_connector_id == 0);
>   
>   	/* sanity check */
> -	c = drmModeGetConnector(lease.fd, data->connector_id);
> +	c = drmModeGetConnector(data->lease.fd, data->connector_id);
>   	igt_assert(c);
>   
>   	/* Attempt to use the unleased connector id. Note that the
>   	 */
> -	c = drmModeGetConnector(lease.fd, bad_connector_id);
> +	c = drmModeGetConnector(data->lease.fd, bad_connector_id);
>   	igt_assert(!c);
>   	igt_assert_eq(errno, ENOENT);
> -
> -	terminate_lease(&lease);
>   }
>   
>   /* Test revocation of lease */
>   static void lease_revoke(data_t *data)
>   {
> -	lease_t lease;
>   	struct drm_mode_revoke_lease mrl;
>   	int ret;
>   
>   	/* Create a valid lease */
> -	igt_assert_eq(make_lease(data, &lease), 0);
> +	igt_assert_eq(make_lease(data), 0);
>   
> -	igt_display_require(&lease.display, lease.fd);
> +	igt_display_require(&data->lease.display, data->lease.fd);
>   
>   	/* try to revoke an invalid lease */
>   	mrl.lessee_id = 0;
>   	igt_assert_eq(revoke_lease(data->master.fd, &mrl), -ENOENT);
>   
>   	/* try to revoke with the wrong fd */
> -	mrl.lessee_id = lease.lessee_id;
> -	igt_assert_eq(revoke_lease(lease.fd, &mrl), -EACCES);
> +	mrl.lessee_id = data->lease.lessee_id;
> +	igt_assert_eq(revoke_lease(data->lease.fd, &mrl), -EACCES);
>   
>   	/* Revoke the lease using the master fd */
> -	mrl.lessee_id = lease.lessee_id;
> +	mrl.lessee_id = data->lease.lessee_id;
>   	igt_assert_eq(revoke_lease(data->master.fd, &mrl), 0);
>   
>   	/* Try to use the leased objects */
> -	ret = prepare_crtc(&lease, data);
> +	ret = prepare_crtc(data, false);
>   
>   	/* Ensure that the expected error is returned */
>   	igt_assert_eq(ret, -ENOENT);
>   
> -	terminate_lease(&lease);
> +	terminate_lease(data->lease.fd);

Same question as above?

Thanks,
Karthik.B.S
>   
>   	/* make sure the lease is gone */
> -	mrl.lessee_id = lease.lessee_id;
> +	mrl.lessee_id = data->lease.lessee_id;
>   	igt_assert_eq(revoke_lease(data->master.fd, &mrl), -ENOENT);
>   }
>   
>   /* Test leasing objects more than once */
>   static void lease_again(data_t *data)
>   {
> -	lease_t lease_a, lease_b;
>   
>   	/* Create a valid lease */
> -	igt_assert_eq(make_lease(data, &lease_a), 0);
> +	igt_assert_eq(make_lease(data), 0);
>   
>   	/* Attempt to re-lease the same objects */
> -	igt_assert_eq(make_lease(data, &lease_b), -EBUSY);
> +	igt_assert_eq(make_lease(data), -EBUSY);
>   
> -	terminate_lease(&lease_a);
> +	terminate_lease(data->lease.fd);
>   
>   	/* Now attempt to lease the same objects */
> -	igt_assert_eq(make_lease(data, &lease_b), 0);
> -
> -	terminate_lease(&lease_b);
> +	igt_assert_eq(make_lease(data), 0);
>   }
>   
>   #define assert_unleased(ret) \
> @@ -915,14 +901,13 @@ static void lease_again(data_t *data)
>   /* Test leasing an invalid connector */
>   static void lease_invalid_connector(data_t *data)
>   {
> -	lease_t lease;
>   	uint32_t save_connector_id;
>   	int ret;
>   
>   	/* Create an invalid lease */
>   	save_connector_id = data->connector_id;
>   	data->connector_id = 0xbaadf00d;
> -	ret = make_lease(data, &lease);
> +	ret = make_lease(data);
>   	data->connector_id = save_connector_id;
>   	assert_unleased(ret);
>   }
> @@ -930,28 +915,26 @@ static void lease_invalid_connector(data_t *data)
>   /* Test leasing an invalid crtc */
>   static void lease_invalid_crtc(data_t *data)
>   {
> -	lease_t lease;
>   	uint32_t save_crtc_id;
>   	int ret;
>   
>   	/* Create an invalid lease */
>   	save_crtc_id = data->crtc_id;
>   	data->crtc_id = 0xbaadf00d;
> -	ret = make_lease(data, &lease);
> +	ret = make_lease(data);
>   	data->crtc_id = save_crtc_id;
>   	assert_unleased(ret);
>   }
>   
>   static void lease_invalid_plane(data_t *data)
>   {
> -	lease_t lease;
>   	uint32_t save_plane_id;
>   	int ret;
>   
>   	/* Create an invalid lease */
>   	save_plane_id = data->plane_id;
>   	data->plane_id = 0xbaadf00d;
> -	ret = make_lease(data, &lease);
> +	ret = make_lease(data);
>   	data->plane_id = save_plane_id;
>   	assert_unleased(ret);
>   }
> @@ -1393,6 +1376,7 @@ igt_main
>   									DRM_PLANE_TYPE_PRIMARY)->drm_plane->plane_id;
>   						f->func(&data);
>   					}
> +					terminate_lease(data.lease.fd);
>   				}
>   			}
>   		}

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

* [igt-dev] ✗ Fi.CI.IGT: failure for kms lease (rev6)
  2023-10-10 19:27 [igt-dev] [PATCH v4 0/2] kms lease Mohammed Thasleem
                   ` (3 preceding siblings ...)
  2023-10-10 21:07 ` [igt-dev] ✓ CI.xeBAT: " Patchwork
@ 2023-10-11  8:37 ` Patchwork
  2023-10-11 13:30 ` [igt-dev] ✓ Fi.CI.IGT: success " Patchwork
  5 siblings, 0 replies; 10+ messages in thread
From: Patchwork @ 2023-10-11  8:37 UTC (permalink / raw)
  To: Mohammed Thasleem; +Cc: igt-dev

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

== Series Details ==

Series: kms lease (rev6)
URL   : https://patchwork.freedesktop.org/series/122944/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_13736_full -> IGTPW_9966_full
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with IGTPW_9966_full absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_9966_full, please notify your bug team (lgci.bug.filing@intel.com) 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_9966/index.html

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

  No changes in participating hosts

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

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

### IGT changes ###

#### Possible regressions ####

  * igt@gem_ctx_isolation@preservation@vcs0:
    - shard-dg1:          [PASS][1] -> [FAIL][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg1-12/igt@gem_ctx_isolation@preservation@vcs0.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-14/igt@gem_ctx_isolation@preservation@vcs0.html

  * igt@kms_psr@psr2_primary_mmap_cpu:
    - shard-mtlp:         [PASS][3] -> [FAIL][4]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-8/igt@kms_psr@psr2_primary_mmap_cpu.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-8/igt@kms_psr@psr2_primary_mmap_cpu.html

  
New tests
---------

  New tests have been introduced between CI_DRM_13736_full and IGTPW_9966_full:

### New IGT tests (2) ###

  * igt@kms_content_protection@atomic-dpms@pipe-a-dp-4:
    - Statuses : 1 timeout(s)
    - Exec time: [0.0] s

  * igt@kms_content_protection@uevent@pipe-a-dp-4:
    - Statuses : 1 fail(s)
    - Exec time: [0.0] s

  

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

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

### IGT changes ###

#### Issues hit ####

  * igt@api_intel_bb@blit-reloc-keep-cache:
    - shard-dg2:          NOTRUN -> [SKIP][5] ([i915#8411])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@api_intel_bb@blit-reloc-keep-cache.html
    - shard-mtlp:         NOTRUN -> [SKIP][6] ([i915#8411])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-5/igt@api_intel_bb@blit-reloc-keep-cache.html

  * igt@device_reset@cold-reset-bound:
    - shard-dg2:          NOTRUN -> [SKIP][7] ([i915#7701])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@device_reset@cold-reset-bound.html

  * igt@drm_fdinfo@busy@ccs0:
    - shard-dg2:          NOTRUN -> [SKIP][8] ([i915#8414]) +11 other tests skip
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@drm_fdinfo@busy@ccs0.html

  * igt@gem_ccs@suspend-resume@tile4-compressed-compfmt0-smem-lmem0:
    - shard-dg2:          [PASS][9] -> [INCOMPLETE][10] ([i915#7297])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-11/igt@gem_ccs@suspend-resume@tile4-compressed-compfmt0-smem-lmem0.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-3/igt@gem_ccs@suspend-resume@tile4-compressed-compfmt0-smem-lmem0.html

  * igt@gem_create@create-ext-cpu-access-big:
    - shard-dg2:          NOTRUN -> [INCOMPLETE][11] ([i915#9364])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@gem_create@create-ext-cpu-access-big.html
    - shard-rkl:          NOTRUN -> [SKIP][12] ([i915#6335])
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@gem_create@create-ext-cpu-access-big.html

  * igt@gem_ctx_exec@basic-nohangcheck:
    - shard-mtlp:         [PASS][13] -> [FAIL][14] ([i915#6268])
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-6/igt@gem_ctx_exec@basic-nohangcheck.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-4/igt@gem_ctx_exec@basic-nohangcheck.html

  * igt@gem_ctx_freq@sysfs@gt0:
    - shard-dg2:          NOTRUN -> [FAIL][15] ([i915#6786])
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@gem_ctx_freq@sysfs@gt0.html

  * igt@gem_ctx_isolation@preservation-s3@vcs0:
    - shard-dg1:          [PASS][16] -> [DMESG-WARN][17] ([i915#4423])
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg1-18/igt@gem_ctx_isolation@preservation-s3@vcs0.html
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-15/igt@gem_ctx_isolation@preservation-s3@vcs0.html

  * igt@gem_ctx_persistence@legacy-engines-cleanup:
    - shard-snb:          NOTRUN -> [SKIP][18] ([fdo#109271] / [i915#1099])
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-snb7/igt@gem_ctx_persistence@legacy-engines-cleanup.html

  * igt@gem_ctx_sseu@mmap-args:
    - shard-dg2:          NOTRUN -> [SKIP][19] ([i915#280]) +1 other test skip
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@gem_ctx_sseu@mmap-args.html

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

  * igt@gem_eio@in-flight-suspend:
    - shard-dg1:          [PASS][21] -> [DMESG-WARN][22] ([i915#4391] / [i915#4423]) +1 other test dmesg-warn
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg1-16/igt@gem_eio@in-flight-suspend.html
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-15/igt@gem_eio@in-flight-suspend.html

  * igt@gem_eio@unwedge-stress:
    - shard-dg1:          [PASS][23] -> [FAIL][24] ([i915#5784])
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg1-18/igt@gem_eio@unwedge-stress.html
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-12/igt@gem_eio@unwedge-stress.html

  * igt@gem_exec_balancer@bonded-false-hang:
    - shard-dg2:          NOTRUN -> [SKIP][25] ([i915#4812]) +2 other tests skip
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@gem_exec_balancer@bonded-false-hang.html

  * igt@gem_exec_capture@capture-invisible@lmem0:
    - shard-dg2:          NOTRUN -> [SKIP][26] ([i915#6334]) +1 other test skip
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@gem_exec_capture@capture-invisible@lmem0.html

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

  * igt@gem_exec_fence@syncobj-timeline-chain-engines:
    - shard-mtlp:         [PASS][28] -> [ABORT][29] ([i915#9262])
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-2/igt@gem_exec_fence@syncobj-timeline-chain-engines.html
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-4/igt@gem_exec_fence@syncobj-timeline-chain-engines.html

  * igt@gem_exec_flush@basic-wb-ro-default:
    - shard-dg2:          NOTRUN -> [SKIP][30] ([i915#3539] / [i915#4852])
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-7/igt@gem_exec_flush@basic-wb-ro-default.html

  * igt@gem_exec_gttfill@multigpu-basic:
    - shard-dg2:          NOTRUN -> [SKIP][31] ([i915#7697]) +1 other test skip
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@gem_exec_gttfill@multigpu-basic.html
    - shard-rkl:          NOTRUN -> [SKIP][32] ([i915#7697])
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@gem_exec_gttfill@multigpu-basic.html
    - shard-dg1:          NOTRUN -> [SKIP][33] ([i915#7697])
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-15/igt@gem_exec_gttfill@multigpu-basic.html

  * igt@gem_exec_reloc@basic-cpu-gtt-noreloc:
    - shard-dg2:          NOTRUN -> [SKIP][34] ([i915#3281]) +9 other tests skip
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@gem_exec_reloc@basic-cpu-gtt-noreloc.html

  * igt@gem_exec_reloc@basic-gtt-cpu:
    - shard-dg1:          NOTRUN -> [SKIP][35] ([i915#3281]) +2 other tests skip
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-16/igt@gem_exec_reloc@basic-gtt-cpu.html

  * igt@gem_exec_reloc@basic-gtt-wc-active:
    - shard-rkl:          NOTRUN -> [SKIP][36] ([i915#3281]) +1 other test skip
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@gem_exec_reloc@basic-gtt-wc-active.html

  * igt@gem_exec_schedule@preemptive-hang:
    - shard-snb:          NOTRUN -> [SKIP][37] ([fdo#109271]) +27 other tests skip
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-snb4/igt@gem_exec_schedule@preemptive-hang.html

  * igt@gem_exec_schedule@semaphore-power:
    - shard-mtlp:         NOTRUN -> [SKIP][38] ([i915#4537] / [i915#4812])
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-3/igt@gem_exec_schedule@semaphore-power.html

  * igt@gem_fence_thrash@bo-write-verify-y:
    - shard-dg2:          NOTRUN -> [SKIP][39] ([i915#4860]) +1 other test skip
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@gem_fence_thrash@bo-write-verify-y.html
    - shard-dg1:          NOTRUN -> [SKIP][40] ([i915#4860])
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-14/igt@gem_fence_thrash@bo-write-verify-y.html

  * igt@gem_lmem_swapping@massive-random:
    - shard-mtlp:         NOTRUN -> [SKIP][41] ([i915#4613])
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-6/igt@gem_lmem_swapping@massive-random.html

  * igt@gem_lmem_swapping@random:
    - shard-glk:          NOTRUN -> [SKIP][42] ([fdo#109271] / [i915#4613])
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-glk9/igt@gem_lmem_swapping@random.html

  * igt@gem_media_fill@media-fill:
    - shard-dg2:          NOTRUN -> [SKIP][43] ([i915#8289])
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@gem_media_fill@media-fill.html

  * igt@gem_mmap_gtt@basic-copy:
    - shard-mtlp:         NOTRUN -> [SKIP][44] ([i915#4077])
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-7/igt@gem_mmap_gtt@basic-copy.html

  * igt@gem_mmap_gtt@zero-extend:
    - shard-dg2:          NOTRUN -> [SKIP][45] ([i915#4077]) +11 other tests skip
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@gem_mmap_gtt@zero-extend.html

  * igt@gem_mmap_wc@invalid-flags:
    - shard-dg2:          NOTRUN -> [SKIP][46] ([i915#4083]) +2 other tests skip
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@gem_mmap_wc@invalid-flags.html

  * igt@gem_partial_pwrite_pread@reads:
    - shard-dg2:          NOTRUN -> [SKIP][47] ([i915#3282]) +5 other tests skip
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-7/igt@gem_partial_pwrite_pread@reads.html

  * igt@gem_partial_pwrite_pread@write-snoop:
    - shard-rkl:          NOTRUN -> [SKIP][48] ([i915#3282])
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-6/igt@gem_partial_pwrite_pread@write-snoop.html

  * igt@gem_pxp@create-regular-context-1:
    - shard-rkl:          NOTRUN -> [SKIP][49] ([i915#4270])
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-2/igt@gem_pxp@create-regular-context-1.html
    - shard-dg1:          NOTRUN -> [SKIP][50] ([i915#4270])
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-15/igt@gem_pxp@create-regular-context-1.html

  * igt@gem_pxp@create-valid-protected-context:
    - shard-dg2:          NOTRUN -> [SKIP][51] ([i915#4270]) +2 other tests skip
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@gem_pxp@create-valid-protected-context.html

  * igt@gem_render_copy@x-tiled-to-vebox-yf-tiled:
    - shard-mtlp:         NOTRUN -> [SKIP][52] ([i915#8428]) +1 other test skip
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-7/igt@gem_render_copy@x-tiled-to-vebox-yf-tiled.html

  * igt@gem_set_tiling_vs_pwrite:
    - shard-dg2:          NOTRUN -> [SKIP][53] ([i915#4079])
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@gem_set_tiling_vs_pwrite.html

  * igt@gem_userptr_blits@coherency-sync:
    - shard-dg2:          NOTRUN -> [SKIP][54] ([i915#3297]) +1 other test skip
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@gem_userptr_blits@coherency-sync.html

  * igt@gem_userptr_blits@map-fixed-invalidate-overlap:
    - shard-dg2:          NOTRUN -> [SKIP][55] ([i915#3297] / [i915#4880])
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@gem_userptr_blits@map-fixed-invalidate-overlap.html

  * igt@gen7_exec_parse@basic-allocation:
    - shard-rkl:          NOTRUN -> [SKIP][56] ([fdo#109289])
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-1/igt@gen7_exec_parse@basic-allocation.html
    - shard-dg1:          NOTRUN -> [SKIP][57] ([fdo#109289])
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-14/igt@gen7_exec_parse@basic-allocation.html

  * igt@gen7_exec_parse@basic-rejected:
    - shard-dg2:          NOTRUN -> [SKIP][58] ([fdo#109289]) +2 other tests skip
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@gen7_exec_parse@basic-rejected.html

  * igt@gen9_exec_parse@batch-invalid-length:
    - shard-dg2:          NOTRUN -> [SKIP][59] ([i915#2856]) +3 other tests skip
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@gen9_exec_parse@batch-invalid-length.html
    - shard-rkl:          NOTRUN -> [SKIP][60] ([i915#2527])
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-4/igt@gen9_exec_parse@batch-invalid-length.html
    - shard-dg1:          NOTRUN -> [SKIP][61] ([i915#2527])
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-14/igt@gen9_exec_parse@batch-invalid-length.html

  * igt@i915_hangman@detector@vcs0:
    - shard-mtlp:         [PASS][62] -> [FAIL][63] ([i915#8456]) +2 other tests fail
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-8/igt@i915_hangman@detector@vcs0.html
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-7/igt@i915_hangman@detector@vcs0.html

  * igt@i915_hangman@engine-engine-error@vcs0:
    - shard-mtlp:         [PASS][64] -> [FAIL][65] ([i915#7069]) +1 other test fail
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-3/igt@i915_hangman@engine-engine-error@vcs0.html
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-4/igt@i915_hangman@engine-engine-error@vcs0.html

  * igt@i915_hangman@gt-error-state-capture@vecs0:
    - shard-mtlp:         [PASS][66] -> [ABORT][67] ([i915#9414])
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-7/igt@i915_hangman@gt-error-state-capture@vecs0.html
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-4/igt@i915_hangman@gt-error-state-capture@vecs0.html

  * igt@i915_module_load@load:
    - shard-dg2:          NOTRUN -> [SKIP][68] ([i915#6227])
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-7/igt@i915_module_load@load.html

  * igt@i915_module_load@reload-with-fault-injection:
    - shard-dg2:          [PASS][69] -> [DMESG-WARN][70] ([i915#8617])
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-11/igt@i915_module_load@reload-with-fault-injection.html
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@i915_module_load@reload-with-fault-injection.html

  * igt@i915_pipe_stress@stress-xrgb8888-ytiled:
    - shard-dg2:          NOTRUN -> [SKIP][71] ([i915#7091])
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-3/igt@i915_pipe_stress@stress-xrgb8888-ytiled.html

  * igt@i915_pm_rc6_residency@media-rc6-accuracy:
    - shard-tglu:         NOTRUN -> [SKIP][72] ([fdo#109289])
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-3/igt@i915_pm_rc6_residency@media-rc6-accuracy.html

  * igt@i915_pm_rc6_residency@rc6-idle@rcs0:
    - shard-tglu:         NOTRUN -> [WARN][73] ([i915#2681]) +3 other tests warn
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-9/igt@i915_pm_rc6_residency@rc6-idle@rcs0.html

  * igt@i915_pm_rpm@dpms-lpsp:
    - shard-dg1:          [PASS][74] -> [SKIP][75] ([i915#1397])
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg1-19/igt@i915_pm_rpm@dpms-lpsp.html
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-14/igt@i915_pm_rpm@dpms-lpsp.html
    - shard-dg2:          NOTRUN -> [SKIP][76] ([i915#1397])
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@i915_pm_rpm@dpms-lpsp.html

  * igt@i915_pm_rpm@modeset-non-lpsp-stress:
    - shard-rkl:          [PASS][77] -> [SKIP][78] ([i915#1397])
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-rkl-6/igt@i915_pm_rpm@modeset-non-lpsp-stress.html
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@i915_pm_rpm@modeset-non-lpsp-stress.html

  * igt@i915_pm_rpm@modeset-pc8-residency-stress:
    - shard-dg2:          NOTRUN -> [SKIP][79] ([fdo#109506])
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@i915_pm_rpm@modeset-pc8-residency-stress.html

  * igt@i915_pm_rpm@system-suspend-execbuf:
    - shard-mtlp:         [PASS][80] -> [FAIL][81] ([fdo#103375])
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-5/igt@i915_pm_rpm@system-suspend-execbuf.html
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-7/igt@i915_pm_rpm@system-suspend-execbuf.html

  * igt@i915_pm_rps@thresholds-idle@gt0:
    - shard-dg2:          NOTRUN -> [SKIP][82] ([i915#8925])
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@i915_pm_rps@thresholds-idle@gt0.html
    - shard-dg1:          NOTRUN -> [SKIP][83] ([i915#8925])
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-14/igt@i915_pm_rps@thresholds-idle@gt0.html

  * igt@i915_suspend@basic-s3-without-i915:
    - shard-rkl:          [PASS][84] -> [FAIL][85] ([fdo#103375])
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-rkl-1/igt@i915_suspend@basic-s3-without-i915.html
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-6/igt@i915_suspend@basic-s3-without-i915.html

  * igt@i915_suspend@sysfs-reader:
    - shard-dg2:          [PASS][86] -> [FAIL][87] ([fdo#103375])
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-2/igt@i915_suspend@sysfs-reader.html
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@i915_suspend@sysfs-reader.html

  * igt@kms_addfb_basic@bo-too-small-due-to-tiling:
    - shard-dg2:          NOTRUN -> [SKIP][88] ([i915#4212])
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@kms_addfb_basic@bo-too-small-due-to-tiling.html

  * igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-dp-4-4-mc_ccs:
    - shard-dg2:          NOTRUN -> [SKIP][89] ([i915#8709]) +11 other tests skip
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-dp-4-4-mc_ccs.html

  * igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-hdmi-a-2-y-rc_ccs:
    - shard-rkl:          NOTRUN -> [SKIP][90] ([i915#8502]) +3 other tests skip
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-4/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-hdmi-a-2-y-rc_ccs.html

  * igt@kms_async_flips@async-flip-with-page-flip-events@pipe-c-hdmi-a-4-y-rc_ccs:
    - shard-dg1:          NOTRUN -> [SKIP][91] ([i915#8502]) +7 other tests skip
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-14/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-c-hdmi-a-4-y-rc_ccs.html

  * igt@kms_async_flips@crc@pipe-a-hdmi-a-2:
    - shard-dg2:          NOTRUN -> [FAIL][92] ([i915#8247]) +3 other tests fail
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_async_flips@crc@pipe-a-hdmi-a-2.html

  * igt@kms_async_flips@invalid-async-flip:
    - shard-dg2:          NOTRUN -> [SKIP][93] ([i915#6228])
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-7/igt@kms_async_flips@invalid-async-flip.html

  * igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels:
    - shard-glk:          NOTRUN -> [SKIP][94] ([fdo#109271] / [i915#1769])
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-glk3/igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels.html
    - shard-dg2:          NOTRUN -> [SKIP][95] ([i915#1769] / [i915#3555])
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels.html

  * igt@kms_big_fb@4-tiled-16bpp-rotate-90:
    - shard-dg1:          NOTRUN -> [SKIP][96] ([i915#4538] / [i915#5286])
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-12/igt@kms_big_fb@4-tiled-16bpp-rotate-90.html

  * igt@kms_big_fb@4-tiled-64bpp-rotate-0:
    - shard-tglu:         NOTRUN -> [SKIP][97] ([fdo#111615] / [i915#5286])
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-3/igt@kms_big_fb@4-tiled-64bpp-rotate-0.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip:
    - shard-mtlp:         [PASS][98] -> [FAIL][99] ([i915#5138]) +1 other test fail
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-5/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip.html
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-3/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip.html

  * igt@kms_big_fb@linear-16bpp-rotate-90:
    - shard-dg2:          NOTRUN -> [SKIP][100] ([fdo#111614]) +3 other tests skip
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-3/igt@kms_big_fb@linear-16bpp-rotate-90.html
    - shard-dg1:          NOTRUN -> [SKIP][101] ([i915#3638])
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-19/igt@kms_big_fb@linear-16bpp-rotate-90.html

  * igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-async-flip:
    - shard-tglu:         [PASS][102] -> [FAIL][103] ([i915#3743])
   [102]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-tglu-4/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-async-flip.html
   [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-10/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-async-flip.html

  * igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip:
    - shard-mtlp:         NOTRUN -> [SKIP][104] ([fdo#111615])
   [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-7/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip.html

  * igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-async-flip:
    - shard-dg2:          NOTRUN -> [SKIP][105] ([i915#5190]) +12 other tests skip
   [105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-async-flip.html

  * igt@kms_big_fb@yf-tiled-8bpp-rotate-90:
    - shard-dg2:          NOTRUN -> [SKIP][106] ([i915#4538] / [i915#5190]) +4 other tests skip
   [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_big_fb@yf-tiled-8bpp-rotate-90.html
    - shard-rkl:          NOTRUN -> [SKIP][107] ([fdo#110723])
   [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-2/igt@kms_big_fb@yf-tiled-8bpp-rotate-90.html
    - shard-dg1:          NOTRUN -> [SKIP][108] ([i915#4538])
   [108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-15/igt@kms_big_fb@yf-tiled-8bpp-rotate-90.html

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

  * igt@kms_ccs@pipe-b-bad-rotation-90-4_tiled_mtl_mc_ccs:
    - shard-rkl:          NOTRUN -> [SKIP][110] ([i915#5354] / [i915#6095]) +1 other test skip
   [110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-6/igt@kms_ccs@pipe-b-bad-rotation-90-4_tiled_mtl_mc_ccs.html

  * igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_mc_ccs:
    - shard-mtlp:         NOTRUN -> [SKIP][111] ([i915#3886] / [i915#5354] / [i915#6095]) +1 other test skip
   [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-4/igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs_cc:
    - shard-dg2:          NOTRUN -> [SKIP][112] ([i915#3689] / [i915#3886] / [i915#5354]) +4 other tests skip
   [112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-b-random-ccs-data-4_tiled_dg2_rc_ccs:
    - shard-tglu:         NOTRUN -> [SKIP][113] ([i915#3689] / [i915#5354] / [i915#6095]) +1 other test skip
   [113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-9/igt@kms_ccs@pipe-b-random-ccs-data-4_tiled_dg2_rc_ccs.html

  * igt@kms_ccs@pipe-c-bad-rotation-90-4_tiled_mtl_mc_ccs:
    - shard-dg2:          NOTRUN -> [SKIP][114] ([i915#5354]) +44 other tests skip
   [114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_ccs@pipe-c-bad-rotation-90-4_tiled_mtl_mc_ccs.html

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

  * igt@kms_ccs@pipe-c-crc-primary-basic-y_tiled_gen12_mc_ccs:
    - shard-apl:          NOTRUN -> [SKIP][116] ([fdo#109271] / [i915#3886])
   [116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-apl3/igt@kms_ccs@pipe-c-crc-primary-basic-y_tiled_gen12_mc_ccs.html
    - shard-glk:          NOTRUN -> [SKIP][117] ([fdo#109271] / [i915#3886])
   [117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-glk4/igt@kms_ccs@pipe-c-crc-primary-basic-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_ccs:
    - shard-rkl:          NOTRUN -> [SKIP][118] ([i915#5354]) +2 other tests skip
   [118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-6/igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_ccs.html
    - shard-dg1:          NOTRUN -> [SKIP][119] ([i915#3689] / [i915#5354] / [i915#6095]) +1 other test skip
   [119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-17/igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_ccs.html

  * igt@kms_ccs@pipe-c-random-ccs-data-yf_tiled_ccs:
    - shard-mtlp:         NOTRUN -> [SKIP][120] ([i915#5354] / [i915#6095]) +1 other test skip
   [120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-1/igt@kms_ccs@pipe-c-random-ccs-data-yf_tiled_ccs.html

  * igt@kms_ccs@pipe-d-bad-pixel-format-yf_tiled_ccs:
    - shard-tglu:         NOTRUN -> [SKIP][121] ([fdo#111615] / [i915#3689] / [i915#5354] / [i915#6095])
   [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-4/igt@kms_ccs@pipe-d-bad-pixel-format-yf_tiled_ccs.html

  * igt@kms_ccs@pipe-d-crc-primary-basic-y_tiled_gen12_rc_ccs:
    - shard-dg2:          NOTRUN -> [SKIP][122] ([i915#3689] / [i915#5354]) +20 other tests skip
   [122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@kms_ccs@pipe-d-crc-primary-basic-y_tiled_gen12_rc_ccs.html

  * igt@kms_ccs@pipe-d-crc-sprite-planes-basic-4_tiled_dg2_mc_ccs:
    - shard-dg1:          NOTRUN -> [SKIP][123] ([i915#5354] / [i915#6095]) +4 other tests skip
   [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-19/igt@kms_ccs@pipe-d-crc-sprite-planes-basic-4_tiled_dg2_mc_ccs.html

  * igt@kms_cdclk@mode-transition-all-outputs:
    - shard-dg2:          NOTRUN -> [SKIP][124] ([i915#4087] / [i915#7213])
   [124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@kms_cdclk@mode-transition-all-outputs.html

  * igt@kms_cdclk@plane-scaling@pipe-c-hdmi-a-3:
    - shard-dg2:          NOTRUN -> [SKIP][125] ([i915#4087]) +3 other tests skip
   [125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@kms_cdclk@plane-scaling@pipe-c-hdmi-a-3.html

  * igt@kms_chamelium_audio@hdmi-audio-edid:
    - shard-tglu:         NOTRUN -> [SKIP][126] ([i915#7828]) +1 other test skip
   [126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-5/igt@kms_chamelium_audio@hdmi-audio-edid.html

  * igt@kms_chamelium_color@ctm-0-75:
    - shard-mtlp:         NOTRUN -> [SKIP][127] ([fdo#111827])
   [127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-2/igt@kms_chamelium_color@ctm-0-75.html

  * igt@kms_chamelium_color@ctm-red-to-blue:
    - shard-dg2:          NOTRUN -> [SKIP][128] ([fdo#111827])
   [128]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@kms_chamelium_color@ctm-red-to-blue.html

  * igt@kms_chamelium_hpd@dp-hpd-storm:
    - shard-dg2:          NOTRUN -> [SKIP][129] ([i915#7828]) +8 other tests skip
   [129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@kms_chamelium_hpd@dp-hpd-storm.html

  * igt@kms_chamelium_hpd@vga-hpd-fast:
    - shard-rkl:          NOTRUN -> [SKIP][130] ([i915#7828]) +2 other tests skip
   [130]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-6/igt@kms_chamelium_hpd@vga-hpd-fast.html
    - shard-dg1:          NOTRUN -> [SKIP][131] ([i915#7828]) +3 other tests skip
   [131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-18/igt@kms_chamelium_hpd@vga-hpd-fast.html

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

  * igt@kms_content_protection@srm:
    - shard-dg2:          NOTRUN -> [SKIP][133] ([i915#7118]) +2 other tests skip
   [133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@kms_content_protection@srm.html

  * igt@kms_content_protection@srm@pipe-a-dp-1:
    - shard-apl:          NOTRUN -> [TIMEOUT][134] ([i915#7173])
   [134]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-apl7/igt@kms_content_protection@srm@pipe-a-dp-1.html

  * igt@kms_content_protection@uevent@pipe-a-dp-4 (NEW):
    - shard-dg2:          NOTRUN -> [FAIL][135] ([i915#1339])
   [135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@kms_content_protection@uevent@pipe-a-dp-4.html

  * igt@kms_cursor_crc@cursor-onscreen-32x10:
    - shard-rkl:          NOTRUN -> [SKIP][136] ([i915#3555]) +1 other test skip
   [136]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-2/igt@kms_cursor_crc@cursor-onscreen-32x10.html

  * igt@kms_cursor_crc@cursor-random-512x170:
    - shard-dg2:          NOTRUN -> [SKIP][137] ([i915#3359]) +3 other tests skip
   [137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_cursor_crc@cursor-random-512x170.html

  * igt@kms_cursor_crc@cursor-rapid-movement-32x32:
    - shard-dg2:          NOTRUN -> [SKIP][138] ([i915#3555]) +5 other tests skip
   [138]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_cursor_crc@cursor-rapid-movement-32x32.html

  * igt@kms_cursor_crc@cursor-sliding-32x10:
    - shard-dg1:          NOTRUN -> [SKIP][139] ([i915#3555]) +2 other tests skip
   [139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-12/igt@kms_cursor_crc@cursor-sliding-32x10.html

  * igt@kms_cursor_crc@cursor-suspend@pipe-a-hdmi-a-1:
    - shard-snb:          NOTRUN -> [DMESG-WARN][140] ([i915#8841]) +1 other test dmesg-warn
   [140]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-snb1/igt@kms_cursor_crc@cursor-suspend@pipe-a-hdmi-a-1.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
    - shard-dg2:          NOTRUN -> [SKIP][141] ([i915#4103] / [i915#4213] / [i915#5608])
   [141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
    - shard-mtlp:         NOTRUN -> [SKIP][142] ([i915#4213])
   [142]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-6/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html

  * igt@kms_cursor_legacy@cursora-vs-flipb-varying-size:
    - shard-mtlp:         NOTRUN -> [SKIP][143] ([i915#3546])
   [143]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-7/igt@kms_cursor_legacy@cursora-vs-flipb-varying-size.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size:
    - shard-apl:          NOTRUN -> [SKIP][144] ([fdo#109271]) +19 other tests skip
   [144]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-apl6/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa-varying-size:
    - shard-dg2:          NOTRUN -> [SKIP][145] ([fdo#109274] / [i915#5354]) +6 other tests skip
   [145]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@kms_cursor_legacy@cursorb-vs-flipa-varying-size.html

  * igt@kms_cursor_legacy@cursorb-vs-flipb-varying-size:
    - shard-tglu:         NOTRUN -> [SKIP][146] ([fdo#109274])
   [146]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-6/igt@kms_cursor_legacy@cursorb-vs-flipb-varying-size.html

  * igt@kms_cursor_legacy@forked-move@all-pipes:
    - shard-mtlp:         [PASS][147] -> [DMESG-WARN][148] ([i915#2017])
   [147]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-3/igt@kms_cursor_legacy@forked-move@all-pipes.html
   [148]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-4/igt@kms_cursor_legacy@forked-move@all-pipes.html

  * igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions:
    - shard-rkl:          NOTRUN -> [SKIP][149] ([i915#4103])
   [149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-6/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions.html
    - shard-dg1:          NOTRUN -> [SKIP][150] ([i915#4103] / [i915#4213])
   [150]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-15/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions.html

  * igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle:
    - shard-dg2:          NOTRUN -> [SKIP][151] ([i915#4103] / [i915#4213]) +1 other test skip
   [151]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle.html

  * igt@kms_dsc@dsc-basic:
    - shard-dg2:          NOTRUN -> [SKIP][152] ([i915#3555] / [i915#3840]) +2 other tests skip
   [152]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@kms_dsc@dsc-basic.html

  * igt@kms_fbcon_fbt@psr-suspend:
    - shard-tglu:         NOTRUN -> [SKIP][153] ([i915#3469])
   [153]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-5/igt@kms_fbcon_fbt@psr-suspend.html

  * igt@kms_fence_pin_leak:
    - shard-dg2:          NOTRUN -> [SKIP][154] ([i915#4881])
   [154]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@kms_fence_pin_leak.html
    - shard-mtlp:         NOTRUN -> [SKIP][155] ([i915#4881])
   [155]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-5/igt@kms_fence_pin_leak.html

  * igt@kms_flip@2x-flip-vs-blocking-wf-vblank:
    - shard-dg2:          NOTRUN -> [SKIP][156] ([fdo#109274] / [fdo#111767])
   [156]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_flip@2x-flip-vs-blocking-wf-vblank.html

  * igt@kms_flip@2x-plain-flip:
    - shard-tglu:         NOTRUN -> [SKIP][157] ([fdo#109274] / [i915#3637])
   [157]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-3/igt@kms_flip@2x-plain-flip.html

  * igt@kms_flip@2x-plain-flip-fb-recreate-interruptible:
    - shard-dg1:          NOTRUN -> [SKIP][158] ([fdo#111825]) +4 other tests skip
   [158]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-19/igt@kms_flip@2x-plain-flip-fb-recreate-interruptible.html

  * igt@kms_flip@2x-wf_vblank-ts-check:
    - shard-dg2:          NOTRUN -> [SKIP][159] ([fdo#109274]) +3 other tests skip
   [159]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@kms_flip@2x-wf_vblank-ts-check.html

  * igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling@pipe-a-valid-mode:
    - shard-dg2:          NOTRUN -> [SKIP][160] ([i915#2672]) +3 other tests skip
   [160]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling@pipe-a-valid-mode.html

  * igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tile-downscaling@pipe-a-default-mode:
    - shard-mtlp:         NOTRUN -> [SKIP][161] ([i915#8810])
   [161]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-3/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tile-downscaling@pipe-a-default-mode.html

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

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

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-pgflip-blt:
    - shard-mtlp:         NOTRUN -> [SKIP][165] ([i915#1825]) +6 other tests skip
   [165]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-4/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-pgflip-blt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-gtt:
    - shard-dg2:          NOTRUN -> [SKIP][166] ([i915#8708]) +16 other tests skip
   [166]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-7/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-mmap-gtt:
    - shard-rkl:          NOTRUN -> [SKIP][167] ([fdo#111825] / [i915#1825]) +1 other test skip
   [167]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-1/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-mmap-gtt.html
    - shard-dg1:          NOTRUN -> [SKIP][168] ([i915#8708]) +3 other tests skip
   [168]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-18/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-shrfb-fliptrack-mmap-gtt:
    - shard-rkl:          NOTRUN -> [SKIP][169] ([fdo#111825]) +1 other test skip
   [169]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@kms_frontbuffer_tracking@fbc-2p-shrfb-fliptrack-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-tiling-y:
    - shard-tglu:         NOTRUN -> [SKIP][170] ([fdo#110189]) +1 other test skip
   [170]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-5/igt@kms_frontbuffer_tracking@fbcpsr-tiling-y.html

  * igt@kms_frontbuffer_tracking@psr-1p-primscrn-shrfb-msflip-blt:
    - shard-dg1:          NOTRUN -> [SKIP][171] ([i915#3458]) +4 other tests skip
   [171]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-16/igt@kms_frontbuffer_tracking@psr-1p-primscrn-shrfb-msflip-blt.html

  * igt@kms_frontbuffer_tracking@psr-1p-rte:
    - shard-dg2:          NOTRUN -> [SKIP][172] ([i915#3458]) +16 other tests skip
   [172]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@kms_frontbuffer_tracking@psr-1p-rte.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-indfb-msflip-blt:
    - shard-tglu:         NOTRUN -> [SKIP][173] ([fdo#109280]) +5 other tests skip
   [173]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-6/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-indfb-msflip-blt.html

  * igt@kms_frontbuffer_tracking@psr-suspend:
    - shard-rkl:          NOTRUN -> [SKIP][174] ([i915#3023]) +1 other test skip
   [174]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@kms_frontbuffer_tracking@psr-suspend.html

  * igt@kms_getfb@getfb-reject-ccs:
    - shard-dg2:          NOTRUN -> [SKIP][175] ([i915#6118])
   [175]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-7/igt@kms_getfb@getfb-reject-ccs.html

  * igt@kms_hdr@static-toggle:
    - shard-dg2:          NOTRUN -> [SKIP][176] ([i915#3555] / [i915#8228]) +1 other test skip
   [176]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-7/igt@kms_hdr@static-toggle.html

  * igt@kms_plane_scaling@intel-max-src-size:
    - shard-dg2:          NOTRUN -> [SKIP][177] ([i915#6953])
   [177]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@kms_plane_scaling@intel-max-src-size.html

  * igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-a-hdmi-a-1:
    - shard-rkl:          NOTRUN -> [SKIP][178] ([i915#5176] / [i915#9423]) +1 other test skip
   [178]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-a-hdmi-a-1.html

  * igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-b-hdmi-a-1:
    - shard-tglu:         NOTRUN -> [SKIP][179] ([i915#5176] / [i915#9423]) +3 other tests skip
   [179]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-5/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-b-hdmi-a-1.html

  * igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-d-hdmi-a-1:
    - shard-dg1:          NOTRUN -> [SKIP][180] ([i915#5176] / [i915#9423]) +3 other tests skip
   [180]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-19/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-d-hdmi-a-1.html

  * igt@kms_plane_scaling@planes-downscale-factor-0-25-unity-scaling@pipe-a-hdmi-a-4:
    - shard-dg1:          NOTRUN -> [SKIP][181] ([i915#5235]) +3 other tests skip
   [181]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-16/igt@kms_plane_scaling@planes-downscale-factor-0-25-unity-scaling@pipe-a-hdmi-a-4.html

  * igt@kms_plane_scaling@planes-downscale-factor-0-25@pipe-c-hdmi-a-1:
    - shard-tglu:         NOTRUN -> [SKIP][182] ([i915#5235]) +3 other tests skip
   [182]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-5/igt@kms_plane_scaling@planes-downscale-factor-0-25@pipe-c-hdmi-a-1.html

  * igt@kms_plane_scaling@planes-downscale-factor-0-25@pipe-d-hdmi-a-2:
    - shard-dg2:          NOTRUN -> [SKIP][183] ([i915#5235]) +19 other tests skip
   [183]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_plane_scaling@planes-downscale-factor-0-25@pipe-d-hdmi-a-2.html

  * igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-25@pipe-a-hdmi-a-1:
    - shard-rkl:          NOTRUN -> [SKIP][184] ([i915#5235]) +1 other test skip
   [184]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-25@pipe-a-hdmi-a-1.html

  * igt@kms_prime@basic-modeset-hybrid:
    - shard-tglu:         NOTRUN -> [SKIP][185] ([i915#6524])
   [185]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-6/igt@kms_prime@basic-modeset-hybrid.html

  * igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area:
    - shard-tglu:         NOTRUN -> [SKIP][186] ([fdo#111068] / [i915#658])
   [186]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-5/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area.html

  * igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-big-fb:
    - shard-dg2:          NOTRUN -> [SKIP][187] ([i915#658]) +1 other test skip
   [187]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-big-fb.html
    - shard-dg1:          NOTRUN -> [SKIP][188] ([i915#658])
   [188]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-17/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-big-fb.html

  * igt@kms_psr@psr2_primary_blt:
    - shard-dg2:          NOTRUN -> [SKIP][189] ([i915#1072]) +3 other tests skip
   [189]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@kms_psr@psr2_primary_blt.html

  * igt@kms_psr@sprite_plane_move:
    - shard-rkl:          NOTRUN -> [SKIP][190] ([i915#1072]) +1 other test skip
   [190]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-6/igt@kms_psr@sprite_plane_move.html
    - shard-dg1:          NOTRUN -> [SKIP][191] ([i915#1072] / [i915#4078]) +1 other test skip
   [191]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-19/igt@kms_psr@sprite_plane_move.html

  * igt@kms_rotation_crc@bad-pixel-format:
    - shard-dg2:          NOTRUN -> [SKIP][192] ([i915#4235])
   [192]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@kms_rotation_crc@bad-pixel-format.html

  * igt@kms_rotation_crc@primary-rotation-270:
    - shard-rkl:          [PASS][193] -> [INCOMPLETE][194] ([i915#8875]) +1 other test incomplete
   [193]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-rkl-6/igt@kms_rotation_crc@primary-rotation-270.html
   [194]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-6/igt@kms_rotation_crc@primary-rotation-270.html

  * igt@kms_rotation_crc@primary-y-tiled-reflect-x-270:
    - shard-rkl:          [PASS][195] -> [INCOMPLETE][196] ([i915#8875] / [i915#9475])
   [195]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-rkl-1/igt@kms_rotation_crc@primary-y-tiled-reflect-x-270.html
   [196]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-1/igt@kms_rotation_crc@primary-y-tiled-reflect-x-270.html

  * igt@kms_setmode@invalid-clone-single-crtc:
    - shard-dg2:          NOTRUN -> [SKIP][197] ([i915#3555] / [i915#4098])
   [197]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_setmode@invalid-clone-single-crtc.html
    - shard-mtlp:         NOTRUN -> [SKIP][198] ([i915#3555] / [i915#8809])
   [198]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-3/igt@kms_setmode@invalid-clone-single-crtc.html

  * igt@kms_vblank@pipe-b-ts-continuation-suspend:
    - shard-tglu:         [PASS][199] -> [INCOMPLETE][200] ([i915#8797])
   [199]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-tglu-5/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
   [200]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-4/igt@kms_vblank@pipe-b-ts-continuation-suspend.html

  * igt@kms_vblank@pipe-d-query-forked:
    - shard-rkl:          NOTRUN -> [SKIP][201] ([i915#4070] / [i915#533] / [i915#6768])
   [201]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-4/igt@kms_vblank@pipe-d-query-forked.html

  * igt@kms_writeback@writeback-fb-id:
    - shard-glk:          NOTRUN -> [SKIP][202] ([fdo#109271] / [i915#2437])
   [202]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-glk5/igt@kms_writeback@writeback-fb-id.html
    - shard-dg2:          NOTRUN -> [SKIP][203] ([i915#2437])
   [203]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-7/igt@kms_writeback@writeback-fb-id.html

  * igt@perf_pmu@cpu-hotplug:
    - shard-dg2:          NOTRUN -> [SKIP][204] ([i915#8850])
   [204]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@perf_pmu@cpu-hotplug.html

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

  * igt@perf_pmu@semaphore-busy@vcs1:
    - shard-dg1:          [PASS][206] -> [FAIL][207] ([i915#4349]) +2 other tests fail
   [206]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg1-17/igt@perf_pmu@semaphore-busy@vcs1.html
   [207]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-16/igt@perf_pmu@semaphore-busy@vcs1.html

  * igt@prime_vgem@basic-gtt:
    - shard-dg2:          NOTRUN -> [SKIP][208] ([i915#3708] / [i915#4077]) +1 other test skip
   [208]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@prime_vgem@basic-gtt.html

  * igt@prime_vgem@fence-flip-hang:
    - shard-dg2:          NOTRUN -> [SKIP][209] ([i915#3708])
   [209]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@prime_vgem@fence-flip-hang.html

  * igt@v3d/v3d_submit_cl@bad-multisync-out-sync:
    - shard-tglu:         NOTRUN -> [SKIP][210] ([fdo#109315] / [i915#2575])
   [210]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-7/igt@v3d/v3d_submit_cl@bad-multisync-out-sync.html

  * igt@v3d/v3d_submit_cl@bad-perfmon:
    - shard-dg2:          NOTRUN -> [SKIP][211] ([i915#2575]) +10 other tests skip
   [211]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-3/igt@v3d/v3d_submit_cl@bad-perfmon.html

  * igt@v3d/v3d_submit_cl@multi-and-single-sync:
    - shard-mtlp:         NOTRUN -> [SKIP][212] ([i915#2575])
   [212]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-4/igt@v3d/v3d_submit_cl@multi-and-single-sync.html

  * igt@v3d/v3d_submit_csd@bad-multisync-extension:
    - shard-rkl:          NOTRUN -> [SKIP][213] ([fdo#109315]) +2 other tests skip
   [213]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@v3d/v3d_submit_csd@bad-multisync-extension.html
    - shard-dg1:          NOTRUN -> [SKIP][214] ([i915#2575]) +2 other tests skip
   [214]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-15/igt@v3d/v3d_submit_csd@bad-multisync-extension.html

  * igt@v3d/v3d_submit_csd@multiple-job-submission:
    - shard-glk:          NOTRUN -> [SKIP][215] ([fdo#109271]) +44 other tests skip
   [215]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-glk2/igt@v3d/v3d_submit_csd@multiple-job-submission.html

  * igt@vc4/vc4_label_bo@set-kernel-name:
    - shard-dg2:          NOTRUN -> [SKIP][216] ([i915#7711]) +9 other tests skip
   [216]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@vc4/vc4_label_bo@set-kernel-name.html

  * igt@vc4/vc4_lookup_fail@bad-color-write:
    - shard-rkl:          NOTRUN -> [SKIP][217] ([i915#7711]) +1 other test skip
   [217]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-2/igt@vc4/vc4_lookup_fail@bad-color-write.html
    - shard-dg1:          NOTRUN -> [SKIP][218] ([i915#7711]) +1 other test skip
   [218]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-12/igt@vc4/vc4_lookup_fail@bad-color-write.html

  * igt@vc4/vc4_wait_bo@used-bo-0ns:
    - shard-mtlp:         NOTRUN -> [SKIP][219] ([i915#7711]) +1 other test skip
   [219]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-5/igt@vc4/vc4_wait_bo@used-bo-0ns.html

  
#### Possible fixes ####

  * igt@gem_ctx_persistence@engines-hang@ccs0:
    - shard-mtlp:         [ABORT][220] ([i915#9414]) -> [PASS][221] +1 other test pass
   [220]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-2/igt@gem_ctx_persistence@engines-hang@ccs0.html
   [221]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-5/igt@gem_ctx_persistence@engines-hang@ccs0.html

  * igt@gem_ctx_persistence@legacy-engines-hostile@vebox:
    - shard-mtlp:         [FAIL][222] ([i915#2410]) -> [PASS][223] +2 other tests pass
   [222]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-1/igt@gem_ctx_persistence@legacy-engines-hostile@vebox.html
   [223]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-6/igt@gem_ctx_persistence@legacy-engines-hostile@vebox.html

  * igt@gem_exec_fair@basic-pace-share@rcs0:
    - shard-rkl:          [FAIL][224] ([i915#2842]) -> [PASS][225]
   [224]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-rkl-6/igt@gem_exec_fair@basic-pace-share@rcs0.html
   [225]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@gem_exec_fair@basic-pace-share@rcs0.html
    - shard-tglu:         [FAIL][226] ([i915#2842]) -> [PASS][227]
   [226]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-tglu-2/igt@gem_exec_fair@basic-pace-share@rcs0.html
   [227]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-10/igt@gem_exec_fair@basic-pace-share@rcs0.html

  * igt@gem_exec_schedule@noreorder-priority@rcs0:
    - shard-mtlp:         [DMESG-WARN][228] ([i915#8962]) -> [PASS][229] +1 other test pass
   [228]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-4/igt@gem_exec_schedule@noreorder-priority@rcs0.html
   [229]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-3/igt@gem_exec_schedule@noreorder-priority@rcs0.html

  * igt@gem_exec_suspend@basic-s4-devices@smem:
    - shard-tglu:         [ABORT][230] ([i915#7975] / [i915#8213]) -> [PASS][231]
   [230]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-tglu-10/igt@gem_exec_suspend@basic-s4-devices@smem.html
   [231]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-2/igt@gem_exec_suspend@basic-s4-devices@smem.html

  * igt@gem_lmem_swapping@smem-oom@lmem0:
    - shard-dg2:          [TIMEOUT][232] ([i915#5493]) -> [PASS][233]
   [232]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-2/igt@gem_lmem_swapping@smem-oom@lmem0.html
   [233]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@gem_lmem_swapping@smem-oom@lmem0.html

  * igt@gem_spin_batch@user-each:
    - shard-dg2:          [FAIL][234] -> [PASS][235]
   [234]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-2/igt@gem_spin_batch@user-each.html
   [235]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@gem_spin_batch@user-each.html

  * igt@i915_hangman@engine-engine-hang@vcs0:
    - shard-mtlp:         [FAIL][236] ([i915#7069]) -> [PASS][237] +1 other test pass
   [236]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-5/igt@i915_hangman@engine-engine-hang@vcs0.html
   [237]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-1/igt@i915_hangman@engine-engine-hang@vcs0.html

  * igt@i915_pm_rpm@dpms-mode-unset-non-lpsp:
    - shard-rkl:          [SKIP][238] ([i915#1397]) -> [PASS][239] +1 other test pass
   [238]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-rkl-7/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html
   [239]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-1/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html
    - shard-dg1:          [SKIP][240] ([i915#1397]) -> [PASS][241] +2 other tests pass
   [240]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg1-19/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html
   [241]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-17/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html

  * igt@i915_pm_rpm@system-suspend-modeset:
    - shard-dg2:          [INCOMPLETE][242] -> [PASS][243]
   [242]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-5/igt@i915_pm_rpm@system-suspend-modeset.html
   [243]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-3/igt@i915_pm_rpm@system-suspend-modeset.html

  * igt@i915_pm_rps@reset:
    - shard-snb:          [INCOMPLETE][244] ([i915#7790]) -> [PASS][245]
   [244]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-snb4/igt@i915_pm_rps@reset.html
   [245]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-snb5/igt@i915_pm_rps@reset.html

  * igt@kms_big_fb@4-tiled-64bpp-rotate-180:
    - shard-mtlp:         [FAIL][246] ([i915#3763] / [i915#5138]) -> [PASS][247]
   [246]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-2/igt@kms_big_fb@4-tiled-64bpp-rotate-180.html
   [247]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-2/igt@kms_big_fb@4-tiled-64bpp-rotate-180.html

  * igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip:
    - shard-tglu:         [FAIL][248] ([i915#3743]) -> [PASS][249] +1 other test pass
   [248]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-tglu-2/igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip.html
   [249]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-6/igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions:
    - shard-glk:          [FAIL][250] ([i915#2346]) -> [PASS][251] +1 other test pass
   [250]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-glk4/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
   [251]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-glk4/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
    - shard-apl:          [FAIL][252] ([i915#2346]) -> [PASS][253] +1 other test pass
   [252]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-apl1/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
   [253]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-apl2/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-plflip-blt:
    - shard-dg2:          [FAIL][254] ([i915#6880]) -> [PASS][255] +2 other tests pass
   [254]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-3/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-plflip-blt.html
   [255]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-plflip-blt.html

  * igt@kms_universal_plane@cursor-fb-leak@pipe-a-hdmi-a-1:
    - shard-tglu:         [FAIL][256] ([i915#9196]) -> [PASS][257] +1 other test pass
   [256]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-tglu-5/igt@kms_universal_plane@cursor-fb-leak@pipe-a-hdmi-a-1.html
   [257]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-4/igt@kms_universal_plane@cursor-fb-leak@pipe-a-hdmi-a-1.html

  * igt@kms_vblank@pipe-a-query-forked-busy-hang:
    - shard-dg2:          [TIMEOUT][258] -> [PASS][259] +2 other tests pass
   [258]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-1/igt@kms_vblank@pipe-a-query-forked-busy-hang.html
   [259]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_vblank@pipe-a-query-forked-busy-hang.html

  * igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend:
    - shard-apl:          [INCOMPLETE][260] ([i915#180] / [i915#9392]) -> [PASS][261]
   [260]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-apl3/igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend.html
   [261]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-apl3/igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend.html

  
#### Warnings ####

  * igt@kms_big_fb@yf-tiled-addfb:
    - shard-dg2:          [TIMEOUT][262] -> [SKIP][263] ([i915#5190])
   [262]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-1/igt@kms_big_fb@yf-tiled-addfb.html
   [263]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@kms_big_fb@yf-tiled-addfb.html

  * igt@kms_force_connector_basic@force-load-detect:
    - shard-rkl:          [SKIP][264] ([fdo#109285] / [i915#4098]) -> [SKIP][265] ([fdo#109285])
   [264]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-rkl-2/igt@kms_force_connector_basic@force-load-detect.html
   [265]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@kms_force_connector_basic@force-load-detect.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-mmap-gtt:
    - shard-dg2:          [TIMEOUT][266] -> [SKIP][267] ([i915#8708])
   [266]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-1/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-mmap-gtt.html
   [267]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-mmap-gtt.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#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
  [fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
  [fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
  [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
  [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
  [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
  [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
  [fdo#111767]: https://bugs.freedesktop.org/show_bug.cgi?id=111767
  [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099
  [i915#1339]: https://gitlab.freedesktop.org/drm/intel/issues/1339
  [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
  [i915#1769]: https://gitlab.freedesktop.org/drm/intel/issues/1769
  [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
  [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
  [i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
  [i915#1937]: https://gitlab.freedesktop.org/drm/intel/issues/1937
  [i915#2017]: https://gitlab.freedesktop.org/drm/intel/issues/2017
  [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
  [i915#2410]: https://gitlab.freedesktop.org/drm/intel/issues/2410
  [i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
  [i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
  [i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575
  [i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
  [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#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
  [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#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
  [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
  [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
  [i915#3469]: https://gitlab.freedesktop.org/drm/intel/issues/3469
  [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#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#3743]: https://gitlab.freedesktop.org/drm/intel/issues/3743
  [i915#3763]: https://gitlab.freedesktop.org/drm/intel/issues/3763
  [i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840
  [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
  [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#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
  [i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213
  [i915#4235]: https://gitlab.freedesktop.org/drm/intel/issues/4235
  [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
  [i915#4391]: https://gitlab.freedesktop.org/drm/intel/issues/4391
  [i915#4423]: https://gitlab.freedesktop.org/drm/intel/issues/4423
  [i915#4537]: https://gitlab.freedesktop.org/drm/intel/issues/4537
  [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
  [i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
  [i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
  [i915#4880]: https://gitlab.freedesktop.org/drm/intel/issues/4880
  [i915#4881]: https://gitlab.freedesktop.org/drm/intel/issues/4881
  [i915#5138]: https://gitlab.freedesktop.org/drm/intel/issues/5138
  [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#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
  [i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354
  [i915#5493]: https://gitlab.freedesktop.org/drm/intel/issues/5493
  [i915#5608]: https://gitlab.freedesktop.org/drm/intel/issues/5608
  [i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
  [i915#5793]: https://gitlab.freedesktop.org/drm/intel/issues/5793
  [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
  [i915#6118]: https://gitlab.freedesktop.org/drm/intel/issues/6118
  [i915#6227]: https://gitlab.freedesktop.org/drm/intel/issues/6227
  [i915#6228]: https://gitlab.freedesktop.org/drm/intel/issues/6228
  [i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268
  [i915#6334]: https://gitlab.freedesktop.org/drm/intel/issues/6334
  [i915#6335]: https://gitlab.freedesktop.org/drm/intel/issues/6335
  [i915#6524]: https://gitlab.freedesktop.org/drm/intel/issues/6524
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#6768]: https://gitlab.freedesktop.org/drm/intel/issues/6768
  [i915#6786]: https://gitlab.freedesktop.org/drm/intel/issues/6786
  [i915#6880]: https://gitlab.freedesktop.org/drm/intel/issues/6880
  [i915#6953]: https://gitlab.freedesktop.org/drm/intel/issues/6953
  [i915#7069]: https://gitlab.freedesktop.org/drm/intel/issues/7069
  [i915#7091]: https://gitlab.freedesktop.org/drm/intel/issues/7091
  [i915#7118]: https://gitlab.freedesktop.org/drm/intel/issues/7118
  [i915#7173]: https://gitlab.freedesktop.org/drm/intel/issues/7173
  [i915#7213]: https://gitlab.freedesktop.org/drm/intel/issues/7213
  [i915#7297]: https://gitlab.freedesktop.org/drm/intel/issues/7297
  [i915#7697]: https://gitlab.freedesktop.org/drm/intel/issues/7697
  [i915#7701]: https://gitlab.freedesktop.org/drm/intel/issues/7701
  [i915#7707]: https://gitlab.freedesktop.org/drm/intel/issues/7707
  [i915#7711]: https://gitlab.freedesktop.org/drm/intel/issues/7711
  [i915#7790]: https://gitlab.freedesktop.org/drm/intel/issues/7790
  [i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
  [i915#7975]: https://gitlab.freedesktop.org/drm/intel/issues/7975
  [i915#8213]: https://gitlab.freedesktop.org/drm/intel/issues/8213
  [i915#8228]: https://gitlab.freedesktop.org/drm/intel/issues/8228
  [i915#8247]: https://gitlab.freedesktop.org/drm/intel/issues/8247
  [i915#8289]: https://gitlab.freedesktop.org/drm/intel/issues/8289
  [i915#8411]: https://gitlab.freedesktop.org/drm/intel/issues/8411
  [i915#8414]: https://gitlab.freedesktop.org/drm/intel/issues/8414
  [i915#8428]: https://gitlab.freedesktop.org/drm/intel/issues/8428
  [i915#8456]: https://gitlab.freedesktop.org/drm/intel/issues/8456
  [i915#8502]: https://gitlab.freedesktop.org/drm/intel/issues/8502
  [i915#8617]: https://gitlab.freedesktop.org/drm/intel/issues/8617
  [i915#8708]: https://gitlab.freedesktop.org/drm/intel/issues/8708
  [i915#8709]: https://gitlab.freedesktop.org/drm/intel/issues/8709
  [i915#8797]: https://gitlab.freedesktop.org/drm/intel/issues/8797
  [i915#8809]: https://gitlab.freedesktop.org/drm/intel/issues/8809
  [i915#8810]: https://gitlab.freedesktop.org/drm/intel/issues/8810
  [i915#8841]: https://gitlab.freedesktop.org/drm/intel/issues/8841
  [i915#8850]: https://gitlab.freedesktop.org/drm/intel/issues/8850
  [i915#8875]: https://gitlab.freedesktop.org/drm/intel/issues/8875
  [i915#8925]: https://gitlab.freedesktop.org/drm/intel/issues/8925
  [i915#8962]: https://gitlab.freedesktop.org/drm/intel/issues/8962
  [i915#9196]: https://gitlab.freedesktop.org/drm/intel/issues/9196
  [i915#9262]: https://gitlab.freedesktop.org/drm/intel/issues/9262
  [i915#9364]: https://gitlab.freedesktop.org/drm/intel/issues/9364
  [i915#9392]: https://gitlab.freedesktop.org/drm/intel/issues/9392
  [i915#9414]: https://gitlab.freedesktop.org/drm/intel/issues/9414
  [i915#9423]: https://gitlab.freedesktop.org/drm/intel/issues/9423
  [i915#9475]: https://gitlab.freedesktop.org/drm/intel/issues/9475


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7527 -> IGTPW_9966

  CI-20190529: 20190529
  CI_DRM_13736: 251e78c6b6f76712187d25034bc2ebed0eb33654 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_9966: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/index.html
  IGT_7527: 46f98a3041f73a1d6ee7ec3ace6eba79b15369c4 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

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

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

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

* [igt-dev] ✓ Fi.CI.IGT: success for kms lease (rev6)
  2023-10-10 19:27 [igt-dev] [PATCH v4 0/2] kms lease Mohammed Thasleem
                   ` (4 preceding siblings ...)
  2023-10-11  8:37 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
@ 2023-10-11 13:30 ` Patchwork
  5 siblings, 0 replies; 10+ messages in thread
From: Patchwork @ 2023-10-11 13:30 UTC (permalink / raw)
  To: Mohammed Thasleem; +Cc: igt-dev

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

== Series Details ==

Series: kms lease (rev6)
URL   : https://patchwork.freedesktop.org/series/122944/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13736_full -> IGTPW_9966_full
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

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

  No changes in participating hosts

New tests
---------

  New tests have been introduced between CI_DRM_13736_full and IGTPW_9966_full:

### New IGT tests (2) ###

  * igt@kms_content_protection@atomic-dpms@pipe-a-dp-4:
    - Statuses : 1 timeout(s)
    - Exec time: [0.0] s

  * igt@kms_content_protection@uevent@pipe-a-dp-4:
    - Statuses : 1 fail(s)
    - Exec time: [0.0] s

  

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

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

### IGT changes ###

#### Issues hit ####

  * igt@api_intel_bb@blit-reloc-keep-cache:
    - shard-dg2:          NOTRUN -> [SKIP][1] ([i915#8411])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@api_intel_bb@blit-reloc-keep-cache.html
    - shard-mtlp:         NOTRUN -> [SKIP][2] ([i915#8411])
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-5/igt@api_intel_bb@blit-reloc-keep-cache.html

  * igt@device_reset@cold-reset-bound:
    - shard-dg2:          NOTRUN -> [SKIP][3] ([i915#7701])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@device_reset@cold-reset-bound.html

  * igt@drm_fdinfo@busy@ccs0:
    - shard-dg2:          NOTRUN -> [SKIP][4] ([i915#8414]) +11 other tests skip
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@drm_fdinfo@busy@ccs0.html

  * igt@gem_ccs@suspend-resume@tile4-compressed-compfmt0-smem-lmem0:
    - shard-dg2:          [PASS][5] -> [INCOMPLETE][6] ([i915#7297])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-11/igt@gem_ccs@suspend-resume@tile4-compressed-compfmt0-smem-lmem0.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-3/igt@gem_ccs@suspend-resume@tile4-compressed-compfmt0-smem-lmem0.html

  * igt@gem_create@create-ext-cpu-access-big:
    - shard-dg2:          NOTRUN -> [INCOMPLETE][7] ([i915#9364])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@gem_create@create-ext-cpu-access-big.html
    - shard-rkl:          NOTRUN -> [SKIP][8] ([i915#6335])
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@gem_create@create-ext-cpu-access-big.html

  * igt@gem_ctx_exec@basic-nohangcheck:
    - shard-mtlp:         [PASS][9] -> [FAIL][10] ([i915#6268])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-6/igt@gem_ctx_exec@basic-nohangcheck.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-4/igt@gem_ctx_exec@basic-nohangcheck.html

  * igt@gem_ctx_freq@sysfs@gt0:
    - shard-dg2:          NOTRUN -> [FAIL][11] ([i915#6786])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@gem_ctx_freq@sysfs@gt0.html

  * igt@gem_ctx_isolation@preservation-s3@vcs0:
    - shard-dg1:          [PASS][12] -> [DMESG-WARN][13] ([i915#4423])
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg1-18/igt@gem_ctx_isolation@preservation-s3@vcs0.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-15/igt@gem_ctx_isolation@preservation-s3@vcs0.html

  * igt@gem_ctx_isolation@preservation@vcs0:
    - shard-dg1:          [PASS][14] -> [FAIL][15] ([i915#9327])
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg1-12/igt@gem_ctx_isolation@preservation@vcs0.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-14/igt@gem_ctx_isolation@preservation@vcs0.html

  * igt@gem_ctx_persistence@legacy-engines-cleanup:
    - shard-snb:          NOTRUN -> [SKIP][16] ([fdo#109271] / [i915#1099])
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-snb7/igt@gem_ctx_persistence@legacy-engines-cleanup.html

  * igt@gem_ctx_sseu@mmap-args:
    - shard-dg2:          NOTRUN -> [SKIP][17] ([i915#280]) +1 other test skip
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@gem_ctx_sseu@mmap-args.html

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

  * igt@gem_eio@in-flight-suspend:
    - shard-dg1:          [PASS][19] -> [DMESG-WARN][20] ([i915#4391] / [i915#4423]) +1 other test dmesg-warn
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg1-16/igt@gem_eio@in-flight-suspend.html
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-15/igt@gem_eio@in-flight-suspend.html

  * igt@gem_eio@unwedge-stress:
    - shard-dg1:          [PASS][21] -> [FAIL][22] ([i915#5784])
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg1-18/igt@gem_eio@unwedge-stress.html
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-12/igt@gem_eio@unwedge-stress.html

  * igt@gem_exec_balancer@bonded-false-hang:
    - shard-dg2:          NOTRUN -> [SKIP][23] ([i915#4812]) +2 other tests skip
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@gem_exec_balancer@bonded-false-hang.html

  * igt@gem_exec_capture@capture-invisible@lmem0:
    - shard-dg2:          NOTRUN -> [SKIP][24] ([i915#6334]) +1 other test skip
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@gem_exec_capture@capture-invisible@lmem0.html

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

  * igt@gem_exec_fence@syncobj-timeline-chain-engines:
    - shard-mtlp:         [PASS][26] -> [ABORT][27] ([i915#9262])
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-2/igt@gem_exec_fence@syncobj-timeline-chain-engines.html
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-4/igt@gem_exec_fence@syncobj-timeline-chain-engines.html

  * igt@gem_exec_flush@basic-wb-ro-default:
    - shard-dg2:          NOTRUN -> [SKIP][28] ([i915#3539] / [i915#4852])
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-7/igt@gem_exec_flush@basic-wb-ro-default.html

  * igt@gem_exec_gttfill@multigpu-basic:
    - shard-dg2:          NOTRUN -> [SKIP][29] ([i915#7697]) +1 other test skip
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@gem_exec_gttfill@multigpu-basic.html
    - shard-rkl:          NOTRUN -> [SKIP][30] ([i915#7697])
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@gem_exec_gttfill@multigpu-basic.html
    - shard-dg1:          NOTRUN -> [SKIP][31] ([i915#7697])
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-15/igt@gem_exec_gttfill@multigpu-basic.html

  * igt@gem_exec_reloc@basic-cpu-gtt-noreloc:
    - shard-dg2:          NOTRUN -> [SKIP][32] ([i915#3281]) +9 other tests skip
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@gem_exec_reloc@basic-cpu-gtt-noreloc.html

  * igt@gem_exec_reloc@basic-gtt-cpu:
    - shard-dg1:          NOTRUN -> [SKIP][33] ([i915#3281]) +2 other tests skip
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-16/igt@gem_exec_reloc@basic-gtt-cpu.html

  * igt@gem_exec_reloc@basic-gtt-wc-active:
    - shard-rkl:          NOTRUN -> [SKIP][34] ([i915#3281]) +1 other test skip
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@gem_exec_reloc@basic-gtt-wc-active.html

  * igt@gem_exec_schedule@preemptive-hang:
    - shard-snb:          NOTRUN -> [SKIP][35] ([fdo#109271]) +27 other tests skip
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-snb4/igt@gem_exec_schedule@preemptive-hang.html

  * igt@gem_exec_schedule@semaphore-power:
    - shard-mtlp:         NOTRUN -> [SKIP][36] ([i915#4537] / [i915#4812])
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-3/igt@gem_exec_schedule@semaphore-power.html

  * igt@gem_fence_thrash@bo-write-verify-y:
    - shard-dg2:          NOTRUN -> [SKIP][37] ([i915#4860]) +1 other test skip
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@gem_fence_thrash@bo-write-verify-y.html
    - shard-dg1:          NOTRUN -> [SKIP][38] ([i915#4860])
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-14/igt@gem_fence_thrash@bo-write-verify-y.html

  * igt@gem_lmem_swapping@massive-random:
    - shard-mtlp:         NOTRUN -> [SKIP][39] ([i915#4613])
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-6/igt@gem_lmem_swapping@massive-random.html

  * igt@gem_lmem_swapping@random:
    - shard-glk:          NOTRUN -> [SKIP][40] ([fdo#109271] / [i915#4613])
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-glk9/igt@gem_lmem_swapping@random.html

  * igt@gem_media_fill@media-fill:
    - shard-dg2:          NOTRUN -> [SKIP][41] ([i915#8289])
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@gem_media_fill@media-fill.html

  * igt@gem_mmap_gtt@basic-copy:
    - shard-mtlp:         NOTRUN -> [SKIP][42] ([i915#4077])
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-7/igt@gem_mmap_gtt@basic-copy.html

  * igt@gem_mmap_gtt@zero-extend:
    - shard-dg2:          NOTRUN -> [SKIP][43] ([i915#4077]) +11 other tests skip
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@gem_mmap_gtt@zero-extend.html

  * igt@gem_mmap_wc@invalid-flags:
    - shard-dg2:          NOTRUN -> [SKIP][44] ([i915#4083]) +2 other tests skip
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@gem_mmap_wc@invalid-flags.html

  * igt@gem_partial_pwrite_pread@reads:
    - shard-dg2:          NOTRUN -> [SKIP][45] ([i915#3282]) +5 other tests skip
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-7/igt@gem_partial_pwrite_pread@reads.html

  * igt@gem_partial_pwrite_pread@write-snoop:
    - shard-rkl:          NOTRUN -> [SKIP][46] ([i915#3282])
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-6/igt@gem_partial_pwrite_pread@write-snoop.html

  * igt@gem_pxp@create-regular-context-1:
    - shard-rkl:          NOTRUN -> [SKIP][47] ([i915#4270])
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-2/igt@gem_pxp@create-regular-context-1.html
    - shard-dg1:          NOTRUN -> [SKIP][48] ([i915#4270])
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-15/igt@gem_pxp@create-regular-context-1.html

  * igt@gem_pxp@create-valid-protected-context:
    - shard-dg2:          NOTRUN -> [SKIP][49] ([i915#4270]) +2 other tests skip
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@gem_pxp@create-valid-protected-context.html

  * igt@gem_render_copy@x-tiled-to-vebox-yf-tiled:
    - shard-mtlp:         NOTRUN -> [SKIP][50] ([i915#8428]) +1 other test skip
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-7/igt@gem_render_copy@x-tiled-to-vebox-yf-tiled.html

  * igt@gem_set_tiling_vs_pwrite:
    - shard-dg2:          NOTRUN -> [SKIP][51] ([i915#4079])
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@gem_set_tiling_vs_pwrite.html

  * igt@gem_userptr_blits@coherency-sync:
    - shard-dg2:          NOTRUN -> [SKIP][52] ([i915#3297]) +1 other test skip
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@gem_userptr_blits@coherency-sync.html

  * igt@gem_userptr_blits@map-fixed-invalidate-overlap:
    - shard-dg2:          NOTRUN -> [SKIP][53] ([i915#3297] / [i915#4880])
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@gem_userptr_blits@map-fixed-invalidate-overlap.html

  * igt@gen7_exec_parse@basic-allocation:
    - shard-rkl:          NOTRUN -> [SKIP][54] ([fdo#109289])
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-1/igt@gen7_exec_parse@basic-allocation.html
    - shard-dg1:          NOTRUN -> [SKIP][55] ([fdo#109289])
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-14/igt@gen7_exec_parse@basic-allocation.html

  * igt@gen7_exec_parse@basic-rejected:
    - shard-dg2:          NOTRUN -> [SKIP][56] ([fdo#109289]) +2 other tests skip
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@gen7_exec_parse@basic-rejected.html

  * igt@gen9_exec_parse@batch-invalid-length:
    - shard-dg2:          NOTRUN -> [SKIP][57] ([i915#2856]) +3 other tests skip
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@gen9_exec_parse@batch-invalid-length.html
    - shard-rkl:          NOTRUN -> [SKIP][58] ([i915#2527])
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-4/igt@gen9_exec_parse@batch-invalid-length.html
    - shard-dg1:          NOTRUN -> [SKIP][59] ([i915#2527])
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-14/igt@gen9_exec_parse@batch-invalid-length.html

  * igt@i915_hangman@detector@vcs0:
    - shard-mtlp:         [PASS][60] -> [FAIL][61] ([i915#8456]) +2 other tests fail
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-8/igt@i915_hangman@detector@vcs0.html
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-7/igt@i915_hangman@detector@vcs0.html

  * igt@i915_hangman@engine-engine-error@vcs0:
    - shard-mtlp:         [PASS][62] -> [FAIL][63] ([i915#7069]) +1 other test fail
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-3/igt@i915_hangman@engine-engine-error@vcs0.html
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-4/igt@i915_hangman@engine-engine-error@vcs0.html

  * igt@i915_hangman@gt-error-state-capture@vecs0:
    - shard-mtlp:         [PASS][64] -> [ABORT][65] ([i915#9414])
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-7/igt@i915_hangman@gt-error-state-capture@vecs0.html
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-4/igt@i915_hangman@gt-error-state-capture@vecs0.html

  * igt@i915_module_load@load:
    - shard-dg2:          NOTRUN -> [SKIP][66] ([i915#6227])
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-7/igt@i915_module_load@load.html

  * igt@i915_module_load@reload-with-fault-injection:
    - shard-dg2:          [PASS][67] -> [DMESG-WARN][68] ([i915#8617])
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-11/igt@i915_module_load@reload-with-fault-injection.html
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@i915_module_load@reload-with-fault-injection.html

  * igt@i915_pipe_stress@stress-xrgb8888-ytiled:
    - shard-dg2:          NOTRUN -> [SKIP][69] ([i915#7091])
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-3/igt@i915_pipe_stress@stress-xrgb8888-ytiled.html

  * igt@i915_pm_rc6_residency@media-rc6-accuracy:
    - shard-tglu:         NOTRUN -> [SKIP][70] ([fdo#109289])
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-3/igt@i915_pm_rc6_residency@media-rc6-accuracy.html

  * igt@i915_pm_rc6_residency@rc6-idle@rcs0:
    - shard-tglu:         NOTRUN -> [WARN][71] ([i915#2681]) +3 other tests warn
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-9/igt@i915_pm_rc6_residency@rc6-idle@rcs0.html

  * igt@i915_pm_rpm@dpms-lpsp:
    - shard-dg1:          [PASS][72] -> [SKIP][73] ([i915#1397])
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg1-19/igt@i915_pm_rpm@dpms-lpsp.html
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-14/igt@i915_pm_rpm@dpms-lpsp.html
    - shard-dg2:          NOTRUN -> [SKIP][74] ([i915#1397])
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@i915_pm_rpm@dpms-lpsp.html

  * igt@i915_pm_rpm@modeset-non-lpsp-stress:
    - shard-rkl:          [PASS][75] -> [SKIP][76] ([i915#1397])
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-rkl-6/igt@i915_pm_rpm@modeset-non-lpsp-stress.html
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@i915_pm_rpm@modeset-non-lpsp-stress.html

  * igt@i915_pm_rpm@modeset-pc8-residency-stress:
    - shard-dg2:          NOTRUN -> [SKIP][77] ([fdo#109506])
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@i915_pm_rpm@modeset-pc8-residency-stress.html

  * igt@i915_pm_rpm@system-suspend-execbuf:
    - shard-mtlp:         [PASS][78] -> [FAIL][79] ([fdo#103375])
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-5/igt@i915_pm_rpm@system-suspend-execbuf.html
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-7/igt@i915_pm_rpm@system-suspend-execbuf.html

  * igt@i915_pm_rps@thresholds-idle@gt0:
    - shard-dg2:          NOTRUN -> [SKIP][80] ([i915#8925])
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@i915_pm_rps@thresholds-idle@gt0.html
    - shard-dg1:          NOTRUN -> [SKIP][81] ([i915#8925])
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-14/igt@i915_pm_rps@thresholds-idle@gt0.html

  * igt@i915_suspend@basic-s3-without-i915:
    - shard-rkl:          [PASS][82] -> [FAIL][83] ([fdo#103375])
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-rkl-1/igt@i915_suspend@basic-s3-without-i915.html
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-6/igt@i915_suspend@basic-s3-without-i915.html

  * igt@i915_suspend@sysfs-reader:
    - shard-dg2:          [PASS][84] -> [FAIL][85] ([fdo#103375])
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-2/igt@i915_suspend@sysfs-reader.html
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@i915_suspend@sysfs-reader.html

  * igt@kms_addfb_basic@bo-too-small-due-to-tiling:
    - shard-dg2:          NOTRUN -> [SKIP][86] ([i915#4212])
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@kms_addfb_basic@bo-too-small-due-to-tiling.html

  * igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-dp-4-4-mc_ccs:
    - shard-dg2:          NOTRUN -> [SKIP][87] ([i915#8709]) +11 other tests skip
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-dp-4-4-mc_ccs.html

  * igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-hdmi-a-2-y-rc_ccs:
    - shard-rkl:          NOTRUN -> [SKIP][88] ([i915#8502]) +3 other tests skip
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-4/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-a-hdmi-a-2-y-rc_ccs.html

  * igt@kms_async_flips@async-flip-with-page-flip-events@pipe-c-hdmi-a-4-y-rc_ccs:
    - shard-dg1:          NOTRUN -> [SKIP][89] ([i915#8502]) +7 other tests skip
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-14/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-c-hdmi-a-4-y-rc_ccs.html

  * igt@kms_async_flips@crc@pipe-a-hdmi-a-2:
    - shard-dg2:          NOTRUN -> [FAIL][90] ([i915#8247]) +3 other tests fail
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_async_flips@crc@pipe-a-hdmi-a-2.html

  * igt@kms_async_flips@invalid-async-flip:
    - shard-dg2:          NOTRUN -> [SKIP][91] ([i915#6228])
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-7/igt@kms_async_flips@invalid-async-flip.html

  * igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels:
    - shard-glk:          NOTRUN -> [SKIP][92] ([fdo#109271] / [i915#1769])
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-glk3/igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels.html
    - shard-dg2:          NOTRUN -> [SKIP][93] ([i915#1769] / [i915#3555])
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels.html

  * igt@kms_big_fb@4-tiled-16bpp-rotate-90:
    - shard-dg1:          NOTRUN -> [SKIP][94] ([i915#4538] / [i915#5286])
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-12/igt@kms_big_fb@4-tiled-16bpp-rotate-90.html

  * igt@kms_big_fb@4-tiled-64bpp-rotate-0:
    - shard-tglu:         NOTRUN -> [SKIP][95] ([fdo#111615] / [i915#5286])
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-3/igt@kms_big_fb@4-tiled-64bpp-rotate-0.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip:
    - shard-mtlp:         [PASS][96] -> [FAIL][97] ([i915#5138]) +1 other test fail
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-5/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip.html
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-3/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip.html

  * igt@kms_big_fb@linear-16bpp-rotate-90:
    - shard-dg2:          NOTRUN -> [SKIP][98] ([fdo#111614]) +3 other tests skip
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-3/igt@kms_big_fb@linear-16bpp-rotate-90.html
    - shard-dg1:          NOTRUN -> [SKIP][99] ([i915#3638])
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-19/igt@kms_big_fb@linear-16bpp-rotate-90.html

  * igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-async-flip:
    - shard-tglu:         [PASS][100] -> [FAIL][101] ([i915#3743])
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-tglu-4/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-async-flip.html
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-10/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-async-flip.html

  * igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip:
    - shard-mtlp:         NOTRUN -> [SKIP][102] ([fdo#111615])
   [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-7/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip.html

  * igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-async-flip:
    - shard-dg2:          NOTRUN -> [SKIP][103] ([i915#5190]) +12 other tests skip
   [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-async-flip.html

  * igt@kms_big_fb@yf-tiled-8bpp-rotate-90:
    - shard-dg2:          NOTRUN -> [SKIP][104] ([i915#4538] / [i915#5190]) +4 other tests skip
   [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_big_fb@yf-tiled-8bpp-rotate-90.html
    - shard-rkl:          NOTRUN -> [SKIP][105] ([fdo#110723])
   [105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-2/igt@kms_big_fb@yf-tiled-8bpp-rotate-90.html
    - shard-dg1:          NOTRUN -> [SKIP][106] ([i915#4538])
   [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-15/igt@kms_big_fb@yf-tiled-8bpp-rotate-90.html

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

  * igt@kms_ccs@pipe-b-bad-rotation-90-4_tiled_mtl_mc_ccs:
    - shard-rkl:          NOTRUN -> [SKIP][108] ([i915#5354] / [i915#6095]) +1 other test skip
   [108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-6/igt@kms_ccs@pipe-b-bad-rotation-90-4_tiled_mtl_mc_ccs.html

  * igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_mc_ccs:
    - shard-mtlp:         NOTRUN -> [SKIP][109] ([i915#3886] / [i915#5354] / [i915#6095]) +1 other test skip
   [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-4/igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs_cc:
    - shard-dg2:          NOTRUN -> [SKIP][110] ([i915#3689] / [i915#3886] / [i915#5354]) +4 other tests skip
   [110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-b-random-ccs-data-4_tiled_dg2_rc_ccs:
    - shard-tglu:         NOTRUN -> [SKIP][111] ([i915#3689] / [i915#5354] / [i915#6095]) +1 other test skip
   [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-9/igt@kms_ccs@pipe-b-random-ccs-data-4_tiled_dg2_rc_ccs.html

  * igt@kms_ccs@pipe-c-bad-rotation-90-4_tiled_mtl_mc_ccs:
    - shard-dg2:          NOTRUN -> [SKIP][112] ([i915#5354]) +44 other tests skip
   [112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_ccs@pipe-c-bad-rotation-90-4_tiled_mtl_mc_ccs.html

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

  * igt@kms_ccs@pipe-c-crc-primary-basic-y_tiled_gen12_mc_ccs:
    - shard-apl:          NOTRUN -> [SKIP][114] ([fdo#109271] / [i915#3886])
   [114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-apl3/igt@kms_ccs@pipe-c-crc-primary-basic-y_tiled_gen12_mc_ccs.html
    - shard-glk:          NOTRUN -> [SKIP][115] ([fdo#109271] / [i915#3886])
   [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-glk4/igt@kms_ccs@pipe-c-crc-primary-basic-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_ccs:
    - shard-rkl:          NOTRUN -> [SKIP][116] ([i915#5354]) +2 other tests skip
   [116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-6/igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_ccs.html
    - shard-dg1:          NOTRUN -> [SKIP][117] ([i915#3689] / [i915#5354] / [i915#6095]) +1 other test skip
   [117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-17/igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_ccs.html

  * igt@kms_ccs@pipe-c-random-ccs-data-yf_tiled_ccs:
    - shard-mtlp:         NOTRUN -> [SKIP][118] ([i915#5354] / [i915#6095]) +1 other test skip
   [118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-1/igt@kms_ccs@pipe-c-random-ccs-data-yf_tiled_ccs.html

  * igt@kms_ccs@pipe-d-bad-pixel-format-yf_tiled_ccs:
    - shard-tglu:         NOTRUN -> [SKIP][119] ([fdo#111615] / [i915#3689] / [i915#5354] / [i915#6095])
   [119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-4/igt@kms_ccs@pipe-d-bad-pixel-format-yf_tiled_ccs.html

  * igt@kms_ccs@pipe-d-crc-primary-basic-y_tiled_gen12_rc_ccs:
    - shard-dg2:          NOTRUN -> [SKIP][120] ([i915#3689] / [i915#5354]) +20 other tests skip
   [120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@kms_ccs@pipe-d-crc-primary-basic-y_tiled_gen12_rc_ccs.html

  * igt@kms_ccs@pipe-d-crc-sprite-planes-basic-4_tiled_dg2_mc_ccs:
    - shard-dg1:          NOTRUN -> [SKIP][121] ([i915#5354] / [i915#6095]) +4 other tests skip
   [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-19/igt@kms_ccs@pipe-d-crc-sprite-planes-basic-4_tiled_dg2_mc_ccs.html

  * igt@kms_cdclk@mode-transition-all-outputs:
    - shard-dg2:          NOTRUN -> [SKIP][122] ([i915#4087] / [i915#7213])
   [122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@kms_cdclk@mode-transition-all-outputs.html

  * igt@kms_cdclk@plane-scaling@pipe-c-hdmi-a-3:
    - shard-dg2:          NOTRUN -> [SKIP][123] ([i915#4087]) +3 other tests skip
   [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@kms_cdclk@plane-scaling@pipe-c-hdmi-a-3.html

  * igt@kms_chamelium_audio@hdmi-audio-edid:
    - shard-tglu:         NOTRUN -> [SKIP][124] ([i915#7828]) +1 other test skip
   [124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-5/igt@kms_chamelium_audio@hdmi-audio-edid.html

  * igt@kms_chamelium_color@ctm-0-75:
    - shard-mtlp:         NOTRUN -> [SKIP][125] ([fdo#111827])
   [125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-2/igt@kms_chamelium_color@ctm-0-75.html

  * igt@kms_chamelium_color@ctm-red-to-blue:
    - shard-dg2:          NOTRUN -> [SKIP][126] ([fdo#111827])
   [126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@kms_chamelium_color@ctm-red-to-blue.html

  * igt@kms_chamelium_hpd@dp-hpd-storm:
    - shard-dg2:          NOTRUN -> [SKIP][127] ([i915#7828]) +8 other tests skip
   [127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@kms_chamelium_hpd@dp-hpd-storm.html

  * igt@kms_chamelium_hpd@vga-hpd-fast:
    - shard-rkl:          NOTRUN -> [SKIP][128] ([i915#7828]) +2 other tests skip
   [128]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-6/igt@kms_chamelium_hpd@vga-hpd-fast.html
    - shard-dg1:          NOTRUN -> [SKIP][129] ([i915#7828]) +3 other tests skip
   [129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-18/igt@kms_chamelium_hpd@vga-hpd-fast.html

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

  * igt@kms_content_protection@srm:
    - shard-dg2:          NOTRUN -> [SKIP][131] ([i915#7118]) +2 other tests skip
   [131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@kms_content_protection@srm.html

  * igt@kms_content_protection@srm@pipe-a-dp-1:
    - shard-apl:          NOTRUN -> [TIMEOUT][132] ([i915#7173])
   [132]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-apl7/igt@kms_content_protection@srm@pipe-a-dp-1.html

  * igt@kms_content_protection@uevent@pipe-a-dp-4 (NEW):
    - shard-dg2:          NOTRUN -> [FAIL][133] ([i915#1339])
   [133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@kms_content_protection@uevent@pipe-a-dp-4.html

  * igt@kms_cursor_crc@cursor-onscreen-32x10:
    - shard-rkl:          NOTRUN -> [SKIP][134] ([i915#3555]) +1 other test skip
   [134]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-2/igt@kms_cursor_crc@cursor-onscreen-32x10.html

  * igt@kms_cursor_crc@cursor-random-512x170:
    - shard-dg2:          NOTRUN -> [SKIP][135] ([i915#3359]) +3 other tests skip
   [135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_cursor_crc@cursor-random-512x170.html

  * igt@kms_cursor_crc@cursor-rapid-movement-32x32:
    - shard-dg2:          NOTRUN -> [SKIP][136] ([i915#3555]) +5 other tests skip
   [136]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_cursor_crc@cursor-rapid-movement-32x32.html

  * igt@kms_cursor_crc@cursor-sliding-32x10:
    - shard-dg1:          NOTRUN -> [SKIP][137] ([i915#3555]) +2 other tests skip
   [137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-12/igt@kms_cursor_crc@cursor-sliding-32x10.html

  * igt@kms_cursor_crc@cursor-suspend@pipe-a-hdmi-a-1:
    - shard-snb:          NOTRUN -> [DMESG-WARN][138] ([i915#8841]) +1 other test dmesg-warn
   [138]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-snb1/igt@kms_cursor_crc@cursor-suspend@pipe-a-hdmi-a-1.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
    - shard-dg2:          NOTRUN -> [SKIP][139] ([i915#4103] / [i915#4213] / [i915#5608])
   [139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
    - shard-mtlp:         NOTRUN -> [SKIP][140] ([i915#4213])
   [140]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-6/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html

  * igt@kms_cursor_legacy@cursora-vs-flipb-varying-size:
    - shard-mtlp:         NOTRUN -> [SKIP][141] ([i915#3546])
   [141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-7/igt@kms_cursor_legacy@cursora-vs-flipb-varying-size.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size:
    - shard-apl:          NOTRUN -> [SKIP][142] ([fdo#109271]) +19 other tests skip
   [142]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-apl6/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa-varying-size:
    - shard-dg2:          NOTRUN -> [SKIP][143] ([fdo#109274] / [i915#5354]) +6 other tests skip
   [143]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@kms_cursor_legacy@cursorb-vs-flipa-varying-size.html

  * igt@kms_cursor_legacy@cursorb-vs-flipb-varying-size:
    - shard-tglu:         NOTRUN -> [SKIP][144] ([fdo#109274])
   [144]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-6/igt@kms_cursor_legacy@cursorb-vs-flipb-varying-size.html

  * igt@kms_cursor_legacy@forked-move@all-pipes:
    - shard-mtlp:         [PASS][145] -> [DMESG-WARN][146] ([i915#2017])
   [145]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-3/igt@kms_cursor_legacy@forked-move@all-pipes.html
   [146]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-4/igt@kms_cursor_legacy@forked-move@all-pipes.html

  * igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions:
    - shard-rkl:          NOTRUN -> [SKIP][147] ([i915#4103])
   [147]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-6/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions.html
    - shard-dg1:          NOTRUN -> [SKIP][148] ([i915#4103] / [i915#4213])
   [148]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-15/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions.html

  * igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle:
    - shard-dg2:          NOTRUN -> [SKIP][149] ([i915#4103] / [i915#4213]) +1 other test skip
   [149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle.html

  * igt@kms_dsc@dsc-basic:
    - shard-dg2:          NOTRUN -> [SKIP][150] ([i915#3555] / [i915#3840]) +2 other tests skip
   [150]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@kms_dsc@dsc-basic.html

  * igt@kms_fbcon_fbt@psr-suspend:
    - shard-tglu:         NOTRUN -> [SKIP][151] ([i915#3469])
   [151]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-5/igt@kms_fbcon_fbt@psr-suspend.html

  * igt@kms_fence_pin_leak:
    - shard-dg2:          NOTRUN -> [SKIP][152] ([i915#4881])
   [152]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@kms_fence_pin_leak.html
    - shard-mtlp:         NOTRUN -> [SKIP][153] ([i915#4881])
   [153]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-5/igt@kms_fence_pin_leak.html

  * igt@kms_flip@2x-flip-vs-blocking-wf-vblank:
    - shard-dg2:          NOTRUN -> [SKIP][154] ([fdo#109274] / [fdo#111767])
   [154]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_flip@2x-flip-vs-blocking-wf-vblank.html

  * igt@kms_flip@2x-plain-flip:
    - shard-tglu:         NOTRUN -> [SKIP][155] ([fdo#109274] / [i915#3637])
   [155]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-3/igt@kms_flip@2x-plain-flip.html

  * igt@kms_flip@2x-plain-flip-fb-recreate-interruptible:
    - shard-dg1:          NOTRUN -> [SKIP][156] ([fdo#111825]) +4 other tests skip
   [156]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-19/igt@kms_flip@2x-plain-flip-fb-recreate-interruptible.html

  * igt@kms_flip@2x-wf_vblank-ts-check:
    - shard-dg2:          NOTRUN -> [SKIP][157] ([fdo#109274]) +3 other tests skip
   [157]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@kms_flip@2x-wf_vblank-ts-check.html

  * igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling@pipe-a-valid-mode:
    - shard-dg2:          NOTRUN -> [SKIP][158] ([i915#2672]) +3 other tests skip
   [158]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-downscaling@pipe-a-valid-mode.html

  * igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tile-downscaling@pipe-a-default-mode:
    - shard-mtlp:         NOTRUN -> [SKIP][159] ([i915#8810])
   [159]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-3/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tile-downscaling@pipe-a-default-mode.html

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

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

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-pgflip-blt:
    - shard-mtlp:         NOTRUN -> [SKIP][163] ([i915#1825]) +6 other tests skip
   [163]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-4/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-pgflip-blt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-gtt:
    - shard-dg2:          NOTRUN -> [SKIP][164] ([i915#8708]) +16 other tests skip
   [164]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-7/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-mmap-gtt:
    - shard-rkl:          NOTRUN -> [SKIP][165] ([fdo#111825] / [i915#1825]) +1 other test skip
   [165]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-1/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-mmap-gtt.html
    - shard-dg1:          NOTRUN -> [SKIP][166] ([i915#8708]) +3 other tests skip
   [166]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-18/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-shrfb-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-shrfb-fliptrack-mmap-gtt:
    - shard-rkl:          NOTRUN -> [SKIP][167] ([fdo#111825]) +1 other test skip
   [167]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@kms_frontbuffer_tracking@fbc-2p-shrfb-fliptrack-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-tiling-y:
    - shard-tglu:         NOTRUN -> [SKIP][168] ([fdo#110189]) +1 other test skip
   [168]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-5/igt@kms_frontbuffer_tracking@fbcpsr-tiling-y.html

  * igt@kms_frontbuffer_tracking@psr-1p-primscrn-shrfb-msflip-blt:
    - shard-dg1:          NOTRUN -> [SKIP][169] ([i915#3458]) +4 other tests skip
   [169]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-16/igt@kms_frontbuffer_tracking@psr-1p-primscrn-shrfb-msflip-blt.html

  * igt@kms_frontbuffer_tracking@psr-1p-rte:
    - shard-dg2:          NOTRUN -> [SKIP][170] ([i915#3458]) +16 other tests skip
   [170]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@kms_frontbuffer_tracking@psr-1p-rte.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-indfb-msflip-blt:
    - shard-tglu:         NOTRUN -> [SKIP][171] ([fdo#109280]) +5 other tests skip
   [171]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-6/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-indfb-msflip-blt.html

  * igt@kms_frontbuffer_tracking@psr-suspend:
    - shard-rkl:          NOTRUN -> [SKIP][172] ([i915#3023]) +1 other test skip
   [172]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@kms_frontbuffer_tracking@psr-suspend.html

  * igt@kms_getfb@getfb-reject-ccs:
    - shard-dg2:          NOTRUN -> [SKIP][173] ([i915#6118])
   [173]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-7/igt@kms_getfb@getfb-reject-ccs.html

  * igt@kms_hdr@static-toggle:
    - shard-dg2:          NOTRUN -> [SKIP][174] ([i915#3555] / [i915#8228]) +1 other test skip
   [174]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-7/igt@kms_hdr@static-toggle.html

  * igt@kms_plane_scaling@intel-max-src-size:
    - shard-dg2:          NOTRUN -> [SKIP][175] ([i915#6953])
   [175]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@kms_plane_scaling@intel-max-src-size.html

  * igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-a-hdmi-a-1:
    - shard-rkl:          NOTRUN -> [SKIP][176] ([i915#5176] / [i915#9423]) +1 other test skip
   [176]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-a-hdmi-a-1.html

  * igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-b-hdmi-a-1:
    - shard-tglu:         NOTRUN -> [SKIP][177] ([i915#5176] / [i915#9423]) +3 other tests skip
   [177]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-5/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-b-hdmi-a-1.html

  * igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-d-hdmi-a-1:
    - shard-dg1:          NOTRUN -> [SKIP][178] ([i915#5176] / [i915#9423]) +3 other tests skip
   [178]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-19/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-d-hdmi-a-1.html

  * igt@kms_plane_scaling@planes-downscale-factor-0-25-unity-scaling@pipe-a-hdmi-a-4:
    - shard-dg1:          NOTRUN -> [SKIP][179] ([i915#5235]) +3 other tests skip
   [179]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-16/igt@kms_plane_scaling@planes-downscale-factor-0-25-unity-scaling@pipe-a-hdmi-a-4.html

  * igt@kms_plane_scaling@planes-downscale-factor-0-25@pipe-c-hdmi-a-1:
    - shard-tglu:         NOTRUN -> [SKIP][180] ([i915#5235]) +3 other tests skip
   [180]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-5/igt@kms_plane_scaling@planes-downscale-factor-0-25@pipe-c-hdmi-a-1.html

  * igt@kms_plane_scaling@planes-downscale-factor-0-25@pipe-d-hdmi-a-2:
    - shard-dg2:          NOTRUN -> [SKIP][181] ([i915#5235]) +19 other tests skip
   [181]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_plane_scaling@planes-downscale-factor-0-25@pipe-d-hdmi-a-2.html

  * igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-25@pipe-a-hdmi-a-1:
    - shard-rkl:          NOTRUN -> [SKIP][182] ([i915#5235]) +1 other test skip
   [182]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-25@pipe-a-hdmi-a-1.html

  * igt@kms_prime@basic-modeset-hybrid:
    - shard-tglu:         NOTRUN -> [SKIP][183] ([i915#6524])
   [183]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-6/igt@kms_prime@basic-modeset-hybrid.html

  * igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area:
    - shard-tglu:         NOTRUN -> [SKIP][184] ([fdo#111068] / [i915#658])
   [184]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-5/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area.html

  * igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-big-fb:
    - shard-dg2:          NOTRUN -> [SKIP][185] ([i915#658]) +1 other test skip
   [185]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-big-fb.html
    - shard-dg1:          NOTRUN -> [SKIP][186] ([i915#658])
   [186]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-17/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-big-fb.html

  * igt@kms_psr@psr2_primary_blt:
    - shard-dg2:          NOTRUN -> [SKIP][187] ([i915#1072]) +3 other tests skip
   [187]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@kms_psr@psr2_primary_blt.html

  * igt@kms_psr@psr2_primary_mmap_cpu:
    - shard-mtlp:         [PASS][188] -> [FAIL][189] ([i915#9517])
   [188]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-8/igt@kms_psr@psr2_primary_mmap_cpu.html
   [189]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-8/igt@kms_psr@psr2_primary_mmap_cpu.html

  * igt@kms_psr@sprite_plane_move:
    - shard-rkl:          NOTRUN -> [SKIP][190] ([i915#1072]) +1 other test skip
   [190]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-6/igt@kms_psr@sprite_plane_move.html
    - shard-dg1:          NOTRUN -> [SKIP][191] ([i915#1072] / [i915#4078]) +1 other test skip
   [191]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-19/igt@kms_psr@sprite_plane_move.html

  * igt@kms_rotation_crc@bad-pixel-format:
    - shard-dg2:          NOTRUN -> [SKIP][192] ([i915#4235])
   [192]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@kms_rotation_crc@bad-pixel-format.html

  * igt@kms_rotation_crc@primary-rotation-270:
    - shard-rkl:          [PASS][193] -> [INCOMPLETE][194] ([i915#8875]) +1 other test incomplete
   [193]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-rkl-6/igt@kms_rotation_crc@primary-rotation-270.html
   [194]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-6/igt@kms_rotation_crc@primary-rotation-270.html

  * igt@kms_rotation_crc@primary-y-tiled-reflect-x-270:
    - shard-rkl:          [PASS][195] -> [INCOMPLETE][196] ([i915#8875] / [i915#9475])
   [195]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-rkl-1/igt@kms_rotation_crc@primary-y-tiled-reflect-x-270.html
   [196]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-1/igt@kms_rotation_crc@primary-y-tiled-reflect-x-270.html

  * igt@kms_setmode@invalid-clone-single-crtc:
    - shard-dg2:          NOTRUN -> [SKIP][197] ([i915#3555] / [i915#4098])
   [197]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_setmode@invalid-clone-single-crtc.html
    - shard-mtlp:         NOTRUN -> [SKIP][198] ([i915#3555] / [i915#8809])
   [198]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-3/igt@kms_setmode@invalid-clone-single-crtc.html

  * igt@kms_vblank@pipe-b-ts-continuation-suspend:
    - shard-tglu:         [PASS][199] -> [INCOMPLETE][200] ([i915#8797])
   [199]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-tglu-5/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
   [200]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-4/igt@kms_vblank@pipe-b-ts-continuation-suspend.html

  * igt@kms_vblank@pipe-d-query-forked:
    - shard-rkl:          NOTRUN -> [SKIP][201] ([i915#4070] / [i915#533] / [i915#6768])
   [201]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-4/igt@kms_vblank@pipe-d-query-forked.html

  * igt@kms_writeback@writeback-fb-id:
    - shard-glk:          NOTRUN -> [SKIP][202] ([fdo#109271] / [i915#2437])
   [202]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-glk5/igt@kms_writeback@writeback-fb-id.html
    - shard-dg2:          NOTRUN -> [SKIP][203] ([i915#2437])
   [203]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-7/igt@kms_writeback@writeback-fb-id.html

  * igt@perf_pmu@cpu-hotplug:
    - shard-dg2:          NOTRUN -> [SKIP][204] ([i915#8850])
   [204]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@perf_pmu@cpu-hotplug.html

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

  * igt@perf_pmu@semaphore-busy@vcs1:
    - shard-dg1:          [PASS][206] -> [FAIL][207] ([i915#4349]) +2 other tests fail
   [206]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg1-17/igt@perf_pmu@semaphore-busy@vcs1.html
   [207]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-16/igt@perf_pmu@semaphore-busy@vcs1.html

  * igt@prime_vgem@basic-gtt:
    - shard-dg2:          NOTRUN -> [SKIP][208] ([i915#3708] / [i915#4077]) +1 other test skip
   [208]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@prime_vgem@basic-gtt.html

  * igt@prime_vgem@fence-flip-hang:
    - shard-dg2:          NOTRUN -> [SKIP][209] ([i915#3708])
   [209]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-1/igt@prime_vgem@fence-flip-hang.html

  * igt@v3d/v3d_submit_cl@bad-multisync-out-sync:
    - shard-tglu:         NOTRUN -> [SKIP][210] ([fdo#109315] / [i915#2575])
   [210]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-7/igt@v3d/v3d_submit_cl@bad-multisync-out-sync.html

  * igt@v3d/v3d_submit_cl@bad-perfmon:
    - shard-dg2:          NOTRUN -> [SKIP][211] ([i915#2575]) +10 other tests skip
   [211]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-3/igt@v3d/v3d_submit_cl@bad-perfmon.html

  * igt@v3d/v3d_submit_cl@multi-and-single-sync:
    - shard-mtlp:         NOTRUN -> [SKIP][212] ([i915#2575])
   [212]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-4/igt@v3d/v3d_submit_cl@multi-and-single-sync.html

  * igt@v3d/v3d_submit_csd@bad-multisync-extension:
    - shard-rkl:          NOTRUN -> [SKIP][213] ([fdo#109315]) +2 other tests skip
   [213]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@v3d/v3d_submit_csd@bad-multisync-extension.html
    - shard-dg1:          NOTRUN -> [SKIP][214] ([i915#2575]) +2 other tests skip
   [214]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-15/igt@v3d/v3d_submit_csd@bad-multisync-extension.html

  * igt@v3d/v3d_submit_csd@multiple-job-submission:
    - shard-glk:          NOTRUN -> [SKIP][215] ([fdo#109271]) +44 other tests skip
   [215]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-glk2/igt@v3d/v3d_submit_csd@multiple-job-submission.html

  * igt@vc4/vc4_label_bo@set-kernel-name:
    - shard-dg2:          NOTRUN -> [SKIP][216] ([i915#7711]) +9 other tests skip
   [216]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@vc4/vc4_label_bo@set-kernel-name.html

  * igt@vc4/vc4_lookup_fail@bad-color-write:
    - shard-rkl:          NOTRUN -> [SKIP][217] ([i915#7711]) +1 other test skip
   [217]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-2/igt@vc4/vc4_lookup_fail@bad-color-write.html
    - shard-dg1:          NOTRUN -> [SKIP][218] ([i915#7711]) +1 other test skip
   [218]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-12/igt@vc4/vc4_lookup_fail@bad-color-write.html

  * igt@vc4/vc4_wait_bo@used-bo-0ns:
    - shard-mtlp:         NOTRUN -> [SKIP][219] ([i915#7711]) +1 other test skip
   [219]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-5/igt@vc4/vc4_wait_bo@used-bo-0ns.html

  
#### Possible fixes ####

  * igt@gem_ctx_persistence@engines-hang@ccs0:
    - shard-mtlp:         [ABORT][220] ([i915#9414]) -> [PASS][221] +1 other test pass
   [220]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-2/igt@gem_ctx_persistence@engines-hang@ccs0.html
   [221]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-5/igt@gem_ctx_persistence@engines-hang@ccs0.html

  * igt@gem_ctx_persistence@legacy-engines-hostile@vebox:
    - shard-mtlp:         [FAIL][222] ([i915#2410]) -> [PASS][223] +2 other tests pass
   [222]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-1/igt@gem_ctx_persistence@legacy-engines-hostile@vebox.html
   [223]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-6/igt@gem_ctx_persistence@legacy-engines-hostile@vebox.html

  * igt@gem_exec_fair@basic-pace-share@rcs0:
    - shard-rkl:          [FAIL][224] ([i915#2842]) -> [PASS][225]
   [224]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-rkl-6/igt@gem_exec_fair@basic-pace-share@rcs0.html
   [225]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@gem_exec_fair@basic-pace-share@rcs0.html
    - shard-tglu:         [FAIL][226] ([i915#2842]) -> [PASS][227]
   [226]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-tglu-2/igt@gem_exec_fair@basic-pace-share@rcs0.html
   [227]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-10/igt@gem_exec_fair@basic-pace-share@rcs0.html

  * igt@gem_exec_schedule@noreorder-priority@rcs0:
    - shard-mtlp:         [DMESG-WARN][228] ([i915#8962]) -> [PASS][229] +1 other test pass
   [228]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-4/igt@gem_exec_schedule@noreorder-priority@rcs0.html
   [229]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-3/igt@gem_exec_schedule@noreorder-priority@rcs0.html

  * igt@gem_exec_suspend@basic-s4-devices@smem:
    - shard-tglu:         [ABORT][230] ([i915#7975] / [i915#8213]) -> [PASS][231]
   [230]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-tglu-10/igt@gem_exec_suspend@basic-s4-devices@smem.html
   [231]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-2/igt@gem_exec_suspend@basic-s4-devices@smem.html

  * igt@gem_lmem_swapping@smem-oom@lmem0:
    - shard-dg2:          [TIMEOUT][232] ([i915#5493]) -> [PASS][233]
   [232]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-2/igt@gem_lmem_swapping@smem-oom@lmem0.html
   [233]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@gem_lmem_swapping@smem-oom@lmem0.html

  * igt@gem_spin_batch@user-each:
    - shard-dg2:          [FAIL][234] -> [PASS][235]
   [234]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-2/igt@gem_spin_batch@user-each.html
   [235]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@gem_spin_batch@user-each.html

  * igt@i915_hangman@engine-engine-hang@vcs0:
    - shard-mtlp:         [FAIL][236] ([i915#7069]) -> [PASS][237] +1 other test pass
   [236]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-5/igt@i915_hangman@engine-engine-hang@vcs0.html
   [237]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-1/igt@i915_hangman@engine-engine-hang@vcs0.html

  * igt@i915_pm_rpm@dpms-mode-unset-non-lpsp:
    - shard-rkl:          [SKIP][238] ([i915#1397]) -> [PASS][239] +1 other test pass
   [238]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-rkl-7/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html
   [239]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-1/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html
    - shard-dg1:          [SKIP][240] ([i915#1397]) -> [PASS][241] +2 other tests pass
   [240]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg1-19/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html
   [241]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg1-17/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html

  * igt@i915_pm_rpm@system-suspend-modeset:
    - shard-dg2:          [INCOMPLETE][242] -> [PASS][243]
   [242]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-5/igt@i915_pm_rpm@system-suspend-modeset.html
   [243]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-3/igt@i915_pm_rpm@system-suspend-modeset.html

  * igt@i915_pm_rps@reset:
    - shard-snb:          [INCOMPLETE][244] ([i915#7790]) -> [PASS][245]
   [244]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-snb4/igt@i915_pm_rps@reset.html
   [245]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-snb5/igt@i915_pm_rps@reset.html

  * igt@kms_big_fb@4-tiled-64bpp-rotate-180:
    - shard-mtlp:         [FAIL][246] ([i915#3763] / [i915#5138]) -> [PASS][247]
   [246]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-mtlp-2/igt@kms_big_fb@4-tiled-64bpp-rotate-180.html
   [247]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-mtlp-2/igt@kms_big_fb@4-tiled-64bpp-rotate-180.html

  * igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip:
    - shard-tglu:         [FAIL][248] ([i915#3743]) -> [PASS][249] +1 other test pass
   [248]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-tglu-2/igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip.html
   [249]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-6/igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0-hflip-async-flip.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions:
    - shard-glk:          [FAIL][250] ([i915#2346]) -> [PASS][251] +1 other test pass
   [250]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-glk4/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
   [251]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-glk4/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
    - shard-apl:          [FAIL][252] ([i915#2346]) -> [PASS][253] +1 other test pass
   [252]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-apl1/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
   [253]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-apl2/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-plflip-blt:
    - shard-dg2:          [FAIL][254] ([i915#6880]) -> [PASS][255] +2 other tests pass
   [254]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-3/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-plflip-blt.html
   [255]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-shrfb-plflip-blt.html

  * igt@kms_universal_plane@cursor-fb-leak@pipe-a-hdmi-a-1:
    - shard-tglu:         [FAIL][256] ([i915#9196]) -> [PASS][257] +1 other test pass
   [256]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-tglu-5/igt@kms_universal_plane@cursor-fb-leak@pipe-a-hdmi-a-1.html
   [257]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-tglu-4/igt@kms_universal_plane@cursor-fb-leak@pipe-a-hdmi-a-1.html

  * igt@kms_vblank@pipe-a-query-forked-busy-hang:
    - shard-dg2:          [TIMEOUT][258] -> [PASS][259] +2 other tests pass
   [258]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-1/igt@kms_vblank@pipe-a-query-forked-busy-hang.html
   [259]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-2/igt@kms_vblank@pipe-a-query-forked-busy-hang.html

  * igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend:
    - shard-apl:          [INCOMPLETE][260] ([i915#180] / [i915#9392]) -> [PASS][261]
   [260]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-apl3/igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend.html
   [261]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-apl3/igt@kms_vblank@pipe-a-ts-continuation-dpms-suspend.html

  
#### Warnings ####

  * igt@kms_big_fb@yf-tiled-addfb:
    - shard-dg2:          [TIMEOUT][262] -> [SKIP][263] ([i915#5190])
   [262]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-1/igt@kms_big_fb@yf-tiled-addfb.html
   [263]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-5/igt@kms_big_fb@yf-tiled-addfb.html

  * igt@kms_force_connector_basic@force-load-detect:
    - shard-rkl:          [SKIP][264] ([fdo#109285] / [i915#4098]) -> [SKIP][265] ([fdo#109285])
   [264]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-rkl-2/igt@kms_force_connector_basic@force-load-detect.html
   [265]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-rkl-7/igt@kms_force_connector_basic@force-load-detect.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-mmap-gtt:
    - shard-dg2:          [TIMEOUT][266] -> [SKIP][267] ([i915#8708])
   [266]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13736/shard-dg2-1/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-mmap-gtt.html
   [267]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/shard-dg2-11/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-mmap-gtt.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#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
  [fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
  [fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
  [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
  [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
  [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
  [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
  [fdo#111767]: https://bugs.freedesktop.org/show_bug.cgi?id=111767
  [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099
  [i915#1339]: https://gitlab.freedesktop.org/drm/intel/issues/1339
  [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
  [i915#1769]: https://gitlab.freedesktop.org/drm/intel/issues/1769
  [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
  [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
  [i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
  [i915#1937]: https://gitlab.freedesktop.org/drm/intel/issues/1937
  [i915#2017]: https://gitlab.freedesktop.org/drm/intel/issues/2017
  [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
  [i915#2410]: https://gitlab.freedesktop.org/drm/intel/issues/2410
  [i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
  [i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
  [i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575
  [i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
  [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#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
  [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#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
  [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
  [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
  [i915#3469]: https://gitlab.freedesktop.org/drm/intel/issues/3469
  [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#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#3743]: https://gitlab.freedesktop.org/drm/intel/issues/3743
  [i915#3763]: https://gitlab.freedesktop.org/drm/intel/issues/3763
  [i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840
  [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
  [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#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
  [i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213
  [i915#4235]: https://gitlab.freedesktop.org/drm/intel/issues/4235
  [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
  [i915#4391]: https://gitlab.freedesktop.org/drm/intel/issues/4391
  [i915#4423]: https://gitlab.freedesktop.org/drm/intel/issues/4423
  [i915#4537]: https://gitlab.freedesktop.org/drm/intel/issues/4537
  [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
  [i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
  [i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
  [i915#4880]: https://gitlab.freedesktop.org/drm/intel/issues/4880
  [i915#4881]: https://gitlab.freedesktop.org/drm/intel/issues/4881
  [i915#5138]: https://gitlab.freedesktop.org/drm/intel/issues/5138
  [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#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
  [i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354
  [i915#5493]: https://gitlab.freedesktop.org/drm/intel/issues/5493
  [i915#5608]: https://gitlab.freedesktop.org/drm/intel/issues/5608
  [i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
  [i915#5793]: https://gitlab.freedesktop.org/drm/intel/issues/5793
  [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
  [i915#6118]: https://gitlab.freedesktop.org/drm/intel/issues/6118
  [i915#6227]: https://gitlab.freedesktop.org/drm/intel/issues/6227
  [i915#6228]: https://gitlab.freedesktop.org/drm/intel/issues/6228
  [i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268
  [i915#6334]: https://gitlab.freedesktop.org/drm/intel/issues/6334
  [i915#6335]: https://gitlab.freedesktop.org/drm/intel/issues/6335
  [i915#6524]: https://gitlab.freedesktop.org/drm/intel/issues/6524
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#6768]: https://gitlab.freedesktop.org/drm/intel/issues/6768
  [i915#6786]: https://gitlab.freedesktop.org/drm/intel/issues/6786
  [i915#6880]: https://gitlab.freedesktop.org/drm/intel/issues/6880
  [i915#6953]: https://gitlab.freedesktop.org/drm/intel/issues/6953
  [i915#7069]: https://gitlab.freedesktop.org/drm/intel/issues/7069
  [i915#7091]: https://gitlab.freedesktop.org/drm/intel/issues/7091
  [i915#7118]: https://gitlab.freedesktop.org/drm/intel/issues/7118
  [i915#7173]: https://gitlab.freedesktop.org/drm/intel/issues/7173
  [i915#7213]: https://gitlab.freedesktop.org/drm/intel/issues/7213
  [i915#7297]: https://gitlab.freedesktop.org/drm/intel/issues/7297
  [i915#7697]: https://gitlab.freedesktop.org/drm/intel/issues/7697
  [i915#7701]: https://gitlab.freedesktop.org/drm/intel/issues/7701
  [i915#7707]: https://gitlab.freedesktop.org/drm/intel/issues/7707
  [i915#7711]: https://gitlab.freedesktop.org/drm/intel/issues/7711
  [i915#7790]: https://gitlab.freedesktop.org/drm/intel/issues/7790
  [i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
  [i915#7975]: https://gitlab.freedesktop.org/drm/intel/issues/7975
  [i915#8213]: https://gitlab.freedesktop.org/drm/intel/issues/8213
  [i915#8228]: https://gitlab.freedesktop.org/drm/intel/issues/8228
  [i915#8247]: https://gitlab.freedesktop.org/drm/intel/issues/8247
  [i915#8289]: https://gitlab.freedesktop.org/drm/intel/issues/8289
  [i915#8411]: https://gitlab.freedesktop.org/drm/intel/issues/8411
  [i915#8414]: https://gitlab.freedesktop.org/drm/intel/issues/8414
  [i915#8428]: https://gitlab.freedesktop.org/drm/intel/issues/8428
  [i915#8456]: https://gitlab.freedesktop.org/drm/intel/issues/8456
  [i915#8502]: https://gitlab.freedesktop.org/drm/intel/issues/8502
  [i915#8617]: https://gitlab.freedesktop.org/drm/intel/issues/8617
  [i915#8708]: https://gitlab.freedesktop.org/drm/intel/issues/8708
  [i915#8709]: https://gitlab.freedesktop.org/drm/intel/issues/8709
  [i915#8797]: https://gitlab.freedesktop.org/drm/intel/issues/8797
  [i915#8809]: https://gitlab.freedesktop.org/drm/intel/issues/8809
  [i915#8810]: https://gitlab.freedesktop.org/drm/intel/issues/8810
  [i915#8841]: https://gitlab.freedesktop.org/drm/intel/issues/8841
  [i915#8850]: https://gitlab.freedesktop.org/drm/intel/issues/8850
  [i915#8875]: https://gitlab.freedesktop.org/drm/intel/issues/8875
  [i915#8925]: https://gitlab.freedesktop.org/drm/intel/issues/8925
  [i915#8962]: https://gitlab.freedesktop.org/drm/intel/issues/8962
  [i915#9196]: https://gitlab.freedesktop.org/drm/intel/issues/9196
  [i915#9262]: https://gitlab.freedesktop.org/drm/intel/issues/9262
  [i915#9327]: https://gitlab.freedesktop.org/drm/intel/issues/9327
  [i915#9364]: https://gitlab.freedesktop.org/drm/intel/issues/9364
  [i915#9392]: https://gitlab.freedesktop.org/drm/intel/issues/9392
  [i915#9414]: https://gitlab.freedesktop.org/drm/intel/issues/9414
  [i915#9423]: https://gitlab.freedesktop.org/drm/intel/issues/9423
  [i915#9475]: https://gitlab.freedesktop.org/drm/intel/issues/9475
  [i915#9517]: https://gitlab.freedesktop.org/drm/intel/issues/9517


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7527 -> IGTPW_9966

  CI-20190529: 20190529
  CI_DRM_13736: 251e78c6b6f76712187d25034bc2ebed0eb33654 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_9966: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9966/index.html
  IGT_7527: 46f98a3041f73a1d6ee7ec3ace6eba79b15369c4 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

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

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

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

* Re: [igt-dev] [PATCH v4 1/2] tests/kms_lease: Terminate lease fd before subtests and remove lease_t from all sub-tests
  2023-10-11  3:37   ` Karthik B S
@ 2023-10-16  5:23     ` Thasleem, Mohammed
  0 siblings, 0 replies; 10+ messages in thread
From: Thasleem, Mohammed @ 2023-10-16  5:23 UTC (permalink / raw)
  To: B S, Karthik, igt-dev



-----Original Message-----
From: B S, Karthik <karthik.b.s@intel.com> 
Sent: Wednesday, October 11, 2023 9:08 AM
To: Thasleem, Mohammed <mohammed.thasleem@intel.com>; igt-dev@lists.freedesktop.org
Subject: Re: [PATCH v4 1/2] tests/kms_lease: Terminate lease fd before subtests and remove lease_t from all sub-tests

Hi,

On 10/11/2023 12:57 AM, Mohammed Thasleem wrote:
> Failures happen at drmModeSetCursor and prepare_crtc_master or 
> prepare_crtc_lease which exit tests without termination of lease fd 
> which resulting in resource busy for sub-sequence execution, when new 
> lessor request for lease.
>
> Terminate the lease fd when any assert happens without termination of 
> lease fd and on any drmModeSetCrtc or drmModeGetCrtc exit.
> Terminate lease fd on every display dependent subtests execution.
>
> Remove lease_t from all sub-tests and move it to data_t and send data 
> struct instead lease struct and avoid duplicating
%s/instead lease struct/instaed of lease struct/
> of prepare_crtc in to master crtc and lease crtc.

'in to' -> 'into'.

Also better to have this "avoid duplicating of prepare_crtc in to master crtc and lease crtc." as a separate sentence IMHO.
-->Sure will address in next version
>
> v2: -Separated prepare crtc for master and lease.
>      -Replace close with terminate_lease.
>      -Removed lease_t from all sub-tests. (Ankit)
> v3: Updated commit message. (Ankit)
> v4: Avoid duplicating prepare_crtc. (Ankit)
> v5: Send fd to close instead structure address.
> v6: -Use lease fd instead mcl.fd for display dependent tests.
>      -Remove terminate_lease and close fd from display dependent subtests.
>
> Signed-off-by: Mohammed Thasleem <mohammed.thasleem@intel.com>
> ---
>   tests/kms_lease.c | 168 +++++++++++++++++++++-------------------------
>   1 file changed, 76 insertions(+), 92 deletions(-)
>
> diff --git a/tests/kms_lease.c b/tests/kms_lease.c index 
> 343cdb812..44aa51362 100644
> --- a/tests/kms_lease.c
> +++ b/tests/kms_lease.c
> @@ -211,6 +211,7 @@ typedef struct {
>   } lease_t;
>   
>   typedef struct {
> +	lease_t lease;
>   	lease_t master;
>   	enum pipe pipe;
>   	uint32_t crtc_id;
> @@ -226,9 +227,10 @@ static igt_output_t *connector_id_to_output(igt_display_t *display, uint32_t con
>   	return igt_output_from_connector(display, &connector);
>   }
>   
> -static int prepare_crtc(lease_t *lease, data_t *data)
> +static int prepare_crtc(data_t *data, bool is_master)
>   {
>   	drmModeModeInfo *mode;
> +	lease_t *lease = is_master ? &data->master : &data->lease;
>   	igt_display_t *display = &lease->display;
>   	igt_output_t *output = connector_id_to_output(display, data->connector_id);
>   	enum pipe pipe = display->pipes[data->pipe].pipe; @@ -314,7 +316,7 
> @@ static int get_lease(int fd, struct drm_mode_get_lease *mgl)
>   	return err;
>   }
>   
> -static int make_lease(data_t *data, lease_t *lease)
> +static int make_lease(data_t *data)
>   {
>   	uint32_t object_ids[3];
>   	struct drm_mode_create_lease mcl;
> @@ -334,14 +336,14 @@ static int make_lease(data_t *data, lease_t *lease)
>   	if (ret)
>   		return ret;
>   
> -	lease->fd = mcl.fd;
> -	lease->lessee_id = mcl.lessee_id;
> +	data->lease.fd = mcl.fd;
> +	data->lease.lessee_id = mcl.lessee_id;
>   	return 0;
>   }
>   
> -static void terminate_lease(lease_t *lease)
> +static void terminate_lease(int lease_fd)
>   {
> -	close(lease->fd);
> +	close(lease_fd);
>   }
>   
>   static int paint_fb(int drm_fd, struct igt_fb *fb, const char 
> *test_name, @@ -370,24 +372,21 @@ static void simple_lease(data_t *data)
>   {
>   	enum pipe pipe = data->pipe;
>   
> -	lease_t lease;
> -
>   	/* Create a valid lease */
> -	igt_assert_eq(make_lease(data, &lease), 0);
> +	igt_assert_eq(make_lease(data), 0);
>   
> -	igt_display_require(&lease.display, lease.fd);
> +	igt_display_require(&data->lease.display, data->lease.fd);
>   
>   	/* Set a mode on the leased output */
> -	igt_assert_eq(0, prepare_crtc(&lease, data));
> +	igt_assert_eq(0, prepare_crtc(data, false));
>   
>   	/* Paint something attractive */
> -	paint_fb(lease.fd, &lease.primary_fb, "simple-lease",
> -		 lease.mode->name, igt_output_name(lease.output), kmstest_pipe_name(pipe));
> +	paint_fb(data->lease.fd, &data->lease.primary_fb, "simple-lease",
> +		 data->lease.mode->name, igt_output_name(data->lease.output),
> +		 kmstest_pipe_name(pipe));
>   	igt_debug_wait_for_keypress("lease");
> -	cleanup_crtc(&lease,
> -		     connector_id_to_output(&lease.display, data->connector_id));
> -
> -	terminate_lease(&lease);
> +	cleanup_crtc(&data->lease,
> +		     connector_id_to_output(&data->lease.display, 
> +data->connector_id));
>   }
>   
>   static void empty_lease(data_t *data) @@ -395,8 +394,7 @@ static 
> void empty_lease(data_t *data)
>   	struct drm_mode_create_lease mcl = {0};
>   
>   	igt_assert_eq(create_lease(data->master.fd, &mcl), 0);
> -
> -	close(mcl.fd);
> +	data->lease.fd = mcl.fd;
>   }
>   
>   static void page_flip_implicit_plane(data_t *data) @@ -429,10 
> +427,11 @@ static void page_flip_implicit_plane(data_t *data)
>   
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
>   	do_or_die(create_lease(data->master.fd, &mcl));
> +	data->lease.fd = mcl.fd;
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 
> 1);
>   
>   	/* Set a mode on the leased output */
> -	igt_assert_eq(0, prepare_crtc(&data->master, data));
> +	igt_assert_eq(0, prepare_crtc(data, true));
>   
>   	/* sanity check */
>   	do_or_die(drmModePageFlip(data->master.fd, data->crtc_id, @@ 
> -444,22 +443,22 @@ static void page_flip_implicit_plane(data_t *data)
>   	igt_wait_for_vblank(data->master.fd,
>   			display->pipes[pipe].crtc_offset);
>   
> -	do_or_die(drmModePageFlip(mcl.fd, data->crtc_id,
> +	do_or_die(drmModePageFlip(data->lease.fd, data->crtc_id,
>   			      data->master.primary_fb.fb_id,
>   			      0, NULL));
> -	close(mcl.fd);
> +	close(data->lease.fd);
>   
>   	object_ids[mcl.object_count++] = wrong_plane_id;
>   	do_or_die(create_lease(data->master.fd, &mcl));
> +	data->lease.fd = mcl.fd;
>   
>   	igt_wait_for_vblank(data->master.fd,
>   			display->pipes[pipe].crtc_offset);
>   
> -	igt_assert_eq(drmModePageFlip(mcl.fd, data->crtc_id,
> +	igt_assert_eq(drmModePageFlip(data->lease.fd, data->crtc_id,
>   				      data->master.primary_fb.fb_id,
>   				      0, NULL),
>   		      -EACCES);
> -	close(mcl.fd);
>   
>   	cleanup_crtc(&data->master,
>   		     connector_id_to_output(&data->master.display, 
> data->connector_id)); @@ -498,6 +497,7 @@ static void 
> setcrtc_implicit_plane(data_t *data)
>   
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
>   	do_or_die(create_lease(data->master.fd, &mcl));
> +	data->lease.fd = mcl.fd;
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 
> 1);
>   
>   	/*
> @@ -505,31 +505,31 @@ static void setcrtc_implicit_plane(data_t *data)
>   	 * then the client cap for aspect-ratio bits must be set.
>   	 */
>   	if (mode->flags & DRM_MODE_FLAG_PIC_AR_MASK) {
> -		drmSetClientCap(mcl.fd, DRM_CLIENT_CAP_ASPECT_RATIO, 1);
> +		drmSetClientCap(data->lease.fd, DRM_CLIENT_CAP_ASPECT_RATIO, 1);
>   	}
>   
>   	/* Set a mode on the leased output */
> -	igt_assert_eq(0, prepare_crtc(&data->master, data));
> +	igt_assert_eq(0, prepare_crtc(data, true));
>   
>   	/* sanity check */
>   	ret = drmModeSetCrtc(data->master.fd, data->crtc_id, -1,
>   			     0, 0, object_ids, 1, mode);
> -	ret_mcl = drmModeSetCrtc(mcl.fd, data->crtc_id, -1,
> +	ret_mcl = drmModeSetCrtc(data->lease.fd, data->crtc_id, -1,
>   				 0, 0, object_ids, 1, mode);
> -	close(mcl.fd);
> +	close(data->lease.fd);
>   	igt_assert_eq(ret, 0);
>   	igt_assert_eq(ret_mcl, 0);
>   
>   	object_ids[mcl.object_count++] = wrong_plane_id;
>   	do_or_die(create_lease(data->master.fd, &mcl));
> +	data->lease.fd = mcl.fd;
>   
> -	igt_assert_eq(drmModeSetCrtc(mcl.fd, data->crtc_id, -1,
> +	igt_assert_eq(drmModeSetCrtc(data->lease.fd, data->crtc_id, -1,
>   				     0, 0, object_ids, 1, mode),
>   		      -EACCES);
>   	/* make sure we are allowed to turn the CRTC off */
> -	do_or_die(drmModeSetCrtc(mcl.fd, data->crtc_id,
> +	do_or_die(drmModeSetCrtc(data->lease.fd, data->crtc_id,
>   				 0, 0, 0, NULL, 0, NULL));
> -	close(mcl.fd);
>   
>   	cleanup_crtc(&data->master,
>   		     connector_id_to_output(&data->master.display, 
> data->connector_id)); @@ -549,23 +549,24 @@ static void 
> cursor_implicit_plane(data_t *data)
>   
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 0);
>   	do_or_die(create_lease(data->master.fd, &mcl));
> +	data->lease.fd = mcl.fd;
>   	drmSetClientCap(data->master.fd, DRM_CLIENT_CAP_UNIVERSAL_PLANES, 
> 1);
>   
>   	/* Set a mode on the leased output */
> -	igt_assert_eq(0, prepare_crtc(&data->master, data));
> +	igt_assert_eq(0, prepare_crtc(data, true));
>   
>   	/* sanity check */
>   	do_or_die(drmModeSetCursor(data->master.fd, data->crtc_id, 0, 0, 0));
> -	do_or_die(drmModeSetCursor(mcl.fd, data->crtc_id, 0, 0, 0));
> -	close(mcl.fd);
> +	do_or_die(drmModeSetCursor(data->lease.fd, data->crtc_id, 0, 0, 0));
> +	close(data->lease.fd);
>   
>   	/* primary plane is never the cursor */
>   	object_ids[mcl.object_count++] = data->plane_id;
>   	do_or_die(create_lease(data->master.fd, &mcl));
> +	data->lease.fd = mcl.fd;
>   
> -	igt_assert_eq(drmModeSetCursor(mcl.fd, data->crtc_id, 0, 0, 0),
> +	igt_assert_eq(drmModeSetCursor(data->lease.fd, data->crtc_id, 0, 0, 
> +0),
>   		      -EACCES);
> -	close(mcl.fd);
>   
>   	cleanup_crtc(&data->master,
>   		     connector_id_to_output(&data->master.display, 
> data->connector_id)); @@ -624,7 +625,8 @@ static void atomic_implicit_crtc(data_t *data)
>   	igt_assert(crtc_id_prop);
>   
>   	do_or_die(create_lease(data->master.fd, &mcl));
> -	do_or_die(drmSetClientCap(mcl.fd, DRM_CLIENT_CAP_ATOMIC, 1));
> +	data->lease.fd = mcl.fd;
> +	do_or_die(drmSetClientCap(data->lease.fd, DRM_CLIENT_CAP_ATOMIC, 
> +1));
>   
>   	/* check CRTC_ID property on the plane */
>   	req = drmModeAtomicAlloc();
> @@ -637,7 +639,7 @@ static void atomic_implicit_crtc(data_t *data)
>   	ret = drmModeAtomicCommit(data->master.fd, req, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
>   	igt_assert(ret == 0 || ret == -EINVAL);
>   
> -	ret = drmModeAtomicCommit(mcl.fd, req, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
> +	ret = drmModeAtomicCommit(data->lease.fd, req, 
> +DRM_MODE_ATOMIC_TEST_ONLY, NULL);
>   	igt_assert(ret == -EACCES);
>   	drmModeAtomicFree(req);
>   
> @@ -652,29 +654,26 @@ static void atomic_implicit_crtc(data_t *data)
>   	ret = drmModeAtomicCommit(data->master.fd, req, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
>   	igt_assert(ret == 0 || ret == -EINVAL);
>   
> -	ret = drmModeAtomicCommit(mcl.fd, req, DRM_MODE_ATOMIC_TEST_ONLY, NULL);
> +	ret = drmModeAtomicCommit(data->lease.fd, req, 
> +DRM_MODE_ATOMIC_TEST_ONLY, NULL);
>   	igt_assert(ret == -EACCES);
>   	drmModeAtomicFree(req);
> -
> -	close(mcl.fd);
>   }
>   
>   /* Test listing lessees */
>   static void lessee_list(data_t *data)
>   {
> -	lease_t lease;
>   	struct drm_mode_list_lessees mll;
>   	uint32_t lessees[1];
>   
>   	mll.pad = 0;
>   
>   	/* Create a valid lease */
> -	igt_assert_eq(make_lease(data, &lease), 0);
> +	igt_assert_eq(make_lease(data), 0);
>   
>   	/* check for nested leases */
>   	mll.count_lessees = 0;
>   	mll.lessees_ptr = 0;
> -	igt_assert_eq(list_lessees(lease.fd, &mll), 0);
> +	igt_assert_eq(list_lessees(data->lease.fd, &mll), 0);
>   	igt_assert_eq(mll.count_lessees, 0);
>   
>   	/* Get the number of lessees */
> @@ -696,14 +695,14 @@ static void lessee_list(data_t *data)
>   	igt_assert_eq(mll.count_lessees, 1);
>   
>   	/* Make sure the listed lease is the same as the one we created */
> -	igt_assert_eq(lessees[0], lease.lessee_id);
> +	igt_assert_eq(lessees[0], data->lease.lessee_id);
>   
>   	/* invalid pad */
>   	mll.pad = -1;
>   	igt_assert_eq(list_lessees(data->master.fd, &mll), -EINVAL);
>   	mll.pad = 0;
>   
> -	terminate_lease(&lease);
> +	terminate_lease(data->lease.fd);
Any reason why we still need this?
-->below code check for lease is gone or not , if we remove this it will fail the test. We need this.
>   
>   	/* Make sure the lease is gone */
>   	igt_assert_eq(list_lessees(data->master.fd, &mll), 0); @@ -713,7 
> +712,6 @@ static void lessee_list(data_t *data)
>   /* Test getting the contents of a lease */
>   static void lease_get(data_t *data)
>   {
> -	lease_t lease;
>   	struct drm_mode_get_lease mgl;
>   	int num_leased_obj = 3;
>   	uint32_t objects[num_leased_obj];
> @@ -722,12 +720,12 @@ static void lease_get(data_t *data)
>   	mgl.pad = 0;
>   
>   	/* Create a valid lease */
> -	igt_assert_eq(make_lease(data, &lease), 0);
> +	igt_assert_eq(make_lease(data), 0);
>   
>   	/* Get the number of objects */
>   	mgl.count_objects = 0;
>   	mgl.objects_ptr = 0;
> -	igt_assert_eq(get_lease(lease.fd, &mgl), 0);
> +	igt_assert_eq(get_lease(data->lease.fd, &mgl), 0);
>   
>   	/* Make sure it's 2 */
>   	igt_assert_eq(mgl.count_objects, num_leased_obj); @@ -735,7 +733,7 
> @@ static void lease_get(data_t *data)
>   	/* Get the objects */
>   	mgl.objects_ptr = (uint64_t) (uintptr_t) objects;
>   
> -	igt_assert_eq(get_lease(lease.fd, &mgl), 0);
> +	igt_assert_eq(get_lease(data->lease.fd, &mgl), 0);
>   
>   	/* Make sure it's 2 */
>   	igt_assert_eq(mgl.count_objects, num_leased_obj); @@ -761,28 
> +759,25 @@ static void lease_get(data_t *data)
>   
>   	/* invalid pad */
>   	mgl.pad = -1;
> -	igt_assert_eq(get_lease(lease.fd, &mgl), -EINVAL);
> +	igt_assert_eq(get_lease(data->lease.fd, &mgl), -EINVAL);
>   	mgl.pad = 0;
>   
>   	/* invalid pointer */
>   	mgl.objects_ptr = 0;
> -	igt_assert_eq(get_lease(lease.fd, &mgl), -EFAULT);
> -
> -	terminate_lease(&lease);
> +	igt_assert_eq(get_lease(data->lease.fd, &mgl), -EFAULT);
>   }
>   
>   static void lease_unleased_crtc(data_t *data)
>   {
> -	lease_t lease;
>   	enum pipe p;
>   	uint32_t bad_crtc_id;
>   	drmModeCrtc *crtc;
>   	int ret;
>   
>   	/* Create a valid lease */
> -	igt_assert_eq(make_lease(data, &lease), 0);
> +	igt_assert_eq(make_lease(data), 0);
>   
> -	igt_display_require(&lease.display, lease.fd);
> +	igt_display_require(&data->lease.display, data->lease.fd);
>   
>   	/* Find another CRTC that we don't control */
>   	bad_crtc_id = 0;
> @@ -798,36 +793,33 @@ static void lease_unleased_crtc(data_t *data)
>   	igt_skip_on(bad_crtc_id == 0);
>   
>   	/* sanity check */
> -	ret = drmModeSetCrtc(lease.fd, data->crtc_id, 0, 0, 0, NULL, 0, NULL);
> +	ret = drmModeSetCrtc(data->lease.fd, data->crtc_id, 0, 0, 0, NULL, 
> +0, NULL);
>   	igt_assert_eq(ret, 0);
> -	crtc = drmModeGetCrtc(lease.fd, data->crtc_id);
> +	crtc = drmModeGetCrtc(data->lease.fd, data->crtc_id);
>   	igt_assert(crtc);
>   	drmModeFreeCrtc(crtc);
>   
>   	/* Attempt to use the unleased crtc id. We need raw ioctl to bypass the
>   	 * igt_kms helpers.
>   	 */
> -	ret = drmModeSetCrtc(lease.fd, bad_crtc_id, 0, 0, 0, NULL, 0, NULL);
> +	ret = drmModeSetCrtc(data->lease.fd, bad_crtc_id, 0, 0, 0, NULL, 0, 
> +NULL);
>   	igt_assert_eq(ret, -ENOENT);
> -	crtc = drmModeGetCrtc(lease.fd, bad_crtc_id);
> +	crtc = drmModeGetCrtc(data->lease.fd, bad_crtc_id);
>   	igt_assert(!crtc);
>   	igt_assert_eq(errno, ENOENT);
>   	drmModeFreeCrtc(crtc);
> -
> -	terminate_lease(&lease);
>   }
>   
>   static void lease_unleased_connector(data_t *data)
>   {
> -	lease_t lease;
>   	int o;
>   	uint32_t bad_connector_id;
>   	drmModeConnector *c;
>   
>   	/* Create a valid lease */
> -	igt_assert_eq(make_lease(data, &lease), 0);
> +	igt_assert_eq(make_lease(data), 0);
>   
> -	igt_display_require(&lease.display, lease.fd);
> +	igt_display_require(&data->lease.display, data->lease.fd);
>   
>   	/* Find another connector that we don't control */
>   	bad_connector_id = 0;
> @@ -840,72 +832,66 @@ static void lease_unleased_connector(data_t *data)
>   	igt_skip_on(bad_connector_id == 0);
>   
>   	/* sanity check */
> -	c = drmModeGetConnector(lease.fd, data->connector_id);
> +	c = drmModeGetConnector(data->lease.fd, data->connector_id);
>   	igt_assert(c);
>   
>   	/* Attempt to use the unleased connector id. Note that the
>   	 */
> -	c = drmModeGetConnector(lease.fd, bad_connector_id);
> +	c = drmModeGetConnector(data->lease.fd, bad_connector_id);
>   	igt_assert(!c);
>   	igt_assert_eq(errno, ENOENT);
> -
> -	terminate_lease(&lease);
>   }
>   
>   /* Test revocation of lease */
>   static void lease_revoke(data_t *data)
>   {
> -	lease_t lease;
>   	struct drm_mode_revoke_lease mrl;
>   	int ret;
>   
>   	/* Create a valid lease */
> -	igt_assert_eq(make_lease(data, &lease), 0);
> +	igt_assert_eq(make_lease(data), 0);
>   
> -	igt_display_require(&lease.display, lease.fd);
> +	igt_display_require(&data->lease.display, data->lease.fd);
>   
>   	/* try to revoke an invalid lease */
>   	mrl.lessee_id = 0;
>   	igt_assert_eq(revoke_lease(data->master.fd, &mrl), -ENOENT);
>   
>   	/* try to revoke with the wrong fd */
> -	mrl.lessee_id = lease.lessee_id;
> -	igt_assert_eq(revoke_lease(lease.fd, &mrl), -EACCES);
> +	mrl.lessee_id = data->lease.lessee_id;
> +	igt_assert_eq(revoke_lease(data->lease.fd, &mrl), -EACCES);
>   
>   	/* Revoke the lease using the master fd */
> -	mrl.lessee_id = lease.lessee_id;
> +	mrl.lessee_id = data->lease.lessee_id;
>   	igt_assert_eq(revoke_lease(data->master.fd, &mrl), 0);
>   
>   	/* Try to use the leased objects */
> -	ret = prepare_crtc(&lease, data);
> +	ret = prepare_crtc(data, false);
>   
>   	/* Ensure that the expected error is returned */
>   	igt_assert_eq(ret, -ENOENT);
>   
> -	terminate_lease(&lease);
> +	terminate_lease(data->lease.fd);

Same question as above?
-->below code check for lease is gone or not , if we remove this it will fail the test. We need this.
Thanks,
Karthik.B.S
>   
>   	/* make sure the lease is gone */
> -	mrl.lessee_id = lease.lessee_id;
> +	mrl.lessee_id = data->lease.lessee_id;
>   	igt_assert_eq(revoke_lease(data->master.fd, &mrl), -ENOENT);
>   }
>   
>   /* Test leasing objects more than once */
>   static void lease_again(data_t *data)
>   {
> -	lease_t lease_a, lease_b;
>   
>   	/* Create a valid lease */
> -	igt_assert_eq(make_lease(data, &lease_a), 0);
> +	igt_assert_eq(make_lease(data), 0);
>   
>   	/* Attempt to re-lease the same objects */
> -	igt_assert_eq(make_lease(data, &lease_b), -EBUSY);
> +	igt_assert_eq(make_lease(data), -EBUSY);
>   
> -	terminate_lease(&lease_a);
> +	terminate_lease(data->lease.fd);
>   
>   	/* Now attempt to lease the same objects */
> -	igt_assert_eq(make_lease(data, &lease_b), 0);
> -
> -	terminate_lease(&lease_b);
> +	igt_assert_eq(make_lease(data), 0);
>   }
>   
>   #define assert_unleased(ret) \
> @@ -915,14 +901,13 @@ static void lease_again(data_t *data)
>   /* Test leasing an invalid connector */
>   static void lease_invalid_connector(data_t *data)
>   {
> -	lease_t lease;
>   	uint32_t save_connector_id;
>   	int ret;
>   
>   	/* Create an invalid lease */
>   	save_connector_id = data->connector_id;
>   	data->connector_id = 0xbaadf00d;
> -	ret = make_lease(data, &lease);
> +	ret = make_lease(data);
>   	data->connector_id = save_connector_id;
>   	assert_unleased(ret);
>   }
> @@ -930,28 +915,26 @@ static void lease_invalid_connector(data_t *data)
>   /* Test leasing an invalid crtc */
>   static void lease_invalid_crtc(data_t *data)
>   {
> -	lease_t lease;
>   	uint32_t save_crtc_id;
>   	int ret;
>   
>   	/* Create an invalid lease */
>   	save_crtc_id = data->crtc_id;
>   	data->crtc_id = 0xbaadf00d;
> -	ret = make_lease(data, &lease);
> +	ret = make_lease(data);
>   	data->crtc_id = save_crtc_id;
>   	assert_unleased(ret);
>   }
>   
>   static void lease_invalid_plane(data_t *data)
>   {
> -	lease_t lease;
>   	uint32_t save_plane_id;
>   	int ret;
>   
>   	/* Create an invalid lease */
>   	save_plane_id = data->plane_id;
>   	data->plane_id = 0xbaadf00d;
> -	ret = make_lease(data, &lease);
> +	ret = make_lease(data);
>   	data->plane_id = save_plane_id;
>   	assert_unleased(ret);
>   }
> @@ -1393,6 +1376,7 @@ igt_main
>   									DRM_PLANE_TYPE_PRIMARY)->drm_plane->plane_id;
>   						f->func(&data);
>   					}
> +					terminate_lease(data.lease.fd);
>   				}
>   			}
>   		}

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

end of thread, other threads:[~2023-10-16  5:23 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-10-10 19:27 [igt-dev] [PATCH v4 0/2] kms lease Mohammed Thasleem
2023-10-10 19:27 ` [igt-dev] [PATCH v4 1/2] tests/kms_lease: Terminate lease fd before subtests and remove lease_t from all sub-tests Mohammed Thasleem
2023-10-11  3:37   ` Karthik B S
2023-10-16  5:23     ` Thasleem, Mohammed
2023-10-10 19:27 ` [igt-dev] [PATCH v4 2/2] tests/kms_lease: Add wrapper to create lease and store mcl.fd Mohammed Thasleem
2023-10-11  3:22   ` Karthik B S
2023-10-10 20:57 ` [igt-dev] ✓ Fi.CI.BAT: success for kms lease (rev6) Patchwork
2023-10-10 21:07 ` [igt-dev] ✓ CI.xeBAT: " Patchwork
2023-10-11  8:37 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
2023-10-11 13:30 ` [igt-dev] ✓ Fi.CI.IGT: success " Patchwork

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.