Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup
@ 2022-05-19  5:32 Swati Sharma
  2022-05-19  6:17 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/i915/kms_dsc: IGT cleanup (rev4) Patchwork
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Swati Sharma @ 2022-05-19  5:32 UTC (permalink / raw)
  To: igt-dev; +Cc: Patnana Venkata Sai

Remove redundant code and before starting the subtest,
clean up the states to default by igt_display_reset().
Few minor fixes in indentation. Added subtests description.

v2: -minor mistake in subtest name
    -commit was missing after reset, added
v3: -fixed styling error
    -replaced drm calls with igt wrappers
v4: -added igt_display_require_output() in igt_fixture
    -modularized code, added func() for checks
    -added func() to get highest mode

Signed-off-by: Patnana Venkata Sai <venkata.sai.patnana@intel.com>
Signed-off-by: Swati Sharma <swati2.sharma@intel.com>
---
 lib/igt_kms.c        |   1 -
 tests/i915/kms_dsc.c | 263 +++++++++++++++++++++++--------------------
 2 files changed, 139 insertions(+), 125 deletions(-)

diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index 7838ff28..50a965ad 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -5304,7 +5304,6 @@ bool igt_is_dsc_supported(int drmfd, drmModeConnector *connector)
  */
 bool igt_is_fec_supported(int drmfd, drmModeConnector *connector)
 {
-
 	return check_dsc_debugfs(drmfd, connector, "FEC_Sink_Support: yes");
 }
 
diff --git a/tests/i915/kms_dsc.c b/tests/i915/kms_dsc.c
index 22d2216e..3adca600 100644
--- a/tests/i915/kms_dsc.c
+++ b/tests/i915/kms_dsc.c
@@ -44,13 +44,16 @@
 #include <fcntl.h>
 #include <termios.h>
 
-/* currently dsc compression is verifying on 8bpc frame only */
+IGT_TEST_DESCRIPTION("Test to validate display stream compression");
+
+#define HDISPLAY_5K	5120
+
+/* currently dsc is verifed on 8bpc frame only */
 #define XRGB8888_DRM_FORMAT_MIN_BPP 8
 
-enum dsc_test_type
-{
-	test_basic_dsc_enable,
-	test_dsc_compression_bpp
+enum dsc_test_type {
+	TEST_BASIC_DSC_ENABLE,
+	TEST_DSC_COMPRESSION_BPP
 };
 
 typedef struct {
@@ -59,9 +62,6 @@ typedef struct {
 	igt_display_t display;
 	struct igt_fb fb_test_pattern;
 	igt_output_t *output;
-	int mode_valid;
-	drmModeEncoder *encoder;
-	int crtc;
 	int compression_bpp;
 	int n_pipes;
 	enum pipe pipe;
@@ -80,9 +80,9 @@ static void force_dsc_enable(data_t *data)
 {
 	int ret;
 
-	igt_debug ("Forcing DSC enable on %s\n", data->conn_name);
+	igt_debug("Forcing DSC enable on %s\n", data->conn_name);
 	ret = igt_force_dsc_enable(data->drm_fd,
-				      data->output->config.connector);
+				   data->output->config.connector);
 	igt_assert_f(ret > 0, "debugfs_write failed");
 }
 
@@ -93,8 +93,8 @@ static void force_dsc_enable_bpp(data_t *data)
 	igt_debug("Forcing DSC BPP to %d on %s\n",
 		  data->compression_bpp, data->conn_name);
 	ret = igt_force_dsc_enable_bpp(data->drm_fd,
-					  data->output->config.connector,
-					  data->compression_bpp);
+				       data->output->config.connector,
+				       data->compression_bpp);
 	igt_assert_f(ret > 0, "debugfs_write failed");
 }
 
@@ -105,7 +105,7 @@ static void save_force_dsc_en(data_t *data)
 					 data->output->config.connector);
 	force_dsc_restore_fd =
 		igt_get_dsc_debugfs_fd(data->drm_fd,
-					  data->output->config.connector);
+				       data->output->config.connector);
 	igt_assert(force_dsc_restore_fd >= 0);
 }
 
@@ -121,19 +121,6 @@ static void restore_force_dsc_en(void)
 	force_dsc_restore_fd = -1;
 }
 
-static void test_cleanup(data_t *data)
-{
-	igt_plane_t *primary;
-
-	if (data->output) {
-		primary = igt_output_get_plane_type(data->output,
-						    DRM_PLANE_TYPE_PRIMARY);
-		igt_plane_set_fb(primary, NULL);
-		igt_output_set_pipe(data->output, PIPE_NONE);
-		igt_display_commit(&data->display);
-	}
-}
-
 static void kms_dsc_exit_handler(int sig)
 {
 	restore_force_dsc_en();
@@ -159,29 +146,26 @@ static int sort_drm_modes(const void *a, const void *b)
 	return (mode1->clock < mode2->clock) - (mode2->clock < mode1->clock);
 }
 
-static bool check_dsc_on_connector(data_t *data, uint32_t drmConnector)
+static drmModeModeInfo *get_highres_mode(drmModeConnector *connector)
 {
-	drmModeConnector *connector;
-	igt_output_t *output;
-
-	connector = drmModeGetConnectorCurrent(data->drm_fd,
-					       drmConnector);
-	if (connector->connection != DRM_MODE_CONNECTED)
-		return false;
-
-	output = igt_output_from_connector(&data->display, connector);
+	drmModeModeInfo *highest_mode = NULL;
 
-	/*
-	 * As dsc supports >= 5k modes, we need to suppress lower
-	 * resolutions.
-	 */
-	qsort(output->config.connector->modes,
-	      output->config.connector->count_modes,
+	qsort(connector->modes,
+	      connector->count_modes,
 	      sizeof(drmModeModeInfo),
 	      sort_drm_modes);
-	if (output->config.connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort &&
-	    output->config.connector->modes[0].hdisplay < 5120)
-		return NULL;
+
+	highest_mode = &connector->modes[0];
+
+	return highest_mode;
+}
+
+static bool check_dsc_on_connector(data_t *data, igt_output_t *output)
+{
+	drmModeConnector *connector = output->config.connector;
+
+	if (connector->connection != DRM_MODE_CONNECTED)
+		return false;
 
 	sprintf(data->conn_name, "%s-%d",
 		kmstest_connector_type_str(connector->connector_type),
@@ -192,168 +176,199 @@ static bool check_dsc_on_connector(data_t *data, uint32_t drmConnector)
 			  data->conn_name);
 		return false;
 	}
+
 	if (is_external_panel(connector) &&
 	    !igt_is_fec_supported(data->drm_fd, connector)) {
 		igt_debug("DSC cannot be enabled without FEC on %s\n",
 			  data->conn_name);
 		return false;
 	}
+
 	data->output = output;
 	return true;
 }
 
-/*
- * Re-probe connectors and do a modeset with DSC
- *
- */
-static void update_display(data_t *data, enum dsc_test_type test_type)
+static bool check_big_joiner_test_constraint(data_t *data, igt_output_t *output,
+					     enum dsc_test_type test_type)
+{
+	drmModeConnector *connector = output->config.connector;
+	drmModeModeInfo *mode = get_highres_mode(connector);
+
+	if (test_type == TEST_DSC_COMPRESSION_BPP &&
+	    mode->hdisplay >= HDISPLAY_5K) {
+		igt_debug("Bigjoiner does not support force bpp\n");
+		return false;
+	}
+
+	return true;
+}
+
+static bool check_big_joiner_pipe_constraint(data_t *data, igt_output_t *output,
+					     enum pipe pipe)
+{
+	drmModeConnector *connector = output->config.connector;
+	drmModeModeInfo *mode = get_highres_mode(connector);
+
+	if (mode->hdisplay >= HDISPLAY_5K &&
+	    pipe == (data->n_pipes - 1 )) {
+		igt_debug("pipe-%s not supported due to bigjoiner limitation\n",
+			   kmstest_pipe_name(pipe));
+		return false;
+	}
+
+	return true;
+}
+
+static bool check_dp_gen11_constraint(data_t *data, igt_output_t *output, enum pipe pipe)
+{
+	uint32_t devid = intel_get_drm_devid(data->drm_fd);
+	drmModeConnector *connector = output->config.connector;
+
+	if ((connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort) &&
+	    (pipe == PIPE_A) && IS_GEN11(devid)) {
+		igt_debug("DSC not supported on pipe A on external DP in gen11 platforms\n");
+		return false;
+	}
+
+	return true;
+}
+/* re-probe connectors and do a modeset with DSC */
+static void update_display(data_t *data, igt_output_t *output, enum pipe pipe,
+			   enum dsc_test_type test_type)
 {
 	bool enabled;
 	igt_plane_t *primary;
+	drmModeModeInfo *mode;
+	igt_display_t *display = &data->display;
+	drmModeConnector *connector = data->output->config.connector;
 
-	/* Disable the output first */
-	igt_output_set_pipe(data->output, PIPE_NONE);
-	igt_display_commit(&data->display);
+	/* sanitize the state before starting the subtest. */
+	igt_display_reset(display);
+	igt_display_commit(display);
 
 	igt_debug("DSC is supported on %s\n", data->conn_name);
 	save_force_dsc_en(data);
 	force_dsc_enable(data);
-	if (test_type == test_dsc_compression_bpp) {
+
+	if (test_type == TEST_DSC_COMPRESSION_BPP) {
 		igt_debug("Trying to set BPP to %d\n", data->compression_bpp);
 		force_dsc_enable_bpp(data);
 	}
 
-	igt_output_set_pipe(data->output, data->pipe);
-	qsort(data->output->config.connector->modes,
-			data->output->config.connector->count_modes,
-			sizeof(drmModeModeInfo),
-			sort_drm_modes);
-	igt_output_override_mode(data->output, &data->output->config.connector->modes[0]);
+	igt_output_set_pipe(data->output, pipe);
+
+	mode = get_highres_mode(connector);
+	igt_require(mode != NULL);
+	igt_output_override_mode(data->output, mode);
+
 	primary = igt_output_get_plane_type(data->output,
 					    DRM_PLANE_TYPE_PRIMARY);
+	igt_create_pattern_fb(data->drm_fd,
+			      mode->hdisplay,
+			      mode->vdisplay,
+			      DRM_FORMAT_XRGB8888,
+			      DRM_FORMAT_MOD_LINEAR,
+			      &data->fb_test_pattern);
 
-	/* Now set the output to the desired mode */
 	igt_plane_set_fb(primary, &data->fb_test_pattern);
 	igt_display_commit(&data->display);
 
 	/*
-	 * Until we have CRC check support, manually check if RGB test
+	 * until we have CRC check support, manually check if RGB test
 	 * pattern has no corruption.
 	 */
 	manual("RGB test pattern without corruption");
 
-	enabled = igt_is_dsc_enabled(data->drm_fd,
-					data->output->config.connector);
+	enabled = igt_is_dsc_enabled(data->drm_fd, connector);
 	restore_force_dsc_en();
 	igt_debug("Reset compression BPP\n");
 	data->compression_bpp = 0;
 	force_dsc_enable_bpp(data);
 
 	igt_assert_f(enabled,
-		     "Default DSC enable failed on Connector: %s Pipe: %s\n",
+		     "Default DSC enable failed on connector: %s pipe: %s\n",
 		     data->conn_name,
-		     kmstest_pipe_name(data->pipe));
+		     kmstest_pipe_name(pipe));
+
+	igt_remove_fb(data->drm_fd, &data->fb_test_pattern);
+	igt_plane_set_fb(primary, NULL);
+	igt_output_set_pipe(data->output, PIPE_NONE);
 }
 
-static void run_test(data_t *data, enum dsc_test_type test_type)
+static void test_dsc(data_t *data, enum dsc_test_type test_type)
 {
+	igt_display_t *display = &data->display;
+	igt_output_t *output;
 	enum pipe pipe;
 	char test_name[10];
 
-	igt_skip_on_f(test_type == test_dsc_compression_bpp &&
-		      data->output->config.connector->modes[0].hdisplay >= 5120,
-		      "bigjoiner does not support force bpp\n");
-
-	igt_create_pattern_fb(data->drm_fd,
-			      data->output->config.connector->modes[0].hdisplay,
-			      data->output->config.connector->modes[0].vdisplay,
-			      DRM_FORMAT_XRGB8888,
-			      DRM_FORMAT_MOD_LINEAR,
-			      &data->fb_test_pattern);
+	for_each_pipe_with_valid_output(display, pipe, output) {
+		if (!check_dsc_on_connector(data, output))
+			continue;
 
-	for_each_pipe(&data->display, pipe) {
-		uint32_t devid = intel_get_drm_devid(data->drm_fd);
+		if (!check_big_joiner_test_constraint(data, output, test_type))
+			continue;
 
-		if (data->output->config.connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort &&
-		    pipe == PIPE_A && IS_GEN11(devid)) {
-			igt_debug("DSC not supported on Pipe A on external DP in Gen11 platforms\n");
+		if (!check_dp_gen11_constraint(data, output, pipe))
 			continue;
-		}
 
-		snprintf(test_name, sizeof(test_name), "-%dbpp", data->compression_bpp);
-		if (!igt_pipe_connector_valid(pipe, data->output))
+		if (!check_big_joiner_pipe_constraint(data, output, pipe))
 			continue;
 
-		igt_dynamic_f("%s-pipe-%s%s", data->output->name,
-			      kmstest_pipe_name(pipe),
-			      (test_type == test_dsc_compression_bpp) ?
-			      test_name : "") {
-			data->pipe = pipe;
-			igt_skip_on_f((data->output->config.connector->modes[0].hdisplay >= 5120) &&
-				      (pipe  == (data->n_pipes - 1)),
-				      "pipe-%s not supported due to bigjoiner limitation\n",
-				      kmstest_pipe_name(pipe));
-			update_display(data, test_type);
+		if (!igt_pipe_connector_valid(pipe, output))
+			continue;
 
-		}
-		if (test_type == test_dsc_compression_bpp)
-			break;
+		snprintf(test_name, sizeof(test_name), "-%dbpp", data->compression_bpp);
+		igt_dynamic_f("pipe-%s-%s%s",  kmstest_pipe_name(pipe), output->name,
+			     (test_type == TEST_DSC_COMPRESSION_BPP) ? test_name : "")
+		      update_display(data, output, pipe, test_type);
 	}
-
-	igt_remove_fb(data->drm_fd, &data->fb_test_pattern);
 }
 
 igt_main
 {
 	data_t data = {};
-	drmModeRes *res;
-	drmModeConnector *connector = NULL;
-	int i, j;
+	int i;
+
 	igt_fixture {
 		data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
 		data.devid = intel_get_drm_devid(data.drm_fd);
 		kmstest_set_vt_graphics_mode();
 		igt_install_exit_handler(kms_dsc_exit_handler);
 		igt_display_require(&data.display, data.drm_fd);
-		igt_require(res = drmModeGetResources(data.drm_fd));
+		igt_display_require_output(&data.display);
 		data.n_pipes = 0;
 		for_each_pipe(&data.display, i)
 			data.n_pipes++;
 	}
-	igt_subtest_with_dynamic("basic-dsc-enable") {
-		for (j = 0; j < res->count_connectors; j++) {
-			if (!check_dsc_on_connector(&data, res->connectors[j]))
-				continue;
-			run_test(&data, test_basic_dsc_enable);
-		}
-	}
+
+	igt_describe("Tests basic display stream compression functionality if supported "
+		     "by a connector by forcing DSC on all connectors that support it "
+		     "with default parameters");
+	igt_subtest_with_dynamic("basic-dsc-enable")
+			test_dsc(&data, TEST_BASIC_DSC_ENABLE);
+
 	/* currently we are validating compression bpp on XRGB8888 format only */
+	igt_describe("Tests basic display stream compression functionality if supported "
+		     "by a connector by forcing DSC on all connectors that support it "
+		     "with certain BPP as the output BPP for the connector");
 	igt_subtest_with_dynamic("XRGB8888-dsc-compression") {
 		uint32_t bpp_list[] = {
 			XRGB8888_DRM_FORMAT_MIN_BPP,
 			(XRGB8888_DRM_FORMAT_MIN_BPP  +
-			 (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1) / 2,
+			(XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1) / 2,
 			(XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1
 		};
 
 		igt_require(intel_display_ver(data.devid) >= 13);
 
-		for (j = 0; j < res->count_connectors; j++) {
-			if (!check_dsc_on_connector(&data, res->connectors[j]))
-				continue;
-
-			for (i = 0; i < ARRAY_SIZE(bpp_list); i++) {
-				data.compression_bpp = bpp_list[i];
-				run_test(&data, test_dsc_compression_bpp);
-			}
+		for (int j = 0; j < ARRAY_SIZE(bpp_list); j++) {
+			data.compression_bpp = bpp_list[j];
+			test_dsc(&data, TEST_DSC_COMPRESSION_BPP);
 		}
 	}
 
 	igt_fixture {
-		if (connector)
-			drmModeFreeConnector(connector);
-		test_cleanup(&data);
-		drmModeFreeResources(res);
 		igt_display_fini(&data.display);
 		close(data.drm_fd);
 	}
-- 
2.25.1

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

* [igt-dev] ✓ Fi.CI.BAT: success for tests/i915/kms_dsc: IGT cleanup (rev4)
  2022-05-19  5:32 [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup Swati Sharma
@ 2022-05-19  6:17 ` Patchwork
  2022-05-19  6:25 ` [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup Modem, Bhanuprakash
  2022-05-19  7:08 ` [igt-dev] ✓ Fi.CI.IGT: success for tests/i915/kms_dsc: IGT cleanup (rev4) Patchwork
  2 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2022-05-19  6:17 UTC (permalink / raw)
  To: Swati Sharma; +Cc: igt-dev

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

== Series Details ==

Series: tests/i915/kms_dsc: IGT cleanup (rev4)
URL   : https://patchwork.freedesktop.org/series/103935/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_11675 -> IGTPW_7140
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

Participating hosts (45 -> 44)
------------------------------

  Additional (2): bat-dg2-9 fi-tgl-u2 
  Missing    (3): fi-rkl-11600 fi-icl-u2 fi-cfl-8700k 

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

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

### IGT changes ###

#### Issues hit ####

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

  * igt@i915_module_load@reload:
    - fi-kbl-soraka:      [PASS][2] -> [DMESG-WARN][3] ([i915#1982])
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/fi-kbl-soraka/igt@i915_module_load@reload.html
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/fi-kbl-soraka/igt@i915_module_load@reload.html

  * igt@i915_pm_rpm@module-reload:
    - fi-bdw-5557u:       [PASS][4] -> [INCOMPLETE][5] ([i915#6002])
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/fi-bdw-5557u/igt@i915_pm_rpm@module-reload.html
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/fi-bdw-5557u/igt@i915_pm_rpm@module-reload.html

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

  * igt@kms_chamelium@dp-hpd-fast:
    - fi-tgl-u2:          NOTRUN -> [SKIP][7] ([fdo#109284] / [fdo#111827]) +7 similar issues
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/fi-tgl-u2/igt@kms_chamelium@dp-hpd-fast.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
    - fi-tgl-u2:          NOTRUN -> [SKIP][8] ([i915#4103]) +1 similar issue
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/fi-tgl-u2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html

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

  * igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
    - fi-skl-6700k2:      [PASS][10] -> [INCOMPLETE][11] ([i915#4444])
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/fi-skl-6700k2/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/fi-skl-6700k2/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html

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

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

  
#### Possible fixes ####

  * igt@i915_selftest@live@gt_pm:
    - fi-tgl-1115g4:      [DMESG-FAIL][14] ([i915#3987]) -> [PASS][15]
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/fi-tgl-1115g4/igt@i915_selftest@live@gt_pm.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/fi-tgl-1115g4/igt@i915_selftest@live@gt_pm.html

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

  * igt@i915_selftest@live@hugepages:
    - {bat-rpls-1}:       [DMESG-WARN][18] ([i915#5278]) -> [PASS][19]
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/bat-rpls-1/igt@i915_selftest@live@hugepages.html
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/bat-rpls-1/igt@i915_selftest@live@hugepages.html

  * igt@kms_flip@basic-flip-vs-modeset@b-edp1:
    - {bat-adlp-6}:       [DMESG-WARN][20] ([i915#3576]) -> [PASS][21] +1 similar issue
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/bat-adlp-6/igt@kms_flip@basic-flip-vs-modeset@b-edp1.html
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/bat-adlp-6/igt@kms_flip@basic-flip-vs-modeset@b-edp1.html

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

  [fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
  [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
  [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
  [i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
  [i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3576]: https://gitlab.freedesktop.org/drm/intel/issues/3576
  [i915#3595]: https://gitlab.freedesktop.org/drm/intel/issues/3595
  [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
  [i915#3987]: https://gitlab.freedesktop.org/drm/intel/issues/3987
  [i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402
  [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#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
  [i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213
  [i915#4215]: https://gitlab.freedesktop.org/drm/intel/issues/4215
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#4391]: https://gitlab.freedesktop.org/drm/intel/issues/4391
  [i915#4444]: https://gitlab.freedesktop.org/drm/intel/issues/4444
  [i915#4494]: https://gitlab.freedesktop.org/drm/intel/issues/4494
  [i915#4579]: https://gitlab.freedesktop.org/drm/intel/issues/4579
  [i915#4873]: https://gitlab.freedesktop.org/drm/intel/issues/4873
  [i915#4957]: https://gitlab.freedesktop.org/drm/intel/issues/4957
  [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
  [i915#5087]: https://gitlab.freedesktop.org/drm/intel/issues/5087
  [i915#5190]: https://gitlab.freedesktop.org/drm/intel/issues/5190
  [i915#5274]: https://gitlab.freedesktop.org/drm/intel/issues/5274
  [i915#5278]: https://gitlab.freedesktop.org/drm/intel/issues/5278
  [i915#5763]: https://gitlab.freedesktop.org/drm/intel/issues/5763
  [i915#5885]: https://gitlab.freedesktop.org/drm/intel/issues/5885
  [i915#6002]: https://gitlab.freedesktop.org/drm/intel/issues/6002


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

  * CI: CI-20190529 -> None
  * IGT: IGT_6480 -> IGTPW_7140

  CI-20190529: 20190529
  CI_DRM_11675: c31582c636f4c6ac8c0f822c39b250db2c5cd437 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_7140: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/index.html
  IGT_6480: 40ee6f52ac54858fa857fcdef52c0c791abf9344 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

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

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

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

* Re: [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup
  2022-05-19  5:32 [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup Swati Sharma
  2022-05-19  6:17 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/i915/kms_dsc: IGT cleanup (rev4) Patchwork
@ 2022-05-19  6:25 ` Modem, Bhanuprakash
  2022-05-24 16:44   ` Sharma, Swati2
  2022-05-19  7:08 ` [igt-dev] ✓ Fi.CI.IGT: success for tests/i915/kms_dsc: IGT cleanup (rev4) Patchwork
  2 siblings, 1 reply; 6+ messages in thread
From: Modem, Bhanuprakash @ 2022-05-19  6:25 UTC (permalink / raw)
  To: Swati Sharma, igt-dev; +Cc: Patnana Venkata Sai

Hi Swati,

Overall, this patch looks good to me. I have dropped few minor comments 
to be addressed inline.

On Thu-19-05-2022 11:02 am, Swati Sharma wrote:
> Remove redundant code and before starting the subtest,
> clean up the states to default by igt_display_reset().
> Few minor fixes in indentation. Added subtests description.
> 
> v2: -minor mistake in subtest name
>      -commit was missing after reset, added
> v3: -fixed styling error
>      -replaced drm calls with igt wrappers
> v4: -added igt_display_require_output() in igt_fixture
>      -modularized code, added func() for checks
>      -added func() to get highest mode
> 
> Signed-off-by: Patnana Venkata Sai <venkata.sai.patnana@intel.com>
> Signed-off-by: Swati Sharma <swati2.sharma@intel.com>
> ---
>   lib/igt_kms.c        |   1 -
>   tests/i915/kms_dsc.c | 263 +++++++++++++++++++++++--------------------
>   2 files changed, 139 insertions(+), 125 deletions(-)
> 
> diff --git a/lib/igt_kms.c b/lib/igt_kms.c
> index 7838ff28..50a965ad 100644
> --- a/lib/igt_kms.c
> +++ b/lib/igt_kms.c
> @@ -5304,7 +5304,6 @@ bool igt_is_dsc_supported(int drmfd, drmModeConnector *connector)
>    */
>   bool igt_is_fec_supported(int drmfd, drmModeConnector *connector)
>   {
> -
>   	return check_dsc_debugfs(drmfd, connector, "FEC_Sink_Support: yes");
>   }
>   
> diff --git a/tests/i915/kms_dsc.c b/tests/i915/kms_dsc.c
> index 22d2216e..3adca600 100644
> --- a/tests/i915/kms_dsc.c
> +++ b/tests/i915/kms_dsc.c
> @@ -44,13 +44,16 @@
>   #include <fcntl.h>
>   #include <termios.h>
>   
> -/* currently dsc compression is verifying on 8bpc frame only */
> +IGT_TEST_DESCRIPTION("Test to validate display stream compression");
> +
> +#define HDISPLAY_5K	5120
> +
> +/* currently dsc is verifed on 8bpc frame only */
>   #define XRGB8888_DRM_FORMAT_MIN_BPP 8
>   
> -enum dsc_test_type
> -{
> -	test_basic_dsc_enable,
> -	test_dsc_compression_bpp
> +enum dsc_test_type {
> +	TEST_BASIC_DSC_ENABLE,
> +	TEST_DSC_COMPRESSION_BPP
>   };
>   
>   typedef struct {
> @@ -59,9 +62,6 @@ typedef struct {
>   	igt_display_t display;
>   	struct igt_fb fb_test_pattern;
>   	igt_output_t *output;
> -	int mode_valid;
> -	drmModeEncoder *encoder;
> -	int crtc;
>   	int compression_bpp;
>   	int n_pipes;
>   	enum pipe pipe;
> @@ -80,9 +80,9 @@ static void force_dsc_enable(data_t *data)
>   {
>   	int ret;
>   
> -	igt_debug ("Forcing DSC enable on %s\n", data->conn_name);
> +	igt_debug("Forcing DSC enable on %s\n", data->conn_name);
>   	ret = igt_force_dsc_enable(data->drm_fd,
> -				      data->output->config.connector);
> +				   data->output->config.connector);
>   	igt_assert_f(ret > 0, "debugfs_write failed");
>   }
>   
> @@ -93,8 +93,8 @@ static void force_dsc_enable_bpp(data_t *data)
>   	igt_debug("Forcing DSC BPP to %d on %s\n",
>   		  data->compression_bpp, data->conn_name);
>   	ret = igt_force_dsc_enable_bpp(data->drm_fd,
> -					  data->output->config.connector,
> -					  data->compression_bpp);
> +				       data->output->config.connector,
> +				       data->compression_bpp);
>   	igt_assert_f(ret > 0, "debugfs_write failed");
>   }
>   
> @@ -105,7 +105,7 @@ static void save_force_dsc_en(data_t *data)
>   					 data->output->config.connector);
>   	force_dsc_restore_fd =
>   		igt_get_dsc_debugfs_fd(data->drm_fd,
> -					  data->output->config.connector);
> +				       data->output->config.connector);
>   	igt_assert(force_dsc_restore_fd >= 0);
>   }
>   
> @@ -121,19 +121,6 @@ static void restore_force_dsc_en(void)
>   	force_dsc_restore_fd = -1;
>   }
>   
> -static void test_cleanup(data_t *data)
> -{
> -	igt_plane_t *primary;
> -
> -	if (data->output) {
> -		primary = igt_output_get_plane_type(data->output,
> -						    DRM_PLANE_TYPE_PRIMARY);
> -		igt_plane_set_fb(primary, NULL);
> -		igt_output_set_pipe(data->output, PIPE_NONE);
> -		igt_display_commit(&data->display);
> -	}
> -}
> -
>   static void kms_dsc_exit_handler(int sig)
>   {
>   	restore_force_dsc_en();
> @@ -159,29 +146,26 @@ static int sort_drm_modes(const void *a, const void *b)
>   	return (mode1->clock < mode2->clock) - (mode2->clock < mode1->clock);
>   }
>   
> -static bool check_dsc_on_connector(data_t *data, uint32_t drmConnector)
> +static drmModeModeInfo *get_highres_mode(drmModeConnector *connector)
>   {
> -	drmModeConnector *connector;
> -	igt_output_t *output;
> -
> -	connector = drmModeGetConnectorCurrent(data->drm_fd,
> -					       drmConnector);
> -	if (connector->connection != DRM_MODE_CONNECTED)
> -		return false;
> -
> -	output = igt_output_from_connector(&data->display, connector);
> +	drmModeModeInfo *highest_mode = NULL;
>   
> -	/*
> -	 * As dsc supports >= 5k modes, we need to suppress lower
> -	 * resolutions.
> -	 */
> -	qsort(output->config.connector->modes,
> -	      output->config.connector->count_modes,
> +	qsort(connector->modes,
> +	      connector->count_modes,
>   	      sizeof(drmModeModeInfo),
>   	      sort_drm_modes);
> -	if (output->config.connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort &&
> -	    output->config.connector->modes[0].hdisplay < 5120)
> -		return NULL;
> +
> +	highest_mode = &connector->modes[0];
> +
> +	return highest_mode;
> +}
> +
> +static bool check_dsc_on_connector(data_t *data, igt_output_t *output)
> +{
> +	drmModeConnector *connector = output->config.connector;
> +
> +	if (connector->connection != DRM_MODE_CONNECTED)
> +		return false;

This check is redundant, for_each_pipe_with_valid_output() is already 
doing this check.

>   
>   	sprintf(data->conn_name, "%s-%d",

Please drop data->conn_name, instead please use data->output->name;

>   		kmstest_connector_type_str(connector->connector_type),
> @@ -192,168 +176,199 @@ static bool check_dsc_on_connector(data_t *data, uint32_t drmConnector)
>   			  data->conn_name);
>   		return false;
>   	}
> +
>   	if (is_external_panel(connector) &&
>   	    !igt_is_fec_supported(data->drm_fd, connector)) {
>   		igt_debug("DSC cannot be enabled without FEC on %s\n",
>   			  data->conn_name);
>   		return false;
>   	}
> +
>   	data->output = output;

This could be moved to test_dsc()

>   	return true;
>   }
>   
> -/*
> - * Re-probe connectors and do a modeset with DSC
> - *
> - */
> -static void update_display(data_t *data, enum dsc_test_type test_type)
> +static bool check_big_joiner_test_constraint(data_t *data, igt_output_t *output,
> +					     enum dsc_test_type test_type)
> +{
> +	drmModeConnector *connector = output->config.connector;
> +	drmModeModeInfo *mode = get_highres_mode(connector);
> +
> +	if (test_type == TEST_DSC_COMPRESSION_BPP &&
> +	    mode->hdisplay >= HDISPLAY_5K) {
> +		igt_debug("Bigjoiner does not support force bpp\n");
> +		return false;
> +	}
> +
> +	return true;
> +}
> +
> +static bool check_big_joiner_pipe_constraint(data_t *data, igt_output_t *output,
> +					     enum pipe pipe)
> +{
> +	drmModeConnector *connector = output->config.connector;
> +	drmModeModeInfo *mode = get_highres_mode(connector);
> +
> +	if (mode->hdisplay >= HDISPLAY_5K &&
> +	    pipe == (data->n_pipes - 1 )) {
> +		igt_debug("pipe-%s not supported due to bigjoiner limitation\n",
> +			   kmstest_pipe_name(pipe));
> +		return false;
> +	}
> +
> +	return true;
> +}
> +
> +static bool check_dp_gen11_constraint(data_t *data, igt_output_t *output, enum pipe pipe)
> +{
> +	uint32_t devid = intel_get_drm_devid(data->drm_fd);
> +	drmModeConnector *connector = output->config.connector;
> +
> +	if ((connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort) &&
> +	    (pipe == PIPE_A) && IS_GEN11(devid)) {
> +		igt_debug("DSC not supported on pipe A on external DP in gen11 platforms\n");
> +		return false;
> +	}
> +
> +	return true;
> +}
> +/* re-probe connectors and do a modeset with DSC */
> +static void update_display(data_t *data, igt_output_t *output, enum pipe pipe,
> +			   enum dsc_test_type test_type)
>   {
>   	bool enabled;
>   	igt_plane_t *primary;
> +	drmModeModeInfo *mode;
> +	igt_display_t *display = &data->display;
> +	drmModeConnector *connector = data->output->config.connector;
>   
> -	/* Disable the output first */
> -	igt_output_set_pipe(data->output, PIPE_NONE);
> -	igt_display_commit(&data->display);
> +	/* sanitize the state before starting the subtest. */
> +	igt_display_reset(display);
> +	igt_display_commit(display);
>   
>   	igt_debug("DSC is supported on %s\n", data->conn_name);
>   	save_force_dsc_en(data);
>   	force_dsc_enable(data);
> -	if (test_type == test_dsc_compression_bpp) {
> +
> +	if (test_type == TEST_DSC_COMPRESSION_BPP) {
>   		igt_debug("Trying to set BPP to %d\n", data->compression_bpp);
>   		force_dsc_enable_bpp(data);
>   	}
>   
> -	igt_output_set_pipe(data->output, data->pipe);
> -	qsort(data->output->config.connector->modes,
> -			data->output->config.connector->count_modes,
> -			sizeof(drmModeModeInfo),
> -			sort_drm_modes);
> -	igt_output_override_mode(data->output, &data->output->config.connector->modes[0]);
> +	igt_output_set_pipe(data->output, pipe);
> +
> +	mode = get_highres_mode(connector);
> +	igt_require(mode != NULL);
> +	igt_output_override_mode(data->output, mode);
> +
>   	primary = igt_output_get_plane_type(data->output,
>   					    DRM_PLANE_TYPE_PRIMARY);
> +	igt_create_pattern_fb(data->drm_fd,
> +			      mode->hdisplay,
> +			      mode->vdisplay,
> +			      DRM_FORMAT_XRGB8888,
> +			      DRM_FORMAT_MOD_LINEAR,
> +			      &data->fb_test_pattern);
>   
> -	/* Now set the output to the desired mode */
>   	igt_plane_set_fb(primary, &data->fb_test_pattern);
>   	igt_display_commit(&data->display);
>   
>   	/*
> -	 * Until we have CRC check support, manually check if RGB test
> +	 * until we have CRC check support, manually check if RGB test
>   	 * pattern has no corruption.
>   	 */
>   	manual("RGB test pattern without corruption");
>   
> -	enabled = igt_is_dsc_enabled(data->drm_fd,
> -					data->output->config.connector);
> +	enabled = igt_is_dsc_enabled(data->drm_fd, connector);
>   	restore_force_dsc_en();
>   	igt_debug("Reset compression BPP\n");
>   	data->compression_bpp = 0;
>   	force_dsc_enable_bpp(data);
>   
>   	igt_assert_f(enabled,
> -		     "Default DSC enable failed on Connector: %s Pipe: %s\n",
> +		     "Default DSC enable failed on connector: %s pipe: %s\n",
>   		     data->conn_name,
> -		     kmstest_pipe_name(data->pipe));
> +		     kmstest_pipe_name(pipe));
> +
> +	igt_remove_fb(data->drm_fd, &data->fb_test_pattern);
> +	igt_plane_set_fb(primary, NULL);
> +	igt_output_set_pipe(data->output, PIPE_NONE);

Please do commit here.

>   }
>   
> -static void run_test(data_t *data, enum dsc_test_type test_type)
> +static void test_dsc(data_t *data, enum dsc_test_type test_type)
>   {
> +	igt_display_t *display = &data->display;
> +	igt_output_t *output;
>   	enum pipe pipe;
>   	char test_name[10];
>   
> -	igt_skip_on_f(test_type == test_dsc_compression_bpp &&
> -		      data->output->config.connector->modes[0].hdisplay >= 5120,
> -		      "bigjoiner does not support force bpp\n");
> -
> -	igt_create_pattern_fb(data->drm_fd,
> -			      data->output->config.connector->modes[0].hdisplay,
> -			      data->output->config.connector->modes[0].vdisplay,
> -			      DRM_FORMAT_XRGB8888,
> -			      DRM_FORMAT_MOD_LINEAR,
> -			      &data->fb_test_pattern);
> +	for_each_pipe_with_valid_output(display, pipe, output) {
> +		if (!check_dsc_on_connector(data, output))
> +			continue;
>   
> -	for_each_pipe(&data->display, pipe) {
> -		uint32_t devid = intel_get_drm_devid(data->drm_fd);
> +		if (!check_big_joiner_test_constraint(data, output, test_type))
> +			continue;
>   
> -		if (data->output->config.connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort &&
> -		    pipe == PIPE_A && IS_GEN11(devid)) {
> -			igt_debug("DSC not supported on Pipe A on external DP in Gen11 platforms\n");
> +		if (!check_dp_gen11_constraint(data, output, pipe))
>   			continue;
> -		}
>   
> -		snprintf(test_name, sizeof(test_name), "-%dbpp", data->compression_bpp);
> -		if (!igt_pipe_connector_valid(pipe, data->output))
> +		if (!check_big_joiner_pipe_constraint(data, output, pipe))
>   			continue;
>   
> -		igt_dynamic_f("%s-pipe-%s%s", data->output->name,
> -			      kmstest_pipe_name(pipe),
> -			      (test_type == test_dsc_compression_bpp) ?
> -			      test_name : "") {
> -			data->pipe = pipe;
> -			igt_skip_on_f((data->output->config.connector->modes[0].hdisplay >= 5120) &&
> -				      (pipe  == (data->n_pipes - 1)),
> -				      "pipe-%s not supported due to bigjoiner limitation\n",
> -				      kmstest_pipe_name(pipe));
> -			update_display(data, test_type);
> +		if (!igt_pipe_connector_valid(pipe, output))
> +			continue;

This check is redundant, for_each_pipe_with_valid_output() is already 
taken care of this check.

>   
> -		}
> -		if (test_type == test_dsc_compression_bpp)
> -			break;
> +		snprintf(test_name, sizeof(test_name), "-%dbpp", data->compression_bpp);
> +		igt_dynamic_f("pipe-%s-%s%s",  kmstest_pipe_name(pipe), output->name,
> +			     (test_type == TEST_DSC_COMPRESSION_BPP) ? test_name : "")
> +		      update_display(data, output, pipe, test_type);
>   	}
> -
> -	igt_remove_fb(data->drm_fd, &data->fb_test_pattern);
>   }
>   
>   igt_main
>   {
>   	data_t data = {};
> -	drmModeRes *res;
> -	drmModeConnector *connector = NULL;
> -	int i, j;
> +	int i;
> +
>   	igt_fixture {
>   		data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
>   		data.devid = intel_get_drm_devid(data.drm_fd);
>   		kmstest_set_vt_graphics_mode();
>   		igt_install_exit_handler(kms_dsc_exit_handler);
>   		igt_display_require(&data.display, data.drm_fd);
> -		igt_require(res = drmModeGetResources(data.drm_fd));
> +		igt_display_require_output(&data.display);
>   		data.n_pipes = 0;
>   		for_each_pipe(&data.display, i)
>   			data.n_pipes++;
>   	}
> -	igt_subtest_with_dynamic("basic-dsc-enable") {
> -		for (j = 0; j < res->count_connectors; j++) {
> -			if (!check_dsc_on_connector(&data, res->connectors[j]))
> -				continue;
> -			run_test(&data, test_basic_dsc_enable);
> -		}
> -	}
> +
> +	igt_describe("Tests basic display stream compression functionality if supported "
> +		     "by a connector by forcing DSC on all connectors that support it "
> +		     "with default parameters");
> +	igt_subtest_with_dynamic("basic-dsc-enable")
> +			test_dsc(&data, TEST_BASIC_DSC_ENABLE);
> +
>   	/* currently we are validating compression bpp on XRGB8888 format only */
> +	igt_describe("Tests basic display stream compression functionality if supported "
> +		     "by a connector by forcing DSC on all connectors that support it "
> +		     "with certain BPP as the output BPP for the connector");
>   	igt_subtest_with_dynamic("XRGB8888-dsc-compression") {
>   		uint32_t bpp_list[] = {
>   			XRGB8888_DRM_FORMAT_MIN_BPP,
>   			(XRGB8888_DRM_FORMAT_MIN_BPP  +
> -			 (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1) / 2,
> +			(XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1) / 2,
>   			(XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1
>   		};
>   
>   		igt_require(intel_display_ver(data.devid) >= 13);

This check can be in igt_fixture?

- Bhanu

>   
> -		for (j = 0; j < res->count_connectors; j++) {
> -			if (!check_dsc_on_connector(&data, res->connectors[j]))
> -				continue;
> -
> -			for (i = 0; i < ARRAY_SIZE(bpp_list); i++) {
> -				data.compression_bpp = bpp_list[i];
> -				run_test(&data, test_dsc_compression_bpp);
> -			}
> +		for (int j = 0; j < ARRAY_SIZE(bpp_list); j++) {
> +			data.compression_bpp = bpp_list[j];
> +			test_dsc(&data, TEST_DSC_COMPRESSION_BPP);
>   		}
>   	}
>   
>   	igt_fixture {
> -		if (connector)
> -			drmModeFreeConnector(connector);
> -		test_cleanup(&data);
> -		drmModeFreeResources(res);
>   		igt_display_fini(&data.display);
>   		close(data.drm_fd);
>   	}

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

* [igt-dev] ✓ Fi.CI.IGT: success for tests/i915/kms_dsc: IGT cleanup (rev4)
  2022-05-19  5:32 [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup Swati Sharma
  2022-05-19  6:17 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/i915/kms_dsc: IGT cleanup (rev4) Patchwork
  2022-05-19  6:25 ` [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup Modem, Bhanuprakash
@ 2022-05-19  7:08 ` Patchwork
  2 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2022-05-19  7:08 UTC (permalink / raw)
  To: Swati Sharma; +Cc: igt-dev

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

== Series Details ==

Series: tests/i915/kms_dsc: IGT cleanup (rev4)
URL   : https://patchwork.freedesktop.org/series/103935/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_11675_full -> IGTPW_7140_full
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

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

  Missing    (4): pig-skl-6260u pig-kbl-iris shard-rkl pig-glk-j5005 

New tests
---------

  New tests have been introduced between CI_DRM_11675_full and IGTPW_7140_full:

### New IGT tests (5) ###

  * igt@kms_dsc@basic-dsc-enable@pipe-a-edp-1:
    - Statuses : 1 pass(s)
    - Exec time: [1.25] s

  * igt@kms_dsc@basic-dsc-enable@pipe-b-edp-1:
    - Statuses : 1 pass(s)
    - Exec time: [1.21] s

  * igt@kms_dsc@basic-dsc-enable@pipe-c-edp-1:
    - Statuses : 1 pass(s)
    - Exec time: [1.21] s

  * igt@kms_dsc@basic-dsc-enable@pipe-d-edp-1:
    - Statuses : 1 pass(s)
    - Exec time: [1.22] s

  * igt@kms_flip@flip-vs-modeset-vs-hang@d-hdmi-a3:
    - Statuses : 1 pass(s)
    - Exec time: [29.96] s

  

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

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

### IGT changes ###

#### Issues hit ####

  * igt@api_intel_bb@blit-noreloc-purge-cache-random:
    - shard-snb:          NOTRUN -> [SKIP][1] ([fdo#109271]) +140 similar issues
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-snb6/igt@api_intel_bb@blit-noreloc-purge-cache-random.html

  * igt@feature_discovery@display-3x:
    - shard-iclb:         NOTRUN -> [SKIP][2] ([i915#1839])
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb4/igt@feature_discovery@display-3x.html
    - shard-tglb:         NOTRUN -> [SKIP][3] ([i915#1839])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb7/igt@feature_discovery@display-3x.html

  * igt@gem_ccs@block-copy-uncompressed:
    - shard-iclb:         NOTRUN -> [SKIP][4] ([i915#5327])
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb2/igt@gem_ccs@block-copy-uncompressed.html

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

  * igt@gem_exec_balancer@parallel-keep-submit-fence:
    - shard-kbl:          NOTRUN -> [DMESG-WARN][6] ([i915#5076] / [i915#5614])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl6/igt@gem_exec_balancer@parallel-keep-submit-fence.html

  * igt@gem_exec_fair@basic-deadline:
    - shard-glk:          NOTRUN -> [FAIL][7] ([i915#2846])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk2/igt@gem_exec_fair@basic-deadline.html

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

  * igt@gem_exec_fair@basic-pace@vecs0:
    - shard-kbl:          [PASS][9] -> [FAIL][10] ([i915#2842])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-kbl3/igt@gem_exec_fair@basic-pace@vecs0.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl4/igt@gem_exec_fair@basic-pace@vecs0.html

  * igt@gem_exec_fair@basic-throttle@rcs0:
    - shard-glk:          NOTRUN -> [FAIL][11] ([i915#2842])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk7/igt@gem_exec_fair@basic-throttle@rcs0.html

  * igt@gem_lmem_swapping@heavy-verify-multi:
    - shard-kbl:          NOTRUN -> [SKIP][12] ([fdo#109271] / [i915#4613]) +1 similar issue
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl4/igt@gem_lmem_swapping@heavy-verify-multi.html

  * igt@gem_lmem_swapping@random-engines:
    - shard-iclb:         NOTRUN -> [SKIP][13] ([i915#4613]) +2 similar issues
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb5/igt@gem_lmem_swapping@random-engines.html
    - shard-tglb:         NOTRUN -> [SKIP][14] ([i915#4613])
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb2/igt@gem_lmem_swapping@random-engines.html

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

  * igt@gem_pxp@reject-modify-context-protection-off-3:
    - shard-iclb:         NOTRUN -> [SKIP][16] ([i915#4270])
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb3/igt@gem_pxp@reject-modify-context-protection-off-3.html

  * igt@gem_pxp@verify-pxp-stale-buf-execution:
    - shard-tglb:         NOTRUN -> [SKIP][17] ([i915#4270])
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb6/igt@gem_pxp@verify-pxp-stale-buf-execution.html

  * igt@gem_render_copy@x-tiled-to-vebox-yf-tiled:
    - shard-kbl:          NOTRUN -> [SKIP][18] ([fdo#109271]) +192 similar issues
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl4/igt@gem_render_copy@x-tiled-to-vebox-yf-tiled.html

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

  * igt@gem_softpin@evict-single-offset:
    - shard-kbl:          NOTRUN -> [FAIL][20] ([i915#4171])
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl4/igt@gem_softpin@evict-single-offset.html

  * igt@gem_userptr_blits@coherency-unsync:
    - shard-tglb:         NOTRUN -> [SKIP][21] ([i915#3297])
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb7/igt@gem_userptr_blits@coherency-unsync.html
    - shard-iclb:         NOTRUN -> [SKIP][22] ([i915#3297])
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb2/igt@gem_userptr_blits@coherency-unsync.html

  * igt@gem_userptr_blits@dmabuf-sync:
    - shard-glk:          NOTRUN -> [SKIP][23] ([fdo#109271] / [i915#3323])
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk4/igt@gem_userptr_blits@dmabuf-sync.html

  * igt@gem_workarounds@suspend-resume:
    - shard-apl:          [PASS][24] -> [DMESG-WARN][25] ([i915#180]) +2 similar issues
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-apl7/igt@gem_workarounds@suspend-resume.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl7/igt@gem_workarounds@suspend-resume.html

  * igt@gen7_exec_parse@load-register-reg:
    - shard-iclb:         NOTRUN -> [SKIP][26] ([fdo#109289]) +2 similar issues
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb8/igt@gen7_exec_parse@load-register-reg.html

  * igt@gen9_exec_parse@valid-registers:
    - shard-iclb:         NOTRUN -> [SKIP][27] ([i915#2856]) +1 similar issue
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb1/igt@gen9_exec_parse@valid-registers.html

  * igt@i915_pm_dc@dc3co-vpb-simulation:
    - shard-apl:          NOTRUN -> [SKIP][28] ([fdo#109271] / [i915#658])
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl2/igt@i915_pm_dc@dc3co-vpb-simulation.html

  * igt@i915_pm_rpm@modeset-non-lpsp-stress:
    - shard-tglb:         NOTRUN -> [SKIP][29] ([fdo#111644] / [i915#1397] / [i915#2411])
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb5/igt@i915_pm_rpm@modeset-non-lpsp-stress.html
    - shard-iclb:         NOTRUN -> [SKIP][30] ([fdo#110892])
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb4/igt@i915_pm_rpm@modeset-non-lpsp-stress.html

  * igt@i915_query@test-query-geometry-subslices:
    - shard-tglb:         NOTRUN -> [SKIP][31] ([i915#5723])
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@i915_query@test-query-geometry-subslices.html
    - shard-iclb:         NOTRUN -> [SKIP][32] ([i915#5723])
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb2/igt@i915_query@test-query-geometry-subslices.html

  * igt@i915_suspend@sysfs-reader:
    - shard-apl:          NOTRUN -> [DMESG-WARN][33] ([i915#180]) +1 similar issue
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl8/igt@i915_suspend@sysfs-reader.html
    - shard-kbl:          NOTRUN -> [DMESG-WARN][34] ([i915#180])
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl7/igt@i915_suspend@sysfs-reader.html

  * igt@kms_atomic@atomic_plane_damage:
    - shard-iclb:         NOTRUN -> [SKIP][35] ([i915#4765])
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb5/igt@kms_atomic@atomic_plane_damage.html

  * igt@kms_big_fb@4-tiled-addfb-size-offset-overflow:
    - shard-tglb:         NOTRUN -> [SKIP][36] ([i915#5286]) +5 similar issues
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@kms_big_fb@4-tiled-addfb-size-offset-overflow.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip:
    - shard-iclb:         NOTRUN -> [SKIP][37] ([i915#5286]) +4 similar issues
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb4/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-0-hflip.html

  * igt@kms_big_fb@x-tiled-16bpp-rotate-270:
    - shard-tglb:         NOTRUN -> [SKIP][38] ([fdo#111614]) +7 similar issues
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@kms_big_fb@x-tiled-16bpp-rotate-270.html

  * igt@kms_big_fb@x-tiled-8bpp-rotate-270:
    - shard-iclb:         NOTRUN -> [SKIP][39] ([fdo#110725] / [fdo#111614]) +4 similar issues
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb3/igt@kms_big_fb@x-tiled-8bpp-rotate-270.html

  * igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0:
    - shard-apl:          NOTRUN -> [SKIP][40] ([fdo#109271]) +154 similar issues
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl3/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0.html
    - shard-iclb:         NOTRUN -> [SKIP][41] ([fdo#110723]) +2 similar issues
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb6/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0.html

  * igt@kms_ccs@pipe-a-bad-aux-stride-y_tiled_gen12_rc_ccs_cc:
    - shard-glk:          NOTRUN -> [SKIP][42] ([fdo#109271] / [i915#3886]) +4 similar issues
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk9/igt@kms_ccs@pipe-a-bad-aux-stride-y_tiled_gen12_rc_ccs_cc.html
    - shard-iclb:         NOTRUN -> [SKIP][43] ([fdo#109278] / [i915#3886]) +6 similar issues
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb2/igt@kms_ccs@pipe-a-bad-aux-stride-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-a-crc-primary-rotation-180-y_tiled_gen12_rc_ccs_cc:
    - shard-kbl:          NOTRUN -> [SKIP][44] ([fdo#109271] / [i915#3886]) +11 similar issues
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl7/igt@kms_ccs@pipe-a-crc-primary-rotation-180-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-a-missing-ccs-buffer-y_tiled_gen12_rc_ccs_cc:
    - shard-apl:          NOTRUN -> [SKIP][45] ([fdo#109271] / [i915#3886]) +8 similar issues
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl4/igt@kms_ccs@pipe-a-missing-ccs-buffer-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-b-bad-rotation-90-y_tiled_gen12_mc_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][46] ([i915#3689] / [i915#3886]) +2 similar issues
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb6/igt@kms_ccs@pipe-b-bad-rotation-90-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-b-crc-sprite-planes-basic-yf_tiled_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][47] ([fdo#111615] / [i915#3689]) +1 similar issue
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb7/igt@kms_ccs@pipe-b-crc-sprite-planes-basic-yf_tiled_ccs.html

  * igt@kms_ccs@pipe-d-bad-aux-stride-y_tiled_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][48] ([i915#3689]) +5 similar issues
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb1/igt@kms_ccs@pipe-d-bad-aux-stride-y_tiled_ccs.html

  * igt@kms_cdclk@mode-transition:
    - shard-tglb:         NOTRUN -> [SKIP][49] ([i915#3742])
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb7/igt@kms_cdclk@mode-transition.html

  * igt@kms_chamelium@dp-hpd-storm:
    - shard-iclb:         NOTRUN -> [SKIP][50] ([fdo#109284] / [fdo#111827]) +5 similar issues
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb2/igt@kms_chamelium@dp-hpd-storm.html

  * igt@kms_chamelium@hdmi-hpd-storm:
    - shard-kbl:          NOTRUN -> [SKIP][51] ([fdo#109271] / [fdo#111827]) +11 similar issues
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl4/igt@kms_chamelium@hdmi-hpd-storm.html

  * igt@kms_chamelium@vga-hpd:
    - shard-glk:          NOTRUN -> [SKIP][52] ([fdo#109271] / [fdo#111827]) +5 similar issues
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk4/igt@kms_chamelium@vga-hpd.html

  * igt@kms_color@pipe-d-ctm-max:
    - shard-iclb:         NOTRUN -> [SKIP][53] ([fdo#109278] / [i915#1149])
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb6/igt@kms_color@pipe-d-ctm-max.html

  * igt@kms_color_chamelium@pipe-c-ctm-red-to-blue:
    - shard-snb:          NOTRUN -> [SKIP][54] ([fdo#109271] / [fdo#111827]) +4 similar issues
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-snb6/igt@kms_color_chamelium@pipe-c-ctm-red-to-blue.html

  * igt@kms_color_chamelium@pipe-d-ctm-0-75:
    - shard-apl:          NOTRUN -> [SKIP][55] ([fdo#109271] / [fdo#111827]) +12 similar issues
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl3/igt@kms_color_chamelium@pipe-d-ctm-0-75.html

  * igt@kms_color_chamelium@pipe-d-ctm-red-to-blue:
    - shard-tglb:         NOTRUN -> [SKIP][56] ([fdo#109284] / [fdo#111827]) +6 similar issues
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb2/igt@kms_color_chamelium@pipe-d-ctm-red-to-blue.html

  * igt@kms_content_protection@dp-mst-type-1:
    - shard-iclb:         NOTRUN -> [SKIP][57] ([i915#3116])
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb7/igt@kms_content_protection@dp-mst-type-1.html
    - shard-tglb:         NOTRUN -> [SKIP][58] ([i915#3116] / [i915#3299])
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@kms_content_protection@dp-mst-type-1.html

  * igt@kms_cursor_crc@pipe-b-cursor-32x32-sliding:
    - shard-tglb:         NOTRUN -> [SKIP][59] ([i915#3319]) +1 similar issue
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb6/igt@kms_cursor_crc@pipe-b-cursor-32x32-sliding.html

  * igt@kms_cursor_crc@pipe-b-cursor-suspend:
    - shard-kbl:          [PASS][60] -> [DMESG-WARN][61] ([i915#180])
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-kbl4/igt@kms_cursor_crc@pipe-b-cursor-suspend.html
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl7/igt@kms_cursor_crc@pipe-b-cursor-suspend.html

  * igt@kms_cursor_crc@pipe-c-cursor-512x170-offscreen:
    - shard-iclb:         NOTRUN -> [SKIP][62] ([fdo#109278] / [fdo#109279]) +1 similar issue
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb1/igt@kms_cursor_crc@pipe-c-cursor-512x170-offscreen.html

  * igt@kms_cursor_crc@pipe-c-cursor-512x170-sliding:
    - shard-glk:          NOTRUN -> [SKIP][63] ([fdo#109271] / [i915#5691])
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk5/igt@kms_cursor_crc@pipe-c-cursor-512x170-sliding.html

  * igt@kms_cursor_crc@pipe-d-cursor-32x32-rapid-movement:
    - shard-iclb:         NOTRUN -> [SKIP][64] ([fdo#109278]) +33 similar issues
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb6/igt@kms_cursor_crc@pipe-d-cursor-32x32-rapid-movement.html

  * igt@kms_cursor_crc@pipe-d-cursor-512x170-onscreen:
    - shard-tglb:         NOTRUN -> [SKIP][65] ([fdo#109279] / [i915#3359]) +2 similar issues
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@kms_cursor_crc@pipe-d-cursor-512x170-onscreen.html

  * igt@kms_cursor_crc@pipe-d-cursor-512x170-rapid-movement:
    - shard-tglb:         NOTRUN -> [SKIP][66] ([i915#3359]) +9 similar issues
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb5/igt@kms_cursor_crc@pipe-d-cursor-512x170-rapid-movement.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
    - shard-tglb:         NOTRUN -> [SKIP][67] ([i915#4103]) +1 similar issue
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb1/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html

  * igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions-varying-size:
    - shard-iclb:         NOTRUN -> [SKIP][68] ([fdo#109274] / [fdo#109278]) +1 similar issue
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb8/igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions-varying-size.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions:
    - shard-glk:          [PASS][69] -> [FAIL][70] ([i915#2346])
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-glk5/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk8/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html

  * igt@kms_dp_tiled_display@basic-test-pattern:
    - shard-iclb:         NOTRUN -> [SKIP][71] ([i915#426])
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb5/igt@kms_dp_tiled_display@basic-test-pattern.html

  * igt@kms_draw_crc@draw-method-rgb565-mmap-gtt-4tiled:
    - shard-tglb:         NOTRUN -> [SKIP][72] ([i915#5287])
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb6/igt@kms_draw_crc@draw-method-rgb565-mmap-gtt-4tiled.html
    - shard-iclb:         NOTRUN -> [SKIP][73] ([i915#5287])
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb6/igt@kms_draw_crc@draw-method-rgb565-mmap-gtt-4tiled.html

  * igt@kms_draw_crc@draw-method-xrgb2101010-mmap-gtt-xtiled:
    - shard-glk:          [PASS][74] -> [FAIL][75] ([i915#1888] / [i915#5160])
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-glk2/igt@kms_draw_crc@draw-method-xrgb2101010-mmap-gtt-xtiled.html
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk9/igt@kms_draw_crc@draw-method-xrgb2101010-mmap-gtt-xtiled.html

  * igt@kms_dsc@basic-dsc-enable:
    - shard-iclb:         NOTRUN -> [SKIP][76] ([i915#3840])
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb6/igt@kms_dsc@basic-dsc-enable.html

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

  * igt@kms_flip@2x-flip-vs-blocking-wf-vblank:
    - shard-tglb:         NOTRUN -> [SKIP][78] ([fdo#109274] / [fdo#111825]) +7 similar issues
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb2/igt@kms_flip@2x-flip-vs-blocking-wf-vblank.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling:
    - shard-tglb:         NOTRUN -> [SKIP][79] ([i915#2587])
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-upscaling.html

  * igt@kms_frontbuffer_tracking@fbc-suspend:
    - shard-iclb:         [PASS][80] -> [DMESG-WARN][81] ([i915#2867])
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb2/igt@kms_frontbuffer_tracking@fbc-suspend.html
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb6/igt@kms_frontbuffer_tracking@fbc-suspend.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-shrfb-pgflip-blt:
    - shard-iclb:         NOTRUN -> [SKIP][82] ([fdo#109280]) +26 similar issues
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb5/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-shrfb-pgflip-blt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-tiling-4:
    - shard-tglb:         NOTRUN -> [SKIP][83] ([i915#5439])
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb3/igt@kms_frontbuffer_tracking@fbcpsr-tiling-4.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-move:
    - shard-tglb:         NOTRUN -> [SKIP][84] ([fdo#109280] / [fdo#111825]) +16 similar issues
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-move.html

  * igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-cpu:
    - shard-glk:          NOTRUN -> [SKIP][85] ([fdo#109271]) +96 similar issues
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk9/igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-cpu.html

  * igt@kms_pipe_b_c_ivb@pipe-b-double-modeset-then-modeset-pipe-c:
    - shard-tglb:         NOTRUN -> [SKIP][86] ([fdo#109289])
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb6/igt@kms_pipe_b_c_ivb@pipe-b-double-modeset-then-modeset-pipe-c.html

  * igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d:
    - shard-kbl:          NOTRUN -> [SKIP][87] ([fdo#109271] / [i915#533])
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl7/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d.html

  * igt@kms_pipe_crc_basic@hang-read-crc-pipe-d:
    - shard-glk:          NOTRUN -> [SKIP][88] ([fdo#109271] / [i915#533])
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk7/igt@kms_pipe_crc_basic@hang-read-crc-pipe-d.html

  * igt@kms_pipe_crc_basic@suspend-read-crc-pipe-d:
    - shard-apl:          NOTRUN -> [SKIP][89] ([fdo#109271] / [i915#533])
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl8/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-d.html

  * igt@kms_plane_alpha_blend@pipe-c-alpha-basic:
    - shard-kbl:          NOTRUN -> [FAIL][90] ([fdo#108145] / [i915#265])
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl6/igt@kms_plane_alpha_blend@pipe-c-alpha-basic.html
    - shard-glk:          NOTRUN -> [FAIL][91] ([fdo#108145] / [i915#265])
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk8/igt@kms_plane_alpha_blend@pipe-c-alpha-basic.html

  * igt@kms_plane_alpha_blend@pipe-c-alpha-opaque-fb:
    - shard-apl:          NOTRUN -> [FAIL][92] ([fdo#108145] / [i915#265])
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl6/igt@kms_plane_alpha_blend@pipe-c-alpha-opaque-fb.html

  * igt@kms_plane_lowres@pipe-c-tiling-none:
    - shard-iclb:         NOTRUN -> [SKIP][93] ([i915#3536]) +1 similar issue
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb1/igt@kms_plane_lowres@pipe-c-tiling-none.html
    - shard-tglb:         NOTRUN -> [SKIP][94] ([i915#3536]) +1 similar issue
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb3/igt@kms_plane_lowres@pipe-c-tiling-none.html

  * igt@kms_plane_lowres@pipe-c-tiling-yf:
    - shard-tglb:         NOTRUN -> [SKIP][95] ([fdo#111615] / [fdo#112054])
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@kms_plane_lowres@pipe-c-tiling-yf.html

  * igt@kms_plane_multiple@atomic-pipe-b-tiling-4:
    - shard-tglb:         NOTRUN -> [SKIP][96] ([i915#5288])
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb7/igt@kms_plane_multiple@atomic-pipe-b-tiling-4.html

  * igt@kms_plane_scaling@downscale-with-modifier-factor-0-25@pipe-d-edp-1-downscale-with-modifier:
    - shard-tglb:         NOTRUN -> [SKIP][97] ([i915#5176]) +7 similar issues
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb1/igt@kms_plane_scaling@downscale-with-modifier-factor-0-25@pipe-d-edp-1-downscale-with-modifier.html

  * igt@kms_plane_scaling@downscale-with-pixel-format-factor-0-25@pipe-a-edp-1-downscale-with-pixel-format:
    - shard-iclb:         NOTRUN -> [SKIP][98] ([i915#5176]) +5 similar issues
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb5/igt@kms_plane_scaling@downscale-with-pixel-format-factor-0-25@pipe-a-edp-1-downscale-with-pixel-format.html

  * igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1-planes-downscale:
    - shard-iclb:         [PASS][99] -> [SKIP][100] ([i915#5235]) +2 similar issues
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb8/igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1-planes-downscale.html
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb2/igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1-planes-downscale.html

  * igt@kms_plane_scaling@planes-unity-scaling-downscale-factor-0-5@pipe-a-edp-1-planes-upscale-downscale:
    - shard-iclb:         NOTRUN -> [SKIP][101] ([i915#5235]) +2 similar issues
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb2/igt@kms_plane_scaling@planes-unity-scaling-downscale-factor-0-5@pipe-a-edp-1-planes-upscale-downscale.html

  * igt@kms_prime@basic-crc@first-to-second:
    - shard-iclb:         NOTRUN -> [SKIP][102] ([i915#1836])
   [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb6/igt@kms_prime@basic-crc@first-to-second.html

  * igt@kms_psr2_sf@plane-move-sf-dmg-area:
    - shard-kbl:          NOTRUN -> [SKIP][103] ([fdo#109271] / [i915#658]) +1 similar issue
   [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl4/igt@kms_psr2_sf@plane-move-sf-dmg-area.html
    - shard-tglb:         NOTRUN -> [SKIP][104] ([i915#2920])
   [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb6/igt@kms_psr2_sf@plane-move-sf-dmg-area.html

  * igt@kms_psr2_su@frontbuffer-xrgb8888:
    - shard-iclb:         [PASS][105] -> [SKIP][106] ([fdo#109642] / [fdo#111068] / [i915#658])
   [105]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb2/igt@kms_psr2_su@frontbuffer-xrgb8888.html
   [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb3/igt@kms_psr2_su@frontbuffer-xrgb8888.html

  * igt@kms_psr2_su@page_flip-nv12:
    - shard-tglb:         NOTRUN -> [SKIP][107] ([i915#1911])
   [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb5/igt@kms_psr2_su@page_flip-nv12.html
    - shard-glk:          NOTRUN -> [SKIP][108] ([fdo#109271] / [i915#658])
   [108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk8/igt@kms_psr2_su@page_flip-nv12.html
    - shard-iclb:         NOTRUN -> [SKIP][109] ([fdo#109642] / [fdo#111068] / [i915#658])
   [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb4/igt@kms_psr2_su@page_flip-nv12.html

  * igt@kms_psr@psr2_primary_mmap_cpu:
    - shard-iclb:         NOTRUN -> [SKIP][110] ([fdo#109441]) +2 similar issues
   [110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb7/igt@kms_psr@psr2_primary_mmap_cpu.html

  * igt@kms_psr@psr2_primary_mmap_gtt:
    - shard-tglb:         NOTRUN -> [FAIL][111] ([i915#132] / [i915#3467]) +3 similar issues
   [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb2/igt@kms_psr@psr2_primary_mmap_gtt.html

  * igt@kms_rotation_crc@primary-yf-tiled-reflect-x-270:
    - shard-tglb:         NOTRUN -> [SKIP][112] ([fdo#111615]) +3 similar issues
   [112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-270.html

  * igt@kms_setmode@invalid-clone-single-crtc-stealing:
    - shard-iclb:         NOTRUN -> [SKIP][113] ([i915#3555]) +1 similar issue
   [113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb8/igt@kms_setmode@invalid-clone-single-crtc-stealing.html
    - shard-tglb:         NOTRUN -> [SKIP][114] ([i915#3555])
   [114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@kms_setmode@invalid-clone-single-crtc-stealing.html

  * igt@kms_writeback@writeback-pixel-formats:
    - shard-kbl:          NOTRUN -> [SKIP][115] ([fdo#109271] / [i915#2437])
   [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl6/igt@kms_writeback@writeback-pixel-formats.html
    - shard-tglb:         NOTRUN -> [SKIP][116] ([i915#2437])
   [116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb5/igt@kms_writeback@writeback-pixel-formats.html

  * igt@nouveau_crc@pipe-b-ctx-flip-detection:
    - shard-tglb:         NOTRUN -> [SKIP][117] ([i915#2530]) +3 similar issues
   [117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb3/igt@nouveau_crc@pipe-b-ctx-flip-detection.html

  * igt@nouveau_crc@pipe-b-source-outp-complete:
    - shard-iclb:         NOTRUN -> [SKIP][118] ([i915#2530]) +3 similar issues
   [118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb7/igt@nouveau_crc@pipe-b-source-outp-complete.html

  * igt@prime_nv_api@nv_i915_import_twice_check_flink_name:
    - shard-iclb:         NOTRUN -> [SKIP][119] ([fdo#109291]) +4 similar issues
   [119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb5/igt@prime_nv_api@nv_i915_import_twice_check_flink_name.html

  * igt@prime_nv_pcopy@test1_macro:
    - shard-tglb:         NOTRUN -> [SKIP][120] ([fdo#109291]) +1 similar issue
   [120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb7/igt@prime_nv_pcopy@test1_macro.html

  * igt@prime_vgem@fence-flip-hang:
    - shard-iclb:         NOTRUN -> [SKIP][121] ([fdo#109295])
   [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb3/igt@prime_vgem@fence-flip-hang.html

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

  * igt@sysfs_clients@create:
    - shard-glk:          NOTRUN -> [SKIP][123] ([fdo#109271] / [i915#2994]) +3 similar issues
   [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk9/igt@sysfs_clients@create.html

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

  * igt@sysfs_clients@fair-3:
    - shard-kbl:          NOTRUN -> [SKIP][125] ([fdo#109271] / [i915#2994]) +3 similar issues
   [125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl7/igt@sysfs_clients@fair-3.html
    - shard-tglb:         NOTRUN -> [SKIP][126] ([i915#2994]) +1 similar issue
   [126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb8/igt@sysfs_clients@fair-3.html

  * igt@sysfs_clients@fair-7:
    - shard-iclb:         NOTRUN -> [SKIP][127] ([i915#2994]) +1 similar issue
   [127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb8/igt@sysfs_clients@fair-7.html

  
#### Possible fixes ####

  * igt@gem_ctx_isolation@preservation-s3@rcs0:
    - shard-kbl:          [INCOMPLETE][128] ([i915#794]) -> [PASS][129]
   [128]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-kbl4/igt@gem_ctx_isolation@preservation-s3@rcs0.html
   [129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl1/igt@gem_ctx_isolation@preservation-s3@rcs0.html

  * igt@gem_eio@kms:
    - shard-tglb:         [FAIL][130] ([i915#5784]) -> [PASS][131]
   [130]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-tglb1/igt@gem_eio@kms.html
   [131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb6/igt@gem_eio@kms.html

  * igt@gem_eio@reset-stress:
    - {shard-dg1}:        [FAIL][132] ([i915#5784]) -> [PASS][133]
   [132]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-dg1-15/igt@gem_eio@reset-stress.html
   [133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-dg1-18/igt@gem_eio@reset-stress.html

  * igt@gem_eio@unwedge-stress:
    - {shard-tglu}:       [TIMEOUT][134] ([i915#3063]) -> [PASS][135]
   [134]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-tglu-1/igt@gem_eio@unwedge-stress.html
   [135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglu-6/igt@gem_eio@unwedge-stress.html

  * igt@gem_exec_fair@basic-deadline:
    - shard-kbl:          [FAIL][136] ([i915#2846]) -> [PASS][137]
   [136]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-kbl1/igt@gem_exec_fair@basic-deadline.html
   [137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl1/igt@gem_exec_fair@basic-deadline.html

  * igt@gem_exec_fair@basic-none-rrul@rcs0:
    - shard-kbl:          [FAIL][138] ([i915#2842]) -> [PASS][139]
   [138]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-kbl1/igt@gem_exec_fair@basic-none-rrul@rcs0.html
   [139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl3/igt@gem_exec_fair@basic-none-rrul@rcs0.html

  * igt@gem_exec_fair@basic-none-share@rcs0:
    - shard-glk:          [FAIL][140] ([i915#2842]) -> [PASS][141]
   [140]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-glk3/igt@gem_exec_fair@basic-none-share@rcs0.html
   [141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk9/igt@gem_exec_fair@basic-none-share@rcs0.html

  * igt@gem_exec_fair@basic-none-solo@rcs0:
    - shard-apl:          [FAIL][142] ([i915#2842]) -> [PASS][143]
   [142]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-apl3/igt@gem_exec_fair@basic-none-solo@rcs0.html
   [143]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl3/igt@gem_exec_fair@basic-none-solo@rcs0.html

  * igt@gem_exec_flush@basic-wb-pro-default:
    - shard-snb:          [SKIP][144] ([fdo#109271]) -> [PASS][145]
   [144]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-snb6/igt@gem_exec_flush@basic-wb-pro-default.html
   [145]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-snb7/igt@gem_exec_flush@basic-wb-pro-default.html

  * igt@gem_exec_whisper@basic-queues-forked-all:
    - shard-glk:          [DMESG-WARN][146] ([i915#118]) -> [PASS][147]
   [146]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-glk3/igt@gem_exec_whisper@basic-queues-forked-all.html
   [147]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk9/igt@gem_exec_whisper@basic-queues-forked-all.html

  * igt@gem_workarounds@suspend-resume-context:
    - {shard-dg1}:        [FAIL][148] ([fdo#103375]) -> [PASS][149] +1 similar issue
   [148]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-dg1-17/igt@gem_workarounds@suspend-resume-context.html
   [149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-dg1-18/igt@gem_workarounds@suspend-resume-context.html

  * igt@i915_pm_dc@dc6-dpms:
    - shard-iclb:         [FAIL][150] ([i915#454]) -> [PASS][151] +1 similar issue
   [150]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb3/igt@i915_pm_dc@dc6-dpms.html
   [151]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb4/igt@i915_pm_dc@dc6-dpms.html

  * igt@i915_pm_dc@dc9-dpms:
    - shard-apl:          [SKIP][152] ([fdo#109271]) -> [PASS][153]
   [152]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-apl6/igt@i915_pm_dc@dc9-dpms.html
   [153]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl6/igt@i915_pm_dc@dc9-dpms.html

  * igt@kms_cursor_crc@pipe-b-cursor-suspend:
    - shard-apl:          [DMESG-WARN][154] ([i915#180]) -> [PASS][155]
   [154]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-apl8/igt@kms_cursor_crc@pipe-b-cursor-suspend.html
   [155]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl1/igt@kms_cursor_crc@pipe-b-cursor-suspend.html

  * igt@kms_cursor_crc@pipe-c-cursor-suspend:
    - shard-kbl:          [DMESG-WARN][156] ([i915#180]) -> [PASS][157] +3 similar issues
   [156]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-kbl7/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
   [157]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl3/igt@kms_cursor_crc@pipe-c-cursor-suspend.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
    - shard-iclb:         [FAIL][158] ([i915#2346]) -> [PASS][159]
   [158]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb7/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
   [159]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb3/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
    - shard-apl:          [FAIL][160] ([i915#2346] / [i915#533]) -> [PASS][161]
   [160]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-apl6/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
   [161]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-apl7/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling:
    - shard-iclb:         [SKIP][162] ([i915#3701]) -> [PASS][163]
   [162]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb2/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling.html
   [163]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb7/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-pwrite:
    - shard-glk:          [FAIL][164] ([i915#1888] / [i915#2546]) -> [PASS][165]
   [164]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-glk5/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-pwrite.html
   [165]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk4/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-pwrite.html

  * igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-b-edp-1-scaler-with-clipping-clamping:
    - shard-iclb:         [SKIP][166] ([i915#5176]) -> [PASS][167] +1 similar issue
   [166]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb3/igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-b-edp-1-scaler-with-clipping-clamping.html
   [167]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb6/igt@kms_plane_scaling@scaler-with-clipping-clamping@pipe-b-edp-1-scaler-with-clipping-clamping.html

  * igt@kms_psr@psr2_primary_blt:
    - shard-iclb:         [SKIP][168] ([fdo#109441]) -> [PASS][169]
   [168]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb8/igt@kms_psr@psr2_primary_blt.html
   [169]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb2/igt@kms_psr@psr2_primary_blt.html

  * igt@kms_psr_stress_test@flip-primary-invalidate-overlay:
    - shard-tglb:         [SKIP][170] ([i915#5519]) -> [PASS][171]
   [170]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-tglb7/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html
   [171]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb2/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html

  * igt@kms_vblank@pipe-d-ts-continuation-dpms-suspend:
    - shard-tglb:         [INCOMPLETE][172] -> [PASS][173]
   [172]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-tglb1/igt@kms_vblank@pipe-d-ts-continuation-dpms-suspend.html
   [173]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-tglb5/igt@kms_vblank@pipe-d-ts-continuation-dpms-suspend.html

  * igt@perf@non-zero-reason:
    - shard-glk:          [TIMEOUT][174] -> [PASS][175] +1 similar issue
   [174]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-glk8/igt@perf@non-zero-reason.html
   [175]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk8/igt@perf@non-zero-reason.html

  * igt@perf_pmu@busy-double-start@vecs0:
    - {shard-dg1}:        [FAIL][176] ([i915#4349]) -> [PASS][177]
   [176]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-dg1-16/igt@perf_pmu@busy-double-start@vecs0.html
   [177]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-dg1-13/igt@perf_pmu@busy-double-start@vecs0.html

  
#### Warnings ####

  * igt@gem_exec_balancer@parallel-ordering:
    - shard-iclb:         [SKIP][178] ([i915#4525]) -> [DMESG-FAIL][179] ([i915#5614])
   [178]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb8/igt@gem_exec_balancer@parallel-ordering.html
   [179]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb1/igt@gem_exec_balancer@parallel-ordering.html

  * igt@gem_exec_balancer@parallel-out-fence:
    - shard-iclb:         [DMESG-WARN][180] ([i915#5614]) -> [SKIP][181] ([i915#4525]) +1 similar issue
   [180]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb1/igt@gem_exec_balancer@parallel-out-fence.html
   [181]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb3/igt@gem_exec_balancer@parallel-out-fence.html

  * igt@kms_color@pipe-d-legacy-gamma:
    - shard-glk:          [TIMEOUT][182] -> [SKIP][183] ([fdo#109271]) +2 similar issues
   [182]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-glk8/igt@kms_color@pipe-d-legacy-gamma.html
   [183]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-glk1/igt@kms_color@pipe-d-legacy-gamma.html

  * igt@kms_flip@flip-vs-suspend@c-dp1:
    - shard-kbl:          [DMESG-WARN][184] ([i915#180]) -> [INCOMPLETE][185] ([i915#3614])
   [184]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-kbl7/igt@kms_flip@flip-vs-suspend@c-dp1.html
   [185]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-kbl3/igt@kms_flip@flip-vs-suspend@c-dp1.html

  * igt@kms_psr2_su@page_flip-p010:
    - shard-iclb:         [SKIP][186] ([fdo#109642] / [fdo#111068] / [i915#658]) -> [FAIL][187] ([i915#5939])
   [186]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11675/shard-iclb6/igt@kms_psr2_su@page_flip-p010.html
   [187]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/shard-iclb2/igt@kms_psr2_su@page_flip-p010.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#109279]: https://bugs.freedesktop.org/show_bug.cgi?id=109279
  [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
  [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#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
  [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
  [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
  [fdo#110542]: https://bugs.freedesktop.org/show_bug.cgi?id=110542
  [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
  [fdo#110725]: https://bugs.freedesktop.org/show_bug.cgi?id=110725
  [fdo#110892]: https://bugs.freedesktop.org/show_bug.cgi?id=110892
  [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
  [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
  [fdo#111644]: https://bugs.freedesktop.org/show_bug.cgi?id=111644
  [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
  [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#1149]: https://gitlab.freedesktop.org/drm/intel/issues/1149
  [i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118
  [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#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
  [i915#1836]: https://gitlab.freedesktop.org/drm/intel/issues/1836
  [i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
  [i915#1888]: https://gitlab.freedesktop.org/drm/intel/issues/1888
  [i915#1911]: https://gitlab.freedesktop.org/drm/intel/issues/1911
  [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
  [i915#2411]: https://gitlab.freedesktop.org/drm/intel/issues/2411
  [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#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#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
  [i915#2846]: https://gitlab.freedesktop.org/drm/intel/issues/2846
  [i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
  [i915#2867]: https://gitlab.freedesktop.org/drm/intel/issues/2867
  [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#3063]: https://gitlab.freedesktop.org/drm/intel/issues/3063
  [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#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
  [i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
  [i915#3319]: https://gitlab.freedesktop.org/drm/intel/issues/3319
  [i915#3323]: https://gitlab.freedesktop.org/drm/intel/issues/3323
  [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
  [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
  [i915#3467]: https://gitlab.freedesktop.org/drm/intel/issues/3467
  [i915#3469]: https://gitlab.freedesktop.org/drm/intel/issues/3469
  [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#3614]: https://gitlab.freedesktop.org/drm/intel/issues/3614
  [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#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
  [i915#3804]: https://gitlab.freedesktop.org/drm/intel/issues/3804
  [i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840
  [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
  [i915#3952]: https://gitlab.freedesktop.org/drm/intel/issues/3952
  [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#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4171]: https://gitlab.freedesktop.org/drm/intel/issues/4171
  [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
  [i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213
  [i915#426]: https://gitlab.freedesktop.org/drm/intel/issues/426
  [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
  [i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
  [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
  [i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4765]: https://gitlab.freedesktop.org/drm/intel/issues/4765
  [i915#4771]: https://gitlab.freedesktop.org/drm/intel/issues/4771
  [i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
  [i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
  [i915#4842]: https://gitlab.freedesktop.org/drm/intel/issues/4842
  [i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
  [i915#4853]: https://gitlab.freedesktop.org/drm/intel/issues/4853
  [i915#4855]: https://gitlab.freedesktop.org/drm/intel/issues/4855
  [i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
  [i915#4880]: https://gitlab.freedesktop.org/drm/intel/issues/4880
  [i915#4886]: https://gitlab.freedesktop.org/drm/intel/issues/4886
  [i915#4893]: https://gitlab.freedesktop.org/drm/intel/issues/4893
  [i915#4958]: https://gitlab.freedesktop.org/drm/intel/issues/4958
  [i915#4991]: https://gitlab.freedesktop.org/drm/intel/issues/4991
  [i915#5076]: https://gitlab.freedesktop.org/drm/intel/issues/5076
  [i915#5160]: https://gitlab.freedesktop.org/drm/intel/issues/5160
  [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
  [i915#5182]: https://gitlab.freedesktop.org/drm/intel/issues/5182
  [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#5303]: https://gitlab.freedesktop.org/drm/intel/issues/5303
  [i915#5327]: https://gitlab.freedesktop.org/drm/intel/issues/5327
  [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#5519]: https://gitlab.freedesktop.org/drm/intel/issues/5519
  [i915#5563]: https://gitlab.freedesktop.org/drm/intel/issues/5563
  [i915#5614]: https://gitlab.freedesktop.org/drm/intel/issues/5614
  [i915#5691]: https://gitlab.freedesktop.org/drm/intel/issues/5691
  [i915#5723]: https://gitlab.freedesktop.org/drm/intel/issues/5723
  [i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
  [i915#5939]: https://gitlab.freedesktop.org/drm/intel/issues/5939
  [i915#6029]: https://gitlab.freedesktop.org/drm/intel/issues/6029
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#768]: https://gitlab.freedesktop.org/drm/intel/issues/768
  [i915#794]: https://gitlab.freedesktop.org/drm/intel/issues/794


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

  * CI: CI-20190529 -> None
  * IGT: IGT_6480 -> IGTPW_7140
  * Piglit: piglit_4509 -> None

  CI-20190529: 20190529
  CI_DRM_11675: c31582c636f4c6ac8c0f822c39b250db2c5cd437 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_7140: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7140/index.html
  IGT_6480: 40ee6f52ac54858fa857fcdef52c0c791abf9344 @ 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_7140/index.html

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

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

* Re: [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup
  2022-05-19  6:25 ` [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup Modem, Bhanuprakash
@ 2022-05-24 16:44   ` Sharma, Swati2
  2022-05-25  5:17     ` Modem, Bhanuprakash
  0 siblings, 1 reply; 6+ messages in thread
From: Sharma, Swati2 @ 2022-05-24 16:44 UTC (permalink / raw)
  To: Modem, Bhanuprakash, igt-dev; +Cc: Patnana Venkata Sai

Hi Bhanu,

I have addressed all review comments except last one.
XRGB8888-dsc-compressions is specific to display 13; so we need to
keep check there only.

Few patch floated having lib changes and kms dsc cleanup changes.
https://patchwork.freedesktop.org/patch/487140/

Please review.

On 19-May-22 11:55 AM, Modem, Bhanuprakash wrote:
> Hi Swati,
> 
> Overall, this patch looks good to me. I have dropped few minor comments 
> to be addressed inline.
> 
> On Thu-19-05-2022 11:02 am, Swati Sharma wrote:
>> Remove redundant code and before starting the subtest,
>> clean up the states to default by igt_display_reset().
>> Few minor fixes in indentation. Added subtests description.
>>
>> v2: -minor mistake in subtest name
>>      -commit was missing after reset, added
>> v3: -fixed styling error
>>      -replaced drm calls with igt wrappers
>> v4: -added igt_display_require_output() in igt_fixture
>>      -modularized code, added func() for checks
>>      -added func() to get highest mode
>>
>> Signed-off-by: Patnana Venkata Sai <venkata.sai.patnana@intel.com>
>> Signed-off-by: Swati Sharma <swati2.sharma@intel.com>
>> ---
>>   lib/igt_kms.c        |   1 -
>>   tests/i915/kms_dsc.c | 263 +++++++++++++++++++++++--------------------
>>   2 files changed, 139 insertions(+), 125 deletions(-)
>>
>> diff --git a/lib/igt_kms.c b/lib/igt_kms.c
>> index 7838ff28..50a965ad 100644
>> --- a/lib/igt_kms.c
>> +++ b/lib/igt_kms.c
>> @@ -5304,7 +5304,6 @@ bool igt_is_dsc_supported(int drmfd, 
>> drmModeConnector *connector)
>>    */
>>   bool igt_is_fec_supported(int drmfd, drmModeConnector *connector)
>>   {
>> -
>>       return check_dsc_debugfs(drmfd, connector, "FEC_Sink_Support: 
>> yes");
>>   }
>> diff --git a/tests/i915/kms_dsc.c b/tests/i915/kms_dsc.c
>> index 22d2216e..3adca600 100644
>> --- a/tests/i915/kms_dsc.c
>> +++ b/tests/i915/kms_dsc.c
>> @@ -44,13 +44,16 @@
>>   #include <fcntl.h>
>>   #include <termios.h>
>> -/* currently dsc compression is verifying on 8bpc frame only */
>> +IGT_TEST_DESCRIPTION("Test to validate display stream compression");
>> +
>> +#define HDISPLAY_5K    5120
>> +
>> +/* currently dsc is verifed on 8bpc frame only */
>>   #define XRGB8888_DRM_FORMAT_MIN_BPP 8
>> -enum dsc_test_type
>> -{
>> -    test_basic_dsc_enable,
>> -    test_dsc_compression_bpp
>> +enum dsc_test_type {
>> +    TEST_BASIC_DSC_ENABLE,
>> +    TEST_DSC_COMPRESSION_BPP
>>   };
>>   typedef struct {
>> @@ -59,9 +62,6 @@ typedef struct {
>>       igt_display_t display;
>>       struct igt_fb fb_test_pattern;
>>       igt_output_t *output;
>> -    int mode_valid;
>> -    drmModeEncoder *encoder;
>> -    int crtc;
>>       int compression_bpp;
>>       int n_pipes;
>>       enum pipe pipe;
>> @@ -80,9 +80,9 @@ static void force_dsc_enable(data_t *data)
>>   {
>>       int ret;
>> -    igt_debug ("Forcing DSC enable on %s\n", data->conn_name);
>> +    igt_debug("Forcing DSC enable on %s\n", data->conn_name);
>>       ret = igt_force_dsc_enable(data->drm_fd,
>> -                      data->output->config.connector);
>> +                   data->output->config.connector);
>>       igt_assert_f(ret > 0, "debugfs_write failed");
>>   }
>> @@ -93,8 +93,8 @@ static void force_dsc_enable_bpp(data_t *data)
>>       igt_debug("Forcing DSC BPP to %d on %s\n",
>>             data->compression_bpp, data->conn_name);
>>       ret = igt_force_dsc_enable_bpp(data->drm_fd,
>> -                      data->output->config.connector,
>> -                      data->compression_bpp);
>> +                       data->output->config.connector,
>> +                       data->compression_bpp);
>>       igt_assert_f(ret > 0, "debugfs_write failed");
>>   }
>> @@ -105,7 +105,7 @@ static void save_force_dsc_en(data_t *data)
>>                        data->output->config.connector);
>>       force_dsc_restore_fd =
>>           igt_get_dsc_debugfs_fd(data->drm_fd,
>> -                      data->output->config.connector);
>> +                       data->output->config.connector);
>>       igt_assert(force_dsc_restore_fd >= 0);
>>   }
>> @@ -121,19 +121,6 @@ static void restore_force_dsc_en(void)
>>       force_dsc_restore_fd = -1;
>>   }
>> -static void test_cleanup(data_t *data)
>> -{
>> -    igt_plane_t *primary;
>> -
>> -    if (data->output) {
>> -        primary = igt_output_get_plane_type(data->output,
>> -                            DRM_PLANE_TYPE_PRIMARY);
>> -        igt_plane_set_fb(primary, NULL);
>> -        igt_output_set_pipe(data->output, PIPE_NONE);
>> -        igt_display_commit(&data->display);
>> -    }
>> -}
>> -
>>   static void kms_dsc_exit_handler(int sig)
>>   {
>>       restore_force_dsc_en();
>> @@ -159,29 +146,26 @@ static int sort_drm_modes(const void *a, const 
>> void *b)
>>       return (mode1->clock < mode2->clock) - (mode2->clock < 
>> mode1->clock);
>>   }
>> -static bool check_dsc_on_connector(data_t *data, uint32_t drmConnector)
>> +static drmModeModeInfo *get_highres_mode(drmModeConnector *connector)
>>   {
>> -    drmModeConnector *connector;
>> -    igt_output_t *output;
>> -
>> -    connector = drmModeGetConnectorCurrent(data->drm_fd,
>> -                           drmConnector);
>> -    if (connector->connection != DRM_MODE_CONNECTED)
>> -        return false;
>> -
>> -    output = igt_output_from_connector(&data->display, connector);
>> +    drmModeModeInfo *highest_mode = NULL;
>> -    /*
>> -     * As dsc supports >= 5k modes, we need to suppress lower
>> -     * resolutions.
>> -     */
>> -    qsort(output->config.connector->modes,
>> -          output->config.connector->count_modes,
>> +    qsort(connector->modes,
>> +          connector->count_modes,
>>             sizeof(drmModeModeInfo),
>>             sort_drm_modes);
>> -    if (output->config.connector->connector_type == 
>> DRM_MODE_CONNECTOR_DisplayPort &&
>> -        output->config.connector->modes[0].hdisplay < 5120)
>> -        return NULL;
>> +
>> +    highest_mode = &connector->modes[0];
>> +
>> +    return highest_mode;
>> +}
>> +
>> +static bool check_dsc_on_connector(data_t *data, igt_output_t *output)
>> +{
>> +    drmModeConnector *connector = output->config.connector;
>> +
>> +    if (connector->connection != DRM_MODE_CONNECTED)
>> +        return false;
> 
> This check is redundant, for_each_pipe_with_valid_output() is already 
> doing this check.
> 
>>       sprintf(data->conn_name, "%s-%d",
> 
> Please drop data->conn_name, instead please use data->output->name;
> 
>>           kmstest_connector_type_str(connector->connector_type),
>> @@ -192,168 +176,199 @@ static bool check_dsc_on_connector(data_t 
>> *data, uint32_t drmConnector)
>>                 data->conn_name);
>>           return false;
>>       }
>> +
>>       if (is_external_panel(connector) &&
>>           !igt_is_fec_supported(data->drm_fd, connector)) {
>>           igt_debug("DSC cannot be enabled without FEC on %s\n",
>>                 data->conn_name);
>>           return false;
>>       }
>> +
>>       data->output = output;
> 
> This could be moved to test_dsc()
> 
>>       return true;
>>   }
>> -/*
>> - * Re-probe connectors and do a modeset with DSC
>> - *
>> - */
>> -static void update_display(data_t *data, enum dsc_test_type test_type)
>> +static bool check_big_joiner_test_constraint(data_t *data, 
>> igt_output_t *output,
>> +                         enum dsc_test_type test_type)
>> +{
>> +    drmModeConnector *connector = output->config.connector;
>> +    drmModeModeInfo *mode = get_highres_mode(connector);
>> +
>> +    if (test_type == TEST_DSC_COMPRESSION_BPP &&
>> +        mode->hdisplay >= HDISPLAY_5K) {
>> +        igt_debug("Bigjoiner does not support force bpp\n");
>> +        return false;
>> +    }
>> +
>> +    return true;
>> +}
>> +
>> +static bool check_big_joiner_pipe_constraint(data_t *data, 
>> igt_output_t *output,
>> +                         enum pipe pipe)
>> +{
>> +    drmModeConnector *connector = output->config.connector;
>> +    drmModeModeInfo *mode = get_highres_mode(connector);
>> +
>> +    if (mode->hdisplay >= HDISPLAY_5K &&
>> +        pipe == (data->n_pipes - 1 )) {
>> +        igt_debug("pipe-%s not supported due to bigjoiner limitation\n",
>> +               kmstest_pipe_name(pipe));
>> +        return false;
>> +    }
>> +
>> +    return true;
>> +}
>> +
>> +static bool check_dp_gen11_constraint(data_t *data, igt_output_t 
>> *output, enum pipe pipe)
>> +{
>> +    uint32_t devid = intel_get_drm_devid(data->drm_fd);
>> +    drmModeConnector *connector = output->config.connector;
>> +
>> +    if ((connector->connector_type == DRM_MODE_CONNECTOR_DisplayPort) &&
>> +        (pipe == PIPE_A) && IS_GEN11(devid)) {
>> +        igt_debug("DSC not supported on pipe A on external DP in 
>> gen11 platforms\n");
>> +        return false;
>> +    }
>> +
>> +    return true;
>> +}
>> +/* re-probe connectors and do a modeset with DSC */
>> +static void update_display(data_t *data, igt_output_t *output, enum 
>> pipe pipe,
>> +               enum dsc_test_type test_type)
>>   {
>>       bool enabled;
>>       igt_plane_t *primary;
>> +    drmModeModeInfo *mode;
>> +    igt_display_t *display = &data->display;
>> +    drmModeConnector *connector = data->output->config.connector;
>> -    /* Disable the output first */
>> -    igt_output_set_pipe(data->output, PIPE_NONE);
>> -    igt_display_commit(&data->display);
>> +    /* sanitize the state before starting the subtest. */
>> +    igt_display_reset(display);
>> +    igt_display_commit(display);
>>       igt_debug("DSC is supported on %s\n", data->conn_name);
>>       save_force_dsc_en(data);
>>       force_dsc_enable(data);
>> -    if (test_type == test_dsc_compression_bpp) {
>> +
>> +    if (test_type == TEST_DSC_COMPRESSION_BPP) {
>>           igt_debug("Trying to set BPP to %d\n", data->compression_bpp);
>>           force_dsc_enable_bpp(data);
>>       }
>> -    igt_output_set_pipe(data->output, data->pipe);
>> -    qsort(data->output->config.connector->modes,
>> -            data->output->config.connector->count_modes,
>> -            sizeof(drmModeModeInfo),
>> -            sort_drm_modes);
>> -    igt_output_override_mode(data->output, 
>> &data->output->config.connector->modes[0]);
>> +    igt_output_set_pipe(data->output, pipe);
>> +
>> +    mode = get_highres_mode(connector);
>> +    igt_require(mode != NULL);
>> +    igt_output_override_mode(data->output, mode);
>> +
>>       primary = igt_output_get_plane_type(data->output,
>>                           DRM_PLANE_TYPE_PRIMARY);
>> +    igt_create_pattern_fb(data->drm_fd,
>> +                  mode->hdisplay,
>> +                  mode->vdisplay,
>> +                  DRM_FORMAT_XRGB8888,
>> +                  DRM_FORMAT_MOD_LINEAR,
>> +                  &data->fb_test_pattern);
>> -    /* Now set the output to the desired mode */
>>       igt_plane_set_fb(primary, &data->fb_test_pattern);
>>       igt_display_commit(&data->display);
>>       /*
>> -     * Until we have CRC check support, manually check if RGB test
>> +     * until we have CRC check support, manually check if RGB test
>>        * pattern has no corruption.
>>        */
>>       manual("RGB test pattern without corruption");
>> -    enabled = igt_is_dsc_enabled(data->drm_fd,
>> -                    data->output->config.connector);
>> +    enabled = igt_is_dsc_enabled(data->drm_fd, connector);
>>       restore_force_dsc_en();
>>       igt_debug("Reset compression BPP\n");
>>       data->compression_bpp = 0;
>>       force_dsc_enable_bpp(data);
>>       igt_assert_f(enabled,
>> -             "Default DSC enable failed on Connector: %s Pipe: %s\n",
>> +             "Default DSC enable failed on connector: %s pipe: %s\n",
>>                data->conn_name,
>> -             kmstest_pipe_name(data->pipe));
>> +             kmstest_pipe_name(pipe));
>> +
>> +    igt_remove_fb(data->drm_fd, &data->fb_test_pattern);
>> +    igt_plane_set_fb(primary, NULL);
>> +    igt_output_set_pipe(data->output, PIPE_NONE);
> 
> Please do commit here.
> 
>>   }
>> -static void run_test(data_t *data, enum dsc_test_type test_type)
>> +static void test_dsc(data_t *data, enum dsc_test_type test_type)
>>   {
>> +    igt_display_t *display = &data->display;
>> +    igt_output_t *output;
>>       enum pipe pipe;
>>       char test_name[10];
>> -    igt_skip_on_f(test_type == test_dsc_compression_bpp &&
>> -              data->output->config.connector->modes[0].hdisplay >= 5120,
>> -              "bigjoiner does not support force bpp\n");
>> -
>> -    igt_create_pattern_fb(data->drm_fd,
>> -                  data->output->config.connector->modes[0].hdisplay,
>> -                  data->output->config.connector->modes[0].vdisplay,
>> -                  DRM_FORMAT_XRGB8888,
>> -                  DRM_FORMAT_MOD_LINEAR,
>> -                  &data->fb_test_pattern);
>> +    for_each_pipe_with_valid_output(display, pipe, output) {
>> +        if (!check_dsc_on_connector(data, output))
>> +            continue;
>> -    for_each_pipe(&data->display, pipe) {
>> -        uint32_t devid = intel_get_drm_devid(data->drm_fd);
>> +        if (!check_big_joiner_test_constraint(data, output, test_type))
>> +            continue;
>> -        if (data->output->config.connector->connector_type == 
>> DRM_MODE_CONNECTOR_DisplayPort &&
>> -            pipe == PIPE_A && IS_GEN11(devid)) {
>> -            igt_debug("DSC not supported on Pipe A on external DP in 
>> Gen11 platforms\n");
>> +        if (!check_dp_gen11_constraint(data, output, pipe))
>>               continue;
>> -        }
>> -        snprintf(test_name, sizeof(test_name), "-%dbpp", 
>> data->compression_bpp);
>> -        if (!igt_pipe_connector_valid(pipe, data->output))
>> +        if (!check_big_joiner_pipe_constraint(data, output, pipe))
>>               continue;
>> -        igt_dynamic_f("%s-pipe-%s%s", data->output->name,
>> -                  kmstest_pipe_name(pipe),
>> -                  (test_type == test_dsc_compression_bpp) ?
>> -                  test_name : "") {
>> -            data->pipe = pipe;
>> -            
>> igt_skip_on_f((data->output->config.connector->modes[0].hdisplay >= 
>> 5120) &&
>> -                      (pipe  == (data->n_pipes - 1)),
>> -                      "pipe-%s not supported due to bigjoiner 
>> limitation\n",
>> -                      kmstest_pipe_name(pipe));
>> -            update_display(data, test_type);
>> +        if (!igt_pipe_connector_valid(pipe, output))
>> +            continue;
> 
> This check is redundant, for_each_pipe_with_valid_output() is already 
> taken care of this check.
> 
>> -        }
>> -        if (test_type == test_dsc_compression_bpp)
>> -            break;
>> +        snprintf(test_name, sizeof(test_name), "-%dbpp", 
>> data->compression_bpp);
>> +        igt_dynamic_f("pipe-%s-%s%s",  kmstest_pipe_name(pipe), 
>> output->name,
>> +                 (test_type == TEST_DSC_COMPRESSION_BPP) ? test_name 
>> : "")
>> +              update_display(data, output, pipe, test_type);
>>       }
>> -
>> -    igt_remove_fb(data->drm_fd, &data->fb_test_pattern);
>>   }
>>   igt_main
>>   {
>>       data_t data = {};
>> -    drmModeRes *res;
>> -    drmModeConnector *connector = NULL;
>> -    int i, j;
>> +    int i;
>> +
>>       igt_fixture {
>>           data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
>>           data.devid = intel_get_drm_devid(data.drm_fd);
>>           kmstest_set_vt_graphics_mode();
>>           igt_install_exit_handler(kms_dsc_exit_handler);
>>           igt_display_require(&data.display, data.drm_fd);
>> -        igt_require(res = drmModeGetResources(data.drm_fd));
>> +        igt_display_require_output(&data.display);
>>           data.n_pipes = 0;
>>           for_each_pipe(&data.display, i)
>>               data.n_pipes++;
>>       }
>> -    igt_subtest_with_dynamic("basic-dsc-enable") {
>> -        for (j = 0; j < res->count_connectors; j++) {
>> -            if (!check_dsc_on_connector(&data, res->connectors[j]))
>> -                continue;
>> -            run_test(&data, test_basic_dsc_enable);
>> -        }
>> -    }
>> +
>> +    igt_describe("Tests basic display stream compression 
>> functionality if supported "
>> +             "by a connector by forcing DSC on all connectors that 
>> support it "
>> +             "with default parameters");
>> +    igt_subtest_with_dynamic("basic-dsc-enable")
>> +            test_dsc(&data, TEST_BASIC_DSC_ENABLE);
>> +
>>       /* currently we are validating compression bpp on XRGB8888 
>> format only */
>> +    igt_describe("Tests basic display stream compression 
>> functionality if supported "
>> +             "by a connector by forcing DSC on all connectors that 
>> support it "
>> +             "with certain BPP as the output BPP for the connector");
>>       igt_subtest_with_dynamic("XRGB8888-dsc-compression") {
>>           uint32_t bpp_list[] = {
>>               XRGB8888_DRM_FORMAT_MIN_BPP,
>>               (XRGB8888_DRM_FORMAT_MIN_BPP  +
>> -             (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1) / 2,
>> +            (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1) / 2,
>>               (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1
>>           };
>>           igt_require(intel_display_ver(data.devid) >= 13);
> 
> This check can be in igt_fixture?
> 
> - Bhanu
> 
>> -        for (j = 0; j < res->count_connectors; j++) {
>> -            if (!check_dsc_on_connector(&data, res->connectors[j]))
>> -                continue;
>> -
>> -            for (i = 0; i < ARRAY_SIZE(bpp_list); i++) {
>> -                data.compression_bpp = bpp_list[i];
>> -                run_test(&data, test_dsc_compression_bpp);
>> -            }
>> +        for (int j = 0; j < ARRAY_SIZE(bpp_list); j++) {
>> +            data.compression_bpp = bpp_list[j];
>> +            test_dsc(&data, TEST_DSC_COMPRESSION_BPP);
>>           }
>>       }
>>       igt_fixture {
>> -        if (connector)
>> -            drmModeFreeConnector(connector);
>> -        test_cleanup(&data);
>> -        drmModeFreeResources(res);
>>           igt_display_fini(&data.display);
>>           close(data.drm_fd);
>>       }
> 

-- 
~Swati Sharma

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

* Re: [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup
  2022-05-24 16:44   ` Sharma, Swati2
@ 2022-05-25  5:17     ` Modem, Bhanuprakash
  0 siblings, 0 replies; 6+ messages in thread
From: Modem, Bhanuprakash @ 2022-05-25  5:17 UTC (permalink / raw)
  To: Sharma, Swati2, igt-dev; +Cc: Patnana Venkata Sai

On Tue-24-05-2022 10:14 pm, Sharma, Swati2 wrote:
> Hi Bhanu,
> 
> I have addressed all review comments except last one.
> XRGB8888-dsc-compressions is specific to display 13; so we need to
> keep check there only.

Thanks Swati,

Still we can add a igt_fixture just before creating the subtest. Instead 
of creating & skipping the subtest, just don't create it.

- Bhanu

> 
> Few patch floated having lib changes and kms dsc cleanup changes.
> https://patchwork.freedesktop.org/patch/487140/
> 
> Please review.
> 
> On 19-May-22 11:55 AM, Modem, Bhanuprakash wrote:
>> Hi Swati,
>>
>> Overall, this patch looks good to me. I have dropped few minor 
>> comments to be addressed inline.
>>
>> On Thu-19-05-2022 11:02 am, Swati Sharma wrote:
>>> Remove redundant code and before starting the subtest,
>>> clean up the states to default by igt_display_reset().
>>> Few minor fixes in indentation. Added subtests description.
>>>
>>> v2: -minor mistake in subtest name
>>>      -commit was missing after reset, added
>>> v3: -fixed styling error
>>>      -replaced drm calls with igt wrappers
>>> v4: -added igt_display_require_output() in igt_fixture
>>>      -modularized code, added func() for checks
>>>      -added func() to get highest mode
>>>
>>> Signed-off-by: Patnana Venkata Sai <venkata.sai.patnana@intel.com>
>>> Signed-off-by: Swati Sharma <swati2.sharma@intel.com>
>>> ---
>>>   lib/igt_kms.c        |   1 -
>>>   tests/i915/kms_dsc.c | 263 +++++++++++++++++++++++--------------------
>>>   2 files changed, 139 insertions(+), 125 deletions(-)
>>>
>>> diff --git a/lib/igt_kms.c b/lib/igt_kms.c
>>> index 7838ff28..50a965ad 100644
>>> --- a/lib/igt_kms.c
>>> +++ b/lib/igt_kms.c
>>> @@ -5304,7 +5304,6 @@ bool igt_is_dsc_supported(int drmfd, 
>>> drmModeConnector *connector)
>>>    */
>>>   bool igt_is_fec_supported(int drmfd, drmModeConnector *connector)
>>>   {
>>> -
>>>       return check_dsc_debugfs(drmfd, connector, "FEC_Sink_Support: 
>>> yes");
>>>   }
>>> diff --git a/tests/i915/kms_dsc.c b/tests/i915/kms_dsc.c
>>> index 22d2216e..3adca600 100644
>>> --- a/tests/i915/kms_dsc.c
>>> +++ b/tests/i915/kms_dsc.c
>>> @@ -44,13 +44,16 @@
>>>   #include <fcntl.h>
>>>   #include <termios.h>
>>> -/* currently dsc compression is verifying on 8bpc frame only */
>>> +IGT_TEST_DESCRIPTION("Test to validate display stream compression");
>>> +
>>> +#define HDISPLAY_5K    5120
>>> +
>>> +/* currently dsc is verifed on 8bpc frame only */
>>>   #define XRGB8888_DRM_FORMAT_MIN_BPP 8
>>> -enum dsc_test_type
>>> -{
>>> -    test_basic_dsc_enable,
>>> -    test_dsc_compression_bpp
>>> +enum dsc_test_type {
>>> +    TEST_BASIC_DSC_ENABLE,
>>> +    TEST_DSC_COMPRESSION_BPP
>>>   };
>>>   typedef struct {
>>> @@ -59,9 +62,6 @@ typedef struct {
>>>       igt_display_t display;
>>>       struct igt_fb fb_test_pattern;
>>>       igt_output_t *output;
>>> -    int mode_valid;
>>> -    drmModeEncoder *encoder;
>>> -    int crtc;
>>>       int compression_bpp;
>>>       int n_pipes;
>>>       enum pipe pipe;
>>> @@ -80,9 +80,9 @@ static void force_dsc_enable(data_t *data)
>>>   {
>>>       int ret;
>>> -    igt_debug ("Forcing DSC enable on %s\n", data->conn_name);
>>> +    igt_debug("Forcing DSC enable on %s\n", data->conn_name);
>>>       ret = igt_force_dsc_enable(data->drm_fd,
>>> -                      data->output->config.connector);
>>> +                   data->output->config.connector);
>>>       igt_assert_f(ret > 0, "debugfs_write failed");
>>>   }
>>> @@ -93,8 +93,8 @@ static void force_dsc_enable_bpp(data_t *data)
>>>       igt_debug("Forcing DSC BPP to %d on %s\n",
>>>             data->compression_bpp, data->conn_name);
>>>       ret = igt_force_dsc_enable_bpp(data->drm_fd,
>>> -                      data->output->config.connector,
>>> -                      data->compression_bpp);
>>> +                       data->output->config.connector,
>>> +                       data->compression_bpp);
>>>       igt_assert_f(ret > 0, "debugfs_write failed");
>>>   }
>>> @@ -105,7 +105,7 @@ static void save_force_dsc_en(data_t *data)
>>>                        data->output->config.connector);
>>>       force_dsc_restore_fd =
>>>           igt_get_dsc_debugfs_fd(data->drm_fd,
>>> -                      data->output->config.connector);
>>> +                       data->output->config.connector);
>>>       igt_assert(force_dsc_restore_fd >= 0);
>>>   }
>>> @@ -121,19 +121,6 @@ static void restore_force_dsc_en(void)
>>>       force_dsc_restore_fd = -1;
>>>   }
>>> -static void test_cleanup(data_t *data)
>>> -{
>>> -    igt_plane_t *primary;
>>> -
>>> -    if (data->output) {
>>> -        primary = igt_output_get_plane_type(data->output,
>>> -                            DRM_PLANE_TYPE_PRIMARY);
>>> -        igt_plane_set_fb(primary, NULL);
>>> -        igt_output_set_pipe(data->output, PIPE_NONE);
>>> -        igt_display_commit(&data->display);
>>> -    }
>>> -}
>>> -
>>>   static void kms_dsc_exit_handler(int sig)
>>>   {
>>>       restore_force_dsc_en();
>>> @@ -159,29 +146,26 @@ static int sort_drm_modes(const void *a, const 
>>> void *b)
>>>       return (mode1->clock < mode2->clock) - (mode2->clock < 
>>> mode1->clock);
>>>   }
>>> -static bool check_dsc_on_connector(data_t *data, uint32_t drmConnector)
>>> +static drmModeModeInfo *get_highres_mode(drmModeConnector *connector)
>>>   {
>>> -    drmModeConnector *connector;
>>> -    igt_output_t *output;
>>> -
>>> -    connector = drmModeGetConnectorCurrent(data->drm_fd,
>>> -                           drmConnector);
>>> -    if (connector->connection != DRM_MODE_CONNECTED)
>>> -        return false;
>>> -
>>> -    output = igt_output_from_connector(&data->display, connector);
>>> +    drmModeModeInfo *highest_mode = NULL;
>>> -    /*
>>> -     * As dsc supports >= 5k modes, we need to suppress lower
>>> -     * resolutions.
>>> -     */
>>> -    qsort(output->config.connector->modes,
>>> -          output->config.connector->count_modes,
>>> +    qsort(connector->modes,
>>> +          connector->count_modes,
>>>             sizeof(drmModeModeInfo),
>>>             sort_drm_modes);
>>> -    if (output->config.connector->connector_type == 
>>> DRM_MODE_CONNECTOR_DisplayPort &&
>>> -        output->config.connector->modes[0].hdisplay < 5120)
>>> -        return NULL;
>>> +
>>> +    highest_mode = &connector->modes[0];
>>> +
>>> +    return highest_mode;
>>> +}
>>> +
>>> +static bool check_dsc_on_connector(data_t *data, igt_output_t *output)
>>> +{
>>> +    drmModeConnector *connector = output->config.connector;
>>> +
>>> +    if (connector->connection != DRM_MODE_CONNECTED)
>>> +        return false;
>>
>> This check is redundant, for_each_pipe_with_valid_output() is already 
>> doing this check.
>>
>>>       sprintf(data->conn_name, "%s-%d",
>>
>> Please drop data->conn_name, instead please use data->output->name;
>>
>>>           kmstest_connector_type_str(connector->connector_type),
>>> @@ -192,168 +176,199 @@ static bool check_dsc_on_connector(data_t 
>>> *data, uint32_t drmConnector)
>>>                 data->conn_name);
>>>           return false;
>>>       }
>>> +
>>>       if (is_external_panel(connector) &&
>>>           !igt_is_fec_supported(data->drm_fd, connector)) {
>>>           igt_debug("DSC cannot be enabled without FEC on %s\n",
>>>                 data->conn_name);
>>>           return false;
>>>       }
>>> +
>>>       data->output = output;
>>
>> This could be moved to test_dsc()
>>
>>>       return true;
>>>   }
>>> -/*
>>> - * Re-probe connectors and do a modeset with DSC
>>> - *
>>> - */
>>> -static void update_display(data_t *data, enum dsc_test_type test_type)
>>> +static bool check_big_joiner_test_constraint(data_t *data, 
>>> igt_output_t *output,
>>> +                         enum dsc_test_type test_type)
>>> +{
>>> +    drmModeConnector *connector = output->config.connector;
>>> +    drmModeModeInfo *mode = get_highres_mode(connector);
>>> +
>>> +    if (test_type == TEST_DSC_COMPRESSION_BPP &&
>>> +        mode->hdisplay >= HDISPLAY_5K) {
>>> +        igt_debug("Bigjoiner does not support force bpp\n");
>>> +        return false;
>>> +    }
>>> +
>>> +    return true;
>>> +}
>>> +
>>> +static bool check_big_joiner_pipe_constraint(data_t *data, 
>>> igt_output_t *output,
>>> +                         enum pipe pipe)
>>> +{
>>> +    drmModeConnector *connector = output->config.connector;
>>> +    drmModeModeInfo *mode = get_highres_mode(connector);
>>> +
>>> +    if (mode->hdisplay >= HDISPLAY_5K &&
>>> +        pipe == (data->n_pipes - 1 )) {
>>> +        igt_debug("pipe-%s not supported due to bigjoiner 
>>> limitation\n",
>>> +               kmstest_pipe_name(pipe));
>>> +        return false;
>>> +    }
>>> +
>>> +    return true;
>>> +}
>>> +
>>> +static bool check_dp_gen11_constraint(data_t *data, igt_output_t 
>>> *output, enum pipe pipe)
>>> +{
>>> +    uint32_t devid = intel_get_drm_devid(data->drm_fd);
>>> +    drmModeConnector *connector = output->config.connector;
>>> +
>>> +    if ((connector->connector_type == 
>>> DRM_MODE_CONNECTOR_DisplayPort) &&
>>> +        (pipe == PIPE_A) && IS_GEN11(devid)) {
>>> +        igt_debug("DSC not supported on pipe A on external DP in 
>>> gen11 platforms\n");
>>> +        return false;
>>> +    }
>>> +
>>> +    return true;
>>> +}
>>> +/* re-probe connectors and do a modeset with DSC */
>>> +static void update_display(data_t *data, igt_output_t *output, enum 
>>> pipe pipe,
>>> +               enum dsc_test_type test_type)
>>>   {
>>>       bool enabled;
>>>       igt_plane_t *primary;
>>> +    drmModeModeInfo *mode;
>>> +    igt_display_t *display = &data->display;
>>> +    drmModeConnector *connector = data->output->config.connector;
>>> -    /* Disable the output first */
>>> -    igt_output_set_pipe(data->output, PIPE_NONE);
>>> -    igt_display_commit(&data->display);
>>> +    /* sanitize the state before starting the subtest. */
>>> +    igt_display_reset(display);
>>> +    igt_display_commit(display);
>>>       igt_debug("DSC is supported on %s\n", data->conn_name);
>>>       save_force_dsc_en(data);
>>>       force_dsc_enable(data);
>>> -    if (test_type == test_dsc_compression_bpp) {
>>> +
>>> +    if (test_type == TEST_DSC_COMPRESSION_BPP) {
>>>           igt_debug("Trying to set BPP to %d\n", data->compression_bpp);
>>>           force_dsc_enable_bpp(data);
>>>       }
>>> -    igt_output_set_pipe(data->output, data->pipe);
>>> -    qsort(data->output->config.connector->modes,
>>> -            data->output->config.connector->count_modes,
>>> -            sizeof(drmModeModeInfo),
>>> -            sort_drm_modes);
>>> -    igt_output_override_mode(data->output, 
>>> &data->output->config.connector->modes[0]);
>>> +    igt_output_set_pipe(data->output, pipe);
>>> +
>>> +    mode = get_highres_mode(connector);
>>> +    igt_require(mode != NULL);
>>> +    igt_output_override_mode(data->output, mode);
>>> +
>>>       primary = igt_output_get_plane_type(data->output,
>>>                           DRM_PLANE_TYPE_PRIMARY);
>>> +    igt_create_pattern_fb(data->drm_fd,
>>> +                  mode->hdisplay,
>>> +                  mode->vdisplay,
>>> +                  DRM_FORMAT_XRGB8888,
>>> +                  DRM_FORMAT_MOD_LINEAR,
>>> +                  &data->fb_test_pattern);
>>> -    /* Now set the output to the desired mode */
>>>       igt_plane_set_fb(primary, &data->fb_test_pattern);
>>>       igt_display_commit(&data->display);
>>>       /*
>>> -     * Until we have CRC check support, manually check if RGB test
>>> +     * until we have CRC check support, manually check if RGB test
>>>        * pattern has no corruption.
>>>        */
>>>       manual("RGB test pattern without corruption");
>>> -    enabled = igt_is_dsc_enabled(data->drm_fd,
>>> -                    data->output->config.connector);
>>> +    enabled = igt_is_dsc_enabled(data->drm_fd, connector);
>>>       restore_force_dsc_en();
>>>       igt_debug("Reset compression BPP\n");
>>>       data->compression_bpp = 0;
>>>       force_dsc_enable_bpp(data);
>>>       igt_assert_f(enabled,
>>> -             "Default DSC enable failed on Connector: %s Pipe: %s\n",
>>> +             "Default DSC enable failed on connector: %s pipe: %s\n",
>>>                data->conn_name,
>>> -             kmstest_pipe_name(data->pipe));
>>> +             kmstest_pipe_name(pipe));
>>> +
>>> +    igt_remove_fb(data->drm_fd, &data->fb_test_pattern);
>>> +    igt_plane_set_fb(primary, NULL);
>>> +    igt_output_set_pipe(data->output, PIPE_NONE);
>>
>> Please do commit here.
>>
>>>   }
>>> -static void run_test(data_t *data, enum dsc_test_type test_type)
>>> +static void test_dsc(data_t *data, enum dsc_test_type test_type)
>>>   {
>>> +    igt_display_t *display = &data->display;
>>> +    igt_output_t *output;
>>>       enum pipe pipe;
>>>       char test_name[10];
>>> -    igt_skip_on_f(test_type == test_dsc_compression_bpp &&
>>> -              data->output->config.connector->modes[0].hdisplay >= 
>>> 5120,
>>> -              "bigjoiner does not support force bpp\n");
>>> -
>>> -    igt_create_pattern_fb(data->drm_fd,
>>> -                  data->output->config.connector->modes[0].hdisplay,
>>> -                  data->output->config.connector->modes[0].vdisplay,
>>> -                  DRM_FORMAT_XRGB8888,
>>> -                  DRM_FORMAT_MOD_LINEAR,
>>> -                  &data->fb_test_pattern);
>>> +    for_each_pipe_with_valid_output(display, pipe, output) {
>>> +        if (!check_dsc_on_connector(data, output))
>>> +            continue;
>>> -    for_each_pipe(&data->display, pipe) {
>>> -        uint32_t devid = intel_get_drm_devid(data->drm_fd);
>>> +        if (!check_big_joiner_test_constraint(data, output, test_type))
>>> +            continue;
>>> -        if (data->output->config.connector->connector_type == 
>>> DRM_MODE_CONNECTOR_DisplayPort &&
>>> -            pipe == PIPE_A && IS_GEN11(devid)) {
>>> -            igt_debug("DSC not supported on Pipe A on external DP in 
>>> Gen11 platforms\n");
>>> +        if (!check_dp_gen11_constraint(data, output, pipe))
>>>               continue;
>>> -        }
>>> -        snprintf(test_name, sizeof(test_name), "-%dbpp", 
>>> data->compression_bpp);
>>> -        if (!igt_pipe_connector_valid(pipe, data->output))
>>> +        if (!check_big_joiner_pipe_constraint(data, output, pipe))
>>>               continue;
>>> -        igt_dynamic_f("%s-pipe-%s%s", data->output->name,
>>> -                  kmstest_pipe_name(pipe),
>>> -                  (test_type == test_dsc_compression_bpp) ?
>>> -                  test_name : "") {
>>> -            data->pipe = pipe;
>>> - igt_skip_on_f((data->output->config.connector->modes[0].hdisplay >= 
>>> 5120) &&
>>> -                      (pipe  == (data->n_pipes - 1)),
>>> -                      "pipe-%s not supported due to bigjoiner 
>>> limitation\n",
>>> -                      kmstest_pipe_name(pipe));
>>> -            update_display(data, test_type);
>>> +        if (!igt_pipe_connector_valid(pipe, output))
>>> +            continue;
>>
>> This check is redundant, for_each_pipe_with_valid_output() is already 
>> taken care of this check.
>>
>>> -        }
>>> -        if (test_type == test_dsc_compression_bpp)
>>> -            break;
>>> +        snprintf(test_name, sizeof(test_name), "-%dbpp", 
>>> data->compression_bpp);
>>> +        igt_dynamic_f("pipe-%s-%s%s",  kmstest_pipe_name(pipe), 
>>> output->name,
>>> +                 (test_type == TEST_DSC_COMPRESSION_BPP) ? test_name 
>>> : "")
>>> +              update_display(data, output, pipe, test_type);
>>>       }
>>> -
>>> -    igt_remove_fb(data->drm_fd, &data->fb_test_pattern);
>>>   }
>>>   igt_main
>>>   {
>>>       data_t data = {};
>>> -    drmModeRes *res;
>>> -    drmModeConnector *connector = NULL;
>>> -    int i, j;
>>> +    int i;
>>> +
>>>       igt_fixture {
>>>           data.drm_fd = drm_open_driver_master(DRIVER_INTEL);
>>>           data.devid = intel_get_drm_devid(data.drm_fd);
>>>           kmstest_set_vt_graphics_mode();
>>>           igt_install_exit_handler(kms_dsc_exit_handler);
>>>           igt_display_require(&data.display, data.drm_fd);
>>> -        igt_require(res = drmModeGetResources(data.drm_fd));
>>> +        igt_display_require_output(&data.display);
>>>           data.n_pipes = 0;
>>>           for_each_pipe(&data.display, i)
>>>               data.n_pipes++;
>>>       }
>>> -    igt_subtest_with_dynamic("basic-dsc-enable") {
>>> -        for (j = 0; j < res->count_connectors; j++) {
>>> -            if (!check_dsc_on_connector(&data, res->connectors[j]))
>>> -                continue;
>>> -            run_test(&data, test_basic_dsc_enable);
>>> -        }
>>> -    }
>>> +
>>> +    igt_describe("Tests basic display stream compression 
>>> functionality if supported "
>>> +             "by a connector by forcing DSC on all connectors that 
>>> support it "
>>> +             "with default parameters");
>>> +    igt_subtest_with_dynamic("basic-dsc-enable")
>>> +            test_dsc(&data, TEST_BASIC_DSC_ENABLE);
>>> +
>>>       /* currently we are validating compression bpp on XRGB8888 
>>> format only */
>>> +    igt_describe("Tests basic display stream compression 
>>> functionality if supported "
>>> +             "by a connector by forcing DSC on all connectors that 
>>> support it "
>>> +             "with certain BPP as the output BPP for the connector");
>>>       igt_subtest_with_dynamic("XRGB8888-dsc-compression") {
>>>           uint32_t bpp_list[] = {
>>>               XRGB8888_DRM_FORMAT_MIN_BPP,
>>>               (XRGB8888_DRM_FORMAT_MIN_BPP  +
>>> -             (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1) / 2,
>>> +            (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1) / 2,
>>>               (XRGB8888_DRM_FORMAT_MIN_BPP * 3) - 1
>>>           };
>>>           igt_require(intel_display_ver(data.devid) >= 13);
>>
>> This check can be in igt_fixture?
>>
>> - Bhanu
>>
>>> -        for (j = 0; j < res->count_connectors; j++) {
>>> -            if (!check_dsc_on_connector(&data, res->connectors[j]))
>>> -                continue;
>>> -
>>> -            for (i = 0; i < ARRAY_SIZE(bpp_list); i++) {
>>> -                data.compression_bpp = bpp_list[i];
>>> -                run_test(&data, test_dsc_compression_bpp);
>>> -            }
>>> +        for (int j = 0; j < ARRAY_SIZE(bpp_list); j++) {
>>> +            data.compression_bpp = bpp_list[j];
>>> +            test_dsc(&data, TEST_DSC_COMPRESSION_BPP);
>>>           }
>>>       }
>>>       igt_fixture {
>>> -        if (connector)
>>> -            drmModeFreeConnector(connector);
>>> -        test_cleanup(&data);
>>> -        drmModeFreeResources(res);
>>>           igt_display_fini(&data.display);
>>>           close(data.drm_fd);
>>>       }
>>
> 

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

end of thread, other threads:[~2022-05-25  5:17 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-05-19  5:32 [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup Swati Sharma
2022-05-19  6:17 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/i915/kms_dsc: IGT cleanup (rev4) Patchwork
2022-05-19  6:25 ` [igt-dev] [PATCH i-g-t v4] tests/i915/kms_dsc: IGT cleanup Modem, Bhanuprakash
2022-05-24 16:44   ` Sharma, Swati2
2022-05-25  5:17     ` Modem, Bhanuprakash
2022-05-19  7:08 ` [igt-dev] ✓ Fi.CI.IGT: success for tests/i915/kms_dsc: IGT cleanup (rev4) Patchwork

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