All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [i-g-t V7 0/2] tests/kms_color: IGT test cleanup
@ 2022-06-30  8:55 Bhanuprakash Modem
  2022-06-30  8:55 ` [igt-dev] [i-g-t V7 1/2] tests/kms_color: Convert tests to dynamic Bhanuprakash Modem
                   ` (6 more replies)
  0 siblings, 7 replies; 14+ messages in thread
From: Bhanuprakash Modem @ 2022-06-30  8:55 UTC (permalink / raw)
  To: igt-dev, swati2.sharma, kamil.konieczny

Convert all possible subtests to dynamic and sanitize the system
state before starting/exiting the subtest.

Bhanuprakash Modem (2):
  tests/kms_color: Convert tests to dynamic
  tests/kms_color: Test Cleanup

 tests/kms_color.c        | 622 +++++++++++++++++++++------------------
 tests/kms_color_helper.h |   2 +
 2 files changed, 341 insertions(+), 283 deletions(-)

--
2.35.1

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

* [igt-dev] [i-g-t V7 1/2] tests/kms_color: Convert tests to dynamic
  2022-06-30  8:55 [igt-dev] [i-g-t V7 0/2] tests/kms_color: IGT test cleanup Bhanuprakash Modem
@ 2022-06-30  8:55 ` Bhanuprakash Modem
  2022-07-04 16:39   ` Kamil Konieczny
  2022-06-30  8:55 ` [igt-dev] [i-g-t V7 2/2] tests/kms_color: Test Cleanup Bhanuprakash Modem
                   ` (5 subsequent siblings)
  6 siblings, 1 reply; 14+ messages in thread
From: Bhanuprakash Modem @ 2022-06-30  8:55 UTC (permalink / raw)
  To: igt-dev, swati2.sharma, kamil.konieczny

Convert the existing subtests to dynamic subtests at pipe level.

V2:
* Fix nested igt_fixture in igt_subtest
V3:
* Fix to not dereferencing a NULL pointer
V4:
* Add output name to subtest
V5:
* Rebase
V6:
* Fix typos in test description
V7:
* Added comments back to ctm tets.

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_color.c        | 556 +++++++++++++++++++++------------------
 tests/kms_color_helper.h |   1 +
 2 files changed, 298 insertions(+), 259 deletions(-)

diff --git a/tests/kms_color.c b/tests/kms_color.c
index ba06947b..85f3b32d 100644
--- a/tests/kms_color.c
+++ b/tests/kms_color.c
@@ -203,7 +203,7 @@ static bool test_pipe_gamma(data_t *data,
  * gamma LUT and verify we have the same CRC as drawing solid color rectangles
  * with linear legacy gamma LUT.
  */
-static void test_pipe_legacy_gamma(data_t *data,
+static bool test_pipe_legacy_gamma(data_t *data,
 				   igt_plane_t *primary)
 {
 	igt_output_t *output;
@@ -220,6 +220,7 @@ static void test_pipe_legacy_gamma(data_t *data,
 	struct igt_fb fb_modeset, fb;
 	igt_crc_t crc_fullgamma, crc_fullcolors;
 	int fb_id, fb_modeset_id;
+	bool ret;
 
 	kms_crtc = drmModeGetCrtc(data->drm_fd, primary->pipe->crtc_id);
 	legacy_lut_size = kms_crtc->gamma_size;
@@ -285,7 +286,7 @@ static void test_pipe_legacy_gamma(data_t *data,
 	/* Verify that the CRC of the software computed output is
 	 * equal to the CRC of the gamma LUT transformation output.
 	 */
-	igt_assert_crc_equal(&crc_fullgamma, &crc_fullcolors);
+	ret = !igt_skip_crc_compare || igt_check_crc_equal(&crc_fullgamma, &crc_fullcolors);
 
 	/* Reset output. */
 	for (i = 1; i < legacy_lut_size; i++)
@@ -303,13 +304,15 @@ static void test_pipe_legacy_gamma(data_t *data,
 	free(red_lut);
 	free(green_lut);
 	free(blue_lut);
+
+	return ret;
 }
 
 /*
  * Verify that setting the legacy gamma LUT resets the gamma LUT set
  * through the GAMMA_LUT property.
  */
-static void test_pipe_legacy_gamma_reset(data_t *data,
+static bool test_pipe_legacy_gamma_reset(data_t *data,
 					 igt_plane_t *primary)
 {
 	const double ctm_identity[] = {
@@ -324,6 +327,7 @@ static void test_pipe_legacy_gamma_reset(data_t *data,
 	struct drm_color_lut *lut;
 	drmModePropertyBlobPtr blob;
 	igt_output_t *output;
+	bool ret = true;
 
 	igt_require(igt_pipe_obj_has_prop(primary->pipe, IGT_CRTC_GAMMA_LUT));
 
@@ -373,10 +377,12 @@ static void test_pipe_legacy_gamma_reset(data_t *data,
 				    data->gamma_lut_size));
 	lut = (struct drm_color_lut *) blob->data;
 	for (i = 0; i < data->gamma_lut_size; i++)
-		igt_assert(lut[i].red == 0 &&
+		ret &=(lut[i].red == 0 &&
 			   lut[i].green == 0 &&
 			   lut[i].blue == 0);
 	drmModeFreePropertyBlob(blob);
+	if(!ret)
+		goto end;
 
 	/* Set a gamma LUT using the legacy ioctl and verify
 	 * the content of the GAMMA_LUT property is changed
@@ -411,7 +417,7 @@ static void test_pipe_legacy_gamma_reset(data_t *data,
 				    legacy_lut_size));
 	lut = (struct drm_color_lut *) blob->data;
 	for (i = 0; i < legacy_lut_size; i++)
-		igt_assert(lut[i].red == 0xffff &&
+		ret &= (lut[i].red == 0xffff &&
 			   lut[i].green == 0xffff &&
 			   lut[i].blue == 0xffff);
 	drmModeFreePropertyBlob(blob);
@@ -421,6 +427,8 @@ static void test_pipe_legacy_gamma_reset(data_t *data,
 
 	free_lut(degamma_linear);
 	free_lut(gamma_zero);
+end:
+	return ret;
 }
 
 /*
@@ -677,130 +685,99 @@ prep_pipe(data_t *data, enum pipe p)
 	}
 }
 
-static void
-run_tests_for_pipe(data_t *data, enum pipe p)
+static void test_setup(data_t *data, enum pipe p)
 {
 	igt_pipe_t *pipe;
-	igt_plane_t *primary;
-	double delta;
-	int i;
-	color_t red_green_blue[] = {
-		{ 1.0, 0.0, 0.0 },
-		{ 0.0, 1.0, 0.0 },
-		{ 0.0, 0.0, 1.0 }
-	};
 
-	igt_fixture {
-		prep_pipe(data, p);
+	prep_pipe(data, p);
+	igt_require_pipe_crc(data->drm_fd);
 
-		igt_require_pipe_crc(data->drm_fd);
+	pipe = &data->display.pipes[p];
+	igt_require(pipe->n_planes >= 0);
 
-		pipe = &data->display.pipes[p];
-		igt_require(pipe->n_planes >= 0);
+	data->primary = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
+	data->pipe_crc = igt_pipe_crc_new(data->drm_fd,
+					  data->primary->pipe->pipe,
+					  INTEL_PIPE_CRC_SOURCE_AUTO);
 
-		primary = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
+	igt_display_require_output_on_pipe(&data->display, p);
+	data->output = igt_get_single_output_for_pipe(&data->display, p);
+	igt_require(data->output);
+}
 
-		data->pipe_crc = igt_pipe_crc_new(data->drm_fd,
-						  primary->pipe->pipe,
-						  INTEL_PIPE_CRC_SOURCE_AUTO);
+static void test_cleanup(data_t *data)
+{
+	igt_plane_t *primary = data->primary;
 
-		igt_display_require_output_on_pipe(&data->display, p);
-		data->output = igt_get_single_output_for_pipe(&data->display, p);
-		igt_require(data->output);
-	}
+	disable_degamma(primary->pipe);
+	disable_gamma(primary->pipe);
+	disable_ctm(primary->pipe);
+	igt_display_commit(&data->display);
+
+	igt_pipe_crc_free(data->pipe_crc);
+	data->pipe_crc = NULL;
+}
+
+static void
+run_gamma_degamma_tests_for_pipe(data_t *data, enum pipe p,
+				 bool (*test_t)(data_t*, igt_plane_t*))
+{
+	test_setup(data, p);
 
 	/* We assume an 8bits depth per color for degamma/gamma LUTs
 	 * for CRC checks with framebuffer references. */
 	data->color_depth = 8;
-	delta = 1.0 / (1 << data->color_depth);
 	data->drm_format = DRM_FORMAT_XRGB8888;
 
-	igt_describe("Check the color transformation from red to blue");
-	igt_subtest_f("pipe-%s-ctm-red-to-blue", kmstest_pipe_name(p)) {
-		color_t blue_green_blue[] = {
-			{ 0.0, 0.0, 1.0 },
-			{ 0.0, 1.0, 0.0 },
-			{ 0.0, 0.0, 1.0 }
-		};
-		double ctm[] = { 0.0, 0.0, 0.0,
-				0.0, 1.0, 0.0,
-				1.0, 0.0, 1.0 };
-		igt_assert(test_pipe_ctm(data, primary, red_green_blue,
-					 blue_green_blue, ctm));
-	}
+	igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(p), data->output->name)
+		igt_assert(test_t(data, data->primary));
 
-	igt_describe("Check the color transformation from green to red");
-	igt_subtest_f("pipe-%s-ctm-green-to-red", kmstest_pipe_name(p)) {
-		color_t red_red_blue[] = {
-			{ 1.0, 0.0, 0.0 },
-			{ 1.0, 0.0, 0.0 },
-			{ 0.0, 0.0, 1.0 }
-		};
-		double ctm[] = { 1.0, 1.0, 0.0,
-				0.0, 0.0, 0.0,
-				0.0, 0.0, 1.0 };
-		igt_assert(test_pipe_ctm(data, primary, red_green_blue,
-					 red_red_blue, ctm));
-	}
+	test_cleanup(data);
+}
 
-	igt_describe("Check the color transformation from blue to red");
-	igt_subtest_f("pipe-%s-ctm-blue-to-red", kmstest_pipe_name(p)) {
-		color_t red_green_red[] = {
-			{ 1.0, 0.0, 0.0 },
-			{ 0.0, 1.0, 0.0 },
-			{ 1.0, 0.0, 0.0 }
-		};
-		double ctm[] = { 1.0, 0.0, 1.0,
-				0.0, 1.0, 0.0,
-				0.0, 0.0, 0.0 };
-		igt_assert(test_pipe_ctm(data, primary, red_green_blue,
-					 red_green_red, ctm));
-	}
+static void
+run_ctm_tests_for_pipe(data_t *data, enum pipe p,
+		       color_t *expected_colors,
+		       double *ctm,
+		       int iter)
+{
+	double delta;
+	color_t red_green_blue[] = {
+		{ 1.0, 0.0, 0.0 },
+		{ 0.0, 1.0, 0.0 },
+		{ 0.0, 0.0, 1.0 }
+	};
 
-	/* We tests a few values around the expected result because
-	 * the it depends on the hardware we're dealing with, we can
-	 * either get clamped or rounded values and we also need to
-	 * account for odd number of items in the LUTs. */
-	igt_describe("Check the color transformation for 0.25 transparency");
-	igt_subtest_f("pipe-%s-ctm-0-25", kmstest_pipe_name(p)) {
-		color_t expected_colors[] = {
-			{ 0.0, }, { 0.0, }, { 0.0, }
-		};
-		double ctm[] = { 0.25, 0.0,  0.0,
-				 0.0,  0.25, 0.0,
-				 0.0,  0.0,  0.25 };
-		bool success = false;
+	test_setup(data, p);
 
-		for (i = 0; i < 5; i++) {
-			expected_colors[0].r =
-				expected_colors[1].g =
-				expected_colors[2].b =
-				0.25 + delta * (i - 2);
-			if (test_pipe_ctm(data, primary, red_green_blue,
-					  expected_colors, ctm)) {
-				success = true;
-				break;
-			}
-		}
-		igt_assert(success);
-	}
+	/*
+	 * We assume an 8bits depth per color for degamma/gamma LUTs
+	 * for CRC checks with framebuffer references.
+	 */
+	data->color_depth = 8;
+	delta = 1.0 / (1 << data->color_depth);
+	data->drm_format = DRM_FORMAT_XRGB8888;
 
-	igt_describe("Check the color transformation for 0.5 transparency");
-	igt_subtest_f("pipe-%s-ctm-0-5", kmstest_pipe_name(p)) {
-		color_t expected_colors[] = {
-			{ 0.0, }, { 0.0, }, { 0.0, }
-		};
-		double ctm[] = { 0.5, 0.0, 0.0,
-				 0.0, 0.5, 0.0,
-				 0.0, 0.0, 0.5 };
+	igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(p), data->output->name) {
 		bool success = false;
+		int i;
 
-		for (i = 0; i < 5; i++) {
+		if (!iter)
+			success = test_pipe_ctm(data, data->primary, red_green_blue,
+						expected_colors, ctm);
+
+		/*
+		 * We tests a few values around the expected result because
+		 * it depends on the hardware we're dealing with, we can either
+		 * get clamped or rounded values and we also need to account
+		 * for odd number of items in the LUTs.
+		 */
+		for (i = 0; i < iter; i++) {
 			expected_colors[0].r =
 				expected_colors[1].g =
 				expected_colors[2].b =
 				0.5 + delta * (i - 2);
-			if (test_pipe_ctm(data, primary, red_green_blue,
+			if (test_pipe_ctm(data, data->primary, red_green_blue,
 					  expected_colors, ctm)) {
 				success = true;
 				break;
@@ -809,186 +786,249 @@ run_tests_for_pipe(data_t *data, enum pipe p)
 		igt_assert(success);
 	}
 
-	igt_describe("Check the color transformation for 0.75 transparency");
-	igt_subtest_f("pipe-%s-ctm-0-75", kmstest_pipe_name(p)) {
-		color_t expected_colors[] = {
-			{ 0.0, }, { 0.0, }, { 0.0, }
-		};
-		double ctm[] = { 0.75, 0.0,  0.0,
-				 0.0,  0.75, 0.0,
-				 0.0,  0.0,  0.75 };
-		bool success = false;
-
-		for (i = 0; i < 7; i++) {
-			expected_colors[0].r =
-				expected_colors[1].g =
-				expected_colors[2].b =
-				0.75 + delta * (i - 3);
-			if (test_pipe_ctm(data, primary, red_green_blue,
-						expected_colors, ctm)) {
-				success = true;
-				break;
-			}
-		}
-		igt_assert(success);
-	}
+	test_cleanup(data);
+}
 
-	igt_describe("Check the color transformation for maximum transparency");
-	igt_subtest_f("pipe-%s-ctm-max", kmstest_pipe_name(p)) {
-		color_t full_rgb[] = {
-			{ 1.0, 0.0, 0.0 },
-			{ 0.0, 1.0, 0.0 },
-			{ 0.0, 0.0, 1.0 }
-		};
-		double ctm[] = { 100.0,   0.0,   0.0,
-				 0.0,   100.0,   0.0,
-				 0.0,     0.0, 100.0 };
-
-		/* CherryView generates values on 10bits that we
-		 * produce with an 8 bits per color framebuffer. */
-		igt_require(!IS_CHERRYVIEW(data->devid));
-
-		igt_assert(test_pipe_ctm(data, primary, red_green_blue,
-					 full_rgb, ctm));
-	}
+static void
+run_deep_color_tests_for_pipe(data_t *data, enum pipe p)
+{
+	igt_output_t *output;
+	color_t blue_green_blue[] = {
+		{ 0.0, 0.0, 1.0 },
+		{ 0.0, 1.0, 0.0 },
+		{ 0.0, 0.0, 1.0 }
+	};
+	color_t red_green_blue[] = {
+		{ 1.0, 0.0, 0.0 },
+		{ 0.0, 1.0, 0.0 },
+		{ 0.0, 0.0, 1.0 }
+	};
+	double ctm[] = { 0.0, 0.0, 0.0,
+			 0.0, 1.0, 0.0,
+			 1.0, 0.0, 1.0 };
 
-	igt_describe("Check the color transformation for negative transparency");
-	igt_subtest_f("pipe-%s-ctm-negative", kmstest_pipe_name(p)) {
-		color_t all_black[] = {
-			{ 0.0, 0.0, 0.0 },
-			{ 0.0, 0.0, 0.0 },
-			{ 0.0, 0.0, 0.0 }
-		};
-		double ctm[] = { -1.0,  0.0,  0.0,
-				 0.0, -1.0,  0.0,
-				 0.0,  0.0, -1.0 };
-		igt_assert(test_pipe_ctm(data, primary, red_green_blue,
-					 all_black, ctm));
-	}
+	if (is_i915_device(data->drm_fd))
+		igt_require_f((intel_display_ver(data->devid) >= 11),
+				"At least GEN 11 is required to validate Deep-color.\n");
 
-#if 0
-	igt_subtest_f("pipe-%s-ctm-limited-range", kmstest_pipe_name(p))
-		test_pipe_limited_range_ctm(data, primary);
-#endif
+	test_setup(data, p);
 
-	igt_describe("Verify that degamma LUT transformation works correctly");
-	igt_subtest_f("pipe-%s-degamma", kmstest_pipe_name(p))
-		igt_assert(test_pipe_degamma(data, primary));
+	for_each_valid_output_on_pipe(&data->display, p, output) {
+		uint64_t max_bpc = get_max_bpc(output);
+		bool ret;
 
-	igt_describe("Verify that gamma LUT transformation works correctly");
-	igt_subtest_f("pipe-%s-gamma", kmstest_pipe_name(p))
-		igt_assert(test_pipe_gamma(data, primary));
+		if (!max_bpc)
+			continue;
 
-	igt_describe("Verify that legacy gamma LUT transformation works correctly");
-	igt_subtest_f("pipe-%s-legacy-gamma", kmstest_pipe_name(p))
-		test_pipe_legacy_gamma(data, primary);
+		if (!panel_supports_deep_color(data->drm_fd, output->name))
+			continue;
 
-	igt_describe("Verify that setting the legacy gamma LUT resets the gamma LUT set through "
-			"GAMMA_LUT property");
-	igt_subtest_f("pipe-%s-legacy-gamma-reset", kmstest_pipe_name(p))
-		test_pipe_legacy_gamma_reset(data, primary);
+		data->color_depth = 10;
+		data->drm_format = DRM_FORMAT_XRGB2101010;
+		data->output = output;
+		igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, 10);
+		igt_output_set_pipe(output, p);
+		igt_display_commit_atomic(&data->display, DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
 
-	igt_fixture
-		igt_require(data->display.is_atomic);
+		if (is_i915_device(data->drm_fd) &&
+		    !i915_clock_constraint(data, p, 10))
+			continue;
 
-	igt_describe("Verify that deep color works correctly");
-	igt_subtest_with_dynamic_f("pipe-%s-deep-color", kmstest_pipe_name(p)) {
-		igt_output_t *output;
-		color_t blue_green_blue[] = {
-			{ 0.0, 0.0, 1.0 },
-			{ 0.0, 1.0, 0.0 },
-			{ 0.0, 0.0, 1.0 }
-		};
-		double ctm[] = { 0.0, 0.0, 0.0,
-				0.0, 1.0, 0.0,
-				1.0, 0.0, 1.0 };
-
-		if (is_i915_device(data->drm_fd))
-			igt_require_f((intel_display_ver(data->devid) >= 11),
-					"At least GEN 11 is required to validate Deep-color.\n");
-
-		for_each_valid_output_on_pipe(&data->display, p, output) {
-			uint64_t max_bpc = get_max_bpc(output);
-			bool ret;
-
-			if (!max_bpc)
-				continue;
-
-			if (!panel_supports_deep_color(data->drm_fd, output->name))
-				continue;
-
-			data->color_depth = 10;
-			data->drm_format = DRM_FORMAT_XRGB2101010;
-			data->output = output;
-			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, 10);
-			igt_output_set_pipe(output, p);
-			igt_display_commit_atomic(&data->display, DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
-
-			if (is_i915_device(data->drm_fd) &&
-			    !i915_clock_constraint(data, p, 10))
-				continue;
-
-			igt_dynamic_f("gamma-%s", output->name) {
-				ret = test_pipe_gamma(data, primary);
-
-				igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
-				igt_assert(ret);
-			}
+		igt_dynamic_f("pipe-%s-%s-gamma", kmstest_pipe_name(p), output->name) {
+			ret = test_pipe_gamma(data, data->primary);
 
-			igt_dynamic_f("degamma-%s", output->name) {
-				ret = test_pipe_degamma(data, primary);
+			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
+			igt_assert(ret);
+		}
 
-				igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
-				igt_assert(ret);
-			}
+		igt_dynamic_f("pipe-%s-%s-degamma", kmstest_pipe_name(p), output->name) {
+			ret = test_pipe_degamma(data, data->primary);
 
-			igt_dynamic_f("ctm-%s", output->name) {
-				ret = test_pipe_ctm(data, primary,
-						    red_green_blue,
-						    blue_green_blue, ctm);
+			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
+			igt_assert(ret);
+		}
 
-				igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
-				igt_assert(ret);
-			}
+		igt_dynamic_f("pipe-%s-%s-ctm", kmstest_pipe_name(p), output->name) {
+			ret = test_pipe_ctm(data, data->primary,
+					    red_green_blue,
+					    blue_green_blue, ctm);
 
-			break;
+			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
+			igt_assert(ret);
 		}
+
+		break;
 	}
 
-	igt_fixture {
-		disable_degamma(primary->pipe);
-		disable_gamma(primary->pipe);
-		disable_ctm(primary->pipe);
-		igt_display_commit(&data->display);
+	test_cleanup(data);
+}
+
+static void
+run_invalid_tests_for_pipe(data_t *data)
+{
+	enum pipe pipe;
+	struct {
+		const char *name;
+		void (*test_t) (data_t *data, enum pipe pipe);
+		const char *desc;
+	} tests[] = {
+		{ "invalid-gamma-lut-sizes", invalid_gamma_lut_sizes,
+			"Negative check for invalid gamma lut sizes" },
+
+		{ "invalid-degamma-lut-sizes", invalid_degamma_lut_sizes,
+			"Negative check for invalid degamma lut sizes" },
+
+		{ "invalid-ctm-matrix-sizes", invalid_ctm_matrix_sizes,
+			"Negative check for color tranformation matrix sizes" },
+	};
+	int i;
 
-		igt_pipe_crc_free(data->pipe_crc);
-		data->pipe_crc = NULL;
+	for (i = 0; i < ARRAY_SIZE(tests); i++) {
+		igt_describe_f("%s", tests[i].desc);
+		igt_subtest_with_dynamic_f("%s", tests[i].name) {
+			for_each_pipe(&data->display, pipe) {
+				prep_pipe(data, pipe);
+
+				igt_dynamic_f("pipe-%s", kmstest_pipe_name(pipe))
+					tests[i].test_t(data, pipe);
+			}
+		}
 	}
 }
 
 static void
-run_invalid_tests_for_pipe(data_t *data, enum pipe p)
+run_tests_for_pipe(data_t *data)
 {
-	igt_fixture
-		prep_pipe(data, p);
+	enum pipe pipe;
+	struct {
+		const char *name;
+		bool (*test_t)(data_t*, igt_plane_t*);
+		const char *desc;
+	} gamma_degamma_tests[] = {
+		{ "degamma", test_pipe_degamma,
+		  "Verify that degamma LUT transformation works correctly" },
+
+		{ "gamma", test_pipe_gamma,
+		  "Verify that gamma LUT transformation works correctly" },
+
+		{ "legacy-gamma", test_pipe_legacy_gamma,
+		  "Verify that legacy gamma LUT transformation works correctly" },
+
+		{ "legacy-gamma-reset", test_pipe_legacy_gamma_reset,
+		  "Verify that setting the legacy gamma LUT resets the gamma LUT set through GAMMA_LUT property" },
+	};
+	struct {
+		const char *name;
+		int iter;
+		color_t colors[3];
+		double ctm[9];
+		const char *desc;
+	} ctm_tests[] = {
+		{ "ctm-red-to-blue", 0,
+			{{ 0.0, 0.0, 1.0 },
+			 { 0.0, 1.0, 0.0 },
+			 { 0.0, 0.0, 1.0 }},
+		  { 0.0, 0.0, 0.0,
+		    0.0, 1.0, 0.0,
+		    1.0, 0.0, 1.0 },
+		  "Check the color transformation from red to blue"
+		},
+		{ "ctm-green-to-red", 0,
+			{{ 1.0, 0.0, 0.0 },
+			 { 1.0, 0.0, 0.0 },
+			 { 0.0, 0.0, 1.0 }},
+		  { 1.0, 1.0, 0.0,
+		    0.0, 0.0, 0.0,
+		    0.0, 0.0, 1.0 },
+		  "Check the color transformation from green to red"
+		},
+		{ "ctm-blue-to-red", 0,
+			{{ 1.0, 0.0, 0.0 },
+			 { 0.0, 1.0, 0.0 },
+			 { 1.0, 0.0, 0.0 }},
+		  { 1.0, 0.0, 1.0,
+		    0.0, 1.0, 0.0,
+		    0.0, 0.0, 0.0 },
+		  "Check the color transformation from blue to red"
+		},
+		{ "ctm-max", 0,
+			{{ 1.0, 0.0, 0.0 },
+			 { 0.0, 1.0, 0.0 },
+			 { 0.0, 0.0, 1.0 }},
+		  { 100.0, 0.0, 0.0,
+		    0.0, 100.0, 0.0,
+		    0.0, 0.0, 100.0 },
+		  "Check the color transformation for maximum transparency"
+		},
+		{ "ctm-negative", 0,
+			{{ 0.0, 0.0, 0.0 },
+			 { 0.0, 0.0, 0.0 },
+			 { 0.0, 0.0, 0.0 }},
+		  { -1.0, 0.0, 0.0,
+		    0.0, -1.0, 0.0,
+		    0.0, 0.0, -1.0 },
+		  "Check the color transformation for negative transparency"
+		},
+		{ "ctm-0-25", 5,
+			{{ 0.0, }, { 0.0, }, { 0.0, }},
+		  { 0.25, 0.0,  0.0,
+		    0.0,  0.25, 0.0,
+		    0.0,  0.0,  0.25 },
+		  "Check the color transformation for 0.25 transparency"
+		},
+		{ "ctm-0-50", 5,
+			{{ 0.0, }, { 0.0, }, { 0.0, }},
+		  { 0.5,  0.0,  0.0,
+		    0.0,  0.5,  0.0,
+		    0.0,  0.0,  0.5 },
+		  "Check the color transformation for 0.5 transparency"
+		},
+		{ "ctm-0-75", 7,
+			{{ 0.0, }, { 0.0, }, { 0.0, }},
+		  { 0.75, 0.0,  0.0,
+		    0.0,  0.75, 0.0,
+		    0.0,  0.0,  0.75 },
+		  "Check the color transformation for 0.75 transparency"
+		},
+	};
+	int i;
+
+	for (i = 0; i < ARRAY_SIZE(gamma_degamma_tests); i++) {
+		igt_describe_f("%s", gamma_degamma_tests[i].desc);
+		igt_subtest_with_dynamic_f("%s", gamma_degamma_tests[i].name) {
+			for_each_pipe(&data->display, pipe) {
+				run_gamma_degamma_tests_for_pipe(data, pipe,
+								 gamma_degamma_tests[i].test_t);
+			}
+		}
+	}
 
-	igt_describe("Negative check for invalid gamma lut sizes");
-	igt_subtest_f("pipe-%s-invalid-gamma-lut-sizes", kmstest_pipe_name(p))
-		invalid_gamma_lut_sizes(data, p);
+	for (i = 0; i < ARRAY_SIZE(ctm_tests); i++) {
+		igt_describe_f("%s", ctm_tests[i].desc);
+		igt_subtest_with_dynamic_f("%s", ctm_tests[i].name) {
+			for_each_pipe(&data->display, pipe) {
+				run_ctm_tests_for_pipe(data, pipe,
+						       ctm_tests[i].colors,
+						       ctm_tests[i].ctm,
+						       ctm_tests[i].iter);
+			}
+		}
+	}
 
-	igt_describe("Negative check for invalid degamma lut sizes");
-	igt_subtest_f("pipe-%s-invalid-degamma-lut-sizes", kmstest_pipe_name(p))
-		invalid_degamma_lut_sizes(data, p);
+	igt_fixture
+		igt_require(data->display.is_atomic);
 
-	igt_describe("Negative check for color tranformation matrix sizes");
-	igt_subtest_f("pipe-%s-invalid-ctm-matrix-sizes", kmstest_pipe_name(p))
-		invalid_ctm_matrix_sizes(data, p);
+	igt_describe("Verify that deep color works correctly");
+	igt_subtest_with_dynamic("deep-color") {
+		for_each_pipe(&data->display, pipe) {
+			run_deep_color_tests_for_pipe(data, pipe);
+		}
+	}
 }
 
 igt_main
 {
 	data_t data = {};
-	enum pipe pipe;
 
 	igt_fixture {
 		data.drm_fd = drm_open_driver_master(DRIVER_ANY);
@@ -999,13 +1039,11 @@ igt_main
 		igt_display_require(&data.display, data.drm_fd);
 	}
 
-	for_each_pipe_static(pipe) {
-		igt_subtest_group
-			run_tests_for_pipe(&data, pipe);
+	igt_subtest_group
+		run_tests_for_pipe(&data);
 
-		igt_subtest_group
-			run_invalid_tests_for_pipe(&data, pipe);
-	}
+	igt_subtest_group
+		run_invalid_tests_for_pipe(&data);
 
 	igt_fixture {
 		igt_display_fini(&data.display);
diff --git a/tests/kms_color_helper.h b/tests/kms_color_helper.h
index cc07f5ee..2ea15bcd 100644
--- a/tests/kms_color_helper.h
+++ b/tests/kms_color_helper.h
@@ -50,6 +50,7 @@ typedef struct {
 	igt_display_t display;
 	igt_pipe_crc_t *pipe_crc;
 	igt_output_t *output;
+	igt_plane_t *primary;
 
 	uint32_t drm_format;
 	uint32_t color_depth;
-- 
2.35.1

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

* [igt-dev] [i-g-t V7 2/2] tests/kms_color: Test Cleanup
  2022-06-30  8:55 [igt-dev] [i-g-t V7 0/2] tests/kms_color: IGT test cleanup Bhanuprakash Modem
  2022-06-30  8:55 ` [igt-dev] [i-g-t V7 1/2] tests/kms_color: Convert tests to dynamic Bhanuprakash Modem
@ 2022-06-30  8:55 ` Bhanuprakash Modem
  2022-07-04  6:48   ` Sharma, Swati2
  2022-06-30 10:04 ` [igt-dev] ✗ Fi.CI.BAT: failure for tests/kms_color: IGT test cleanup (rev9) Patchwork
                   ` (4 subsequent siblings)
  6 siblings, 1 reply; 14+ messages in thread
From: Bhanuprakash Modem @ 2022-06-30  8:55 UTC (permalink / raw)
  To: igt-dev, swati2.sharma, kamil.konieczny

Sanitize the system state before starting the subtest.

V2:
* Fix multiline comments.

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 tests/kms_color.c        | 96 ++++++++++++++++++++++++----------------
 tests/kms_color_helper.h |  1 +
 2 files changed, 58 insertions(+), 39 deletions(-)

diff --git a/tests/kms_color.c b/tests/kms_color.c
index 85f3b32d..0b03fb9a 100644
--- a/tests/kms_color.c
+++ b/tests/kms_color.c
@@ -37,7 +37,7 @@ static bool test_pipe_degamma(data_t *data,
 		{ 0.0, 1.0, 0.0 },
 		{ 0.0, 0.0, 1.0 }
 	};
-	drmModeModeInfo *mode;
+	drmModeModeInfo *mode = data->mode;
 	struct igt_fb fb_modeset, fb;
 	igt_crc_t crc_fullgamma, crc_fullcolors;
 	int fb_id, fb_modeset_id;
@@ -50,7 +50,7 @@ static bool test_pipe_degamma(data_t *data,
 	degamma_full = generate_table_max(data->degamma_lut_size);
 
 	igt_output_set_pipe(output, primary->pipe->pipe);
-	mode = igt_output_get_mode(output);
+	igt_output_override_mode(output, mode);
 
 	/* Create a framebuffer at the size of the output. */
 	fb_id = igt_create_fb(data->drm_fd,
@@ -83,7 +83,8 @@ static bool test_pipe_degamma(data_t *data,
 			    display->pipes[primary->pipe->pipe].crtc_offset);
 	igt_pipe_crc_collect_crc(data->pipe_crc, &crc_fullcolors);
 
-	/* Draw a gradient with degamma LUT to remap all
+	/*
+	 * Draw a gradient with degamma LUT to remap all
 	 * values to max red/green/blue.
 	 */
 	paint_gradient_rectangles(data, mode, red_green_blue, &fb);
@@ -94,7 +95,8 @@ static bool test_pipe_degamma(data_t *data,
 			    display->pipes[primary->pipe->pipe].crtc_offset);
 	igt_pipe_crc_collect_crc(data->pipe_crc, &crc_fullgamma);
 
-	/* Verify that the CRC of the software computed output is
+	/*
+	 * Verify that the CRC of the software computed output is
 	 * equal to the CRC of the degamma LUT transformation output.
 	 */
 	ret = !igt_skip_crc_compare || igt_check_crc_equal(&crc_fullgamma, &crc_fullcolors);
@@ -127,7 +129,7 @@ static bool test_pipe_gamma(data_t *data,
 		{ 0.0, 1.0, 0.0 },
 		{ 0.0, 0.0, 1.0 }
 	};
-	drmModeModeInfo *mode;
+	drmModeModeInfo *mode = data->mode;
 	struct igt_fb fb_modeset, fb;
 	igt_crc_t crc_fullgamma, crc_fullcolors;
 	int fb_id, fb_modeset_id;
@@ -138,7 +140,7 @@ static bool test_pipe_gamma(data_t *data,
 	gamma_full = generate_table_max(data->gamma_lut_size);
 
 	igt_output_set_pipe(output, primary->pipe->pipe);
-	mode = igt_output_get_mode(output);
+	igt_output_override_mode(output, mode);
 
 	/* Create a framebuffer at the size of the output. */
 	fb_id = igt_create_fb(data->drm_fd,
@@ -171,7 +173,8 @@ static bool test_pipe_gamma(data_t *data,
 			    display->pipes[primary->pipe->pipe].crtc_offset);
 	igt_pipe_crc_collect_crc(data->pipe_crc, &crc_fullcolors);
 
-	/* Draw a gradient with gamma LUT to remap all values
+	/*
+	 * Draw a gradient with gamma LUT to remap all values
 	 * to max red/green/blue.
 	 */
 	paint_gradient_rectangles(data, mode, red_green_blue, &fb);
@@ -181,7 +184,8 @@ static bool test_pipe_gamma(data_t *data,
 			    display->pipes[primary->pipe->pipe].crtc_offset);
 	igt_pipe_crc_collect_crc(data->pipe_crc, &crc_fullgamma);
 
-	/* Verify that the CRC of the software computed output is
+	/*
+	 * Verify that the CRC of the software computed output is
 	 * equal to the CRC of the gamma LUT transformation output.
 	 */
 	ret = !igt_skip_crc_compare || igt_check_crc_equal(&crc_fullgamma, &crc_fullcolors);
@@ -206,7 +210,7 @@ static bool test_pipe_gamma(data_t *data,
 static bool test_pipe_legacy_gamma(data_t *data,
 				   igt_plane_t *primary)
 {
-	igt_output_t *output;
+	igt_output_t *output = data->output;
 	igt_display_t *display = &data->display;
 	color_t red_green_blue[] = {
 		{ 1.0, 0.0, 0.0 },
@@ -216,7 +220,7 @@ static bool test_pipe_legacy_gamma(data_t *data,
 	drmModeCrtc *kms_crtc;
 	uint32_t i, legacy_lut_size;
 	uint16_t *red_lut, *green_lut, *blue_lut;
-	drmModeModeInfo *mode;
+	drmModeModeInfo *mode = data->mode;
 	struct igt_fb fb_modeset, fb;
 	igt_crc_t crc_fullgamma, crc_fullcolors;
 	int fb_id, fb_modeset_id;
@@ -230,11 +234,8 @@ static bool test_pipe_legacy_gamma(data_t *data,
 	green_lut = malloc(sizeof(uint16_t) * legacy_lut_size);
 	blue_lut = malloc(sizeof(uint16_t) * legacy_lut_size);
 
-	output = igt_get_single_output_for_pipe(&data->display, primary->pipe->pipe);
-	igt_require(output);
-
 	igt_output_set_pipe(output, primary->pipe->pipe);
-	mode = igt_output_get_mode(output);
+	igt_output_override_mode(output, mode);
 
 	/* Create a framebuffer at the size of the output. */
 	fb_id = igt_create_fb(data->drm_fd,
@@ -267,7 +268,8 @@ static bool test_pipe_legacy_gamma(data_t *data,
 			    display->pipes[primary->pipe->pipe].crtc_offset);
 	igt_pipe_crc_collect_crc(data->pipe_crc, &crc_fullcolors);
 
-	/* Draw a gradient with gamma LUT to remap all values
+	/*
+	 * Draw a gradient with gamma LUT to remap all values
 	 * to max red/green/blue.
 	 */
 	paint_gradient_rectangles(data, mode, red_green_blue, &fb);
@@ -283,7 +285,8 @@ static bool test_pipe_legacy_gamma(data_t *data,
 			    display->pipes[primary->pipe->pipe].crtc_offset);
 	igt_pipe_crc_collect_crc(data->pipe_crc, &crc_fullgamma);
 
-	/* Verify that the CRC of the software computed output is
+	/*
+	 * Verify that the CRC of the software computed output is
 	 * equal to the CRC of the gamma LUT transformation output.
 	 */
 	ret = !igt_skip_crc_compare || igt_check_crc_equal(&crc_fullgamma, &crc_fullcolors);
@@ -298,6 +301,7 @@ static bool test_pipe_legacy_gamma(data_t *data,
 
 	igt_plane_set_fb(primary, NULL);
 	igt_output_set_pipe(output, PIPE_NONE);
+	igt_display_commit(&data->display);
 	igt_remove_fb(data->drm_fd, &fb);
 	igt_remove_fb(data->drm_fd, &fb_modeset);
 
@@ -326,7 +330,7 @@ static bool test_pipe_legacy_gamma_reset(data_t *data,
 	uint16_t *red_lut, *green_lut, *blue_lut;
 	struct drm_color_lut *lut;
 	drmModePropertyBlobPtr blob;
-	igt_output_t *output;
+	igt_output_t *output = data->output;
 	bool ret = true;
 
 	igt_require(igt_pipe_obj_has_prop(primary->pipe, IGT_CRTC_GAMMA_LUT));
@@ -335,9 +339,6 @@ static bool test_pipe_legacy_gamma_reset(data_t *data,
 		degamma_linear = generate_table(data->degamma_lut_size, 1.0);
 	gamma_zero = generate_table_zero(data->gamma_lut_size);
 
-	output = igt_get_single_output_for_pipe(&data->display, primary->pipe->pipe);
-	igt_require(output);
-
 	igt_output_set_pipe(output, primary->pipe->pipe);
 
 	/* Ensure we have a clean state to start with. */
@@ -346,9 +347,11 @@ static bool test_pipe_legacy_gamma_reset(data_t *data,
 	disable_gamma(primary->pipe);
 	igt_display_commit(&data->display);
 
-	/* Set a degama & gamma LUT and a CTM using the
+	/*
+	 * Set a degama & gamma LUT and a CTM using the
 	 * properties and verify the content of the
-	 * properties. */
+	 * properties.
+	 */
 	if (igt_pipe_obj_has_prop(primary->pipe, IGT_CRTC_DEGAMMA_LUT))
 		set_degamma(data, primary->pipe, degamma_linear);
 	if (igt_pipe_obj_has_prop(primary->pipe, IGT_CRTC_CTM))
@@ -384,9 +387,11 @@ static bool test_pipe_legacy_gamma_reset(data_t *data,
 	if(!ret)
 		goto end;
 
-	/* Set a gamma LUT using the legacy ioctl and verify
+	/*
+	 * Set a gamma LUT using the legacy ioctl and verify
 	 * the content of the GAMMA_LUT property is changed
-	 * and that CTM and DEGAMMA_LUT are empty. */
+	 * and that CTM and DEGAMMA_LUT are empty.
+	 */
 	kms_crtc = drmModeGetCrtc(data->drm_fd, primary->pipe->crtc_id);
 	legacy_lut_size = kms_crtc->gamma_size;
 	drmModeFreeCrtc(kms_crtc);
@@ -424,6 +429,7 @@ static bool test_pipe_legacy_gamma_reset(data_t *data,
 
 	igt_plane_set_fb(primary, NULL);
 	igt_output_set_pipe(output, PIPE_NONE);
+	igt_display_commit(&data->display);
 
 	free_lut(degamma_linear);
 	free_lut(gamma_zero);
@@ -450,7 +456,7 @@ static bool test_pipe_ctm(data_t *data,
 	igt_output_t *output = data->output;
 	bool ret = true;
 	igt_display_t *display = &data->display;
-	drmModeModeInfo *mode;
+	drmModeModeInfo *mode = data->mode;
 	struct igt_fb fb_modeset, fb;
 	igt_crc_t crc_software, crc_hardware;
 	int fb_id, fb_modeset_id;
@@ -461,7 +467,7 @@ static bool test_pipe_ctm(data_t *data,
 	gamma_linear = generate_table(data->gamma_lut_size, 1.0);
 
 	igt_output_set_pipe(output, primary->pipe->pipe);
-	mode = igt_output_get_mode(output);
+	igt_output_override_mode(output, mode);
 
 	/* Create a framebuffer at the size of the output. */
 	fb_id = igt_create_fb(data->drm_fd,
@@ -515,13 +521,15 @@ static bool test_pipe_ctm(data_t *data,
 			    display->pipes[primary->pipe->pipe].crtc_offset);
 	igt_pipe_crc_collect_crc(data->pipe_crc, &crc_hardware);
 
-	/* Verify that the CRC of the software computed output is
+	/*
+	 * Verify that the CRC of the software computed output is
 	 * equal to the CRC of the CTM matrix transformation output.
 	 */
 	ret &= !igt_skip_crc_compare || igt_check_crc_equal(&crc_software, &crc_hardware);
 
 	igt_plane_set_fb(primary, NULL);
 	igt_output_set_pipe(output, PIPE_NONE);
+	igt_display_commit(&data->display);
 	igt_remove_fb(data->drm_fd, &fb);
 	igt_remove_fb(data->drm_fd, &fb_modeset);
 
@@ -703,17 +711,12 @@ static void test_setup(data_t *data, enum pipe p)
 	igt_display_require_output_on_pipe(&data->display, p);
 	data->output = igt_get_single_output_for_pipe(&data->display, p);
 	igt_require(data->output);
+
+	igt_display_reset(&data->display);
 }
 
 static void test_cleanup(data_t *data)
 {
-	igt_plane_t *primary = data->primary;
-
-	disable_degamma(primary->pipe);
-	disable_gamma(primary->pipe);
-	disable_ctm(primary->pipe);
-	igt_display_commit(&data->display);
-
 	igt_pipe_crc_free(data->pipe_crc);
 	data->pipe_crc = NULL;
 }
@@ -724,10 +727,13 @@ run_gamma_degamma_tests_for_pipe(data_t *data, enum pipe p,
 {
 	test_setup(data, p);
 
-	/* We assume an 8bits depth per color for degamma/gamma LUTs
-	 * for CRC checks with framebuffer references. */
+	/*
+	 * We assume an 8bits depth per color for degamma/gamma LUTs
+	 * for CRC checks with framebuffer references.
+	 */
 	data->color_depth = 8;
 	data->drm_format = DRM_FORMAT_XRGB8888;
+	data->mode = igt_output_get_mode(data->output);
 
 	igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(p), data->output->name)
 		igt_assert(test_t(data, data->primary));
@@ -757,6 +763,7 @@ run_ctm_tests_for_pipe(data_t *data, enum pipe p,
 	data->color_depth = 8;
 	delta = 1.0 / (1 << data->color_depth);
 	data->drm_format = DRM_FORMAT_XRGB8888;
+	data->mode = igt_output_get_mode(data->output);
 
 	igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(p), data->output->name) {
 		bool success = false;
@@ -823,9 +830,6 @@ run_deep_color_tests_for_pipe(data_t *data, enum pipe p)
 		if (!panel_supports_deep_color(data->drm_fd, output->name))
 			continue;
 
-		data->color_depth = 10;
-		data->drm_format = DRM_FORMAT_XRGB2101010;
-		data->output = output;
 		igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, 10);
 		igt_output_set_pipe(output, p);
 		igt_display_commit_atomic(&data->display, DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
@@ -834,7 +838,15 @@ run_deep_color_tests_for_pipe(data_t *data, enum pipe p)
 		    !i915_clock_constraint(data, p, 10))
 			continue;
 
+		data->color_depth = 10;
+		data->drm_format = DRM_FORMAT_XRGB2101010;
+		data->output = output;
+		data->mode = igt_output_get_mode(data->output);
+
 		igt_dynamic_f("pipe-%s-%s-gamma", kmstest_pipe_name(p), output->name) {
+			igt_display_reset(&data->display);
+			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, 10);
+
 			ret = test_pipe_gamma(data, data->primary);
 
 			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
@@ -842,6 +854,9 @@ run_deep_color_tests_for_pipe(data_t *data, enum pipe p)
 		}
 
 		igt_dynamic_f("pipe-%s-%s-degamma", kmstest_pipe_name(p), output->name) {
+			igt_display_reset(&data->display);
+			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, 10);
+
 			ret = test_pipe_degamma(data, data->primary);
 
 			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
@@ -849,6 +864,9 @@ run_deep_color_tests_for_pipe(data_t *data, enum pipe p)
 		}
 
 		igt_dynamic_f("pipe-%s-%s-ctm", kmstest_pipe_name(p), output->name) {
+			igt_display_reset(&data->display);
+			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, 10);
+
 			ret = test_pipe_ctm(data, data->primary,
 					    red_green_blue,
 					    blue_green_blue, ctm);
diff --git a/tests/kms_color_helper.h b/tests/kms_color_helper.h
index 2ea15bcd..f0ae30e3 100644
--- a/tests/kms_color_helper.h
+++ b/tests/kms_color_helper.h
@@ -51,6 +51,7 @@ typedef struct {
 	igt_pipe_crc_t *pipe_crc;
 	igt_output_t *output;
 	igt_plane_t *primary;
+	drmModeModeInfo *mode;
 
 	uint32_t drm_format;
 	uint32_t color_depth;
-- 
2.35.1

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

* [igt-dev] ✗ Fi.CI.BAT: failure for tests/kms_color: IGT test cleanup (rev9)
  2022-06-30  8:55 [igt-dev] [i-g-t V7 0/2] tests/kms_color: IGT test cleanup Bhanuprakash Modem
  2022-06-30  8:55 ` [igt-dev] [i-g-t V7 1/2] tests/kms_color: Convert tests to dynamic Bhanuprakash Modem
  2022-06-30  8:55 ` [igt-dev] [i-g-t V7 2/2] tests/kms_color: Test Cleanup Bhanuprakash Modem
@ 2022-06-30 10:04 ` Patchwork
  2022-07-01  1:44 ` [igt-dev] ✗ Fi.CI.BAT: failure for tests/kms_color: IGT test cleanup (rev11) Patchwork
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 14+ messages in thread
From: Patchwork @ 2022-06-30 10:04 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

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

== Series Details ==

Series: tests/kms_color: IGT test cleanup (rev9)
URL   : https://patchwork.freedesktop.org/series/104972/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_11829 -> IGTPW_7443
====================================================

Summary
-------

  **FAILURE**

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

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

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

  Additional (1): fi-icl-u2 
  Missing    (2): bat-dg2-8 bat-adlp-4 

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

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

### IGT changes ###

#### Possible regressions ####

  * igt@i915_selftest@live@migrate:
    - fi-bsw-n3050:       [PASS][1] -> [DMESG-WARN][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11829/fi-bsw-n3050/igt@i915_selftest@live@migrate.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-bsw-n3050/igt@i915_selftest@live@migrate.html

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

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

### IGT changes ###

#### Issues hit ####

  * igt@debugfs_test@read_all_entries:
    - fi-kbl-guc:         [PASS][3] -> [FAIL][4] ([i915#6253])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11829/fi-kbl-guc/igt@debugfs_test@read_all_entries.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-kbl-guc/igt@debugfs_test@read_all_entries.html

  * igt@gem_huc_copy@huc-copy:
    - fi-icl-u2:          NOTRUN -> [SKIP][5] ([i915#2190])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-icl-u2/igt@gem_huc_copy@huc-copy.html

  * igt@gem_lmem_swapping@random-engines:
    - fi-icl-u2:          NOTRUN -> [SKIP][6] ([i915#4613]) +3 similar issues
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-icl-u2/igt@gem_lmem_swapping@random-engines.html

  * igt@i915_selftest@live@hangcheck:
    - fi-hsw-4770:        [PASS][7] -> [INCOMPLETE][8] ([i915#4785])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11829/fi-hsw-4770/igt@i915_selftest@live@hangcheck.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-hsw-4770/igt@i915_selftest@live@hangcheck.html

  * igt@i915_selftest@live@requests:
    - fi-pnv-d510:        [PASS][9] -> [DMESG-FAIL][10] ([i915#4528])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11829/fi-pnv-d510/igt@i915_selftest@live@requests.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-pnv-d510/igt@i915_selftest@live@requests.html

  * igt@i915_suspend@basic-s3-without-i915:
    - fi-icl-u2:          NOTRUN -> [SKIP][11] ([i915#5903])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-icl-u2/igt@i915_suspend@basic-s3-without-i915.html

  * igt@kms_busy@basic@flip:
    - fi-tgl-u2:          [PASS][12] -> [DMESG-WARN][13] ([i915#402]) +2 similar issues
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11829/fi-tgl-u2/igt@kms_busy@basic@flip.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-tgl-u2/igt@kms_busy@basic@flip.html

  * igt@kms_chamelium@common-hpd-after-suspend:
    - fi-cfl-8109u:       NOTRUN -> [SKIP][14] ([fdo#109271] / [fdo#111827])
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-cfl-8109u/igt@kms_chamelium@common-hpd-after-suspend.html

  * igt@kms_chamelium@hdmi-hpd-fast:
    - fi-icl-u2:          NOTRUN -> [SKIP][15] ([fdo#111827]) +8 similar issues
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-icl-u2/igt@kms_chamelium@hdmi-hpd-fast.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor:
    - fi-icl-u2:          NOTRUN -> [SKIP][16] ([i915#4103])
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-icl-u2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor.html

  * igt@kms_force_connector_basic@force-connector-state:
    - fi-icl-u2:          NOTRUN -> [WARN][17] ([i915#6008])
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-icl-u2/igt@kms_force_connector_basic@force-connector-state.html

  * igt@kms_force_connector_basic@force-load-detect:
    - fi-icl-u2:          NOTRUN -> [SKIP][18] ([fdo#109285])
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-icl-u2/igt@kms_force_connector_basic@force-load-detect.html

  * igt@kms_setmode@basic-clone-single-crtc:
    - fi-icl-u2:          NOTRUN -> [SKIP][19] ([i915#3555])
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-icl-u2/igt@kms_setmode@basic-clone-single-crtc.html

  * igt@prime_vgem@basic-userptr:
    - fi-icl-u2:          NOTRUN -> [SKIP][20] ([fdo#109295] / [i915#3301])
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-icl-u2/igt@prime_vgem@basic-userptr.html

  * igt@runner@aborted:
    - fi-hsw-4770:        NOTRUN -> [FAIL][21] ([fdo#109271] / [i915#4312] / [i915#5594] / [i915#6246])
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-hsw-4770/igt@runner@aborted.html
    - fi-bsw-n3050:       NOTRUN -> [FAIL][22] ([fdo#109271] / [i915#3428] / [i915#3690] / [i915#4312])
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-bsw-n3050/igt@runner@aborted.html

  
#### Possible fixes ####

  * igt@i915_pm_rpm@basic-rte:
    - fi-cfl-8109u:       [DMESG-WARN][23] ([i915#1888] / [i915#62]) -> [PASS][24]
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11829/fi-cfl-8109u/igt@i915_pm_rpm@basic-rte.html
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-cfl-8109u/igt@i915_pm_rpm@basic-rte.html

  * igt@i915_selftest@live@coherency:
    - {bat-dg2-9}:        [DMESG-WARN][25] ([i915#5763]) -> [PASS][26] +13 similar issues
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11829/bat-dg2-9/igt@i915_selftest@live@coherency.html
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/bat-dg2-9/igt@i915_selftest@live@coherency.html

  * igt@i915_selftest@live@hangcheck:
    - bat-dg1-5:          [DMESG-FAIL][27] ([i915#4494] / [i915#4957]) -> [PASS][28]
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11829/bat-dg1-5/igt@i915_selftest@live@hangcheck.html
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/bat-dg1-5/igt@i915_selftest@live@hangcheck.html
    - bat-dg1-6:          [DMESG-FAIL][29] ([i915#4494] / [i915#4957]) -> [PASS][30]
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11829/bat-dg1-6/igt@i915_selftest@live@hangcheck.html
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/bat-dg1-6/igt@i915_selftest@live@hangcheck.html

  * igt@kms_busy@basic@flip:
    - {bat-adlp-6}:       [DMESG-WARN][31] ([i915#3576]) -> [PASS][32]
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11829/bat-adlp-6/igt@kms_busy@basic@flip.html
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/bat-adlp-6/igt@kms_busy@basic@flip.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions-varying-size:
    - fi-bsw-kefka:       [FAIL][33] ([i915#6298]) -> [PASS][34]
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11829/fi-bsw-kefka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions-varying-size.html
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-bsw-kefka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions-varying-size.html

  * igt@kms_frontbuffer_tracking@basic:
    - fi-cfl-8109u:       [DMESG-FAIL][35] ([i915#62]) -> [PASS][36] +1 similar issue
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11829/fi-cfl-8109u/igt@kms_frontbuffer_tracking@basic.html
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-cfl-8109u/igt@kms_frontbuffer_tracking@basic.html

  * igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-c-dp-1:
    - fi-cfl-8109u:       [DMESG-WARN][37] ([i915#62]) -> [PASS][38] +9 similar issues
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11829/fi-cfl-8109u/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-c-dp-1.html
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/fi-cfl-8109u/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-c-dp-1.html

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

  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [i915#1888]: https://gitlab.freedesktop.org/drm/intel/issues/1888
  [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
  [i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301
  [i915#3428]: https://gitlab.freedesktop.org/drm/intel/issues/3428
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3576]: https://gitlab.freedesktop.org/drm/intel/issues/3576
  [i915#3690]: https://gitlab.freedesktop.org/drm/intel/issues/3690
  [i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#4494]: https://gitlab.freedesktop.org/drm/intel/issues/4494
  [i915#4528]: https://gitlab.freedesktop.org/drm/intel/issues/4528
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4785]: https://gitlab.freedesktop.org/drm/intel/issues/4785
  [i915#4957]: https://gitlab.freedesktop.org/drm/intel/issues/4957
  [i915#5594]: https://gitlab.freedesktop.org/drm/intel/issues/5594
  [i915#5763]: https://gitlab.freedesktop.org/drm/intel/issues/5763
  [i915#5903]: https://gitlab.freedesktop.org/drm/intel/issues/5903
  [i915#6008]: https://gitlab.freedesktop.org/drm/intel/issues/6008
  [i915#62]: https://gitlab.freedesktop.org/drm/intel/issues/62
  [i915#6246]: https://gitlab.freedesktop.org/drm/intel/issues/6246
  [i915#6253]: https://gitlab.freedesktop.org/drm/intel/issues/6253
  [i915#6297]: https://gitlab.freedesktop.org/drm/intel/issues/6297
  [i915#6298]: https://gitlab.freedesktop.org/drm/intel/issues/6298


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

  * CI: CI-20190529 -> None
  * IGT: IGT_6552 -> IGTPW_7443

  CI-20190529: 20190529
  CI_DRM_11829: 3f759327f5d96d593c2f5b067228ee5938719d2d @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_7443: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7443/index.html
  IGT_6552: 9ed947c9610bf3b271b5f4d329db54922740c0ab @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git


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

+++ 16 lines
--- 96 lines

== Logs ==

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

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

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

* [igt-dev] ✗ Fi.CI.BAT: failure for tests/kms_color: IGT test cleanup (rev11)
  2022-06-30  8:55 [igt-dev] [i-g-t V7 0/2] tests/kms_color: IGT test cleanup Bhanuprakash Modem
                   ` (2 preceding siblings ...)
  2022-06-30 10:04 ` [igt-dev] ✗ Fi.CI.BAT: failure for tests/kms_color: IGT test cleanup (rev9) Patchwork
@ 2022-07-01  1:44 ` Patchwork
  2022-07-01  3:00   ` Modem, Bhanuprakash
  2022-07-01  5:34 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
                   ` (2 subsequent siblings)
  6 siblings, 1 reply; 14+ messages in thread
From: Patchwork @ 2022-07-01  1:44 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

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

== Series Details ==

Series: tests/kms_color: IGT test cleanup (rev11)
URL   : https://patchwork.freedesktop.org/series/104972/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_11837 -> IGTPW_7448
====================================================

Summary
-------

  **FAILURE**

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

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

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

  Missing    (1): bat-dg2-9 

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

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

### IGT changes ###

#### Possible regressions ####

  * igt@i915_selftest@live@vma:
    - fi-bdw-5557u:       NOTRUN -> [INCOMPLETE][1]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-bdw-5557u/igt@i915_selftest@live@vma.html

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

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

### IGT changes ###

#### Issues hit ####

  * igt@i915_pm_rpm@module-reload:
    - fi-cfl-8109u:       [PASS][2] -> [DMESG-FAIL][3] ([i915#62])
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-cfl-8109u/igt@i915_pm_rpm@module-reload.html
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-cfl-8109u/igt@i915_pm_rpm@module-reload.html

  * igt@i915_selftest@live@hangcheck:
    - bat-dg1-6:          [PASS][4] -> [DMESG-FAIL][5] ([i915#4494] / [i915#4957])
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/bat-dg1-6/igt@i915_selftest@live@hangcheck.html
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/bat-dg1-6/igt@i915_selftest@live@hangcheck.html

  * igt@i915_selftest@live@late_gt_pm:
    - fi-cfl-8109u:       [PASS][6] -> [DMESG-WARN][7] ([i915#5904]) +28 similar issues
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-cfl-8109u/igt@i915_selftest@live@late_gt_pm.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-cfl-8109u/igt@i915_selftest@live@late_gt_pm.html

  * igt@i915_selftest@live@requests:
    - fi-pnv-d510:        [PASS][8] -> [DMESG-FAIL][9] ([i915#4528])
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-pnv-d510/igt@i915_selftest@live@requests.html
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-pnv-d510/igt@i915_selftest@live@requests.html
    - fi-blb-e6850:       [PASS][10] -> [DMESG-FAIL][11] ([i915#4528])
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-blb-e6850/igt@i915_selftest@live@requests.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-blb-e6850/igt@i915_selftest@live@requests.html

  * igt@i915_suspend@basic-s2idle-without-i915:
    - fi-cfl-8109u:       [PASS][12] -> [DMESG-WARN][13] ([i915#5904] / [i915#62])
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-cfl-8109u/igt@i915_suspend@basic-s2idle-without-i915.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-cfl-8109u/igt@i915_suspend@basic-s2idle-without-i915.html

  * igt@kms_busy@basic@flip:
    - fi-tgl-u2:          [PASS][14] -> [DMESG-WARN][15] ([i915#402]) +1 similar issue
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-tgl-u2/igt@kms_busy@basic@flip.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-tgl-u2/igt@kms_busy@basic@flip.html

  * igt@kms_chamelium@common-hpd-after-suspend:
    - fi-rkl-guc:         NOTRUN -> [SKIP][16] ([fdo#111827])
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-rkl-guc/igt@kms_chamelium@common-hpd-after-suspend.html

  * igt@kms_frontbuffer_tracking@basic:
    - fi-cfl-8109u:       [PASS][17] -> [DMESG-WARN][18] ([i915#62]) +12 similar issues
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-cfl-8109u/igt@kms_frontbuffer_tracking@basic.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-cfl-8109u/igt@kms_frontbuffer_tracking@basic.html

  * igt@runner@aborted:
    - fi-blb-e6850:       NOTRUN -> [FAIL][19] ([fdo#109271] / [i915#2403] / [i915#4312])
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-blb-e6850/igt@runner@aborted.html

  
#### Possible fixes ####

  * igt@i915_selftest@live@gt_lrc:
    - fi-rkl-guc:         [INCOMPLETE][20] ([i915#4983]) -> [PASS][21]
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-rkl-guc/igt@i915_selftest@live@gt_lrc.html
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-rkl-guc/igt@i915_selftest@live@gt_lrc.html

  * igt@i915_selftest@live@hangcheck:
    - bat-dg1-5:          [DMESG-FAIL][22] ([i915#4494] / [i915#4957]) -> [PASS][23]
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/bat-dg1-5/igt@i915_selftest@live@hangcheck.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/bat-dg1-5/igt@i915_selftest@live@hangcheck.html

  * igt@i915_selftest@live@workarounds:
    - fi-bdw-5557u:       [INCOMPLETE][24] ([i915#6307]) -> [PASS][25]
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-bdw-5557u/igt@i915_selftest@live@workarounds.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-bdw-5557u/igt@i915_selftest@live@workarounds.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions:
    - fi-bsw-kefka:       [FAIL][26] ([i915#6298]) -> [PASS][27]
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-bsw-kefka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions.html
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-bsw-kefka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions.html

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

  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [i915#2403]: https://gitlab.freedesktop.org/drm/intel/issues/2403
  [i915#3576]: https://gitlab.freedesktop.org/drm/intel/issues/3576
  [i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#4494]: https://gitlab.freedesktop.org/drm/intel/issues/4494
  [i915#4528]: https://gitlab.freedesktop.org/drm/intel/issues/4528
  [i915#4957]: https://gitlab.freedesktop.org/drm/intel/issues/4957
  [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
  [i915#5904]: https://gitlab.freedesktop.org/drm/intel/issues/5904
  [i915#62]: https://gitlab.freedesktop.org/drm/intel/issues/62
  [i915#6297]: https://gitlab.freedesktop.org/drm/intel/issues/6297
  [i915#6298]: https://gitlab.freedesktop.org/drm/intel/issues/6298
  [i915#6307]: https://gitlab.freedesktop.org/drm/intel/issues/6307


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

  * CI: CI-20190529 -> None
  * IGT: IGT_6553 -> IGTPW_7448

  CI-20190529: 20190529
  CI_DRM_11837: e19040cd831f5ac1c94bb265ebd846c94f6fed80 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_7448: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/index.html
  IGT_6553: 3cf110f8dcd1f4f02cf84339664b413abdaebf7d @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git


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

+++ 16 lines
--- 96 lines

== Logs ==

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

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

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

* Re: [igt-dev] ✗ Fi.CI.BAT: failure for tests/kms_color: IGT test cleanup (rev11)
  2022-07-01  1:44 ` [igt-dev] ✗ Fi.CI.BAT: failure for tests/kms_color: IGT test cleanup (rev11) Patchwork
@ 2022-07-01  3:00   ` Modem, Bhanuprakash
  2022-07-01  5:57     ` Vudum, Lakshminarayana
  0 siblings, 1 reply; 14+ messages in thread
From: Modem, Bhanuprakash @ 2022-07-01  3:00 UTC (permalink / raw)
  To: igt-dev, Lakshminarayana Vudum

Hi Lakshmi,

On Fri-01-07-2022 07:14 am, Patchwork wrote:
> *Patch Details*
> *Series:*	tests/kms_color: IGT test cleanup (rev11)
> *URL:*	https://patchwork.freedesktop.org/series/104972/ 
> <https://patchwork.freedesktop.org/series/104972/>
> *State:*	failure
> *Details:* 
> https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/index.html 
> <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/index.html>
> 
> 
>   CI Bug Log - changes from CI_DRM_11837 -> IGTPW_7448
> 
> 
>     Summary
> 
> *FAILURE*
> 
> Serious unknown changes coming with IGTPW_7448 absolutely need to be
> verified manually.
> 
> If you think the reported changes have nothing to do with the changes
> introduced in IGTPW_7448, please notify your bug team to allow them
> to document this new failure mode, which will reduce false positives in CI.
> 
> External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/index.html
> 
> 
>     Participating hosts (42 -> 41)
> 
> Missing (1): bat-dg2-9
> 
> 
>     Possible new issues
> 
> Here are the unknown changes that may have been introduced in IGTPW_7448:
> 
> 
>       IGT changes
> 
> 
>         Possible regressions
> 
>   * igt@i915_selftest@live@vma:
>       o fi-bdw-5557u: NOTRUN -> INCOMPLETE
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-bdw-5557u/igt@i915_selftest@live@vma.html>

This failure is not related to my patch, please help to re-report.

- Bhanu

> 
> 
>     Known issues
> 
> Here are the changes found in IGTPW_7448 that come from known issues:
> 
> 
>       IGT changes
> 
> 
>         Issues hit
> 
>   *
> 
>     igt@i915_pm_rpm@module-reload:
> 
>       o fi-cfl-8109u: PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-cfl-8109u/igt@i915_pm_rpm@module-reload.html>
>         -> DMESG-FAIL
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-cfl-8109u/igt@i915_pm_rpm@module-reload.html>
>         (i915#62 <https://gitlab.freedesktop.org/drm/intel/issues/62>)
>   *
> 
>     igt@i915_selftest@live@hangcheck:
> 
>       o bat-dg1-6: PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/bat-dg1-6/igt@i915_selftest@live@hangcheck.html>
>         -> DMESG-FAIL
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/bat-dg1-6/igt@i915_selftest@live@hangcheck.html>
>         (i915#4494
>         <https://gitlab.freedesktop.org/drm/intel/issues/4494> /
>         i915#4957 <https://gitlab.freedesktop.org/drm/intel/issues/4957>)
>   *
> 
>     igt@i915_selftest@live@late_gt_pm:
> 
>       o fi-cfl-8109u: PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-cfl-8109u/igt@i915_selftest@live@late_gt_pm.html>
>         -> DMESG-WARN
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-cfl-8109u/igt@i915_selftest@live@late_gt_pm.html>
>         (i915#5904
>         <https://gitlab.freedesktop.org/drm/intel/issues/5904>) +28
>         similar issues
>   *
> 
>     igt@i915_selftest@live@requests:
> 
>       o
> 
>         fi-pnv-d510: PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-pnv-d510/igt@i915_selftest@live@requests.html>
>         -> DMESG-FAIL
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-pnv-d510/igt@i915_selftest@live@requests.html>
>         (i915#4528 <https://gitlab.freedesktop.org/drm/intel/issues/4528>)
> 
>       o
> 
>         fi-blb-e6850: PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-blb-e6850/igt@i915_selftest@live@requests.html>
>         -> DMESG-FAIL
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-blb-e6850/igt@i915_selftest@live@requests.html>
>         (i915#4528 <https://gitlab.freedesktop.org/drm/intel/issues/4528>)
> 
>   *
> 
>     igt@i915_suspend@basic-s2idle-without-i915:
> 
>       o fi-cfl-8109u: PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-cfl-8109u/igt@i915_suspend@basic-s2idle-without-i915.html>
>         -> DMESG-WARN
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-cfl-8109u/igt@i915_suspend@basic-s2idle-without-i915.html>
>         (i915#5904
>         <https://gitlab.freedesktop.org/drm/intel/issues/5904> / i915#62
>         <https://gitlab.freedesktop.org/drm/intel/issues/62>)
>   *
> 
>     igt@kms_busy@basic@flip:
> 
>       o fi-tgl-u2: PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-tgl-u2/igt@kms_busy@basic@flip.html>
>         -> DMESG-WARN
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-tgl-u2/igt@kms_busy@basic@flip.html>
>         (i915#402 <https://gitlab.freedesktop.org/drm/intel/issues/402>)
>         +1 similar issue
>   *
> 
>     igt@kms_chamelium@common-hpd-after-suspend:
> 
>       o fi-rkl-guc: NOTRUN -> SKIP
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-rkl-guc/igt@kms_chamelium@common-hpd-after-suspend.html>
>         (fdo#111827 <https://bugs.freedesktop.org/show_bug.cgi?id=111827>)
>   *
> 
>     igt@kms_frontbuffer_tracking@basic:
> 
>       o fi-cfl-8109u: PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-cfl-8109u/igt@kms_frontbuffer_tracking@basic.html>
>         -> DMESG-WARN
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-cfl-8109u/igt@kms_frontbuffer_tracking@basic.html>
>         (i915#62 <https://gitlab.freedesktop.org/drm/intel/issues/62>)
>         +12 similar issues
>   *
> 
>     igt@runner@aborted:
> 
>       o fi-blb-e6850: NOTRUN -> FAIL
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-blb-e6850/igt@runner@aborted.html>
>         (fdo#109271
>         <https://bugs.freedesktop.org/show_bug.cgi?id=109271> /
>         i915#2403 <https://gitlab.freedesktop.org/drm/intel/issues/2403>
>         / i915#4312 <https://gitlab.freedesktop.org/drm/intel/issues/4312>)
> 
> 
>         Possible fixes
> 
>   *
> 
>     igt@i915_selftest@live@gt_lrc:
> 
>       o fi-rkl-guc: INCOMPLETE
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-rkl-guc/igt@i915_selftest@live@gt_lrc.html>
>         (i915#4983
>         <https://gitlab.freedesktop.org/drm/intel/issues/4983>) -> PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-rkl-guc/igt@i915_selftest@live@gt_lrc.html>
>   *
> 
>     igt@i915_selftest@live@hangcheck:
> 
>       o bat-dg1-5: DMESG-FAIL
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/bat-dg1-5/igt@i915_selftest@live@hangcheck.html>
>         (i915#4494
>         <https://gitlab.freedesktop.org/drm/intel/issues/4494> /
>         i915#4957
>         <https://gitlab.freedesktop.org/drm/intel/issues/4957>) -> PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/bat-dg1-5/igt@i915_selftest@live@hangcheck.html>
>   *
> 
>     igt@i915_selftest@live@workarounds:
> 
>       o fi-bdw-5557u: INCOMPLETE
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-bdw-5557u/igt@i915_selftest@live@workarounds.html>
>         (i915#6307
>         <https://gitlab.freedesktop.org/drm/intel/issues/6307>) -> PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-bdw-5557u/igt@i915_selftest@live@workarounds.html>
>   *
> 
>     igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions:
> 
>       o fi-bsw-kefka: FAIL
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-bsw-kefka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions.html>
>         (i915#6298
>         <https://gitlab.freedesktop.org/drm/intel/issues/6298>) -> PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-bsw-kefka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions.html>
> 
> {name}: This element is suppressed. This means it is ignored when computing
> the status of the difference (SUCCESS, WARNING, or FAILURE).
> 
> 
>     Build changes
> 
>   * CI: CI-20190529 -> None
>   * IGT: IGT_6553 -> IGTPW_7448
> 
> CI-20190529: 20190529
> CI_DRM_11837: e19040cd831f5ac1c94bb265ebd846c94f6fed80 @ 
> git://anongit.freedesktop.org/gfx-ci/linux
> IGTPW_7448: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/index.html
> IGT_6553: 3cf110f8dcd1f4f02cf84339664b413abdaebf7d @ 
> https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
> 
> 
>     Testlist changes
> 
> +++ 16 lines
> --- 96 lines
> 

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

* [igt-dev] ✓ Fi.CI.BAT: success for tests/kms_color: IGT test cleanup (rev11)
  2022-06-30  8:55 [igt-dev] [i-g-t V7 0/2] tests/kms_color: IGT test cleanup Bhanuprakash Modem
                   ` (3 preceding siblings ...)
  2022-07-01  1:44 ` [igt-dev] ✗ Fi.CI.BAT: failure for tests/kms_color: IGT test cleanup (rev11) Patchwork
@ 2022-07-01  5:34 ` Patchwork
  2022-07-01 21:57 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  2022-07-04  6:47 ` [igt-dev] [i-g-t V7 0/2] tests/kms_color: IGT test cleanup Sharma, Swati2
  6 siblings, 0 replies; 14+ messages in thread
From: Patchwork @ 2022-07-01  5:34 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

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

== Series Details ==

Series: tests/kms_color: IGT test cleanup (rev11)
URL   : https://patchwork.freedesktop.org/series/104972/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_11837 -> IGTPW_7448
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

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

  Missing    (1): bat-dg2-9 

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

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

### IGT changes ###

#### Issues hit ####

  * igt@i915_pm_rpm@module-reload:
    - fi-cfl-8109u:       [PASS][1] -> [DMESG-FAIL][2] ([i915#62])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-cfl-8109u/igt@i915_pm_rpm@module-reload.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-cfl-8109u/igt@i915_pm_rpm@module-reload.html

  * igt@i915_selftest@live@hangcheck:
    - bat-dg1-6:          [PASS][3] -> [DMESG-FAIL][4] ([i915#4494] / [i915#4957])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/bat-dg1-6/igt@i915_selftest@live@hangcheck.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/bat-dg1-6/igt@i915_selftest@live@hangcheck.html

  * igt@i915_selftest@live@late_gt_pm:
    - fi-cfl-8109u:       [PASS][5] -> [DMESG-WARN][6] ([i915#5904]) +28 similar issues
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-cfl-8109u/igt@i915_selftest@live@late_gt_pm.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-cfl-8109u/igt@i915_selftest@live@late_gt_pm.html

  * igt@i915_selftest@live@requests:
    - fi-pnv-d510:        [PASS][7] -> [DMESG-FAIL][8] ([i915#4528])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-pnv-d510/igt@i915_selftest@live@requests.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-pnv-d510/igt@i915_selftest@live@requests.html
    - fi-blb-e6850:       [PASS][9] -> [DMESG-FAIL][10] ([i915#4528])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-blb-e6850/igt@i915_selftest@live@requests.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-blb-e6850/igt@i915_selftest@live@requests.html

  * igt@i915_selftest@live@vma:
    - fi-bdw-5557u:       NOTRUN -> [INCOMPLETE][11] ([i915#6332])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-bdw-5557u/igt@i915_selftest@live@vma.html

  * igt@i915_suspend@basic-s2idle-without-i915:
    - fi-cfl-8109u:       [PASS][12] -> [DMESG-WARN][13] ([i915#5904] / [i915#62])
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-cfl-8109u/igt@i915_suspend@basic-s2idle-without-i915.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-cfl-8109u/igt@i915_suspend@basic-s2idle-without-i915.html

  * igt@kms_busy@basic@flip:
    - fi-tgl-u2:          [PASS][14] -> [DMESG-WARN][15] ([i915#402]) +1 similar issue
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-tgl-u2/igt@kms_busy@basic@flip.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-tgl-u2/igt@kms_busy@basic@flip.html

  * igt@kms_chamelium@common-hpd-after-suspend:
    - fi-rkl-guc:         NOTRUN -> [SKIP][16] ([fdo#111827])
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-rkl-guc/igt@kms_chamelium@common-hpd-after-suspend.html

  * igt@kms_frontbuffer_tracking@basic:
    - fi-cfl-8109u:       [PASS][17] -> [DMESG-WARN][18] ([i915#62]) +12 similar issues
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-cfl-8109u/igt@kms_frontbuffer_tracking@basic.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-cfl-8109u/igt@kms_frontbuffer_tracking@basic.html

  * igt@runner@aborted:
    - fi-blb-e6850:       NOTRUN -> [FAIL][19] ([fdo#109271] / [i915#2403] / [i915#4312])
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-blb-e6850/igt@runner@aborted.html

  
#### Possible fixes ####

  * igt@i915_selftest@live@gt_lrc:
    - fi-rkl-guc:         [INCOMPLETE][20] ([i915#4983]) -> [PASS][21]
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-rkl-guc/igt@i915_selftest@live@gt_lrc.html
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-rkl-guc/igt@i915_selftest@live@gt_lrc.html

  * igt@i915_selftest@live@hangcheck:
    - bat-dg1-5:          [DMESG-FAIL][22] ([i915#4494] / [i915#4957]) -> [PASS][23]
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/bat-dg1-5/igt@i915_selftest@live@hangcheck.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/bat-dg1-5/igt@i915_selftest@live@hangcheck.html

  * igt@i915_selftest@live@workarounds:
    - fi-bdw-5557u:       [INCOMPLETE][24] ([i915#6307]) -> [PASS][25]
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-bdw-5557u/igt@i915_selftest@live@workarounds.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-bdw-5557u/igt@i915_selftest@live@workarounds.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions:
    - fi-bsw-kefka:       [FAIL][26] ([i915#6298]) -> [PASS][27]
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-bsw-kefka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions.html
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-bsw-kefka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions.html

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

  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [i915#2403]: https://gitlab.freedesktop.org/drm/intel/issues/2403
  [i915#3576]: https://gitlab.freedesktop.org/drm/intel/issues/3576
  [i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#4494]: https://gitlab.freedesktop.org/drm/intel/issues/4494
  [i915#4528]: https://gitlab.freedesktop.org/drm/intel/issues/4528
  [i915#4957]: https://gitlab.freedesktop.org/drm/intel/issues/4957
  [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
  [i915#5904]: https://gitlab.freedesktop.org/drm/intel/issues/5904
  [i915#62]: https://gitlab.freedesktop.org/drm/intel/issues/62
  [i915#6297]: https://gitlab.freedesktop.org/drm/intel/issues/6297
  [i915#6298]: https://gitlab.freedesktop.org/drm/intel/issues/6298
  [i915#6307]: https://gitlab.freedesktop.org/drm/intel/issues/6307
  [i915#6332]: https://gitlab.freedesktop.org/drm/intel/issues/6332


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

  * CI: CI-20190529 -> None
  * IGT: IGT_6553 -> IGTPW_7448

  CI-20190529: 20190529
  CI_DRM_11837: e19040cd831f5ac1c94bb265ebd846c94f6fed80 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_7448: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/index.html
  IGT_6553: 3cf110f8dcd1f4f02cf84339664b413abdaebf7d @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git


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

+++ 16 lines
--- 96 lines

== Logs ==

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

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

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

* Re: [igt-dev] ✗ Fi.CI.BAT: failure for tests/kms_color: IGT test cleanup (rev11)
  2022-07-01  3:00   ` Modem, Bhanuprakash
@ 2022-07-01  5:57     ` Vudum, Lakshminarayana
  0 siblings, 0 replies; 14+ messages in thread
From: Vudum, Lakshminarayana @ 2022-07-01  5:57 UTC (permalink / raw)
  To: Modem, Bhanuprakash, igt-dev

Filed a new issue and re-reported.
https://gitlab.freedesktop.org/drm/intel/-/issues/6332
igt@i915_selftest@live@vma - incomplete - No warnings/errors

Lakshmi.
-----Original Message-----
From: Modem, Bhanuprakash <bhanuprakash.modem@intel.com> 
Sent: Thursday, June 30, 2022 8:01 PM
To: igt-dev@lists.freedesktop.org; Vudum, Lakshminarayana <lakshminarayana.vudum@intel.com>
Subject: Re: ✗ Fi.CI.BAT: failure for tests/kms_color: IGT test cleanup (rev11)

Hi Lakshmi,

On Fri-01-07-2022 07:14 am, Patchwork wrote:
> *Patch Details*
> *Series:*	tests/kms_color: IGT test cleanup (rev11)
> *URL:*	https://patchwork.freedesktop.org/series/104972/ 
> <https://patchwork.freedesktop.org/series/104972/>
> *State:*	failure
> *Details:*
> https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/index.html
> <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/index.html>
> 
> 
>   CI Bug Log - changes from CI_DRM_11837 -> IGTPW_7448
> 
> 
>     Summary
> 
> *FAILURE*
> 
> Serious unknown changes coming with IGTPW_7448 absolutely need to be 
> verified manually.
> 
> If you think the reported changes have nothing to do with the changes 
> introduced in IGTPW_7448, please notify your bug team to allow them to 
> document this new failure mode, which will reduce false positives in CI.
> 
> External URL: 
> https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/index.html
> 
> 
>     Participating hosts (42 -> 41)
> 
> Missing (1): bat-dg2-9
> 
> 
>     Possible new issues
> 
> Here are the unknown changes that may have been introduced in IGTPW_7448:
> 
> 
>       IGT changes
> 
> 
>         Possible regressions
> 
>   * igt@i915_selftest@live@vma:
>       o fi-bdw-5557u: NOTRUN -> INCOMPLETE
>         
> <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-bdw-5557u/igt@
> i915_selftest@live@vma.html>

This failure is not related to my patch, please help to re-report.

- Bhanu

> 
> 
>     Known issues
> 
> Here are the changes found in IGTPW_7448 that come from known issues:
> 
> 
>       IGT changes
> 
> 
>         Issues hit
> 
>   *
> 
>     igt@i915_pm_rpm@module-reload:
> 
>       o fi-cfl-8109u: PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-cfl-8109u/igt@i915_pm_rpm@module-reload.html>
>         -> DMESG-FAIL
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-cfl-8109u/igt@i915_pm_rpm@module-reload.html>
>         (i915#62 <https://gitlab.freedesktop.org/drm/intel/issues/62>)
>   *
> 
>     igt@i915_selftest@live@hangcheck:
> 
>       o bat-dg1-6: PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/bat-dg1-6/igt@i915_selftest@live@hangcheck.html>
>         -> DMESG-FAIL
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/bat-dg1-6/igt@i915_selftest@live@hangcheck.html>
>         (i915#4494
>         <https://gitlab.freedesktop.org/drm/intel/issues/4494> /
>         i915#4957 <https://gitlab.freedesktop.org/drm/intel/issues/4957>)
>   *
> 
>     igt@i915_selftest@live@late_gt_pm:
> 
>       o fi-cfl-8109u: PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-cfl-8109u/igt@i915_selftest@live@late_gt_pm.html>
>         -> DMESG-WARN
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-cfl-8109u/igt@i915_selftest@live@late_gt_pm.html>
>         (i915#5904
>         <https://gitlab.freedesktop.org/drm/intel/issues/5904>) +28
>         similar issues
>   *
> 
>     igt@i915_selftest@live@requests:
> 
>       o
> 
>         fi-pnv-d510: PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-pnv-d510/igt@i915_selftest@live@requests.html>
>         -> DMESG-FAIL
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-pnv-d510/igt@i915_selftest@live@requests.html>
>         (i915#4528 
> <https://gitlab.freedesktop.org/drm/intel/issues/4528>)
> 
>       o
> 
>         fi-blb-e6850: PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-blb-e6850/igt@i915_selftest@live@requests.html>
>         -> DMESG-FAIL
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-blb-e6850/igt@i915_selftest@live@requests.html>
>         (i915#4528 
> <https://gitlab.freedesktop.org/drm/intel/issues/4528>)
> 
>   *
> 
>     igt@i915_suspend@basic-s2idle-without-i915:
> 
>       o fi-cfl-8109u: PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-cfl-8109u/igt@i915_suspend@basic-s2idle-without-i915.html>
>         -> DMESG-WARN
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-cfl-8109u/igt@i915_suspend@basic-s2idle-without-i915.html>
>         (i915#5904
>         <https://gitlab.freedesktop.org/drm/intel/issues/5904> / i915#62
>         <https://gitlab.freedesktop.org/drm/intel/issues/62>)
>   *
> 
>     igt@kms_busy@basic@flip:
> 
>       o fi-tgl-u2: PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-tgl-u2/igt@kms_busy@basic@flip.html>
>         -> DMESG-WARN
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-tgl-u2/igt@kms_busy@basic@flip.html>
>         (i915#402 <https://gitlab.freedesktop.org/drm/intel/issues/402>)
>         +1 similar issue
>   *
> 
>     igt@kms_chamelium@common-hpd-after-suspend:
> 
>       o fi-rkl-guc: NOTRUN -> SKIP
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-rkl-guc/igt@kms_chamelium@common-hpd-after-suspend.html>
>         (fdo#111827 <https://bugs.freedesktop.org/show_bug.cgi?id=111827>)
>   *
> 
>     igt@kms_frontbuffer_tracking@basic:
> 
>       o fi-cfl-8109u: PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-cfl-8109u/igt@kms_frontbuffer_tracking@basic.html>
>         -> DMESG-WARN
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-cfl-8109u/igt@kms_frontbuffer_tracking@basic.html>
>         (i915#62 <https://gitlab.freedesktop.org/drm/intel/issues/62>)
>         +12 similar issues
>   *
> 
>     igt@runner@aborted:
> 
>       o fi-blb-e6850: NOTRUN -> FAIL
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-blb-e6850/igt@runner@aborted.html>
>         (fdo#109271
>         <https://bugs.freedesktop.org/show_bug.cgi?id=109271> /
>         i915#2403 <https://gitlab.freedesktop.org/drm/intel/issues/2403>
>         / i915#4312 
> <https://gitlab.freedesktop.org/drm/intel/issues/4312>)
> 
> 
>         Possible fixes
> 
>   *
> 
>     igt@i915_selftest@live@gt_lrc:
> 
>       o fi-rkl-guc: INCOMPLETE
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-rkl-guc/igt@i915_selftest@live@gt_lrc.html>
>         (i915#4983
>         <https://gitlab.freedesktop.org/drm/intel/issues/4983>) -> PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-rkl-guc/igt@i915_selftest@live@gt_lrc.html>
>   *
> 
>     igt@i915_selftest@live@hangcheck:
> 
>       o bat-dg1-5: DMESG-FAIL
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/bat-dg1-5/igt@i915_selftest@live@hangcheck.html>
>         (i915#4494
>         <https://gitlab.freedesktop.org/drm/intel/issues/4494> /
>         i915#4957
>         <https://gitlab.freedesktop.org/drm/intel/issues/4957>) -> PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/bat-dg1-5/igt@i915_selftest@live@hangcheck.html>
>   *
> 
>     igt@i915_selftest@live@workarounds:
> 
>       o fi-bdw-5557u: INCOMPLETE
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-bdw-5557u/igt@i915_selftest@live@workarounds.html>
>         (i915#6307
>         <https://gitlab.freedesktop.org/drm/intel/issues/6307>) -> PASS
>         <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-bdw-5557u/igt@i915_selftest@live@workarounds.html>
>   *
> 
>     igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions:
> 
>       o fi-bsw-kefka: FAIL
>         <https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/fi-bsw-kefka/igt@kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions.html>
>         (i915#6298
>         <https://gitlab.freedesktop.org/drm/intel/issues/6298>) -> PASS
>         
> <https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/fi-bsw-kefka/igt@
> kms_cursor_legacy@basic-busy-flip-before-cursor@atomic-transitions.htm
> l>
> 
> {name}: This element is suppressed. This means it is ignored when 
> computing the status of the difference (SUCCESS, WARNING, or FAILURE).
> 
> 
>     Build changes
> 
>   * CI: CI-20190529 -> None
>   * IGT: IGT_6553 -> IGTPW_7448
> 
> CI-20190529: 20190529
> CI_DRM_11837: e19040cd831f5ac1c94bb265ebd846c94f6fed80 @ 
> git://anongit.freedesktop.org/gfx-ci/linux
> IGTPW_7448: 
> https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/index.html
> IGT_6553: 3cf110f8dcd1f4f02cf84339664b413abdaebf7d @ 
> https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
> 
> 
>     Testlist changes
> 
> +++ 16 lines
> --- 96 lines
> 


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

* [igt-dev] ✗ Fi.CI.IGT: failure for tests/kms_color: IGT test cleanup (rev11)
  2022-06-30  8:55 [igt-dev] [i-g-t V7 0/2] tests/kms_color: IGT test cleanup Bhanuprakash Modem
                   ` (4 preceding siblings ...)
  2022-07-01  5:34 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
@ 2022-07-01 21:57 ` Patchwork
  2022-07-04  6:47 ` [igt-dev] [i-g-t V7 0/2] tests/kms_color: IGT test cleanup Sharma, Swati2
  6 siblings, 0 replies; 14+ messages in thread
From: Patchwork @ 2022-07-01 21:57 UTC (permalink / raw)
  To: Modem, Bhanuprakash; +Cc: igt-dev

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

== Series Details ==

Series: tests/kms_color: IGT test cleanup (rev11)
URL   : https://patchwork.freedesktop.org/series/104972/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_11837_full -> IGTPW_7448_full
====================================================

Summary
-------

  **FAILURE**

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

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

Participating hosts (13 -> 10)
------------------------------

  Missing    (3): pig-skl-6260u pig-kbl-iris pig-glk-j5005 

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

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

### IGT changes ###

#### Possible regressions ####

  * igt@kms_color@deep-color:
    - shard-iclb:         NOTRUN -> [SKIP][1]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb8/igt@kms_color@deep-color.html
    - shard-tglb:         NOTRUN -> [SKIP][2]
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb7/igt@kms_color@deep-color.html

  * igt@kms_cursor_legacy@flip-vs-cursor@varying-size:
    - shard-iclb:         [PASS][3] -> [FAIL][4]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-iclb5/igt@kms_cursor_legacy@flip-vs-cursor@varying-size.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb7/igt@kms_cursor_legacy@flip-vs-cursor@varying-size.html

  
#### Suppressed ####

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * {igt@gem_exec_capture@capture-recoverable}:
    - shard-tglb:         NOTRUN -> [SKIP][5]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb3/igt@gem_exec_capture@capture-recoverable.html
    - shard-iclb:         NOTRUN -> [SKIP][6]
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb5/igt@gem_exec_capture@capture-recoverable.html
    - {shard-rkl}:        NOTRUN -> [SKIP][7]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-rkl-5/igt@gem_exec_capture@capture-recoverable.html
    - {shard-dg1}:        NOTRUN -> [SKIP][8]
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-dg1-12/igt@gem_exec_capture@capture-recoverable.html
    - {shard-tglu}:       NOTRUN -> [SKIP][9]
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglu-1/igt@gem_exec_capture@capture-recoverable.html

  * igt@i915_selftest@live@guc:
    - {shard-dg1}:        NOTRUN -> [FAIL][10]
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-dg1-15/igt@i915_selftest@live@guc.html

  
New tests
---------

  New tests have been introduced between CI_DRM_11837_full and IGTPW_7448_full:

### New IGT tests (174) ###

  * igt@kms_color@ctm-0-25@pipe-a-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.45, 0.47] s

  * igt@kms_color@ctm-0-25@pipe-a-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.59, 0.72] s

  * igt@kms_color@ctm-0-25@pipe-a-hdmi-a-1:
    - Statuses : 3 pass(s)
    - Exec time: [0.24, 0.78] s

  * igt@kms_color@ctm-0-25@pipe-a-vga-1:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@ctm-0-25@pipe-b-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.55, 0.59] s

  * igt@kms_color@ctm-0-25@pipe-b-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.35, 1.48] s

  * igt@kms_color@ctm-0-25@pipe-b-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.23, 0.43] s

  * igt@kms_color@ctm-0-25@pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.56] s

  * igt@kms_color@ctm-0-25@pipe-b-vga-1:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@ctm-0-25@pipe-c-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.54, 0.60] s

  * igt@kms_color@ctm-0-25@pipe-c-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.37, 1.47] s

  * igt@kms_color@ctm-0-25@pipe-c-hdmi-a-1:
    - Statuses : 3 pass(s)
    - Exec time: [0.22, 0.55] s

  * igt@kms_color@ctm-0-25@pipe-d-edp-1:
    - Statuses : 1 pass(s)
    - Exec time: [1.36] s

  * igt@kms_color@ctm-0-25@pipe-d-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.22, 0.44] s

  * igt@kms_color@ctm-0-50@pipe-a-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.44, 0.48] s

  * igt@kms_color@ctm-0-50@pipe-a-edp-1:
    - Statuses : 3 pass(s)
    - Exec time: [0.56, 0.74] s

  * igt@kms_color@ctm-0-50@pipe-a-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.49, 0.56] s

  * igt@kms_color@ctm-0-50@pipe-a-vga-1:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@ctm-0-50@pipe-b-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.53, 0.59] s

  * igt@kms_color@ctm-0-50@pipe-b-edp-1:
    - Statuses : 3 pass(s)
    - Exec time: [1.33, 1.52] s

  * igt@kms_color@ctm-0-50@pipe-b-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.42, 0.44] s

  * igt@kms_color@ctm-0-50@pipe-b-vga-1:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@ctm-0-50@pipe-c-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.52, 0.59] s

  * igt@kms_color@ctm-0-50@pipe-c-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.34, 1.53] s

  * igt@kms_color@ctm-0-50@pipe-c-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.43, 0.45] s

  * igt@kms_color@ctm-0-50@pipe-d-edp-1:
    - Statuses : 1 pass(s)
    - Exec time: [1.34] s

  * igt@kms_color@ctm-0-50@pipe-d-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.45, 0.46] s

  * igt@kms_color@ctm-0-75@pipe-a-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.46, 0.47] s

  * igt@kms_color@ctm-0-75@pipe-a-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.58, 0.69] s

  * igt@kms_color@ctm-0-75@pipe-a-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.79] s

  * igt@kms_color@ctm-0-75@pipe-a-vga-1:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@ctm-0-75@pipe-b-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.56, 0.60] s

  * igt@kms_color@ctm-0-75@pipe-b-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.33, 1.49] s

  * igt@kms_color@ctm-0-75@pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.59] s

  * igt@kms_color@ctm-0-75@pipe-b-vga-1:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@ctm-0-75@pipe-c-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.54, 0.61] s

  * igt@kms_color@ctm-0-75@pipe-c-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.33, 1.47] s

  * igt@kms_color@ctm-0-75@pipe-c-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.58] s

  * igt@kms_color@ctm-0-75@pipe-d-edp-1:
    - Statuses : 1 pass(s)
    - Exec time: [1.34] s

  * igt@kms_color@ctm-blue-to-red@pipe-a-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.47, 0.48] s

  * igt@kms_color@ctm-blue-to-red@pipe-a-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.57, 0.71] s

  * igt@kms_color@ctm-blue-to-red@pipe-a-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.24, 0.82] s

  * igt@kms_color@ctm-blue-to-red@pipe-a-vga-1:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@ctm-blue-to-red@pipe-b-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.54, 0.59] s

  * igt@kms_color@ctm-blue-to-red@pipe-b-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.37, 1.46] s

  * igt@kms_color@ctm-blue-to-red@pipe-b-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.23] s

  * igt@kms_color@ctm-blue-to-red@pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.57] s

  * igt@kms_color@ctm-blue-to-red@pipe-b-vga-1:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@ctm-blue-to-red@pipe-c-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.54, 0.61] s

  * igt@kms_color@ctm-blue-to-red@pipe-c-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.32, 1.47] s

  * igt@kms_color@ctm-blue-to-red@pipe-c-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.23, 0.60] s

  * igt@kms_color@ctm-blue-to-red@pipe-d-edp-1:
    - Statuses : 1 pass(s)
    - Exec time: [1.34] s

  * igt@kms_color@ctm-blue-to-red@pipe-d-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.23] s

  * igt@kms_color@ctm-green-to-red@pipe-a-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.48, 0.49] s

  * igt@kms_color@ctm-green-to-red@pipe-a-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.57, 0.71] s

  * igt@kms_color@ctm-green-to-red@pipe-a-hdmi-a-1:
    - Statuses : 3 pass(s)
    - Exec time: [0.25, 0.81] s

  * igt@kms_color@ctm-green-to-red@pipe-a-vga-1:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@ctm-green-to-red@pipe-b-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.53, 0.60] s

  * igt@kms_color@ctm-green-to-red@pipe-b-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.33, 1.46] s

  * igt@kms_color@ctm-green-to-red@pipe-b-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.24, 0.44] s

  * igt@kms_color@ctm-green-to-red@pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.57] s

  * igt@kms_color@ctm-green-to-red@pipe-b-vga-1:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@ctm-green-to-red@pipe-c-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.54, 0.61] s

  * igt@kms_color@ctm-green-to-red@pipe-c-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.33, 1.47] s

  * igt@kms_color@ctm-green-to-red@pipe-c-hdmi-a-1:
    - Statuses : 3 pass(s)
    - Exec time: [0.22, 0.56] s

  * igt@kms_color@ctm-green-to-red@pipe-d-edp-1:
    - Statuses : 1 pass(s)
    - Exec time: [1.35] s

  * igt@kms_color@ctm-green-to-red@pipe-d-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.22, 0.45] s

  * igt@kms_color@ctm-max@pipe-a-dp-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.47] s

  * igt@kms_color@ctm-max@pipe-a-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.56, 0.71] s

  * igt@kms_color@ctm-max@pipe-a-hdmi-a-1:
    - Statuses : 3 pass(s)
    - Exec time: [0.23, 0.79] s

  * igt@kms_color@ctm-max@pipe-a-vga-1:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@ctm-max@pipe-b-dp-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.59] s

  * igt@kms_color@ctm-max@pipe-b-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.34, 1.48] s

  * igt@kms_color@ctm-max@pipe-b-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.22, 0.40] s

  * igt@kms_color@ctm-max@pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.56] s

  * igt@kms_color@ctm-max@pipe-b-vga-1:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@ctm-max@pipe-c-dp-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.60] s

  * igt@kms_color@ctm-max@pipe-c-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.33, 1.47] s

  * igt@kms_color@ctm-max@pipe-c-hdmi-a-1:
    - Statuses : 3 pass(s)
    - Exec time: [0.22, 0.56] s

  * igt@kms_color@ctm-max@pipe-d-edp-1:
    - Statuses : 1 pass(s)
    - Exec time: [1.34] s

  * igt@kms_color@ctm-max@pipe-d-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.22, 0.43] s

  * igt@kms_color@ctm-negative@pipe-a-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.45, 0.48] s

  * igt@kms_color@ctm-negative@pipe-a-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.59, 0.69] s

  * igt@kms_color@ctm-negative@pipe-a-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.83] s

  * igt@kms_color@ctm-negative@pipe-a-vga-1:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@ctm-negative@pipe-b-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.54, 0.58] s

  * igt@kms_color@ctm-negative@pipe-b-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.37, 1.49] s

  * igt@kms_color@ctm-negative@pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.59] s

  * igt@kms_color@ctm-negative@pipe-b-vga-1:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@ctm-negative@pipe-c-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.54, 0.59] s

  * igt@kms_color@ctm-negative@pipe-c-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.39, 1.47] s

  * igt@kms_color@ctm-negative@pipe-c-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.66] s

  * igt@kms_color@ctm-negative@pipe-d-edp-1:
    - Statuses : 1 pass(s)
    - Exec time: [1.32] s

  * igt@kms_color@ctm-red-to-blue:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@ctm-red-to-blue@pipe-a-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.45, 0.48] s

  * igt@kms_color@ctm-red-to-blue@pipe-a-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.56, 0.69] s

  * igt@kms_color@ctm-red-to-blue@pipe-a-hdmi-a-1:
    - Statuses : 3 pass(s)
    - Exec time: [0.24, 0.79] s

  * igt@kms_color@ctm-red-to-blue@pipe-a-vga-1:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@ctm-red-to-blue@pipe-b-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.55, 0.59] s

  * igt@kms_color@ctm-red-to-blue@pipe-b-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.35, 1.45] s

  * igt@kms_color@ctm-red-to-blue@pipe-b-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.24, 0.42] s

  * igt@kms_color@ctm-red-to-blue@pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.58] s

  * igt@kms_color@ctm-red-to-blue@pipe-b-vga-1:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@ctm-red-to-blue@pipe-c-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.54, 0.59] s

  * igt@kms_color@ctm-red-to-blue@pipe-c-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.33, 1.48] s

  * igt@kms_color@ctm-red-to-blue@pipe-c-hdmi-a-1:
    - Statuses : 3 pass(s)
    - Exec time: [0.23, 0.61] s

  * igt@kms_color@ctm-red-to-blue@pipe-d-edp-1:
    - Statuses : 1 pass(s)
    - Exec time: [1.35] s

  * igt@kms_color@ctm-red-to-blue@pipe-d-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.22, 0.45] s

  * igt@kms_color@degamma@pipe-a-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.49, 0.52] s

  * igt@kms_color@degamma@pipe-a-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.58, 0.72] s

  * igt@kms_color@degamma@pipe-a-hdmi-a-1:
    - Statuses : 3 pass(s)
    - Exec time: [0.23, 0.83] s

  * igt@kms_color@degamma@pipe-a-vga-1:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@degamma@pipe-b-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.53, 0.65] s

  * igt@kms_color@degamma@pipe-b-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.33, 1.50] s

  * igt@kms_color@degamma@pipe-b-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.25, 0.43] s

  * igt@kms_color@degamma@pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.62] s

  * igt@kms_color@degamma@pipe-b-vga-1:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@degamma@pipe-c-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.54, 0.65] s

  * igt@kms_color@degamma@pipe-c-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.34, 1.47] s

  * igt@kms_color@degamma@pipe-c-hdmi-a-1:
    - Statuses : 3 pass(s)
    - Exec time: [0.22, 0.63] s

  * igt@kms_color@degamma@pipe-d-edp-1:
    - Statuses : 1 pass(s)
    - Exec time: [1.34] s

  * igt@kms_color@degamma@pipe-d-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.23, 0.42] s

  * igt@kms_color@gamma@pipe-a-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.47, 0.51] s

  * igt@kms_color@gamma@pipe-a-edp-1:
    - Statuses : 3 pass(s)
    - Exec time: [0.59, 0.82] s

  * igt@kms_color@gamma@pipe-a-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.23, 0.79] s

  * igt@kms_color@gamma@pipe-a-vga-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.33] s

  * igt@kms_color@gamma@pipe-b-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.52, 0.63] s

  * igt@kms_color@gamma@pipe-b-edp-1:
    - Statuses : 3 pass(s)
    - Exec time: [1.34, 1.55] s

  * igt@kms_color@gamma@pipe-b-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.23] s

  * igt@kms_color@gamma@pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.56] s

  * igt@kms_color@gamma@pipe-b-vga-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.36] s

  * igt@kms_color@gamma@pipe-c-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.52, 0.63] s

  * igt@kms_color@gamma@pipe-c-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.33, 1.60] s

  * igt@kms_color@gamma@pipe-c-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.22, 0.58] s

  * igt@kms_color@gamma@pipe-d-edp-1:
    - Statuses : 1 pass(s)
    - Exec time: [1.33] s

  * igt@kms_color@gamma@pipe-d-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.22] s

  * igt@kms_color@invalid-ctm-matrix-sizes@pipe-a:
    - Statuses : 7 pass(s)
    - Exec time: [0.00, 0.05] s

  * igt@kms_color@invalid-ctm-matrix-sizes@pipe-b:
    - Statuses : 7 pass(s)
    - Exec time: [0.00, 0.05] s

  * igt@kms_color@invalid-ctm-matrix-sizes@pipe-c:
    - Statuses : 6 pass(s)
    - Exec time: [0.00, 0.07] s

  * igt@kms_color@invalid-ctm-matrix-sizes@pipe-d:
    - Statuses : 2 pass(s)
    - Exec time: [0.01] s

  * igt@kms_color@invalid-degamma-lut-sizes@pipe-a:
    - Statuses : 8 pass(s) 1 skip(s)
    - Exec time: [0.0, 0.37] s

  * igt@kms_color@invalid-degamma-lut-sizes@pipe-b:
    - Statuses : 8 pass(s) 1 skip(s)
    - Exec time: [0.0, 0.00] s

  * igt@kms_color@invalid-degamma-lut-sizes@pipe-c:
    - Statuses : 8 pass(s)
    - Exec time: [0.0, 0.01] s

  * igt@kms_color@invalid-degamma-lut-sizes@pipe-d:
    - Statuses : 3 pass(s)
    - Exec time: [0.0, 0.00] s

  * igt@kms_color@invalid-gamma-lut-sizes:
    - Statuses :
    - Exec time: [None] s

  * igt@kms_color@invalid-gamma-lut-sizes@pipe-d:
    - Statuses : 1 pass(s)
    - Exec time: [0.00] s

  * igt@kms_color@legacy-gamma-reset@pipe-a-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.08, 0.12] s

  * igt@kms_color@legacy-gamma-reset@pipe-a-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.37, 0.38] s

  * igt@kms_color@legacy-gamma-reset@pipe-a-hdmi-a-1:
    - Statuses : 3 pass(s)
    - Exec time: [0.08, 0.50] s

  * igt@kms_color@legacy-gamma-reset@pipe-a-vga-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.07] s

  * igt@kms_color@legacy-gamma-reset@pipe-b-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.01, 0.02] s

  * igt@kms_color@legacy-gamma-reset@pipe-b-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.02] s

  * igt@kms_color@legacy-gamma-reset@pipe-b-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.02] s

  * igt@kms_color@legacy-gamma-reset@pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.03] s

  * igt@kms_color@legacy-gamma-reset@pipe-b-vga-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.00] s

  * igt@kms_color@legacy-gamma-reset@pipe-c-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.01, 0.02] s

  * igt@kms_color@legacy-gamma-reset@pipe-c-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.01, 0.02] s

  * igt@kms_color@legacy-gamma-reset@pipe-c-hdmi-a-1:
    - Statuses : 3 pass(s)
    - Exec time: [0.02, 0.03] s

  * igt@kms_color@legacy-gamma-reset@pipe-d-edp-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.02] s

  * igt@kms_color@legacy-gamma-reset@pipe-d-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.02] s

  * igt@kms_color@legacy-gamma@pipe-a-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.43, 0.55] s

  * igt@kms_color@legacy-gamma@pipe-a-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.58, 0.70] s

  * igt@kms_color@legacy-gamma@pipe-a-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.26, 0.84] s

  * igt@kms_color@legacy-gamma@pipe-a-vga-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.35] s

  * igt@kms_color@legacy-gamma@pipe-b-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.55, 0.67] s

  * igt@kms_color@legacy-gamma@pipe-b-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.36, 1.50] s

  * igt@kms_color@legacy-gamma@pipe-b-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.24] s

  * igt@kms_color@legacy-gamma@pipe-b-hdmi-a-2:
    - Statuses : 1 pass(s)
    - Exec time: [0.66] s

  * igt@kms_color@legacy-gamma@pipe-b-vga-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.38] s

  * igt@kms_color@legacy-gamma@pipe-c-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.54, 0.68] s

  * igt@kms_color@legacy-gamma@pipe-c-edp-1:
    - Statuses : 2 pass(s)
    - Exec time: [1.34, 1.47] s

  * igt@kms_color@legacy-gamma@pipe-c-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.23, 0.63] s

  * igt@kms_color@legacy-gamma@pipe-d-edp-1:
    - Statuses : 1 pass(s)
    - Exec time: [1.34] s

  * igt@kms_color@legacy-gamma@pipe-d-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.23] s

  

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_create@create-massive:
    - shard-apl:          NOTRUN -> [DMESG-WARN][11] ([i915#4991])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-apl4/igt@gem_create@create-massive.html

  * igt@gem_ctx_isolation@dirty-create@bcs0:
    - shard-glk:          [PASS][12] -> [INCOMPLETE][13] ([i915#6310])
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-glk6/igt@gem_ctx_isolation@dirty-create@bcs0.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk5/igt@gem_ctx_isolation@dirty-create@bcs0.html

  * igt@gem_ctx_param@set-priority-not-supported:
    - shard-tglb:         NOTRUN -> [SKIP][14] ([fdo#109314])
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb2/igt@gem_ctx_param@set-priority-not-supported.html
    - shard-iclb:         NOTRUN -> [SKIP][15] ([fdo#109314])
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb1/igt@gem_ctx_param@set-priority-not-supported.html

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

  * igt@gem_exec_balancer@parallel-contexts:
    - shard-iclb:         [PASS][17] -> [SKIP][18] ([i915#4525]) +2 similar issues
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-iclb4/igt@gem_exec_balancer@parallel-contexts.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb3/igt@gem_exec_balancer@parallel-contexts.html

  * igt@gem_exec_fair@basic-none-share@rcs0:
    - shard-tglb:         [PASS][19] -> [FAIL][20] ([i915#2842])
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-tglb2/igt@gem_exec_fair@basic-none-share@rcs0.html
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb1/igt@gem_exec_fair@basic-none-share@rcs0.html

  * igt@gem_exec_fair@basic-none-solo@rcs0:
    - shard-glk:          NOTRUN -> [FAIL][21] ([i915#2842])
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk6/igt@gem_exec_fair@basic-none-solo@rcs0.html

  * igt@gem_exec_fair@basic-none@vcs0:
    - shard-apl:          [PASS][22] -> [FAIL][23] ([i915#2842])
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-apl6/igt@gem_exec_fair@basic-none@vcs0.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-apl2/igt@gem_exec_fair@basic-none@vcs0.html

  * igt@gem_exec_fair@basic-none@vcs1:
    - shard-iclb:         NOTRUN -> [FAIL][24] ([i915#2842])
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb1/igt@gem_exec_fair@basic-none@vcs1.html
    - shard-kbl:          NOTRUN -> [FAIL][25] ([i915#2842]) +3 similar issues
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl7/igt@gem_exec_fair@basic-none@vcs1.html

  * igt@gem_exec_fair@basic-pace-share@rcs0:
    - shard-glk:          [PASS][26] -> [FAIL][27] ([i915#2842])
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-glk1/igt@gem_exec_fair@basic-pace-share@rcs0.html
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk5/igt@gem_exec_fair@basic-pace-share@rcs0.html

  * igt@gem_exec_fair@basic-pace@vecs0:
    - shard-kbl:          [PASS][28] -> [FAIL][29] ([i915#2842])
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-kbl6/igt@gem_exec_fair@basic-pace@vecs0.html
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl1/igt@gem_exec_fair@basic-pace@vecs0.html

  * igt@gem_exec_params@no-blt:
    - shard-iclb:         NOTRUN -> [SKIP][30] ([fdo#109283])
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb8/igt@gem_exec_params@no-blt.html
    - shard-tglb:         NOTRUN -> [SKIP][31] ([fdo#109283])
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb7/igt@gem_exec_params@no-blt.html

  * igt@gem_lmem_swapping@heavy-multi:
    - shard-apl:          NOTRUN -> [SKIP][32] ([fdo#109271] / [i915#4613]) +4 similar issues
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-apl3/igt@gem_lmem_swapping@heavy-multi.html

  * igt@gem_lmem_swapping@heavy-verify-multi-ccs:
    - shard-tglb:         NOTRUN -> [SKIP][33] ([i915#4613]) +1 similar issue
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb2/igt@gem_lmem_swapping@heavy-verify-multi-ccs.html

  * igt@gem_lmem_swapping@verify-ccs:
    - shard-glk:          NOTRUN -> [SKIP][34] ([fdo#109271] / [i915#4613]) +1 similar issue
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk3/igt@gem_lmem_swapping@verify-ccs.html
    - shard-iclb:         NOTRUN -> [SKIP][35] ([i915#4613]) +1 similar issue
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb5/igt@gem_lmem_swapping@verify-ccs.html
    - shard-kbl:          NOTRUN -> [SKIP][36] ([fdo#109271] / [i915#4613]) +3 similar issues
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl7/igt@gem_lmem_swapping@verify-ccs.html

  * igt@gem_pread@exhaustion:
    - shard-apl:          NOTRUN -> [WARN][37] ([i915#2658])
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-apl3/igt@gem_pread@exhaustion.html

  * igt@gem_render_copy@y-tiled-to-vebox-linear:
    - shard-iclb:         NOTRUN -> [SKIP][38] ([i915#768])
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb1/igt@gem_render_copy@y-tiled-to-vebox-linear.html

  * igt@gem_userptr_blits@unsync-unmap-after-close:
    - shard-tglb:         NOTRUN -> [SKIP][39] ([i915#3297])
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb7/igt@gem_userptr_blits@unsync-unmap-after-close.html
    - shard-iclb:         NOTRUN -> [SKIP][40] ([i915#3297])
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb4/igt@gem_userptr_blits@unsync-unmap-after-close.html

  * igt@gen9_exec_parse@allowed-all:
    - shard-kbl:          [PASS][41] -> [DMESG-WARN][42] ([i915#5566] / [i915#716])
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-kbl4/igt@gen9_exec_parse@allowed-all.html
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl7/igt@gen9_exec_parse@allowed-all.html

  * igt@gen9_exec_parse@unaligned-jump:
    - shard-tglb:         NOTRUN -> [SKIP][43] ([i915#2527] / [i915#2856])
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb7/igt@gen9_exec_parse@unaligned-jump.html
    - shard-iclb:         NOTRUN -> [SKIP][44] ([i915#2856])
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb6/igt@gen9_exec_parse@unaligned-jump.html

  * igt@i915_pm_rpm@modeset-lpsp:
    - shard-apl:          NOTRUN -> [SKIP][45] ([fdo#109271]) +148 similar issues
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-apl6/igt@i915_pm_rpm@modeset-lpsp.html

  * igt@i915_selftest@live@hangcheck:
    - shard-snb:          [PASS][46] -> [INCOMPLETE][47] ([i915#3921])
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-snb5/igt@i915_selftest@live@hangcheck.html
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-snb7/igt@i915_selftest@live@hangcheck.html

  * igt@kms_atomic_transition@plane-all-modeset-transition-fencing:
    - shard-tglb:         NOTRUN -> [SKIP][48] ([i915#1769])
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb2/igt@kms_atomic_transition@plane-all-modeset-transition-fencing.html
    - shard-iclb:         NOTRUN -> [SKIP][49] ([i915#1769])
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb7/igt@kms_atomic_transition@plane-all-modeset-transition-fencing.html

  * igt@kms_big_fb@x-tiled-32bpp-rotate-90:
    - shard-tglb:         NOTRUN -> [SKIP][50] ([fdo#111614])
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb3/igt@kms_big_fb@x-tiled-32bpp-rotate-90.html
    - shard-iclb:         NOTRUN -> [SKIP][51] ([fdo#110725] / [fdo#111614])
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb2/igt@kms_big_fb@x-tiled-32bpp-rotate-90.html

  * igt@kms_ccs@pipe-a-bad-aux-stride-y_tiled_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][52] ([i915#3689])
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb2/igt@kms_ccs@pipe-a-bad-aux-stride-y_tiled_ccs.html

  * igt@kms_ccs@pipe-a-crc-primary-basic-4_tiled_dg2_rc_ccs_cc:
    - shard-tglb:         NOTRUN -> [SKIP][53] ([i915#6095]) +1 similar issue
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb3/igt@kms_ccs@pipe-a-crc-primary-basic-4_tiled_dg2_rc_ccs_cc.html

  * igt@kms_ccs@pipe-a-random-ccs-data-y_tiled_gen12_rc_ccs_cc:
    - shard-apl:          NOTRUN -> [SKIP][54] ([fdo#109271] / [i915#3886]) +4 similar issues
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-apl6/igt@kms_ccs@pipe-a-random-ccs-data-y_tiled_gen12_rc_ccs_cc.html
    - shard-kbl:          NOTRUN -> [SKIP][55] ([fdo#109271] / [i915#3886]) +5 similar issues
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl1/igt@kms_ccs@pipe-a-random-ccs-data-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-b-bad-pixel-format-4_tiled_dg2_rc_ccs_cc:
    - shard-tglb:         NOTRUN -> [SKIP][56] ([i915#3689] / [i915#6095]) +1 similar issue
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb7/igt@kms_ccs@pipe-b-bad-pixel-format-4_tiled_dg2_rc_ccs_cc.html

  * igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_mc_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][57] ([i915#3689] / [i915#3886])
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb5/igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_mc_ccs.html
    - shard-glk:          NOTRUN -> [SKIP][58] ([fdo#109271] / [i915#3886])
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk3/igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_mc_ccs.html
    - shard-iclb:         NOTRUN -> [SKIP][59] ([fdo#109278] / [i915#3886])
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb6/igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-b-missing-ccs-buffer-yf_tiled_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][60] ([fdo#111615] / [i915#3689])
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb7/igt@kms_ccs@pipe-b-missing-ccs-buffer-yf_tiled_ccs.html

  * igt@kms_ccs@pipe-c-crc-primary-basic-4_tiled_dg2_mc_ccs:
    - shard-glk:          NOTRUN -> [SKIP][61] ([fdo#109271]) +54 similar issues
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk2/igt@kms_ccs@pipe-c-crc-primary-basic-4_tiled_dg2_mc_ccs.html

  * igt@kms_chamelium@dp-crc-single:
    - shard-apl:          NOTRUN -> [SKIP][62] ([fdo#109271] / [fdo#111827]) +10 similar issues
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-apl4/igt@kms_chamelium@dp-crc-single.html

  * igt@kms_chamelium@dp-hpd:
    - shard-glk:          NOTRUN -> [SKIP][63] ([fdo#109271] / [fdo#111827]) +3 similar issues
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk6/igt@kms_chamelium@dp-hpd.html
    - shard-iclb:         NOTRUN -> [SKIP][64] ([fdo#109284] / [fdo#111827])
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb1/igt@kms_chamelium@dp-hpd.html
    - shard-snb:          NOTRUN -> [SKIP][65] ([fdo#109271] / [fdo#111827]) +1 similar issue
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-snb2/igt@kms_chamelium@dp-hpd.html

  * {igt@kms_color@ctm-0-75@pipe-b-vga-1} (NEW):
    - shard-snb:          NOTRUN -> [SKIP][66] ([fdo#109271]) +75 similar issues
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-snb7/igt@kms_color@ctm-0-75@pipe-b-vga-1.html

  * {igt@kms_color@ctm-red-to-blue} (NEW):
    - {shard-rkl}:        NOTRUN -> [SKIP][67] ([i915#4098])
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-rkl-1/igt@kms_color@ctm-red-to-blue.html

  * igt@kms_color_chamelium@pipe-a-degamma:
    - shard-kbl:          NOTRUN -> [SKIP][68] ([fdo#109271] / [fdo#111827]) +7 similar issues
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl1/igt@kms_color_chamelium@pipe-a-degamma.html

  * igt@kms_color_chamelium@pipe-d-ctm-limited-range:
    - shard-tglb:         NOTRUN -> [SKIP][69] ([fdo#109284] / [fdo#111827]) +1 similar issue
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb2/igt@kms_color_chamelium@pipe-d-ctm-limited-range.html
    - shard-iclb:         NOTRUN -> [SKIP][70] ([fdo#109278] / [fdo#109284] / [fdo#111827])
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb8/igt@kms_color_chamelium@pipe-d-ctm-limited-range.html

  * igt@kms_content_protection@legacy:
    - shard-apl:          NOTRUN -> [TIMEOUT][71] ([i915#1319]) +1 similar issue
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-apl6/igt@kms_content_protection@legacy.html

  * igt@kms_content_protection@srm:
    - shard-kbl:          NOTRUN -> [TIMEOUT][72] ([i915#1319])
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl7/igt@kms_content_protection@srm.html

  * igt@kms_cursor_legacy@cursor-vs-flip@atomic-transitions-varying-size:
    - shard-iclb:         [PASS][73] -> [FAIL][74] ([i915#5072])
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-iclb8/igt@kms_cursor_legacy@cursor-vs-flip@atomic-transitions-varying-size.html
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb7/igt@kms_cursor_legacy@cursor-vs-flip@atomic-transitions-varying-size.html

  * igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size:
    - shard-glk:          [PASS][75] -> [FAIL][76] ([i915#2346])
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-glk9/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size.html
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk5/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions-varying-size.html

  * igt@kms_cursor_legacy@flip-vs-cursor@toggle:
    - shard-iclb:         [PASS][77] -> [FAIL][78] ([i915#2346]) +2 similar issues
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-iclb5/igt@kms_cursor_legacy@flip-vs-cursor@toggle.html
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb7/igt@kms_cursor_legacy@flip-vs-cursor@toggle.html

  * igt@kms_dither@fb-8bpc-vs-panel-8bpc@pipe-a-edp-1:
    - shard-tglb:         NOTRUN -> [SKIP][79] ([i915#6076])
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb5/igt@kms_dither@fb-8bpc-vs-panel-8bpc@pipe-a-edp-1.html

  * igt@kms_draw_crc@draw-method-xrgb2101010-pwrite-4tiled:
    - shard-tglb:         NOTRUN -> [SKIP][80] ([i915#5287])
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb5/igt@kms_draw_crc@draw-method-xrgb2101010-pwrite-4tiled.html
    - shard-iclb:         NOTRUN -> [SKIP][81] ([i915#5287])
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb4/igt@kms_draw_crc@draw-method-xrgb2101010-pwrite-4tiled.html

  * igt@kms_flip@2x-blocking-absolute-wf_vblank-interruptible:
    - shard-tglb:         NOTRUN -> [SKIP][82] ([fdo#109274] / [fdo#111825]) +1 similar issue
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb7/igt@kms_flip@2x-blocking-absolute-wf_vblank-interruptible.html
    - shard-iclb:         NOTRUN -> [SKIP][83] ([fdo#109274]) +1 similar issue
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb7/igt@kms_flip@2x-blocking-absolute-wf_vblank-interruptible.html

  * igt@kms_flip@flip-vs-suspend-interruptible@c-dp1:
    - shard-kbl:          [PASS][84] -> [DMESG-WARN][85] ([i915#180]) +11 similar issues
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-kbl4/igt@kms_flip@flip-vs-suspend-interruptible@c-dp1.html
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl1/igt@kms_flip@flip-vs-suspend-interruptible@c-dp1.html

  * igt@kms_flip@flip-vs-suspend@a-dp1:
    - shard-apl:          [PASS][86] -> [DMESG-WARN][87] ([i915#180]) +3 similar issues
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-apl4/igt@kms_flip@flip-vs-suspend@a-dp1.html
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-apl8/igt@kms_flip@flip-vs-suspend@a-dp1.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling:
    - shard-iclb:         [PASS][88] -> [SKIP][89] ([i915#3701])
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-iclb4/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling.html
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb2/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-upscaling:
    - shard-glk:          [PASS][90] -> [FAIL][91] ([i915#4911])
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-glk1/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-upscaling.html
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk8/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-upscaling.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-shrfb-draw-mmap-cpu:
    - shard-iclb:         NOTRUN -> [SKIP][92] ([fdo#109280]) +7 similar issues
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb6/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-pri-shrfb-draw-mmap-cpu.html

  * igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-mmap-gtt:
    - shard-kbl:          NOTRUN -> [SKIP][93] ([fdo#109271]) +134 similar issues
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl7/igt@kms_frontbuffer_tracking@fbcpsr-rgb565-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-blt:
    - shard-tglb:         NOTRUN -> [SKIP][94] ([fdo#109280] / [fdo#111825]) +7 similar issues
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb3/igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-blt.html

  * igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-1:
    - shard-kbl:          [PASS][95] -> [FAIL][96] ([i915#1188])
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-kbl7/igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-1.html
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl4/igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-1.html

  * igt@kms_pipe_b_c_ivb@pipe-b-dpms-off-modeset-pipe-c:
    - shard-tglb:         NOTRUN -> [SKIP][97] ([fdo#109289])
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb3/igt@kms_pipe_b_c_ivb@pipe-b-dpms-off-modeset-pipe-c.html
    - shard-iclb:         NOTRUN -> [SKIP][98] ([fdo#109289])
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb5/igt@kms_pipe_b_c_ivb@pipe-b-dpms-off-modeset-pipe-c.html

  * igt@kms_plane_alpha_blend@pipe-a-constant-alpha-max:
    - shard-kbl:          NOTRUN -> [FAIL][99] ([fdo#108145] / [i915#265])
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl4/igt@kms_plane_alpha_blend@pipe-a-constant-alpha-max.html

  * igt@kms_plane_alpha_blend@pipe-b-alpha-basic:
    - shard-glk:          NOTRUN -> [FAIL][100] ([fdo#108145] / [i915#265])
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk6/igt@kms_plane_alpha_blend@pipe-b-alpha-basic.html

  * igt@kms_plane_alpha_blend@pipe-b-alpha-transparent-fb:
    - shard-glk:          NOTRUN -> [FAIL][101] ([i915#265])
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk8/igt@kms_plane_alpha_blend@pipe-b-alpha-transparent-fb.html

  * igt@kms_plane_alpha_blend@pipe-c-alpha-transparent-fb:
    - shard-kbl:          NOTRUN -> [FAIL][102] ([i915#265])
   [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl4/igt@kms_plane_alpha_blend@pipe-c-alpha-transparent-fb.html

  * igt@kms_plane_lowres@tiling-yf:
    - shard-tglb:         NOTRUN -> [SKIP][103] ([fdo#112054])
   [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb3/igt@kms_plane_lowres@tiling-yf.html

  * igt@kms_plane_lowres@tiling-yf@pipe-a-edp-1:
    - shard-iclb:         NOTRUN -> [SKIP][104] ([i915#3536]) +2 similar issues
   [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb4/igt@kms_plane_lowres@tiling-yf@pipe-a-edp-1.html

  * igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5@pipe-b-edp-1:
    - shard-iclb:         [PASS][105] -> [SKIP][106] ([i915#5235]) +2 similar issues
   [105]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-iclb6/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5@pipe-b-edp-1.html
   [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb2/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5@pipe-b-edp-1.html

  * igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-big-fb:
    - shard-apl:          NOTRUN -> [SKIP][107] ([fdo#109271] / [i915#658]) +1 similar issue
   [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-apl1/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-big-fb.html
    - shard-tglb:         NOTRUN -> [SKIP][108] ([i915#2920])
   [108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb3/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-big-fb.html
    - shard-glk:          NOTRUN -> [SKIP][109] ([fdo#109271] / [i915#658]) +1 similar issue
   [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk7/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-big-fb.html
    - shard-iclb:         NOTRUN -> [SKIP][110] ([i915#2920])
   [110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb2/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-big-fb.html
    - shard-kbl:          NOTRUN -> [SKIP][111] ([fdo#109271] / [i915#658]) +2 similar issues
   [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl1/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-big-fb.html

  * igt@kms_psr@psr2_primary_blt:
    - shard-iclb:         [PASS][112] -> [SKIP][113] ([fdo#109441]) +3 similar issues
   [112]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-iclb2/igt@kms_psr@psr2_primary_blt.html
   [113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb3/igt@kms_psr@psr2_primary_blt.html

  * igt@kms_vblank@pipe-d-query-forked-busy:
    - shard-iclb:         NOTRUN -> [SKIP][114] ([fdo#109278]) +8 similar issues
   [114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb8/igt@kms_vblank@pipe-d-query-forked-busy.html

  * igt@kms_writeback@writeback-check-output:
    - shard-apl:          NOTRUN -> [SKIP][115] ([fdo#109271] / [i915#2437])
   [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-apl4/igt@kms_writeback@writeback-check-output.html

  * igt@kms_writeback@writeback-fb-id:
    - shard-glk:          NOTRUN -> [SKIP][116] ([fdo#109271] / [i915#2437])
   [116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk8/igt@kms_writeback@writeback-fb-id.html

  * igt@prime_mmap_coherency@ioctl-errors:
    - shard-glk:          [PASS][117] -> [DMESG-FAIL][118] ([i915#6310])
   [117]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-glk1/igt@prime_mmap_coherency@ioctl-errors.html
   [118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk3/igt@prime_mmap_coherency@ioctl-errors.html

  * igt@prime_nv_pcopy@test_semaphore:
    - shard-tglb:         NOTRUN -> [SKIP][119] ([fdo#109291])
   [119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb5/igt@prime_nv_pcopy@test_semaphore.html
    - shard-iclb:         NOTRUN -> [SKIP][120] ([fdo#109291])
   [120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb2/igt@prime_nv_pcopy@test_semaphore.html

  * igt@sysfs_clients@fair-0:
    - shard-apl:          NOTRUN -> [SKIP][121] ([fdo#109271] / [i915#2994]) +2 similar issues
   [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-apl1/igt@sysfs_clients@fair-0.html

  * igt@sysfs_clients@sema-10:
    - shard-glk:          NOTRUN -> [SKIP][122] ([fdo#109271] / [i915#2994]) +1 similar issue
   [122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk3/igt@sysfs_clients@sema-10.html

  * igt@sysfs_clients@split-10:
    - shard-iclb:         NOTRUN -> [SKIP][123] ([i915#2994])
   [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb6/igt@sysfs_clients@split-10.html
    - shard-kbl:          NOTRUN -> [SKIP][124] ([fdo#109271] / [i915#2994]) +3 similar issues
   [124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl7/igt@sysfs_clients@split-10.html
    - shard-tglb:         NOTRUN -> [SKIP][125] ([i915#2994])
   [125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb5/igt@sysfs_clients@split-10.html

  
#### Possible fixes ####

  * igt@fbdev@unaligned-read:
    - {shard-rkl}:        [SKIP][126] ([i915#2582]) -> [PASS][127]
   [126]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-rkl-2/igt@fbdev@unaligned-read.html
   [127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-rkl-6/igt@fbdev@unaligned-read.html

  * igt@gem_ctx_exec@basic-nohangcheck:
    - shard-tglb:         [FAIL][128] ([i915#6268]) -> [PASS][129]
   [128]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-tglb7/igt@gem_ctx_exec@basic-nohangcheck.html
   [129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb5/igt@gem_ctx_exec@basic-nohangcheck.html
    - {shard-rkl}:        [FAIL][130] ([i915#6268]) -> [PASS][131]
   [130]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-rkl-2/igt@gem_ctx_exec@basic-nohangcheck.html
   [131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-rkl-5/igt@gem_ctx_exec@basic-nohangcheck.html

  * igt@gem_ctx_persistence@engines-hang@bcs0:
    - {shard-rkl}:        [SKIP][132] ([i915#6252]) -> [PASS][133]
   [132]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-rkl-5/igt@gem_ctx_persistence@engines-hang@bcs0.html
   [133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-rkl-1/igt@gem_ctx_persistence@engines-hang@bcs0.html

  * igt@gem_ctx_persistence@engines-hang@rcs0:
    - {shard-dg1}:        [FAIL][134] ([i915#4883]) -> [PASS][135] +3 similar issues
   [134]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-dg1-17/igt@gem_ctx_persistence@engines-hang@rcs0.html
   [135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-dg1-12/igt@gem_ctx_persistence@engines-hang@rcs0.html

  * igt@gem_ctx_persistence@hostile:
    - {shard-rkl}:        [FAIL][136] ([i915#2410]) -> [PASS][137]
   [136]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-rkl-1/igt@gem_ctx_persistence@hostile.html
   [137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-rkl-5/igt@gem_ctx_persistence@hostile.html

  * igt@gem_ctx_persistence@smoketest:
    - shard-apl:          [FAIL][138] ([i915#5099]) -> [PASS][139]
   [138]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-apl7/igt@gem_ctx_persistence@smoketest.html
   [139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-apl1/igt@gem_ctx_persistence@smoketest.html

  * igt@gem_exec_balancer@parallel-keep-submit-fence:
    - shard-iclb:         [SKIP][140] ([i915#4525]) -> [PASS][141]
   [140]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-iclb5/igt@gem_exec_balancer@parallel-keep-submit-fence.html
   [141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb4/igt@gem_exec_balancer@parallel-keep-submit-fence.html

  * igt@gem_exec_fair@basic-flow@rcs0:
    - shard-tglb:         [FAIL][142] ([i915#2842]) -> [PASS][143]
   [142]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-tglb5/igt@gem_exec_fair@basic-flow@rcs0.html
   [143]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb7/igt@gem_exec_fair@basic-flow@rcs0.html

  * igt@gem_exec_fair@basic-none-share@rcs0:
    - {shard-tglu}:       [FAIL][144] ([i915#2842]) -> [PASS][145]
   [144]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-tglu-4/igt@gem_exec_fair@basic-none-share@rcs0.html
   [145]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglu-6/igt@gem_exec_fair@basic-none-share@rcs0.html
    - shard-glk:          [FAIL][146] ([i915#2842]) -> [PASS][147]
   [146]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-glk9/igt@gem_exec_fair@basic-none-share@rcs0.html
   [147]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk8/igt@gem_exec_fair@basic-none-share@rcs0.html

  * igt@gem_exec_fair@basic-pace-solo@rcs0:
    - shard-apl:          [FAIL][148] ([i915#2842]) -> [PASS][149]
   [148]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-apl3/igt@gem_exec_fair@basic-pace-solo@rcs0.html
   [149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-apl2/igt@gem_exec_fair@basic-pace-solo@rcs0.html

  * igt@gem_exec_fair@basic-pace@rcs0:
    - shard-kbl:          [FAIL][150] ([i915#2842]) -> [PASS][151] +1 similar issue
   [150]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-kbl6/igt@gem_exec_fair@basic-pace@rcs0.html
   [151]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl1/igt@gem_exec_fair@basic-pace@rcs0.html

  * igt@gem_exec_fair@basic-pace@vcs1:
    - shard-kbl:          [SKIP][152] ([fdo#109271]) -> [PASS][153]
   [152]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-kbl6/igt@gem_exec_fair@basic-pace@vcs1.html
   [153]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl1/igt@gem_exec_fair@basic-pace@vcs1.html

  * igt@gem_exec_reloc@basic-write-read:
    - {shard-rkl}:        [SKIP][154] ([i915#3281]) -> [PASS][155] +9 similar issues
   [154]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-rkl-2/igt@gem_exec_reloc@basic-write-read.html
   [155]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-rkl-5/igt@gem_exec_reloc@basic-write-read.html

  * igt@gem_huc_copy@huc-copy:
    - shard-tglb:         [SKIP][156] ([i915#2190]) -> [PASS][157]
   [156]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-tglb7/igt@gem_huc_copy@huc-copy.html
   [157]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-tglb3/igt@gem_huc_copy@huc-copy.html

  * igt@gem_ppgtt@flink-and-close-vma-leak:
    - shard-glk:          [FAIL][158] ([i915#644]) -> [PASS][159]
   [158]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-glk1/igt@gem_ppgtt@flink-and-close-vma-leak.html
   [159]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk7/igt@gem_ppgtt@flink-and-close-vma-leak.html

  * igt@gem_pwrite@basic-self:
    - {shard-rkl}:        [SKIP][160] ([i915#3282]) -> [PASS][161] +2 similar issues
   [160]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-rkl-2/igt@gem_pwrite@basic-self.html
   [161]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-rkl-5/igt@gem_pwrite@basic-self.html

  * igt@gem_workarounds@suspend-resume:
    - shard-kbl:          [DMESG-WARN][162] ([i915#180]) -> [PASS][163] +1 similar issue
   [162]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-kbl6/igt@gem_workarounds@suspend-resume.html
   [163]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl7/igt@gem_workarounds@suspend-resume.html

  * igt@gen9_exec_parse@bb-start-far:
    - {shard-rkl}:        [SKIP][164] ([i915#2527]) -> [PASS][165] +1 similar issue
   [164]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-rkl-6/igt@gen9_exec_parse@bb-start-far.html
   [165]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-rkl-5/igt@gen9_exec_parse@bb-start-far.html

  * igt@i915_pm_rpm@fences:
    - {shard-rkl}:        [SKIP][166] ([i915#1849]) -> [PASS][167]
   [166]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-rkl-5/igt@i915_pm_rpm@fences.html
   [167]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-rkl-6/igt@i915_pm_rpm@fences.html

  * igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc:
    - {shard-rkl}:        [SKIP][168] ([i915#1845] / [i915#4098]) -> [PASS][169] +12 similar issues
   [168]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-rkl-1/igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc.html
   [169]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-rkl-6/igt@kms_ccs@pipe-b-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-b-crc-primary-rotation-180-yf_tiled_ccs:
    - shard-glk:          [FAIL][170] ([i915#1888]) -> [PASS][171]
   [170]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-glk6/igt@kms_ccs@pipe-b-crc-primary-rotation-180-yf_tiled_ccs.html
   [171]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk7/igt@kms_ccs@pipe-b-crc-primary-rotation-180-yf_tiled_ccs.html

  * igt@kms_draw_crc@draw-method-rgb565-blt-ytiled:
    - {shard-dg1}:        [FAIL][172] -> [PASS][173]
   [172]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-dg1-15/igt@kms_draw_crc@draw-method-rgb565-blt-ytiled.html
   [173]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-dg1-16/igt@kms_draw_crc@draw-method-rgb565-blt-ytiled.html

  * igt@kms_draw_crc@draw-method-xrgb8888-mmap-wc-untiled:
    - {shard-rkl}:        [SKIP][174] ([fdo#111314] / [i915#4098] / [i915#4369]) -> [PASS][175] +1 similar issue
   [174]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-rkl-2/igt@kms_draw_crc@draw-method-xrgb8888-mmap-wc-untiled.html
   [175]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-rkl-6/igt@kms_draw_crc@draw-method-xrgb8888-mmap-wc-untiled.html

  * igt@kms_fbcon_fbt@fbc-suspend:
    - shard-apl:          [FAIL][176] ([i915#4767]) -> [PASS][177]
   [176]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-apl1/igt@kms_fbcon_fbt@fbc-suspend.html
   [177]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-apl2/igt@kms_fbcon_fbt@fbc-suspend.html

  * igt@kms_flip@2x-flip-vs-expired-vblank@bc-hdmi-a1-hdmi-a2:
    - shard-glk:          [FAIL][178] ([i915#79]) -> [PASS][179]
   [178]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-glk3/igt@kms_flip@2x-flip-vs-expired-vblank@bc-hdmi-a1-hdmi-a2.html
   [179]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk8/igt@kms_flip@2x-flip-vs-expired-vblank@bc-hdmi-a1-hdmi-a2.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a2:
    - shard-glk:          [FAIL][180] ([i915#2122]) -> [PASS][181]
   [180]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-glk7/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a2.html
   [181]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk3/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a2.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling:
    - {shard-rkl}:        [SKIP][182] ([i915#3701]) -> [PASS][183]
   [182]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-rkl-2/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling.html
   [183]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-rkl-6/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling.html

  * igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-downscaling:
    - shard-iclb:         [SKIP][184] ([i915#3701]) -> [PASS][185] +1 similar issue
   [184]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-iclb2/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-downscaling.html
   [185]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb8/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-downscaling.html

  * igt@kms_frontbuffer_tracking@fbc-rgb565-draw-render:
    - {shard-rkl}:        [SKIP][186] ([i915#1849] / [i915#4098]) -> [PASS][187] +7 similar issues
   [186]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-rkl-2/igt@kms_frontbuffer_tracking@fbc-rgb565-draw-render.html
   [187]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-rkl-6/igt@kms_frontbuffer_tracking@fbc-rgb565-draw-render.html

  * igt@kms_frontbuffer_tracking@fbcpsr-slowdraw:
    - shard-iclb:         [FAIL][188] ([i915#1888] / [i915#2546]) -> [PASS][189]
   [188]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-iclb3/igt@kms_frontbuffer_tracking@fbcpsr-slowdraw.html
   [189]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb5/igt@kms_frontbuffer_tracking@fbcpsr-slowdraw.html

  * igt@kms_plane_alpha_blend@pipe-b-constant-alpha-mid:
    - {shard-rkl}:        [SKIP][190] ([i915#1849] / [i915#4070] / [i915#4098]) -> [PASS][191] +1 similar issue
   [190]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-rkl-2/igt@kms_plane_alpha_blend@pipe-b-constant-alpha-mid.html
   [191]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-rkl-6/igt@kms_plane_alpha_blend@pipe-b-constant-alpha-mid.html

  * igt@kms_plane_scaling@planes-upscale-20x20@pipe-d-hdmi-a-1:
    - {shard-dg1}:        [SKIP][192] -> [PASS][193] +4 similar issues
   [192]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-dg1-15/igt@kms_plane_scaling@planes-upscale-20x20@pipe-d-hdmi-a-1.html
   [193]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-dg1-19/igt@kms_plane_scaling@planes-upscale-20x20@pipe-d-hdmi-a-1.html

  * igt@kms_psr2_su@page_flip-xrgb8888:
    - shard-iclb:         [SKIP][194] ([fdo#109642] / [fdo#111068] / [i915#658]) -> [PASS][195]
   [194]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-iclb3/igt@kms_psr2_su@page_flip-xrgb8888.html
   [195]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb2/igt@kms_psr2_su@page_flip-xrgb8888.html

  * igt@kms_psr@cursor_mmap_cpu:
    - {shard-rkl}:        [SKIP][196] ([i915#1072]) -> [PASS][197] +1 similar issue
   [196]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-rkl-2/igt@kms_psr@cursor_mmap_cpu.html
   [197]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-rkl-6/igt@kms_psr@cursor_mmap_cpu.html

  * igt@kms_psr@psr2_sprite_blt:
    - shard-iclb:         [SKIP][198] ([fdo#109441]) -> [PASS][199]
   [198]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-iclb8/igt@kms_psr@psr2_sprite_blt.html
   [199]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb2/igt@kms_psr@psr2_sprite_blt.html

  * igt@kms_vblank@pipe-b-ts-continuation-suspend:
    - shard-apl:          [DMESG-WARN][200] ([i915#180]) -> [PASS][201] +3 similar issues
   [200]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-apl2/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
   [201]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-apl8/igt@kms_vblank@pipe-b-ts-continuation-suspend.html

  * igt@perf@polling:
    - {shard-rkl}:        [FAIL][202] ([i915#5639]) -> [PASS][203]
   [202]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-rkl-1/igt@perf@polling.html
   [203]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-rkl-1/igt@perf@polling.html

  * igt@perf@stress-open-close:
    - shard-glk:          [INCOMPLETE][204] ([i915#5213]) -> [PASS][205]
   [204]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-glk9/igt@perf@stress-open-close.html
   [205]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-glk9/igt@perf@stress-open-close.html

  
#### Warnings ####

  * igt@i915_pm_dc@dc3co-vpb-simulation:
    - shard-iclb:         [SKIP][206] ([i915#658]) -> [SKIP][207] ([i915#588])
   [206]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-iclb3/igt@i915_pm_dc@dc3co-vpb-simulation.html
   [207]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb2/igt@i915_pm_dc@dc3co-vpb-simulation.html

  * igt@kms_fbcon_fbt@fbc-suspend:
    - shard-kbl:          [INCOMPLETE][208] ([i915#180] / [i915#4939]) -> [FAIL][209] ([i915#4767])
   [208]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-kbl1/igt@kms_fbcon_fbt@fbc-suspend.html
   [209]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl4/igt@kms_fbcon_fbt@fbc-suspend.html

  * igt@kms_psr2_sf@primary-plane-update-sf-dmg-area:
    - shard-iclb:         [SKIP][210] ([i915#2920]) -> [SKIP][211] ([fdo#111068] / [i915#658]) +1 similar issue
   [210]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-iclb2/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area.html
   [211]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-iclb5/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area.html

  * igt@runner@aborted:
    - shard-kbl:          ([FAIL][212], [FAIL][213], [FAIL][214], [FAIL][215], [FAIL][216], [FAIL][217], [FAIL][218], [FAIL][219]) ([i915#180] / [i915#3002] / [i915#4312] / [i915#5257] / [i915#92]) -> ([FAIL][220], [FAIL][221], [FAIL][222], [FAIL][223], [FAIL][224], [FAIL][225], [FAIL][226], [FAIL][227], [FAIL][228], [FAIL][229]) ([fdo#109271] / [i915#180] / [i915#3002] / [i915#4312] / [i915#5257] / [i915#716])
   [212]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-kbl6/igt@runner@aborted.html
   [213]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-kbl1/igt@runner@aborted.html
   [214]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-kbl1/igt@runner@aborted.html
   [215]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-kbl1/igt@runner@aborted.html
   [216]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-kbl6/igt@runner@aborted.html
   [217]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-kbl7/igt@runner@aborted.html
   [218]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-kbl7/igt@runner@aborted.html
   [219]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11837/shard-kbl6/igt@runner@aborted.html
   [220]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl7/igt@runner@aborted.html
   [221]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl1/igt@runner@aborted.html
   [222]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl6/igt@runner@aborted.html
   [223]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl1/igt@runner@aborted.html
   [224]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl1/igt@runner@aborted.html
   [225]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl4/igt@runner@aborted.html
   [226]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl6/igt@runner@aborted.html
   [227]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl6/igt@runner@aborted.html
   [228]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl1/igt@runner@aborted.html
   [229]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/shard-kbl6/igt@runner@aborted.html

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

  [fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
  [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
  [fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
  [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [fdo#109283]: https://bugs.freedesktop.org/show_bug.cgi?id=109283
  [fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
  [fdo#109291]: https://bugs.freedesktop.org/show_bug.cgi?id=109291
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [fdo#109303]: https://bugs.freedesktop.org/show_bug.cgi?id=109303
  [fdo#109307]: https://bugs.freedesktop.org/show_bug.cgi?id=109307
  [fdo#109308]: https://bugs.freedesktop.org/show_bug.cgi?id=109308
  [fdo#109314]: https://bugs.freedesktop.org/show_bug.cgi?id=109314
  [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
  [fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
  [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
  [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
  [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
  [fdo#110725]: https://bugs.freedesktop.org/show_bug.cgi?id=110725
  [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111314]: https://bugs.freedesktop.org/show_bug.cgi?id=111314
  [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
  [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
  [fdo#111656]: https://bugs.freedesktop.org/show_bug.cgi?id=111656
  [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [fdo#112054]: https://bugs.freedesktop.org/show_bug.cgi?id=112054
  [fdo#112283]: https://bugs.freedesktop.org/show_bug.cgi?id=112283
  [i915#1063]: https://gitlab.freedesktop.org/drm/intel/issues/1063
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099
  [i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
  [i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188
  [i915#1319]: https://gitlab.freedesktop.org/drm/intel/issues/1319
  [i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132
  [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
  [i915#1755]: https://gitlab.freedesktop.org/drm/intel/issues/1755
  [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#1836]: https://gitlab.freedesktop.org/drm/intel/issues/1836
  [i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
  [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
  [i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
  [i915#1888]: https://gitlab.freedesktop.org/drm/intel/issues/1888
  [i915#1902]: https://gitlab.freedesktop.org/drm/intel/issues/1902
  [i915#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122
  [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
  [i915#2232]: https://gitlab.freedesktop.org/drm/intel/issues/2232
  [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#2530]: https://gitlab.freedesktop.org/drm/intel/issues/2530
  [i915#2546]: https://gitlab.freedesktop.org/drm/intel/issues/2546
  [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
  [i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
  [i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
  [i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658
  [i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
  [i915#2681]: https://gitlab.freedesktop.org/drm/intel/issues/2681
  [i915#2705]: https://gitlab.freedesktop.org/drm/intel/issues/2705
  [i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
  [i915#284]: https://gitlab.freedesktop.org/drm/intel/issues/284
  [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
  [i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
  [i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920
  [i915#2994]: https://gitlab.freedesktop.org/drm/intel/issues/2994
  [i915#3002]: https://gitlab.freedesktop.org/drm/intel/issues/3002
  [i915#3012]: https://gitlab.freedesktop.org/drm/intel/issues/3012
  [i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116
  [i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
  [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
  [i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
  [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
  [i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
  [i915#3318]: https://gitlab.freedesktop.org/drm/intel/issues/3318
  [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
  [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
  [i915#3536]: https://gitlab.freedesktop.org/drm/intel/issues/3536
  [i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3558]: https://gitlab.freedesktop.org/drm/intel/issues/3558
  [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#3701]: https://gitlab.freedesktop.org/drm/intel/issues/3701
  [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
  [i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734
  [i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
  [i915#3804]: https://gitlab.freedesktop.org/drm/intel/issues/3804
  [i915#3828]: https://gitlab.freedesktop.org/drm/intel/issues/3828
  [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
  [i915#3921]: https://gitlab.freedesktop.org/drm/intel/issues/3921
  [i915#3936]: https://gitlab.freedesktop.org/drm/intel/issues/3936
  [i915#3938]: https://gitlab.freedesktop.org/drm/intel/issues/3938
  [i915#3952]: https://gitlab.freedesktop.org/drm/intel/issues/3952
  [i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955
  [i915#4032]: https://gitlab.freedesktop.org/drm/intel/issues/4032
  [i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
  [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
  [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#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#4278]: https://gitlab.freedesktop.org/drm/intel/issues/4278
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#4369]: https://gitlab.freedesktop.org/drm/intel/issues/4369
  [i915#4387]: https://gitlab.freedesktop.org/drm/intel/issues/4387
  [i915#4462]: https://gitlab.freedesktop.org/drm/intel/issues/4462
  [i915#4494]: https://gitlab.freedesktop.org/drm/intel/issues/4494
  [i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
  [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
  [i915#4565]: https://gitlab.freedesktop.org/drm/intel/issues/4565
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4767]: https://gitlab.freedesktop.org/drm/intel/issues/4767
  [i915#4771]: https://gitlab.freedesktop.org/drm/intel/issues/4771
  [i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
  [i915#4818]: https://gitlab.freedesktop.org/drm/intel/issues/4818
  [i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
  [i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
  [i915#4853]: https://gitlab.freedesktop.org/drm/intel/issues/4853
  [i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
  [i915#4874]: https://gitlab.freedesktop.org/drm/intel/issues/4874
  [i915#4879]: https://gitlab.freedesktop.org/drm/intel/issues/4879
  [i915#4880]: https://gitlab.freedesktop.org/drm/intel/issues/4880
  [i915#4881]: https://gitlab.freedesktop.org/drm/intel/issues/4881
  [i915#4883]: https://gitlab.freedesktop.org/drm/intel/issues/4883
  [i915#4893]: https://gitlab.freedesktop.org/drm/intel/issues/4893
  [i915#4911]: https://gitlab.freedesktop.org/drm/intel/issues/4911
  [i915#4939]: https://gitlab.freedesktop.org/drm/intel/issues/4939
  [i915#4957]: https://gitlab.freedesktop.org/drm/intel/issues/4957
  [i915#4958]: https://gitlab.freedesktop.org/drm/intel/issues/4958
  [i915#4991]: https://gitlab.freedesktop.org/drm/intel/issues/4991
  [i915#5030]: https://gitlab.freedesktop.org/drm/intel/issues/5030
  [i915#5072]: https://gitlab.freedesktop.org/drm/intel/issues/5072
  [i915#5099]: https://gitlab.freedesktop.org/drm/intel/issues/5099
  [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
  [i915#5213]: https://gitlab.freedesktop.org/drm/intel/issues/5213
  [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
  [i915#5257]: https://gitlab.freedesktop.org/drm/intel/issues/5257
  [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
  [i915#5287]: https://gitlab.freedesktop.org/drm/intel/issues/5287
  [i915#5288]: https://gitlab.freedesktop.org/drm/intel/issues/5288
  [i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
  [i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325
  [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
  [i915#5439]: https://gitlab.freedesktop.org/drm/intel/issues/5439
  [i915#5461]: https://gitlab.freedesktop.org/drm/intel/issues/5461
  [i915#5563]: https://gitlab.freedesktop.org/drm/intel/issues/5563
  [i915#5566]: https://gitlab.freedesktop.org/drm/intel/issues/5566
  [i915#5639]: https://gitlab.freedesktop.org/drm/intel/issues/5639
  [i915#5721]: https://gitlab.freedesktop.org/drm/intel/issues/5721
  [i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
  [i915#588]: https://gitlab.freedesktop.org/drm/intel/issues/588
  [i915#6076]: https://gitlab.freedesktop.org/drm/intel/issues/6076
  [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
  [i915#6140]: https://gitlab.freedesktop.org/drm/intel/issues/6140
  [i915#6227]: https://gitlab.freedesktop.org/drm/intel/issues/6227
  [i915#6230]: https://gitlab.freedesktop.org/drm/intel/issues/6230
  [i915#6248]: https://gitlab.freedesktop.org/drm/intel/issues/6248
  [i915#6251]: https://gitlab.freedesktop.org/drm/intel/issues/6251
  [i915#6252]: https://gitlab.freedesktop.org/drm/intel/issues/6252
  [i915#6258]: https://gitlab.freedesktop.org/drm/intel/issues/6258
  [i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268
  [i915#6301]: https://gitlab.freedesktop.org/drm/intel/issues/6301
  [i915#6310]: https://gitlab.freedesktop.org/drm/intel/issues/6310
  [i915#6331]: https://gitlab.freedesktop.org/drm/intel/issues/6331
  [i915#6336]: https://gitlab.freedesktop.org/drm/intel/issues/6336
  [i915#644]: https://gitlab.freedesktop.org/drm/intel/issues/644
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716
  [i915#768]: https://gitlab.freedesktop.org/drm/intel/issues/768
  [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
  [i915#92]: https://gitlab.freedesktop.org/drm/intel/issues/92


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

  * CI: CI-20190529 -> None
  * IGT: IGT_6553 -> IGTPW_7448
  * Piglit: piglit_4509 -> None

  CI-20190529: 20190529
  CI_DRM_11837: e19040cd831f5ac1c94bb265ebd846c94f6fed80 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_7448: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7448/index.html
  IGT_6553: 3cf110f8dcd1f4f02cf84339664b413abdaebf7d @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit

== Logs ==

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

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

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

* Re: [igt-dev] [i-g-t V7 0/2] tests/kms_color: IGT test cleanup
  2022-06-30  8:55 [igt-dev] [i-g-t V7 0/2] tests/kms_color: IGT test cleanup Bhanuprakash Modem
                   ` (5 preceding siblings ...)
  2022-07-01 21:57 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
@ 2022-07-04  6:47 ` Sharma, Swati2
  6 siblings, 0 replies; 14+ messages in thread
From: Sharma, Swati2 @ 2022-07-04  6:47 UTC (permalink / raw)
  To: Bhanuprakash Modem, igt-dev, kamil.konieczny

LGTM
Reviewed-by:  Swati Sharma <swati2.sharma@intel.com>

On 30-Jun-22 2:25 PM, Bhanuprakash Modem wrote:
> Convert all possible subtests to dynamic and sanitize the system
> state before starting/exiting the subtest.
> 
> Bhanuprakash Modem (2):
>    tests/kms_color: Convert tests to dynamic
>    tests/kms_color: Test Cleanup
> 
>   tests/kms_color.c        | 622 +++++++++++++++++++++------------------
>   tests/kms_color_helper.h |   2 +
>   2 files changed, 341 insertions(+), 283 deletions(-)
> 
> --
> 2.35.1
> 

-- 
~Swati Sharma

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

* Re: [igt-dev] [i-g-t V7 2/2] tests/kms_color: Test Cleanup
  2022-06-30  8:55 ` [igt-dev] [i-g-t V7 2/2] tests/kms_color: Test Cleanup Bhanuprakash Modem
@ 2022-07-04  6:48   ` Sharma, Swati2
  0 siblings, 0 replies; 14+ messages in thread
From: Sharma, Swati2 @ 2022-07-04  6:48 UTC (permalink / raw)
  To: Bhanuprakash Modem, igt-dev, kamil.konieczny

LGTM
Reviewed-by:  Swati Sharma <swati2.sharma@intel.com>

On 30-Jun-22 2:25 PM, Bhanuprakash Modem wrote:
> Sanitize the system state before starting the subtest.
> 
> V2:
> * Fix multiline comments.
> 
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> ---
>   tests/kms_color.c        | 96 ++++++++++++++++++++++++----------------
>   tests/kms_color_helper.h |  1 +
>   2 files changed, 58 insertions(+), 39 deletions(-)
> 
> diff --git a/tests/kms_color.c b/tests/kms_color.c
> index 85f3b32d..0b03fb9a 100644
> --- a/tests/kms_color.c
> +++ b/tests/kms_color.c
> @@ -37,7 +37,7 @@ static bool test_pipe_degamma(data_t *data,
>   		{ 0.0, 1.0, 0.0 },
>   		{ 0.0, 0.0, 1.0 }
>   	};
> -	drmModeModeInfo *mode;
> +	drmModeModeInfo *mode = data->mode;
>   	struct igt_fb fb_modeset, fb;
>   	igt_crc_t crc_fullgamma, crc_fullcolors;
>   	int fb_id, fb_modeset_id;
> @@ -50,7 +50,7 @@ static bool test_pipe_degamma(data_t *data,
>   	degamma_full = generate_table_max(data->degamma_lut_size);
>   
>   	igt_output_set_pipe(output, primary->pipe->pipe);
> -	mode = igt_output_get_mode(output);
> +	igt_output_override_mode(output, mode);
>   
>   	/* Create a framebuffer at the size of the output. */
>   	fb_id = igt_create_fb(data->drm_fd,
> @@ -83,7 +83,8 @@ static bool test_pipe_degamma(data_t *data,
>   			    display->pipes[primary->pipe->pipe].crtc_offset);
>   	igt_pipe_crc_collect_crc(data->pipe_crc, &crc_fullcolors);
>   
> -	/* Draw a gradient with degamma LUT to remap all
> +	/*
> +	 * Draw a gradient with degamma LUT to remap all
>   	 * values to max red/green/blue.
>   	 */
>   	paint_gradient_rectangles(data, mode, red_green_blue, &fb);
> @@ -94,7 +95,8 @@ static bool test_pipe_degamma(data_t *data,
>   			    display->pipes[primary->pipe->pipe].crtc_offset);
>   	igt_pipe_crc_collect_crc(data->pipe_crc, &crc_fullgamma);
>   
> -	/* Verify that the CRC of the software computed output is
> +	/*
> +	 * Verify that the CRC of the software computed output is
>   	 * equal to the CRC of the degamma LUT transformation output.
>   	 */
>   	ret = !igt_skip_crc_compare || igt_check_crc_equal(&crc_fullgamma, &crc_fullcolors);
> @@ -127,7 +129,7 @@ static bool test_pipe_gamma(data_t *data,
>   		{ 0.0, 1.0, 0.0 },
>   		{ 0.0, 0.0, 1.0 }
>   	};
> -	drmModeModeInfo *mode;
> +	drmModeModeInfo *mode = data->mode;
>   	struct igt_fb fb_modeset, fb;
>   	igt_crc_t crc_fullgamma, crc_fullcolors;
>   	int fb_id, fb_modeset_id;
> @@ -138,7 +140,7 @@ static bool test_pipe_gamma(data_t *data,
>   	gamma_full = generate_table_max(data->gamma_lut_size);
>   
>   	igt_output_set_pipe(output, primary->pipe->pipe);
> -	mode = igt_output_get_mode(output);
> +	igt_output_override_mode(output, mode);
>   
>   	/* Create a framebuffer at the size of the output. */
>   	fb_id = igt_create_fb(data->drm_fd,
> @@ -171,7 +173,8 @@ static bool test_pipe_gamma(data_t *data,
>   			    display->pipes[primary->pipe->pipe].crtc_offset);
>   	igt_pipe_crc_collect_crc(data->pipe_crc, &crc_fullcolors);
>   
> -	/* Draw a gradient with gamma LUT to remap all values
> +	/*
> +	 * Draw a gradient with gamma LUT to remap all values
>   	 * to max red/green/blue.
>   	 */
>   	paint_gradient_rectangles(data, mode, red_green_blue, &fb);
> @@ -181,7 +184,8 @@ static bool test_pipe_gamma(data_t *data,
>   			    display->pipes[primary->pipe->pipe].crtc_offset);
>   	igt_pipe_crc_collect_crc(data->pipe_crc, &crc_fullgamma);
>   
> -	/* Verify that the CRC of the software computed output is
> +	/*
> +	 * Verify that the CRC of the software computed output is
>   	 * equal to the CRC of the gamma LUT transformation output.
>   	 */
>   	ret = !igt_skip_crc_compare || igt_check_crc_equal(&crc_fullgamma, &crc_fullcolors);
> @@ -206,7 +210,7 @@ static bool test_pipe_gamma(data_t *data,
>   static bool test_pipe_legacy_gamma(data_t *data,
>   				   igt_plane_t *primary)
>   {
> -	igt_output_t *output;
> +	igt_output_t *output = data->output;
>   	igt_display_t *display = &data->display;
>   	color_t red_green_blue[] = {
>   		{ 1.0, 0.0, 0.0 },
> @@ -216,7 +220,7 @@ static bool test_pipe_legacy_gamma(data_t *data,
>   	drmModeCrtc *kms_crtc;
>   	uint32_t i, legacy_lut_size;
>   	uint16_t *red_lut, *green_lut, *blue_lut;
> -	drmModeModeInfo *mode;
> +	drmModeModeInfo *mode = data->mode;
>   	struct igt_fb fb_modeset, fb;
>   	igt_crc_t crc_fullgamma, crc_fullcolors;
>   	int fb_id, fb_modeset_id;
> @@ -230,11 +234,8 @@ static bool test_pipe_legacy_gamma(data_t *data,
>   	green_lut = malloc(sizeof(uint16_t) * legacy_lut_size);
>   	blue_lut = malloc(sizeof(uint16_t) * legacy_lut_size);
>   
> -	output = igt_get_single_output_for_pipe(&data->display, primary->pipe->pipe);
> -	igt_require(output);
> -
>   	igt_output_set_pipe(output, primary->pipe->pipe);
> -	mode = igt_output_get_mode(output);
> +	igt_output_override_mode(output, mode);
>   
>   	/* Create a framebuffer at the size of the output. */
>   	fb_id = igt_create_fb(data->drm_fd,
> @@ -267,7 +268,8 @@ static bool test_pipe_legacy_gamma(data_t *data,
>   			    display->pipes[primary->pipe->pipe].crtc_offset);
>   	igt_pipe_crc_collect_crc(data->pipe_crc, &crc_fullcolors);
>   
> -	/* Draw a gradient with gamma LUT to remap all values
> +	/*
> +	 * Draw a gradient with gamma LUT to remap all values
>   	 * to max red/green/blue.
>   	 */
>   	paint_gradient_rectangles(data, mode, red_green_blue, &fb);
> @@ -283,7 +285,8 @@ static bool test_pipe_legacy_gamma(data_t *data,
>   			    display->pipes[primary->pipe->pipe].crtc_offset);
>   	igt_pipe_crc_collect_crc(data->pipe_crc, &crc_fullgamma);
>   
> -	/* Verify that the CRC of the software computed output is
> +	/*
> +	 * Verify that the CRC of the software computed output is
>   	 * equal to the CRC of the gamma LUT transformation output.
>   	 */
>   	ret = !igt_skip_crc_compare || igt_check_crc_equal(&crc_fullgamma, &crc_fullcolors);
> @@ -298,6 +301,7 @@ static bool test_pipe_legacy_gamma(data_t *data,
>   
>   	igt_plane_set_fb(primary, NULL);
>   	igt_output_set_pipe(output, PIPE_NONE);
> +	igt_display_commit(&data->display);
>   	igt_remove_fb(data->drm_fd, &fb);
>   	igt_remove_fb(data->drm_fd, &fb_modeset);
>   
> @@ -326,7 +330,7 @@ static bool test_pipe_legacy_gamma_reset(data_t *data,
>   	uint16_t *red_lut, *green_lut, *blue_lut;
>   	struct drm_color_lut *lut;
>   	drmModePropertyBlobPtr blob;
> -	igt_output_t *output;
> +	igt_output_t *output = data->output;
>   	bool ret = true;
>   
>   	igt_require(igt_pipe_obj_has_prop(primary->pipe, IGT_CRTC_GAMMA_LUT));
> @@ -335,9 +339,6 @@ static bool test_pipe_legacy_gamma_reset(data_t *data,
>   		degamma_linear = generate_table(data->degamma_lut_size, 1.0);
>   	gamma_zero = generate_table_zero(data->gamma_lut_size);
>   
> -	output = igt_get_single_output_for_pipe(&data->display, primary->pipe->pipe);
> -	igt_require(output);
> -
>   	igt_output_set_pipe(output, primary->pipe->pipe);
>   
>   	/* Ensure we have a clean state to start with. */
> @@ -346,9 +347,11 @@ static bool test_pipe_legacy_gamma_reset(data_t *data,
>   	disable_gamma(primary->pipe);
>   	igt_display_commit(&data->display);
>   
> -	/* Set a degama & gamma LUT and a CTM using the
> +	/*
> +	 * Set a degama & gamma LUT and a CTM using the
>   	 * properties and verify the content of the
> -	 * properties. */
> +	 * properties.
> +	 */
>   	if (igt_pipe_obj_has_prop(primary->pipe, IGT_CRTC_DEGAMMA_LUT))
>   		set_degamma(data, primary->pipe, degamma_linear);
>   	if (igt_pipe_obj_has_prop(primary->pipe, IGT_CRTC_CTM))
> @@ -384,9 +387,11 @@ static bool test_pipe_legacy_gamma_reset(data_t *data,
>   	if(!ret)
>   		goto end;
>   
> -	/* Set a gamma LUT using the legacy ioctl and verify
> +	/*
> +	 * Set a gamma LUT using the legacy ioctl and verify
>   	 * the content of the GAMMA_LUT property is changed
> -	 * and that CTM and DEGAMMA_LUT are empty. */
> +	 * and that CTM and DEGAMMA_LUT are empty.
> +	 */
>   	kms_crtc = drmModeGetCrtc(data->drm_fd, primary->pipe->crtc_id);
>   	legacy_lut_size = kms_crtc->gamma_size;
>   	drmModeFreeCrtc(kms_crtc);
> @@ -424,6 +429,7 @@ static bool test_pipe_legacy_gamma_reset(data_t *data,
>   
>   	igt_plane_set_fb(primary, NULL);
>   	igt_output_set_pipe(output, PIPE_NONE);
> +	igt_display_commit(&data->display);
>   
>   	free_lut(degamma_linear);
>   	free_lut(gamma_zero);
> @@ -450,7 +456,7 @@ static bool test_pipe_ctm(data_t *data,
>   	igt_output_t *output = data->output;
>   	bool ret = true;
>   	igt_display_t *display = &data->display;
> -	drmModeModeInfo *mode;
> +	drmModeModeInfo *mode = data->mode;
>   	struct igt_fb fb_modeset, fb;
>   	igt_crc_t crc_software, crc_hardware;
>   	int fb_id, fb_modeset_id;
> @@ -461,7 +467,7 @@ static bool test_pipe_ctm(data_t *data,
>   	gamma_linear = generate_table(data->gamma_lut_size, 1.0);
>   
>   	igt_output_set_pipe(output, primary->pipe->pipe);
> -	mode = igt_output_get_mode(output);
> +	igt_output_override_mode(output, mode);
>   
>   	/* Create a framebuffer at the size of the output. */
>   	fb_id = igt_create_fb(data->drm_fd,
> @@ -515,13 +521,15 @@ static bool test_pipe_ctm(data_t *data,
>   			    display->pipes[primary->pipe->pipe].crtc_offset);
>   	igt_pipe_crc_collect_crc(data->pipe_crc, &crc_hardware);
>   
> -	/* Verify that the CRC of the software computed output is
> +	/*
> +	 * Verify that the CRC of the software computed output is
>   	 * equal to the CRC of the CTM matrix transformation output.
>   	 */
>   	ret &= !igt_skip_crc_compare || igt_check_crc_equal(&crc_software, &crc_hardware);
>   
>   	igt_plane_set_fb(primary, NULL);
>   	igt_output_set_pipe(output, PIPE_NONE);
> +	igt_display_commit(&data->display);
>   	igt_remove_fb(data->drm_fd, &fb);
>   	igt_remove_fb(data->drm_fd, &fb_modeset);
>   
> @@ -703,17 +711,12 @@ static void test_setup(data_t *data, enum pipe p)
>   	igt_display_require_output_on_pipe(&data->display, p);
>   	data->output = igt_get_single_output_for_pipe(&data->display, p);
>   	igt_require(data->output);
> +
> +	igt_display_reset(&data->display);
>   }
>   
>   static void test_cleanup(data_t *data)
>   {
> -	igt_plane_t *primary = data->primary;
> -
> -	disable_degamma(primary->pipe);
> -	disable_gamma(primary->pipe);
> -	disable_ctm(primary->pipe);
> -	igt_display_commit(&data->display);
> -
>   	igt_pipe_crc_free(data->pipe_crc);
>   	data->pipe_crc = NULL;
>   }
> @@ -724,10 +727,13 @@ run_gamma_degamma_tests_for_pipe(data_t *data, enum pipe p,
>   {
>   	test_setup(data, p);
>   
> -	/* We assume an 8bits depth per color for degamma/gamma LUTs
> -	 * for CRC checks with framebuffer references. */
> +	/*
> +	 * We assume an 8bits depth per color for degamma/gamma LUTs
> +	 * for CRC checks with framebuffer references.
> +	 */
>   	data->color_depth = 8;
>   	data->drm_format = DRM_FORMAT_XRGB8888;
> +	data->mode = igt_output_get_mode(data->output);
>   
>   	igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(p), data->output->name)
>   		igt_assert(test_t(data, data->primary));
> @@ -757,6 +763,7 @@ run_ctm_tests_for_pipe(data_t *data, enum pipe p,
>   	data->color_depth = 8;
>   	delta = 1.0 / (1 << data->color_depth);
>   	data->drm_format = DRM_FORMAT_XRGB8888;
> +	data->mode = igt_output_get_mode(data->output);
>   
>   	igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(p), data->output->name) {
>   		bool success = false;
> @@ -823,9 +830,6 @@ run_deep_color_tests_for_pipe(data_t *data, enum pipe p)
>   		if (!panel_supports_deep_color(data->drm_fd, output->name))
>   			continue;
>   
> -		data->color_depth = 10;
> -		data->drm_format = DRM_FORMAT_XRGB2101010;
> -		data->output = output;
>   		igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, 10);
>   		igt_output_set_pipe(output, p);
>   		igt_display_commit_atomic(&data->display, DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
> @@ -834,7 +838,15 @@ run_deep_color_tests_for_pipe(data_t *data, enum pipe p)
>   		    !i915_clock_constraint(data, p, 10))
>   			continue;
>   
> +		data->color_depth = 10;
> +		data->drm_format = DRM_FORMAT_XRGB2101010;
> +		data->output = output;
> +		data->mode = igt_output_get_mode(data->output);
> +
>   		igt_dynamic_f("pipe-%s-%s-gamma", kmstest_pipe_name(p), output->name) {
> +			igt_display_reset(&data->display);
> +			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, 10);
> +
>   			ret = test_pipe_gamma(data, data->primary);
>   
>   			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
> @@ -842,6 +854,9 @@ run_deep_color_tests_for_pipe(data_t *data, enum pipe p)
>   		}
>   
>   		igt_dynamic_f("pipe-%s-%s-degamma", kmstest_pipe_name(p), output->name) {
> +			igt_display_reset(&data->display);
> +			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, 10);
> +
>   			ret = test_pipe_degamma(data, data->primary);
>   
>   			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
> @@ -849,6 +864,9 @@ run_deep_color_tests_for_pipe(data_t *data, enum pipe p)
>   		}
>   
>   		igt_dynamic_f("pipe-%s-%s-ctm", kmstest_pipe_name(p), output->name) {
> +			igt_display_reset(&data->display);
> +			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, 10);
> +
>   			ret = test_pipe_ctm(data, data->primary,
>   					    red_green_blue,
>   					    blue_green_blue, ctm);
> diff --git a/tests/kms_color_helper.h b/tests/kms_color_helper.h
> index 2ea15bcd..f0ae30e3 100644
> --- a/tests/kms_color_helper.h
> +++ b/tests/kms_color_helper.h
> @@ -51,6 +51,7 @@ typedef struct {
>   	igt_pipe_crc_t *pipe_crc;
>   	igt_output_t *output;
>   	igt_plane_t *primary;
> +	drmModeModeInfo *mode;
>   
>   	uint32_t drm_format;
>   	uint32_t color_depth;

-- 
~Swati Sharma

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

* Re: [igt-dev] [i-g-t V7 1/2] tests/kms_color: Convert tests to dynamic
  2022-06-30  8:55 ` [igt-dev] [i-g-t V7 1/2] tests/kms_color: Convert tests to dynamic Bhanuprakash Modem
@ 2022-07-04 16:39   ` Kamil Konieczny
  2022-07-04 17:14     ` Modem, Bhanuprakash
  0 siblings, 1 reply; 14+ messages in thread
From: Kamil Konieczny @ 2022-07-04 16:39 UTC (permalink / raw)
  To: igt-dev

Hi Bhanuprakash,

On 2022-06-30 at 14:25:22 +0530, Bhanuprakash Modem wrote:
> Convert the existing subtests to dynamic subtests at pipe level.
> 
> V2:
> * Fix nested igt_fixture in igt_subtest
> V3:
> * Fix to not dereferencing a NULL pointer
> V4:
> * Add output name to subtest
> V5:
> * Rebase
> V6:
> * Fix typos in test description
> V7:
> * Added comments back to ctm tets.
> 
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> ---
>  tests/kms_color.c        | 556 +++++++++++++++++++++------------------
>  tests/kms_color_helper.h |   1 +
>  2 files changed, 298 insertions(+), 259 deletions(-)
> 
> diff --git a/tests/kms_color.c b/tests/kms_color.c
> index ba06947b..85f3b32d 100644
> --- a/tests/kms_color.c
> +++ b/tests/kms_color.c
> @@ -203,7 +203,7 @@ static bool test_pipe_gamma(data_t *data,
>   * gamma LUT and verify we have the same CRC as drawing solid color rectangles
>   * with linear legacy gamma LUT.
>   */
> -static void test_pipe_legacy_gamma(data_t *data,
> +static bool test_pipe_legacy_gamma(data_t *data,
>  				   igt_plane_t *primary)
>  {
>  	igt_output_t *output;
> @@ -220,6 +220,7 @@ static void test_pipe_legacy_gamma(data_t *data,
>  	struct igt_fb fb_modeset, fb;
>  	igt_crc_t crc_fullgamma, crc_fullcolors;
>  	int fb_id, fb_modeset_id;
> +	bool ret;
>  
>  	kms_crtc = drmModeGetCrtc(data->drm_fd, primary->pipe->crtc_id);
>  	legacy_lut_size = kms_crtc->gamma_size;
> @@ -285,7 +286,7 @@ static void test_pipe_legacy_gamma(data_t *data,
>  	/* Verify that the CRC of the software computed output is
>  	 * equal to the CRC of the gamma LUT transformation output.
>  	 */
> -	igt_assert_crc_equal(&crc_fullgamma, &crc_fullcolors);
> +	ret = !igt_skip_crc_compare || igt_check_crc_equal(&crc_fullgamma, &crc_fullcolors);
>  
>  	/* Reset output. */
>  	for (i = 1; i < legacy_lut_size; i++)
> @@ -303,13 +304,15 @@ static void test_pipe_legacy_gamma(data_t *data,
>  	free(red_lut);
>  	free(green_lut);
>  	free(blue_lut);
> +
> +	return ret;
>  }
>  
>  /*
>   * Verify that setting the legacy gamma LUT resets the gamma LUT set
>   * through the GAMMA_LUT property.
>   */
> -static void test_pipe_legacy_gamma_reset(data_t *data,
> +static bool test_pipe_legacy_gamma_reset(data_t *data,
>  					 igt_plane_t *primary)
>  {
>  	const double ctm_identity[] = {
> @@ -324,6 +327,7 @@ static void test_pipe_legacy_gamma_reset(data_t *data,
>  	struct drm_color_lut *lut;
>  	drmModePropertyBlobPtr blob;
>  	igt_output_t *output;
> +	bool ret = true;
>  
>  	igt_require(igt_pipe_obj_has_prop(primary->pipe, IGT_CRTC_GAMMA_LUT));
>  
> @@ -373,10 +377,12 @@ static void test_pipe_legacy_gamma_reset(data_t *data,
>  				    data->gamma_lut_size));
>  	lut = (struct drm_color_lut *) blob->data;
>  	for (i = 0; i < data->gamma_lut_size; i++)
> -		igt_assert(lut[i].red == 0 &&
> +		ret &=(lut[i].red == 0 &&
>  			   lut[i].green == 0 &&
>  			   lut[i].blue == 0);
>  	drmModeFreePropertyBlob(blob);
> +	if(!ret)
> +		goto end;
>  
>  	/* Set a gamma LUT using the legacy ioctl and verify
>  	 * the content of the GAMMA_LUT property is changed
> @@ -411,7 +417,7 @@ static void test_pipe_legacy_gamma_reset(data_t *data,
>  				    legacy_lut_size));
>  	lut = (struct drm_color_lut *) blob->data;
>  	for (i = 0; i < legacy_lut_size; i++)
> -		igt_assert(lut[i].red == 0xffff &&
> +		ret &= (lut[i].red == 0xffff &&
>  			   lut[i].green == 0xffff &&
>  			   lut[i].blue == 0xffff);
>  	drmModeFreePropertyBlob(blob);
> @@ -421,6 +427,8 @@ static void test_pipe_legacy_gamma_reset(data_t *data,
>  
>  	free_lut(degamma_linear);
>  	free_lut(gamma_zero);
> +end:

Should this be before free ?

Regards,
Kamil

> +	return ret;
>  }
>  
>  /*
> @@ -677,130 +685,99 @@ prep_pipe(data_t *data, enum pipe p)
>  	}
>  }
>  
> -static void
> -run_tests_for_pipe(data_t *data, enum pipe p)
> +static void test_setup(data_t *data, enum pipe p)
>  {
>  	igt_pipe_t *pipe;
> -	igt_plane_t *primary;
> -	double delta;
> -	int i;
> -	color_t red_green_blue[] = {
> -		{ 1.0, 0.0, 0.0 },
> -		{ 0.0, 1.0, 0.0 },
> -		{ 0.0, 0.0, 1.0 }
> -	};
>  
> -	igt_fixture {
> -		prep_pipe(data, p);
> +	prep_pipe(data, p);
> +	igt_require_pipe_crc(data->drm_fd);
>  
> -		igt_require_pipe_crc(data->drm_fd);
> +	pipe = &data->display.pipes[p];
> +	igt_require(pipe->n_planes >= 0);
>  
> -		pipe = &data->display.pipes[p];
> -		igt_require(pipe->n_planes >= 0);
> +	data->primary = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
> +	data->pipe_crc = igt_pipe_crc_new(data->drm_fd,
> +					  data->primary->pipe->pipe,
> +					  INTEL_PIPE_CRC_SOURCE_AUTO);
>  
> -		primary = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
> +	igt_display_require_output_on_pipe(&data->display, p);
> +	data->output = igt_get_single_output_for_pipe(&data->display, p);
> +	igt_require(data->output);
> +}
>  
> -		data->pipe_crc = igt_pipe_crc_new(data->drm_fd,
> -						  primary->pipe->pipe,
> -						  INTEL_PIPE_CRC_SOURCE_AUTO);
> +static void test_cleanup(data_t *data)
> +{
> +	igt_plane_t *primary = data->primary;
>  
> -		igt_display_require_output_on_pipe(&data->display, p);
> -		data->output = igt_get_single_output_for_pipe(&data->display, p);
> -		igt_require(data->output);
> -	}
> +	disable_degamma(primary->pipe);
> +	disable_gamma(primary->pipe);
> +	disable_ctm(primary->pipe);
> +	igt_display_commit(&data->display);
> +
> +	igt_pipe_crc_free(data->pipe_crc);
> +	data->pipe_crc = NULL;
> +}
> +
> +static void
> +run_gamma_degamma_tests_for_pipe(data_t *data, enum pipe p,
> +				 bool (*test_t)(data_t*, igt_plane_t*))
> +{
> +	test_setup(data, p);
>  
>  	/* We assume an 8bits depth per color for degamma/gamma LUTs
>  	 * for CRC checks with framebuffer references. */
>  	data->color_depth = 8;
> -	delta = 1.0 / (1 << data->color_depth);
>  	data->drm_format = DRM_FORMAT_XRGB8888;
>  
> -	igt_describe("Check the color transformation from red to blue");
> -	igt_subtest_f("pipe-%s-ctm-red-to-blue", kmstest_pipe_name(p)) {
> -		color_t blue_green_blue[] = {
> -			{ 0.0, 0.0, 1.0 },
> -			{ 0.0, 1.0, 0.0 },
> -			{ 0.0, 0.0, 1.0 }
> -		};
> -		double ctm[] = { 0.0, 0.0, 0.0,
> -				0.0, 1.0, 0.0,
> -				1.0, 0.0, 1.0 };
> -		igt_assert(test_pipe_ctm(data, primary, red_green_blue,
> -					 blue_green_blue, ctm));
> -	}
> +	igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(p), data->output->name)
> +		igt_assert(test_t(data, data->primary));
>  
> -	igt_describe("Check the color transformation from green to red");
> -	igt_subtest_f("pipe-%s-ctm-green-to-red", kmstest_pipe_name(p)) {
> -		color_t red_red_blue[] = {
> -			{ 1.0, 0.0, 0.0 },
> -			{ 1.0, 0.0, 0.0 },
> -			{ 0.0, 0.0, 1.0 }
> -		};
> -		double ctm[] = { 1.0, 1.0, 0.0,
> -				0.0, 0.0, 0.0,
> -				0.0, 0.0, 1.0 };
> -		igt_assert(test_pipe_ctm(data, primary, red_green_blue,
> -					 red_red_blue, ctm));
> -	}
> +	test_cleanup(data);
> +}
>  
> -	igt_describe("Check the color transformation from blue to red");
> -	igt_subtest_f("pipe-%s-ctm-blue-to-red", kmstest_pipe_name(p)) {
> -		color_t red_green_red[] = {
> -			{ 1.0, 0.0, 0.0 },
> -			{ 0.0, 1.0, 0.0 },
> -			{ 1.0, 0.0, 0.0 }
> -		};
> -		double ctm[] = { 1.0, 0.0, 1.0,
> -				0.0, 1.0, 0.0,
> -				0.0, 0.0, 0.0 };
> -		igt_assert(test_pipe_ctm(data, primary, red_green_blue,
> -					 red_green_red, ctm));
> -	}
> +static void
> +run_ctm_tests_for_pipe(data_t *data, enum pipe p,
> +		       color_t *expected_colors,
> +		       double *ctm,
> +		       int iter)
> +{
> +	double delta;
> +	color_t red_green_blue[] = {
> +		{ 1.0, 0.0, 0.0 },
> +		{ 0.0, 1.0, 0.0 },
> +		{ 0.0, 0.0, 1.0 }
> +	};
>  
> -	/* We tests a few values around the expected result because
> -	 * the it depends on the hardware we're dealing with, we can
> -	 * either get clamped or rounded values and we also need to
> -	 * account for odd number of items in the LUTs. */
> -	igt_describe("Check the color transformation for 0.25 transparency");
> -	igt_subtest_f("pipe-%s-ctm-0-25", kmstest_pipe_name(p)) {
> -		color_t expected_colors[] = {
> -			{ 0.0, }, { 0.0, }, { 0.0, }
> -		};
> -		double ctm[] = { 0.25, 0.0,  0.0,
> -				 0.0,  0.25, 0.0,
> -				 0.0,  0.0,  0.25 };
> -		bool success = false;
> +	test_setup(data, p);
>  
> -		for (i = 0; i < 5; i++) {
> -			expected_colors[0].r =
> -				expected_colors[1].g =
> -				expected_colors[2].b =
> -				0.25 + delta * (i - 2);
> -			if (test_pipe_ctm(data, primary, red_green_blue,
> -					  expected_colors, ctm)) {
> -				success = true;
> -				break;
> -			}
> -		}
> -		igt_assert(success);
> -	}
> +	/*
> +	 * We assume an 8bits depth per color for degamma/gamma LUTs
> +	 * for CRC checks with framebuffer references.
> +	 */
> +	data->color_depth = 8;
> +	delta = 1.0 / (1 << data->color_depth);
> +	data->drm_format = DRM_FORMAT_XRGB8888;
>  
> -	igt_describe("Check the color transformation for 0.5 transparency");
> -	igt_subtest_f("pipe-%s-ctm-0-5", kmstest_pipe_name(p)) {
> -		color_t expected_colors[] = {
> -			{ 0.0, }, { 0.0, }, { 0.0, }
> -		};
> -		double ctm[] = { 0.5, 0.0, 0.0,
> -				 0.0, 0.5, 0.0,
> -				 0.0, 0.0, 0.5 };
> +	igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(p), data->output->name) {
>  		bool success = false;
> +		int i;
>  
> -		for (i = 0; i < 5; i++) {
> +		if (!iter)
> +			success = test_pipe_ctm(data, data->primary, red_green_blue,
> +						expected_colors, ctm);
> +
> +		/*
> +		 * We tests a few values around the expected result because
> +		 * it depends on the hardware we're dealing with, we can either
> +		 * get clamped or rounded values and we also need to account
> +		 * for odd number of items in the LUTs.
> +		 */
> +		for (i = 0; i < iter; i++) {
>  			expected_colors[0].r =
>  				expected_colors[1].g =
>  				expected_colors[2].b =
>  				0.5 + delta * (i - 2);
> -			if (test_pipe_ctm(data, primary, red_green_blue,
> +			if (test_pipe_ctm(data, data->primary, red_green_blue,
>  					  expected_colors, ctm)) {
>  				success = true;
>  				break;
> @@ -809,186 +786,249 @@ run_tests_for_pipe(data_t *data, enum pipe p)
>  		igt_assert(success);
>  	}
>  
> -	igt_describe("Check the color transformation for 0.75 transparency");
> -	igt_subtest_f("pipe-%s-ctm-0-75", kmstest_pipe_name(p)) {
> -		color_t expected_colors[] = {
> -			{ 0.0, }, { 0.0, }, { 0.0, }
> -		};
> -		double ctm[] = { 0.75, 0.0,  0.0,
> -				 0.0,  0.75, 0.0,
> -				 0.0,  0.0,  0.75 };
> -		bool success = false;
> -
> -		for (i = 0; i < 7; i++) {
> -			expected_colors[0].r =
> -				expected_colors[1].g =
> -				expected_colors[2].b =
> -				0.75 + delta * (i - 3);
> -			if (test_pipe_ctm(data, primary, red_green_blue,
> -						expected_colors, ctm)) {
> -				success = true;
> -				break;
> -			}
> -		}
> -		igt_assert(success);
> -	}
> +	test_cleanup(data);
> +}
>  
> -	igt_describe("Check the color transformation for maximum transparency");
> -	igt_subtest_f("pipe-%s-ctm-max", kmstest_pipe_name(p)) {
> -		color_t full_rgb[] = {
> -			{ 1.0, 0.0, 0.0 },
> -			{ 0.0, 1.0, 0.0 },
> -			{ 0.0, 0.0, 1.0 }
> -		};
> -		double ctm[] = { 100.0,   0.0,   0.0,
> -				 0.0,   100.0,   0.0,
> -				 0.0,     0.0, 100.0 };
> -
> -		/* CherryView generates values on 10bits that we
> -		 * produce with an 8 bits per color framebuffer. */
> -		igt_require(!IS_CHERRYVIEW(data->devid));
> -
> -		igt_assert(test_pipe_ctm(data, primary, red_green_blue,
> -					 full_rgb, ctm));
> -	}
> +static void
> +run_deep_color_tests_for_pipe(data_t *data, enum pipe p)
> +{
> +	igt_output_t *output;
> +	color_t blue_green_blue[] = {
> +		{ 0.0, 0.0, 1.0 },
> +		{ 0.0, 1.0, 0.0 },
> +		{ 0.0, 0.0, 1.0 }
> +	};
> +	color_t red_green_blue[] = {
> +		{ 1.0, 0.0, 0.0 },
> +		{ 0.0, 1.0, 0.0 },
> +		{ 0.0, 0.0, 1.0 }
> +	};
> +	double ctm[] = { 0.0, 0.0, 0.0,
> +			 0.0, 1.0, 0.0,
> +			 1.0, 0.0, 1.0 };
>  
> -	igt_describe("Check the color transformation for negative transparency");
> -	igt_subtest_f("pipe-%s-ctm-negative", kmstest_pipe_name(p)) {
> -		color_t all_black[] = {
> -			{ 0.0, 0.0, 0.0 },
> -			{ 0.0, 0.0, 0.0 },
> -			{ 0.0, 0.0, 0.0 }
> -		};
> -		double ctm[] = { -1.0,  0.0,  0.0,
> -				 0.0, -1.0,  0.0,
> -				 0.0,  0.0, -1.0 };
> -		igt_assert(test_pipe_ctm(data, primary, red_green_blue,
> -					 all_black, ctm));
> -	}
> +	if (is_i915_device(data->drm_fd))
> +		igt_require_f((intel_display_ver(data->devid) >= 11),
> +				"At least GEN 11 is required to validate Deep-color.\n");
>  
> -#if 0
> -	igt_subtest_f("pipe-%s-ctm-limited-range", kmstest_pipe_name(p))
> -		test_pipe_limited_range_ctm(data, primary);
> -#endif
> +	test_setup(data, p);
>  
> -	igt_describe("Verify that degamma LUT transformation works correctly");
> -	igt_subtest_f("pipe-%s-degamma", kmstest_pipe_name(p))
> -		igt_assert(test_pipe_degamma(data, primary));
> +	for_each_valid_output_on_pipe(&data->display, p, output) {
> +		uint64_t max_bpc = get_max_bpc(output);
> +		bool ret;
>  
> -	igt_describe("Verify that gamma LUT transformation works correctly");
> -	igt_subtest_f("pipe-%s-gamma", kmstest_pipe_name(p))
> -		igt_assert(test_pipe_gamma(data, primary));
> +		if (!max_bpc)
> +			continue;
>  
> -	igt_describe("Verify that legacy gamma LUT transformation works correctly");
> -	igt_subtest_f("pipe-%s-legacy-gamma", kmstest_pipe_name(p))
> -		test_pipe_legacy_gamma(data, primary);
> +		if (!panel_supports_deep_color(data->drm_fd, output->name))
> +			continue;
>  
> -	igt_describe("Verify that setting the legacy gamma LUT resets the gamma LUT set through "
> -			"GAMMA_LUT property");
> -	igt_subtest_f("pipe-%s-legacy-gamma-reset", kmstest_pipe_name(p))
> -		test_pipe_legacy_gamma_reset(data, primary);
> +		data->color_depth = 10;
> +		data->drm_format = DRM_FORMAT_XRGB2101010;
> +		data->output = output;
> +		igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, 10);
> +		igt_output_set_pipe(output, p);
> +		igt_display_commit_atomic(&data->display, DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
>  
> -	igt_fixture
> -		igt_require(data->display.is_atomic);
> +		if (is_i915_device(data->drm_fd) &&
> +		    !i915_clock_constraint(data, p, 10))
> +			continue;
>  
> -	igt_describe("Verify that deep color works correctly");
> -	igt_subtest_with_dynamic_f("pipe-%s-deep-color", kmstest_pipe_name(p)) {
> -		igt_output_t *output;
> -		color_t blue_green_blue[] = {
> -			{ 0.0, 0.0, 1.0 },
> -			{ 0.0, 1.0, 0.0 },
> -			{ 0.0, 0.0, 1.0 }
> -		};
> -		double ctm[] = { 0.0, 0.0, 0.0,
> -				0.0, 1.0, 0.0,
> -				1.0, 0.0, 1.0 };
> -
> -		if (is_i915_device(data->drm_fd))
> -			igt_require_f((intel_display_ver(data->devid) >= 11),
> -					"At least GEN 11 is required to validate Deep-color.\n");
> -
> -		for_each_valid_output_on_pipe(&data->display, p, output) {
> -			uint64_t max_bpc = get_max_bpc(output);
> -			bool ret;
> -
> -			if (!max_bpc)
> -				continue;
> -
> -			if (!panel_supports_deep_color(data->drm_fd, output->name))
> -				continue;
> -
> -			data->color_depth = 10;
> -			data->drm_format = DRM_FORMAT_XRGB2101010;
> -			data->output = output;
> -			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, 10);
> -			igt_output_set_pipe(output, p);
> -			igt_display_commit_atomic(&data->display, DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
> -
> -			if (is_i915_device(data->drm_fd) &&
> -			    !i915_clock_constraint(data, p, 10))
> -				continue;
> -
> -			igt_dynamic_f("gamma-%s", output->name) {
> -				ret = test_pipe_gamma(data, primary);
> -
> -				igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
> -				igt_assert(ret);
> -			}
> +		igt_dynamic_f("pipe-%s-%s-gamma", kmstest_pipe_name(p), output->name) {
> +			ret = test_pipe_gamma(data, data->primary);
>  
> -			igt_dynamic_f("degamma-%s", output->name) {
> -				ret = test_pipe_degamma(data, primary);
> +			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
> +			igt_assert(ret);
> +		}
>  
> -				igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
> -				igt_assert(ret);
> -			}
> +		igt_dynamic_f("pipe-%s-%s-degamma", kmstest_pipe_name(p), output->name) {
> +			ret = test_pipe_degamma(data, data->primary);
>  
> -			igt_dynamic_f("ctm-%s", output->name) {
> -				ret = test_pipe_ctm(data, primary,
> -						    red_green_blue,
> -						    blue_green_blue, ctm);
> +			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
> +			igt_assert(ret);
> +		}
>  
> -				igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
> -				igt_assert(ret);
> -			}
> +		igt_dynamic_f("pipe-%s-%s-ctm", kmstest_pipe_name(p), output->name) {
> +			ret = test_pipe_ctm(data, data->primary,
> +					    red_green_blue,
> +					    blue_green_blue, ctm);
>  
> -			break;
> +			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
> +			igt_assert(ret);
>  		}
> +
> +		break;
>  	}
>  
> -	igt_fixture {
> -		disable_degamma(primary->pipe);
> -		disable_gamma(primary->pipe);
> -		disable_ctm(primary->pipe);
> -		igt_display_commit(&data->display);
> +	test_cleanup(data);
> +}
> +
> +static void
> +run_invalid_tests_for_pipe(data_t *data)
> +{
> +	enum pipe pipe;
> +	struct {
> +		const char *name;
> +		void (*test_t) (data_t *data, enum pipe pipe);
> +		const char *desc;
> +	} tests[] = {
> +		{ "invalid-gamma-lut-sizes", invalid_gamma_lut_sizes,
> +			"Negative check for invalid gamma lut sizes" },
> +
> +		{ "invalid-degamma-lut-sizes", invalid_degamma_lut_sizes,
> +			"Negative check for invalid degamma lut sizes" },
> +
> +		{ "invalid-ctm-matrix-sizes", invalid_ctm_matrix_sizes,
> +			"Negative check for color tranformation matrix sizes" },
> +	};
> +	int i;
>  
> -		igt_pipe_crc_free(data->pipe_crc);
> -		data->pipe_crc = NULL;
> +	for (i = 0; i < ARRAY_SIZE(tests); i++) {
> +		igt_describe_f("%s", tests[i].desc);
> +		igt_subtest_with_dynamic_f("%s", tests[i].name) {
> +			for_each_pipe(&data->display, pipe) {
> +				prep_pipe(data, pipe);
> +
> +				igt_dynamic_f("pipe-%s", kmstest_pipe_name(pipe))
> +					tests[i].test_t(data, pipe);
> +			}
> +		}
>  	}
>  }
>  
>  static void
> -run_invalid_tests_for_pipe(data_t *data, enum pipe p)
> +run_tests_for_pipe(data_t *data)
>  {
> -	igt_fixture
> -		prep_pipe(data, p);
> +	enum pipe pipe;
> +	struct {
> +		const char *name;
> +		bool (*test_t)(data_t*, igt_plane_t*);
> +		const char *desc;
> +	} gamma_degamma_tests[] = {
> +		{ "degamma", test_pipe_degamma,
> +		  "Verify that degamma LUT transformation works correctly" },
> +
> +		{ "gamma", test_pipe_gamma,
> +		  "Verify that gamma LUT transformation works correctly" },
> +
> +		{ "legacy-gamma", test_pipe_legacy_gamma,
> +		  "Verify that legacy gamma LUT transformation works correctly" },
> +
> +		{ "legacy-gamma-reset", test_pipe_legacy_gamma_reset,
> +		  "Verify that setting the legacy gamma LUT resets the gamma LUT set through GAMMA_LUT property" },
> +	};
> +	struct {
> +		const char *name;
> +		int iter;
> +		color_t colors[3];
> +		double ctm[9];
> +		const char *desc;
> +	} ctm_tests[] = {
> +		{ "ctm-red-to-blue", 0,
> +			{{ 0.0, 0.0, 1.0 },
> +			 { 0.0, 1.0, 0.0 },
> +			 { 0.0, 0.0, 1.0 }},
> +		  { 0.0, 0.0, 0.0,
> +		    0.0, 1.0, 0.0,
> +		    1.0, 0.0, 1.0 },
> +		  "Check the color transformation from red to blue"
> +		},
> +		{ "ctm-green-to-red", 0,
> +			{{ 1.0, 0.0, 0.0 },
> +			 { 1.0, 0.0, 0.0 },
> +			 { 0.0, 0.0, 1.0 }},
> +		  { 1.0, 1.0, 0.0,
> +		    0.0, 0.0, 0.0,
> +		    0.0, 0.0, 1.0 },
> +		  "Check the color transformation from green to red"
> +		},
> +		{ "ctm-blue-to-red", 0,
> +			{{ 1.0, 0.0, 0.0 },
> +			 { 0.0, 1.0, 0.0 },
> +			 { 1.0, 0.0, 0.0 }},
> +		  { 1.0, 0.0, 1.0,
> +		    0.0, 1.0, 0.0,
> +		    0.0, 0.0, 0.0 },
> +		  "Check the color transformation from blue to red"
> +		},
> +		{ "ctm-max", 0,
> +			{{ 1.0, 0.0, 0.0 },
> +			 { 0.0, 1.0, 0.0 },
> +			 { 0.0, 0.0, 1.0 }},
> +		  { 100.0, 0.0, 0.0,
> +		    0.0, 100.0, 0.0,
> +		    0.0, 0.0, 100.0 },
> +		  "Check the color transformation for maximum transparency"
> +		},
> +		{ "ctm-negative", 0,
> +			{{ 0.0, 0.0, 0.0 },
> +			 { 0.0, 0.0, 0.0 },
> +			 { 0.0, 0.0, 0.0 }},
> +		  { -1.0, 0.0, 0.0,
> +		    0.0, -1.0, 0.0,
> +		    0.0, 0.0, -1.0 },
> +		  "Check the color transformation for negative transparency"
> +		},
> +		{ "ctm-0-25", 5,
> +			{{ 0.0, }, { 0.0, }, { 0.0, }},
> +		  { 0.25, 0.0,  0.0,
> +		    0.0,  0.25, 0.0,
> +		    0.0,  0.0,  0.25 },
> +		  "Check the color transformation for 0.25 transparency"
> +		},
> +		{ "ctm-0-50", 5,
> +			{{ 0.0, }, { 0.0, }, { 0.0, }},
> +		  { 0.5,  0.0,  0.0,
> +		    0.0,  0.5,  0.0,
> +		    0.0,  0.0,  0.5 },
> +		  "Check the color transformation for 0.5 transparency"
> +		},
> +		{ "ctm-0-75", 7,
> +			{{ 0.0, }, { 0.0, }, { 0.0, }},
> +		  { 0.75, 0.0,  0.0,
> +		    0.0,  0.75, 0.0,
> +		    0.0,  0.0,  0.75 },
> +		  "Check the color transformation for 0.75 transparency"
> +		},
> +	};
> +	int i;
> +
> +	for (i = 0; i < ARRAY_SIZE(gamma_degamma_tests); i++) {
> +		igt_describe_f("%s", gamma_degamma_tests[i].desc);
> +		igt_subtest_with_dynamic_f("%s", gamma_degamma_tests[i].name) {
> +			for_each_pipe(&data->display, pipe) {
> +				run_gamma_degamma_tests_for_pipe(data, pipe,
> +								 gamma_degamma_tests[i].test_t);
> +			}
> +		}
> +	}
>  
> -	igt_describe("Negative check for invalid gamma lut sizes");
> -	igt_subtest_f("pipe-%s-invalid-gamma-lut-sizes", kmstest_pipe_name(p))
> -		invalid_gamma_lut_sizes(data, p);
> +	for (i = 0; i < ARRAY_SIZE(ctm_tests); i++) {
> +		igt_describe_f("%s", ctm_tests[i].desc);
> +		igt_subtest_with_dynamic_f("%s", ctm_tests[i].name) {
> +			for_each_pipe(&data->display, pipe) {
> +				run_ctm_tests_for_pipe(data, pipe,
> +						       ctm_tests[i].colors,
> +						       ctm_tests[i].ctm,
> +						       ctm_tests[i].iter);
> +			}
> +		}
> +	}
>  
> -	igt_describe("Negative check for invalid degamma lut sizes");
> -	igt_subtest_f("pipe-%s-invalid-degamma-lut-sizes", kmstest_pipe_name(p))
> -		invalid_degamma_lut_sizes(data, p);
> +	igt_fixture
> +		igt_require(data->display.is_atomic);
>  
> -	igt_describe("Negative check for color tranformation matrix sizes");
> -	igt_subtest_f("pipe-%s-invalid-ctm-matrix-sizes", kmstest_pipe_name(p))
> -		invalid_ctm_matrix_sizes(data, p);
> +	igt_describe("Verify that deep color works correctly");
> +	igt_subtest_with_dynamic("deep-color") {
> +		for_each_pipe(&data->display, pipe) {
> +			run_deep_color_tests_for_pipe(data, pipe);
> +		}
> +	}
>  }
>  
>  igt_main
>  {
>  	data_t data = {};
> -	enum pipe pipe;
>  
>  	igt_fixture {
>  		data.drm_fd = drm_open_driver_master(DRIVER_ANY);
> @@ -999,13 +1039,11 @@ igt_main
>  		igt_display_require(&data.display, data.drm_fd);
>  	}
>  
> -	for_each_pipe_static(pipe) {
> -		igt_subtest_group
> -			run_tests_for_pipe(&data, pipe);
> +	igt_subtest_group
> +		run_tests_for_pipe(&data);
>  
> -		igt_subtest_group
> -			run_invalid_tests_for_pipe(&data, pipe);
> -	}
> +	igt_subtest_group
> +		run_invalid_tests_for_pipe(&data);
>  
>  	igt_fixture {
>  		igt_display_fini(&data.display);
> diff --git a/tests/kms_color_helper.h b/tests/kms_color_helper.h
> index cc07f5ee..2ea15bcd 100644
> --- a/tests/kms_color_helper.h
> +++ b/tests/kms_color_helper.h
> @@ -50,6 +50,7 @@ typedef struct {
>  	igt_display_t display;
>  	igt_pipe_crc_t *pipe_crc;
>  	igt_output_t *output;
> +	igt_plane_t *primary;
>  
>  	uint32_t drm_format;
>  	uint32_t color_depth;
> -- 
> 2.35.1
> 

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

* Re: [igt-dev] [i-g-t V7 1/2] tests/kms_color: Convert tests to dynamic
  2022-07-04 16:39   ` Kamil Konieczny
@ 2022-07-04 17:14     ` Modem, Bhanuprakash
  2022-07-05 16:30       ` Kamil Konieczny
  0 siblings, 1 reply; 14+ messages in thread
From: Modem, Bhanuprakash @ 2022-07-04 17:14 UTC (permalink / raw)
  To: Kamil Konieczny, igt-dev

On Mon-04-07-2022 10:09 pm, Kamil Konieczny wrote:
> Hi Bhanuprakash,
> 
> On 2022-06-30 at 14:25:22 +0530, Bhanuprakash Modem wrote:
>> Convert the existing subtests to dynamic subtests at pipe level.
>>
>> V2:
>> * Fix nested igt_fixture in igt_subtest
>> V3:
>> * Fix to not dereferencing a NULL pointer
>> V4:
>> * Add output name to subtest
>> V5:
>> * Rebase
>> V6:
>> * Fix typos in test description
>> V7:
>> * Added comments back to ctm tets.
>>
>> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
>> ---
>>   tests/kms_color.c        | 556 +++++++++++++++++++++------------------
>>   tests/kms_color_helper.h |   1 +
>>   2 files changed, 298 insertions(+), 259 deletions(-)
>>
>> diff --git a/tests/kms_color.c b/tests/kms_color.c
>> index ba06947b..85f3b32d 100644
>> --- a/tests/kms_color.c
>> +++ b/tests/kms_color.c
>> @@ -203,7 +203,7 @@ static bool test_pipe_gamma(data_t *data,
>>    * gamma LUT and verify we have the same CRC as drawing solid color rectangles
>>    * with linear legacy gamma LUT.
>>    */
>> -static void test_pipe_legacy_gamma(data_t *data,
>> +static bool test_pipe_legacy_gamma(data_t *data,
>>   				   igt_plane_t *primary)
>>   {
>>   	igt_output_t *output;
>> @@ -220,6 +220,7 @@ static void test_pipe_legacy_gamma(data_t *data,
>>   	struct igt_fb fb_modeset, fb;
>>   	igt_crc_t crc_fullgamma, crc_fullcolors;
>>   	int fb_id, fb_modeset_id;
>> +	bool ret;
>>   
>>   	kms_crtc = drmModeGetCrtc(data->drm_fd, primary->pipe->crtc_id);
>>   	legacy_lut_size = kms_crtc->gamma_size;
>> @@ -285,7 +286,7 @@ static void test_pipe_legacy_gamma(data_t *data,
>>   	/* Verify that the CRC of the software computed output is
>>   	 * equal to the CRC of the gamma LUT transformation output.
>>   	 */
>> -	igt_assert_crc_equal(&crc_fullgamma, &crc_fullcolors);
>> +	ret = !igt_skip_crc_compare || igt_check_crc_equal(&crc_fullgamma, &crc_fullcolors);
>>   
>>   	/* Reset output. */
>>   	for (i = 1; i < legacy_lut_size; i++)
>> @@ -303,13 +304,15 @@ static void test_pipe_legacy_gamma(data_t *data,
>>   	free(red_lut);
>>   	free(green_lut);
>>   	free(blue_lut);
>> +
>> +	return ret;
>>   }
>>   
>>   /*
>>    * Verify that setting the legacy gamma LUT resets the gamma LUT set
>>    * through the GAMMA_LUT property.
>>    */
>> -static void test_pipe_legacy_gamma_reset(data_t *data,
>> +static bool test_pipe_legacy_gamma_reset(data_t *data,
>>   					 igt_plane_t *primary)
>>   {
>>   	const double ctm_identity[] = {
>> @@ -324,6 +327,7 @@ static void test_pipe_legacy_gamma_reset(data_t *data,
>>   	struct drm_color_lut *lut;
>>   	drmModePropertyBlobPtr blob;
>>   	igt_output_t *output;
>> +	bool ret = true;
>>   
>>   	igt_require(igt_pipe_obj_has_prop(primary->pipe, IGT_CRTC_GAMMA_LUT));
>>   
>> @@ -373,10 +377,12 @@ static void test_pipe_legacy_gamma_reset(data_t *data,
>>   				    data->gamma_lut_size));
>>   	lut = (struct drm_color_lut *) blob->data;
>>   	for (i = 0; i < data->gamma_lut_size; i++)
>> -		igt_assert(lut[i].red == 0 &&
>> +		ret &=(lut[i].red == 0 &&
>>   			   lut[i].green == 0 &&
>>   			   lut[i].blue == 0);
>>   	drmModeFreePropertyBlob(blob);
>> +	if(!ret)
>> +		goto end;
>>   
>>   	/* Set a gamma LUT using the legacy ioctl and verify
>>   	 * the content of the GAMMA_LUT property is changed
>> @@ -411,7 +417,7 @@ static void test_pipe_legacy_gamma_reset(data_t *data,
>>   				    legacy_lut_size));
>>   	lut = (struct drm_color_lut *) blob->data;
>>   	for (i = 0; i < legacy_lut_size; i++)
>> -		igt_assert(lut[i].red == 0xffff &&
>> +		ret &= (lut[i].red == 0xffff &&
>>   			   lut[i].green == 0xffff &&
>>   			   lut[i].blue == 0xffff);
>>   	drmModeFreePropertyBlob(blob);
>> @@ -421,6 +427,8 @@ static void test_pipe_legacy_gamma_reset(data_t *data,
>>   
>>   	free_lut(degamma_linear);
>>   	free_lut(gamma_zero);
>> +end:
> 
> Should this be before free ?

Thanks Kamil,

It seems, Yes. You have great eyes :-)
I am fine if you want to submit a fix, else I'll do.

- Bhanu

> 
> Regards,
> Kamil
> 
>> +	return ret;
>>   }
>>   
>>   /*
>> @@ -677,130 +685,99 @@ prep_pipe(data_t *data, enum pipe p)
>>   	}
>>   }
>>   
>> -static void
>> -run_tests_for_pipe(data_t *data, enum pipe p)
>> +static void test_setup(data_t *data, enum pipe p)
>>   {
>>   	igt_pipe_t *pipe;
>> -	igt_plane_t *primary;
>> -	double delta;
>> -	int i;
>> -	color_t red_green_blue[] = {
>> -		{ 1.0, 0.0, 0.0 },
>> -		{ 0.0, 1.0, 0.0 },
>> -		{ 0.0, 0.0, 1.0 }
>> -	};
>>   
>> -	igt_fixture {
>> -		prep_pipe(data, p);
>> +	prep_pipe(data, p);
>> +	igt_require_pipe_crc(data->drm_fd);
>>   
>> -		igt_require_pipe_crc(data->drm_fd);
>> +	pipe = &data->display.pipes[p];
>> +	igt_require(pipe->n_planes >= 0);
>>   
>> -		pipe = &data->display.pipes[p];
>> -		igt_require(pipe->n_planes >= 0);
>> +	data->primary = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
>> +	data->pipe_crc = igt_pipe_crc_new(data->drm_fd,
>> +					  data->primary->pipe->pipe,
>> +					  INTEL_PIPE_CRC_SOURCE_AUTO);
>>   
>> -		primary = igt_pipe_get_plane_type(pipe, DRM_PLANE_TYPE_PRIMARY);
>> +	igt_display_require_output_on_pipe(&data->display, p);
>> +	data->output = igt_get_single_output_for_pipe(&data->display, p);
>> +	igt_require(data->output);
>> +}
>>   
>> -		data->pipe_crc = igt_pipe_crc_new(data->drm_fd,
>> -						  primary->pipe->pipe,
>> -						  INTEL_PIPE_CRC_SOURCE_AUTO);
>> +static void test_cleanup(data_t *data)
>> +{
>> +	igt_plane_t *primary = data->primary;
>>   
>> -		igt_display_require_output_on_pipe(&data->display, p);
>> -		data->output = igt_get_single_output_for_pipe(&data->display, p);
>> -		igt_require(data->output);
>> -	}
>> +	disable_degamma(primary->pipe);
>> +	disable_gamma(primary->pipe);
>> +	disable_ctm(primary->pipe);
>> +	igt_display_commit(&data->display);
>> +
>> +	igt_pipe_crc_free(data->pipe_crc);
>> +	data->pipe_crc = NULL;
>> +}
>> +
>> +static void
>> +run_gamma_degamma_tests_for_pipe(data_t *data, enum pipe p,
>> +				 bool (*test_t)(data_t*, igt_plane_t*))
>> +{
>> +	test_setup(data, p);
>>   
>>   	/* We assume an 8bits depth per color for degamma/gamma LUTs
>>   	 * for CRC checks with framebuffer references. */
>>   	data->color_depth = 8;
>> -	delta = 1.0 / (1 << data->color_depth);
>>   	data->drm_format = DRM_FORMAT_XRGB8888;
>>   
>> -	igt_describe("Check the color transformation from red to blue");
>> -	igt_subtest_f("pipe-%s-ctm-red-to-blue", kmstest_pipe_name(p)) {
>> -		color_t blue_green_blue[] = {
>> -			{ 0.0, 0.0, 1.0 },
>> -			{ 0.0, 1.0, 0.0 },
>> -			{ 0.0, 0.0, 1.0 }
>> -		};
>> -		double ctm[] = { 0.0, 0.0, 0.0,
>> -				0.0, 1.0, 0.0,
>> -				1.0, 0.0, 1.0 };
>> -		igt_assert(test_pipe_ctm(data, primary, red_green_blue,
>> -					 blue_green_blue, ctm));
>> -	}
>> +	igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(p), data->output->name)
>> +		igt_assert(test_t(data, data->primary));
>>   
>> -	igt_describe("Check the color transformation from green to red");
>> -	igt_subtest_f("pipe-%s-ctm-green-to-red", kmstest_pipe_name(p)) {
>> -		color_t red_red_blue[] = {
>> -			{ 1.0, 0.0, 0.0 },
>> -			{ 1.0, 0.0, 0.0 },
>> -			{ 0.0, 0.0, 1.0 }
>> -		};
>> -		double ctm[] = { 1.0, 1.0, 0.0,
>> -				0.0, 0.0, 0.0,
>> -				0.0, 0.0, 1.0 };
>> -		igt_assert(test_pipe_ctm(data, primary, red_green_blue,
>> -					 red_red_blue, ctm));
>> -	}
>> +	test_cleanup(data);
>> +}
>>   
>> -	igt_describe("Check the color transformation from blue to red");
>> -	igt_subtest_f("pipe-%s-ctm-blue-to-red", kmstest_pipe_name(p)) {
>> -		color_t red_green_red[] = {
>> -			{ 1.0, 0.0, 0.0 },
>> -			{ 0.0, 1.0, 0.0 },
>> -			{ 1.0, 0.0, 0.0 }
>> -		};
>> -		double ctm[] = { 1.0, 0.0, 1.0,
>> -				0.0, 1.0, 0.0,
>> -				0.0, 0.0, 0.0 };
>> -		igt_assert(test_pipe_ctm(data, primary, red_green_blue,
>> -					 red_green_red, ctm));
>> -	}
>> +static void
>> +run_ctm_tests_for_pipe(data_t *data, enum pipe p,
>> +		       color_t *expected_colors,
>> +		       double *ctm,
>> +		       int iter)
>> +{
>> +	double delta;
>> +	color_t red_green_blue[] = {
>> +		{ 1.0, 0.0, 0.0 },
>> +		{ 0.0, 1.0, 0.0 },
>> +		{ 0.0, 0.0, 1.0 }
>> +	};
>>   
>> -	/* We tests a few values around the expected result because
>> -	 * the it depends on the hardware we're dealing with, we can
>> -	 * either get clamped or rounded values and we also need to
>> -	 * account for odd number of items in the LUTs. */
>> -	igt_describe("Check the color transformation for 0.25 transparency");
>> -	igt_subtest_f("pipe-%s-ctm-0-25", kmstest_pipe_name(p)) {
>> -		color_t expected_colors[] = {
>> -			{ 0.0, }, { 0.0, }, { 0.0, }
>> -		};
>> -		double ctm[] = { 0.25, 0.0,  0.0,
>> -				 0.0,  0.25, 0.0,
>> -				 0.0,  0.0,  0.25 };
>> -		bool success = false;
>> +	test_setup(data, p);
>>   
>> -		for (i = 0; i < 5; i++) {
>> -			expected_colors[0].r =
>> -				expected_colors[1].g =
>> -				expected_colors[2].b =
>> -				0.25 + delta * (i - 2);
>> -			if (test_pipe_ctm(data, primary, red_green_blue,
>> -					  expected_colors, ctm)) {
>> -				success = true;
>> -				break;
>> -			}
>> -		}
>> -		igt_assert(success);
>> -	}
>> +	/*
>> +	 * We assume an 8bits depth per color for degamma/gamma LUTs
>> +	 * for CRC checks with framebuffer references.
>> +	 */
>> +	data->color_depth = 8;
>> +	delta = 1.0 / (1 << data->color_depth);
>> +	data->drm_format = DRM_FORMAT_XRGB8888;
>>   
>> -	igt_describe("Check the color transformation for 0.5 transparency");
>> -	igt_subtest_f("pipe-%s-ctm-0-5", kmstest_pipe_name(p)) {
>> -		color_t expected_colors[] = {
>> -			{ 0.0, }, { 0.0, }, { 0.0, }
>> -		};
>> -		double ctm[] = { 0.5, 0.0, 0.0,
>> -				 0.0, 0.5, 0.0,
>> -				 0.0, 0.0, 0.5 };
>> +	igt_dynamic_f("pipe-%s-%s", kmstest_pipe_name(p), data->output->name) {
>>   		bool success = false;
>> +		int i;
>>   
>> -		for (i = 0; i < 5; i++) {
>> +		if (!iter)
>> +			success = test_pipe_ctm(data, data->primary, red_green_blue,
>> +						expected_colors, ctm);
>> +
>> +		/*
>> +		 * We tests a few values around the expected result because
>> +		 * it depends on the hardware we're dealing with, we can either
>> +		 * get clamped or rounded values and we also need to account
>> +		 * for odd number of items in the LUTs.
>> +		 */
>> +		for (i = 0; i < iter; i++) {
>>   			expected_colors[0].r =
>>   				expected_colors[1].g =
>>   				expected_colors[2].b =
>>   				0.5 + delta * (i - 2);
>> -			if (test_pipe_ctm(data, primary, red_green_blue,
>> +			if (test_pipe_ctm(data, data->primary, red_green_blue,
>>   					  expected_colors, ctm)) {
>>   				success = true;
>>   				break;
>> @@ -809,186 +786,249 @@ run_tests_for_pipe(data_t *data, enum pipe p)
>>   		igt_assert(success);
>>   	}
>>   
>> -	igt_describe("Check the color transformation for 0.75 transparency");
>> -	igt_subtest_f("pipe-%s-ctm-0-75", kmstest_pipe_name(p)) {
>> -		color_t expected_colors[] = {
>> -			{ 0.0, }, { 0.0, }, { 0.0, }
>> -		};
>> -		double ctm[] = { 0.75, 0.0,  0.0,
>> -				 0.0,  0.75, 0.0,
>> -				 0.0,  0.0,  0.75 };
>> -		bool success = false;
>> -
>> -		for (i = 0; i < 7; i++) {
>> -			expected_colors[0].r =
>> -				expected_colors[1].g =
>> -				expected_colors[2].b =
>> -				0.75 + delta * (i - 3);
>> -			if (test_pipe_ctm(data, primary, red_green_blue,
>> -						expected_colors, ctm)) {
>> -				success = true;
>> -				break;
>> -			}
>> -		}
>> -		igt_assert(success);
>> -	}
>> +	test_cleanup(data);
>> +}
>>   
>> -	igt_describe("Check the color transformation for maximum transparency");
>> -	igt_subtest_f("pipe-%s-ctm-max", kmstest_pipe_name(p)) {
>> -		color_t full_rgb[] = {
>> -			{ 1.0, 0.0, 0.0 },
>> -			{ 0.0, 1.0, 0.0 },
>> -			{ 0.0, 0.0, 1.0 }
>> -		};
>> -		double ctm[] = { 100.0,   0.0,   0.0,
>> -				 0.0,   100.0,   0.0,
>> -				 0.0,     0.0, 100.0 };
>> -
>> -		/* CherryView generates values on 10bits that we
>> -		 * produce with an 8 bits per color framebuffer. */
>> -		igt_require(!IS_CHERRYVIEW(data->devid));
>> -
>> -		igt_assert(test_pipe_ctm(data, primary, red_green_blue,
>> -					 full_rgb, ctm));
>> -	}
>> +static void
>> +run_deep_color_tests_for_pipe(data_t *data, enum pipe p)
>> +{
>> +	igt_output_t *output;
>> +	color_t blue_green_blue[] = {
>> +		{ 0.0, 0.0, 1.0 },
>> +		{ 0.0, 1.0, 0.0 },
>> +		{ 0.0, 0.0, 1.0 }
>> +	};
>> +	color_t red_green_blue[] = {
>> +		{ 1.0, 0.0, 0.0 },
>> +		{ 0.0, 1.0, 0.0 },
>> +		{ 0.0, 0.0, 1.0 }
>> +	};
>> +	double ctm[] = { 0.0, 0.0, 0.0,
>> +			 0.0, 1.0, 0.0,
>> +			 1.0, 0.0, 1.0 };
>>   
>> -	igt_describe("Check the color transformation for negative transparency");
>> -	igt_subtest_f("pipe-%s-ctm-negative", kmstest_pipe_name(p)) {
>> -		color_t all_black[] = {
>> -			{ 0.0, 0.0, 0.0 },
>> -			{ 0.0, 0.0, 0.0 },
>> -			{ 0.0, 0.0, 0.0 }
>> -		};
>> -		double ctm[] = { -1.0,  0.0,  0.0,
>> -				 0.0, -1.0,  0.0,
>> -				 0.0,  0.0, -1.0 };
>> -		igt_assert(test_pipe_ctm(data, primary, red_green_blue,
>> -					 all_black, ctm));
>> -	}
>> +	if (is_i915_device(data->drm_fd))
>> +		igt_require_f((intel_display_ver(data->devid) >= 11),
>> +				"At least GEN 11 is required to validate Deep-color.\n");
>>   
>> -#if 0
>> -	igt_subtest_f("pipe-%s-ctm-limited-range", kmstest_pipe_name(p))
>> -		test_pipe_limited_range_ctm(data, primary);
>> -#endif
>> +	test_setup(data, p);
>>   
>> -	igt_describe("Verify that degamma LUT transformation works correctly");
>> -	igt_subtest_f("pipe-%s-degamma", kmstest_pipe_name(p))
>> -		igt_assert(test_pipe_degamma(data, primary));
>> +	for_each_valid_output_on_pipe(&data->display, p, output) {
>> +		uint64_t max_bpc = get_max_bpc(output);
>> +		bool ret;
>>   
>> -	igt_describe("Verify that gamma LUT transformation works correctly");
>> -	igt_subtest_f("pipe-%s-gamma", kmstest_pipe_name(p))
>> -		igt_assert(test_pipe_gamma(data, primary));
>> +		if (!max_bpc)
>> +			continue;
>>   
>> -	igt_describe("Verify that legacy gamma LUT transformation works correctly");
>> -	igt_subtest_f("pipe-%s-legacy-gamma", kmstest_pipe_name(p))
>> -		test_pipe_legacy_gamma(data, primary);
>> +		if (!panel_supports_deep_color(data->drm_fd, output->name))
>> +			continue;
>>   
>> -	igt_describe("Verify that setting the legacy gamma LUT resets the gamma LUT set through "
>> -			"GAMMA_LUT property");
>> -	igt_subtest_f("pipe-%s-legacy-gamma-reset", kmstest_pipe_name(p))
>> -		test_pipe_legacy_gamma_reset(data, primary);
>> +		data->color_depth = 10;
>> +		data->drm_format = DRM_FORMAT_XRGB2101010;
>> +		data->output = output;
>> +		igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, 10);
>> +		igt_output_set_pipe(output, p);
>> +		igt_display_commit_atomic(&data->display, DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
>>   
>> -	igt_fixture
>> -		igt_require(data->display.is_atomic);
>> +		if (is_i915_device(data->drm_fd) &&
>> +		    !i915_clock_constraint(data, p, 10))
>> +			continue;
>>   
>> -	igt_describe("Verify that deep color works correctly");
>> -	igt_subtest_with_dynamic_f("pipe-%s-deep-color", kmstest_pipe_name(p)) {
>> -		igt_output_t *output;
>> -		color_t blue_green_blue[] = {
>> -			{ 0.0, 0.0, 1.0 },
>> -			{ 0.0, 1.0, 0.0 },
>> -			{ 0.0, 0.0, 1.0 }
>> -		};
>> -		double ctm[] = { 0.0, 0.0, 0.0,
>> -				0.0, 1.0, 0.0,
>> -				1.0, 0.0, 1.0 };
>> -
>> -		if (is_i915_device(data->drm_fd))
>> -			igt_require_f((intel_display_ver(data->devid) >= 11),
>> -					"At least GEN 11 is required to validate Deep-color.\n");
>> -
>> -		for_each_valid_output_on_pipe(&data->display, p, output) {
>> -			uint64_t max_bpc = get_max_bpc(output);
>> -			bool ret;
>> -
>> -			if (!max_bpc)
>> -				continue;
>> -
>> -			if (!panel_supports_deep_color(data->drm_fd, output->name))
>> -				continue;
>> -
>> -			data->color_depth = 10;
>> -			data->drm_format = DRM_FORMAT_XRGB2101010;
>> -			data->output = output;
>> -			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, 10);
>> -			igt_output_set_pipe(output, p);
>> -			igt_display_commit_atomic(&data->display, DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
>> -
>> -			if (is_i915_device(data->drm_fd) &&
>> -			    !i915_clock_constraint(data, p, 10))
>> -				continue;
>> -
>> -			igt_dynamic_f("gamma-%s", output->name) {
>> -				ret = test_pipe_gamma(data, primary);
>> -
>> -				igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
>> -				igt_assert(ret);
>> -			}
>> +		igt_dynamic_f("pipe-%s-%s-gamma", kmstest_pipe_name(p), output->name) {
>> +			ret = test_pipe_gamma(data, data->primary);
>>   
>> -			igt_dynamic_f("degamma-%s", output->name) {
>> -				ret = test_pipe_degamma(data, primary);
>> +			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
>> +			igt_assert(ret);
>> +		}
>>   
>> -				igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
>> -				igt_assert(ret);
>> -			}
>> +		igt_dynamic_f("pipe-%s-%s-degamma", kmstest_pipe_name(p), output->name) {
>> +			ret = test_pipe_degamma(data, data->primary);
>>   
>> -			igt_dynamic_f("ctm-%s", output->name) {
>> -				ret = test_pipe_ctm(data, primary,
>> -						    red_green_blue,
>> -						    blue_green_blue, ctm);
>> +			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
>> +			igt_assert(ret);
>> +		}
>>   
>> -				igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
>> -				igt_assert(ret);
>> -			}
>> +		igt_dynamic_f("pipe-%s-%s-ctm", kmstest_pipe_name(p), output->name) {
>> +			ret = test_pipe_ctm(data, data->primary,
>> +					    red_green_blue,
>> +					    blue_green_blue, ctm);
>>   
>> -			break;
>> +			igt_output_set_prop_value(output, IGT_CONNECTOR_MAX_BPC, max_bpc);
>> +			igt_assert(ret);
>>   		}
>> +
>> +		break;
>>   	}
>>   
>> -	igt_fixture {
>> -		disable_degamma(primary->pipe);
>> -		disable_gamma(primary->pipe);
>> -		disable_ctm(primary->pipe);
>> -		igt_display_commit(&data->display);
>> +	test_cleanup(data);
>> +}
>> +
>> +static void
>> +run_invalid_tests_for_pipe(data_t *data)
>> +{
>> +	enum pipe pipe;
>> +	struct {
>> +		const char *name;
>> +		void (*test_t) (data_t *data, enum pipe pipe);
>> +		const char *desc;
>> +	} tests[] = {
>> +		{ "invalid-gamma-lut-sizes", invalid_gamma_lut_sizes,
>> +			"Negative check for invalid gamma lut sizes" },
>> +
>> +		{ "invalid-degamma-lut-sizes", invalid_degamma_lut_sizes,
>> +			"Negative check for invalid degamma lut sizes" },
>> +
>> +		{ "invalid-ctm-matrix-sizes", invalid_ctm_matrix_sizes,
>> +			"Negative check for color tranformation matrix sizes" },
>> +	};
>> +	int i;
>>   
>> -		igt_pipe_crc_free(data->pipe_crc);
>> -		data->pipe_crc = NULL;
>> +	for (i = 0; i < ARRAY_SIZE(tests); i++) {
>> +		igt_describe_f("%s", tests[i].desc);
>> +		igt_subtest_with_dynamic_f("%s", tests[i].name) {
>> +			for_each_pipe(&data->display, pipe) {
>> +				prep_pipe(data, pipe);
>> +
>> +				igt_dynamic_f("pipe-%s", kmstest_pipe_name(pipe))
>> +					tests[i].test_t(data, pipe);
>> +			}
>> +		}
>>   	}
>>   }
>>   
>>   static void
>> -run_invalid_tests_for_pipe(data_t *data, enum pipe p)
>> +run_tests_for_pipe(data_t *data)
>>   {
>> -	igt_fixture
>> -		prep_pipe(data, p);
>> +	enum pipe pipe;
>> +	struct {
>> +		const char *name;
>> +		bool (*test_t)(data_t*, igt_plane_t*);
>> +		const char *desc;
>> +	} gamma_degamma_tests[] = {
>> +		{ "degamma", test_pipe_degamma,
>> +		  "Verify that degamma LUT transformation works correctly" },
>> +
>> +		{ "gamma", test_pipe_gamma,
>> +		  "Verify that gamma LUT transformation works correctly" },
>> +
>> +		{ "legacy-gamma", test_pipe_legacy_gamma,
>> +		  "Verify that legacy gamma LUT transformation works correctly" },
>> +
>> +		{ "legacy-gamma-reset", test_pipe_legacy_gamma_reset,
>> +		  "Verify that setting the legacy gamma LUT resets the gamma LUT set through GAMMA_LUT property" },
>> +	};
>> +	struct {
>> +		const char *name;
>> +		int iter;
>> +		color_t colors[3];
>> +		double ctm[9];
>> +		const char *desc;
>> +	} ctm_tests[] = {
>> +		{ "ctm-red-to-blue", 0,
>> +			{{ 0.0, 0.0, 1.0 },
>> +			 { 0.0, 1.0, 0.0 },
>> +			 { 0.0, 0.0, 1.0 }},
>> +		  { 0.0, 0.0, 0.0,
>> +		    0.0, 1.0, 0.0,
>> +		    1.0, 0.0, 1.0 },
>> +		  "Check the color transformation from red to blue"
>> +		},
>> +		{ "ctm-green-to-red", 0,
>> +			{{ 1.0, 0.0, 0.0 },
>> +			 { 1.0, 0.0, 0.0 },
>> +			 { 0.0, 0.0, 1.0 }},
>> +		  { 1.0, 1.0, 0.0,
>> +		    0.0, 0.0, 0.0,
>> +		    0.0, 0.0, 1.0 },
>> +		  "Check the color transformation from green to red"
>> +		},
>> +		{ "ctm-blue-to-red", 0,
>> +			{{ 1.0, 0.0, 0.0 },
>> +			 { 0.0, 1.0, 0.0 },
>> +			 { 1.0, 0.0, 0.0 }},
>> +		  { 1.0, 0.0, 1.0,
>> +		    0.0, 1.0, 0.0,
>> +		    0.0, 0.0, 0.0 },
>> +		  "Check the color transformation from blue to red"
>> +		},
>> +		{ "ctm-max", 0,
>> +			{{ 1.0, 0.0, 0.0 },
>> +			 { 0.0, 1.0, 0.0 },
>> +			 { 0.0, 0.0, 1.0 }},
>> +		  { 100.0, 0.0, 0.0,
>> +		    0.0, 100.0, 0.0,
>> +		    0.0, 0.0, 100.0 },
>> +		  "Check the color transformation for maximum transparency"
>> +		},
>> +		{ "ctm-negative", 0,
>> +			{{ 0.0, 0.0, 0.0 },
>> +			 { 0.0, 0.0, 0.0 },
>> +			 { 0.0, 0.0, 0.0 }},
>> +		  { -1.0, 0.0, 0.0,
>> +		    0.0, -1.0, 0.0,
>> +		    0.0, 0.0, -1.0 },
>> +		  "Check the color transformation for negative transparency"
>> +		},
>> +		{ "ctm-0-25", 5,
>> +			{{ 0.0, }, { 0.0, }, { 0.0, }},
>> +		  { 0.25, 0.0,  0.0,
>> +		    0.0,  0.25, 0.0,
>> +		    0.0,  0.0,  0.25 },
>> +		  "Check the color transformation for 0.25 transparency"
>> +		},
>> +		{ "ctm-0-50", 5,
>> +			{{ 0.0, }, { 0.0, }, { 0.0, }},
>> +		  { 0.5,  0.0,  0.0,
>> +		    0.0,  0.5,  0.0,
>> +		    0.0,  0.0,  0.5 },
>> +		  "Check the color transformation for 0.5 transparency"
>> +		},
>> +		{ "ctm-0-75", 7,
>> +			{{ 0.0, }, { 0.0, }, { 0.0, }},
>> +		  { 0.75, 0.0,  0.0,
>> +		    0.0,  0.75, 0.0,
>> +		    0.0,  0.0,  0.75 },
>> +		  "Check the color transformation for 0.75 transparency"
>> +		},
>> +	};
>> +	int i;
>> +
>> +	for (i = 0; i < ARRAY_SIZE(gamma_degamma_tests); i++) {
>> +		igt_describe_f("%s", gamma_degamma_tests[i].desc);
>> +		igt_subtest_with_dynamic_f("%s", gamma_degamma_tests[i].name) {
>> +			for_each_pipe(&data->display, pipe) {
>> +				run_gamma_degamma_tests_for_pipe(data, pipe,
>> +								 gamma_degamma_tests[i].test_t);
>> +			}
>> +		}
>> +	}
>>   
>> -	igt_describe("Negative check for invalid gamma lut sizes");
>> -	igt_subtest_f("pipe-%s-invalid-gamma-lut-sizes", kmstest_pipe_name(p))
>> -		invalid_gamma_lut_sizes(data, p);
>> +	for (i = 0; i < ARRAY_SIZE(ctm_tests); i++) {
>> +		igt_describe_f("%s", ctm_tests[i].desc);
>> +		igt_subtest_with_dynamic_f("%s", ctm_tests[i].name) {
>> +			for_each_pipe(&data->display, pipe) {
>> +				run_ctm_tests_for_pipe(data, pipe,
>> +						       ctm_tests[i].colors,
>> +						       ctm_tests[i].ctm,
>> +						       ctm_tests[i].iter);
>> +			}
>> +		}
>> +	}
>>   
>> -	igt_describe("Negative check for invalid degamma lut sizes");
>> -	igt_subtest_f("pipe-%s-invalid-degamma-lut-sizes", kmstest_pipe_name(p))
>> -		invalid_degamma_lut_sizes(data, p);
>> +	igt_fixture
>> +		igt_require(data->display.is_atomic);
>>   
>> -	igt_describe("Negative check for color tranformation matrix sizes");
>> -	igt_subtest_f("pipe-%s-invalid-ctm-matrix-sizes", kmstest_pipe_name(p))
>> -		invalid_ctm_matrix_sizes(data, p);
>> +	igt_describe("Verify that deep color works correctly");
>> +	igt_subtest_with_dynamic("deep-color") {
>> +		for_each_pipe(&data->display, pipe) {
>> +			run_deep_color_tests_for_pipe(data, pipe);
>> +		}
>> +	}
>>   }
>>   
>>   igt_main
>>   {
>>   	data_t data = {};
>> -	enum pipe pipe;
>>   
>>   	igt_fixture {
>>   		data.drm_fd = drm_open_driver_master(DRIVER_ANY);
>> @@ -999,13 +1039,11 @@ igt_main
>>   		igt_display_require(&data.display, data.drm_fd);
>>   	}
>>   
>> -	for_each_pipe_static(pipe) {
>> -		igt_subtest_group
>> -			run_tests_for_pipe(&data, pipe);
>> +	igt_subtest_group
>> +		run_tests_for_pipe(&data);
>>   
>> -		igt_subtest_group
>> -			run_invalid_tests_for_pipe(&data, pipe);
>> -	}
>> +	igt_subtest_group
>> +		run_invalid_tests_for_pipe(&data);
>>   
>>   	igt_fixture {
>>   		igt_display_fini(&data.display);
>> diff --git a/tests/kms_color_helper.h b/tests/kms_color_helper.h
>> index cc07f5ee..2ea15bcd 100644
>> --- a/tests/kms_color_helper.h
>> +++ b/tests/kms_color_helper.h
>> @@ -50,6 +50,7 @@ typedef struct {
>>   	igt_display_t display;
>>   	igt_pipe_crc_t *pipe_crc;
>>   	igt_output_t *output;
>> +	igt_plane_t *primary;
>>   
>>   	uint32_t drm_format;
>>   	uint32_t color_depth;
>> -- 
>> 2.35.1
>>

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

* Re: [igt-dev] [i-g-t V7 1/2] tests/kms_color: Convert tests to dynamic
  2022-07-04 17:14     ` Modem, Bhanuprakash
@ 2022-07-05 16:30       ` Kamil Konieczny
  0 siblings, 0 replies; 14+ messages in thread
From: Kamil Konieczny @ 2022-07-05 16:30 UTC (permalink / raw)
  To: igt-dev

On 2022-07-04 at 22:44:05 +0530, Modem, Bhanuprakash wrote:
> On Mon-04-07-2022 10:09 pm, Kamil Konieczny wrote:
> > Hi Bhanuprakash,
> > 
> > On 2022-06-30 at 14:25:22 +0530, Bhanuprakash Modem wrote:
> > > Convert the existing subtests to dynamic subtests at pipe level.
> > > 
> > > V2:
> > > * Fix nested igt_fixture in igt_subtest
> > > V3:
> > > * Fix to not dereferencing a NULL pointer
> > > V4:
> > > * Add output name to subtest
> > > V5:
> > > * Rebase
> > > V6:
> > > * Fix typos in test description
> > > V7:
> > > * Added comments back to ctm tets.
> > > 
> > > Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> > > ---
> > >   tests/kms_color.c        | 556 +++++++++++++++++++++------------------
> > >   tests/kms_color_helper.h |   1 +
> > >   2 files changed, 298 insertions(+), 259 deletions(-)
> > > 
> > > diff --git a/tests/kms_color.c b/tests/kms_color.c
> > > index ba06947b..85f3b32d 100644
> > > --- a/tests/kms_color.c
> > > +++ b/tests/kms_color.c

[cut]

> > >    * through the GAMMA_LUT property.
> > >    */
> > > -static void test_pipe_legacy_gamma_reset(data_t *data,
> > > +static bool test_pipe_legacy_gamma_reset(data_t *data,
> > >   					 igt_plane_t *primary)
> > >   {
> > >   	const double ctm_identity[] = {
> > > @@ -324,6 +327,7 @@ static void test_pipe_legacy_gamma_reset(data_t *data,
> > >   	struct drm_color_lut *lut;
> > >   	drmModePropertyBlobPtr blob;
> > >   	igt_output_t *output;
> > > +	bool ret = true;
> > >   	igt_require(igt_pipe_obj_has_prop(primary->pipe, IGT_CRTC_GAMMA_LUT));
> > > @@ -373,10 +377,12 @@ static void test_pipe_legacy_gamma_reset(data_t *data,
> > >   				    data->gamma_lut_size));
> > >   	lut = (struct drm_color_lut *) blob->data;
> > >   	for (i = 0; i < data->gamma_lut_size; i++)
> > > -		igt_assert(lut[i].red == 0 &&
> > > +		ret &=(lut[i].red == 0 &&
> > >   			   lut[i].green == 0 &&
> > >   			   lut[i].blue == 0);
> > >   	drmModeFreePropertyBlob(blob);
> > > +	if(!ret)
> > > +		goto end;
> > >   	/* Set a gamma LUT using the legacy ioctl and verify
> > >   	 * the content of the GAMMA_LUT property is changed
> > > @@ -411,7 +417,7 @@ static void test_pipe_legacy_gamma_reset(data_t *data,
> > >   				    legacy_lut_size));
> > >   	lut = (struct drm_color_lut *) blob->data;
> > >   	for (i = 0; i < legacy_lut_size; i++)
> > > -		igt_assert(lut[i].red == 0xffff &&
> > > +		ret &= (lut[i].red == 0xffff &&
> > >   			   lut[i].green == 0xffff &&
> > >   			   lut[i].blue == 0xffff);
> > >   	drmModeFreePropertyBlob(blob);
> > > @@ -421,6 +427,8 @@ static void test_pipe_legacy_gamma_reset(data_t *data,
> > >   	free_lut(degamma_linear);
> > >   	free_lut(gamma_zero);
> > > +end:
> > 
> > Should this be before free ?
> 
> Thanks Kamil,
> 
> It seems, Yes. You have great eyes :-)
> I am fine if you want to submit a fix, else I'll do.
> 
> - Bhanu

Feel free to send it,

Regards,
Kamil

> 
> > 
> > Regards,
> > Kamil
> > 
> > > +	return ret;
> > >   }
> > >   /*
> > > @@ -677,130 +685,99 @@ prep_pipe(data_t *data, enum pipe p)

[cut]

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

end of thread, other threads:[~2022-07-05 16:30 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-30  8:55 [igt-dev] [i-g-t V7 0/2] tests/kms_color: IGT test cleanup Bhanuprakash Modem
2022-06-30  8:55 ` [igt-dev] [i-g-t V7 1/2] tests/kms_color: Convert tests to dynamic Bhanuprakash Modem
2022-07-04 16:39   ` Kamil Konieczny
2022-07-04 17:14     ` Modem, Bhanuprakash
2022-07-05 16:30       ` Kamil Konieczny
2022-06-30  8:55 ` [igt-dev] [i-g-t V7 2/2] tests/kms_color: Test Cleanup Bhanuprakash Modem
2022-07-04  6:48   ` Sharma, Swati2
2022-06-30 10:04 ` [igt-dev] ✗ Fi.CI.BAT: failure for tests/kms_color: IGT test cleanup (rev9) Patchwork
2022-07-01  1:44 ` [igt-dev] ✗ Fi.CI.BAT: failure for tests/kms_color: IGT test cleanup (rev11) Patchwork
2022-07-01  3:00   ` Modem, Bhanuprakash
2022-07-01  5:57     ` Vudum, Lakshminarayana
2022-07-01  5:34 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
2022-07-01 21:57 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
2022-07-04  6:47 ` [igt-dev] [i-g-t V7 0/2] tests/kms_color: IGT test cleanup Sharma, Swati2

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.