All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [RFC i-g-t 0/4] runner: Introduce --resolution to igt_runner
@ 2022-05-27  8:13 Bhanuprakash Modem
  2022-05-27  8:13 ` [igt-dev] [RFC i-g-t 1/4] " Bhanuprakash Modem
                   ` (6 more replies)
  0 siblings, 7 replies; 13+ messages in thread
From: Bhanuprakash Modem @ 2022-05-27  8:13 UTC (permalink / raw)
  To: igt-dev

Allow finer control of taking default DRM display mode for subtests
instead of taking the preferred mode exposed by the Kernel.

Example:
Eventhough we have an 8K panel, Kernel may expose 4K or lesser mode
as a preferred mode. So all subtests will take this mode as a default
may cause losing the coverage.

This series will set the environment variable based on the user request,
and parse this environment variable in IGT and take the decision to
choose the mode from the available list.

The default is still to take the preferred mode exposed by the Kernel.
Other options are:
 * highest: Choose the mode with highest possible resolution.
 * lowest:  Choose the mode with lowest possible resolution.

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

Bhanuprakash Modem (4):
  runner: Introduce --resolution to igt_runner
  runner: Unit tests for the --resolution option
  lib/igt_kms: Add support for --resolution from igt_runner
  HAX: Add debug prints in choosing the default mode

 lib/igt_kms.c         | 61 +++++++++++++++++++++++++++++++++++++++++--
 runner/executor.c     |  3 +++
 runner/runner_tests.c | 36 +++++++++++++++++++++++++
 runner/settings.c     | 47 +++++++++++++++++++++++++++++++++
 runner/settings.h     |  7 +++++
 5 files changed, 152 insertions(+), 2 deletions(-)

--
2.35.1

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

* [igt-dev] [RFC i-g-t 1/4] runner: Introduce --resolution to igt_runner
  2022-05-27  8:13 [igt-dev] [RFC i-g-t 0/4] runner: Introduce --resolution to igt_runner Bhanuprakash Modem
@ 2022-05-27  8:13 ` Bhanuprakash Modem
  2022-05-27 12:39   ` Petri Latvala
  2022-05-27  8:13 ` [igt-dev] [RFC i-g-t 2/4] runner: Unit tests for the --resolution option Bhanuprakash Modem
                   ` (5 subsequent siblings)
  6 siblings, 1 reply; 13+ messages in thread
From: Bhanuprakash Modem @ 2022-05-27  8:13 UTC (permalink / raw)
  To: igt-dev; +Cc: Petri Latvala

Allow finer control of taking default DRM display mode for subtests
instead of taking the preferred mode exposed by the Kernel.

Example:
Eventhough we have an 8K panel, Kernel may expose 4K or lesser mode
as a preferred mode. So all subtests will take this mode as a default
may cause losing the coverage.

This patch will set the environment variable based on the user request,
and IGT will parse this environment variable and take the decision to
choose the mode from the available list.

The default is still to take the preferred mode exposed by the Kernel.
Other options are:
* highest: Choose the mode with highest possible resolution.
* lowest:  Choose the mode with lowest possible resolution.

Cc: Petri Latvala <petri.latvala@intel.com>
Cc: Swati Sharma <swati2.sharma@intel.com>
Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 runner/executor.c |  3 +++
 runner/settings.c | 47 +++++++++++++++++++++++++++++++++++++++++++++++
 runner/settings.h |  7 +++++++
 3 files changed, 57 insertions(+)

diff --git a/runner/executor.c b/runner/executor.c
index 6e6ca9cc..fc805c30 100644
--- a/runner/executor.c
+++ b/runner/executor.c
@@ -2056,6 +2056,9 @@ bool execute(struct execute_state *state,
 	}
 
  end:
+	if (getenv("IGT_KMS_RESOLUTION"))
+		unsetenv("IGT_KMS_RESOLUTION");
+
 	if (settings->enable_code_coverage && !settings->cov_results_per_test) {
 		char *reason = NULL;
 
diff --git a/runner/settings.c b/runner/settings.c
index bb63a9f4..a20bcd01 100644
--- a/runner/settings.c
+++ b/runner/settings.c
@@ -30,6 +30,7 @@ enum {
 	OPT_COV_RESULTS_PER_TEST,
 	OPT_VERSION,
 	OPT_PRUNE_MODE,
+	OPT_RESOLUTION,
 	OPT_HELP = 'h',
 	OPT_NAME = 'n',
 	OPT_DRY_RUN = 'd',
@@ -78,6 +79,16 @@ static struct {
 	{ 0, 0 },
 };
 
+static struct {
+	int value;
+	const char *name;
+} resolution_modes[] = {
+	{ RESOLUTION_DEFAULT, "default" },
+	{ RESOLUTION_HIGHEST, "highest" },
+	{ RESOLUTION_LOWEST, "lowest" },
+	{ 0, 0 },
+};
+
 static bool set_log_level(struct settings* settings, const char *level)
 {
 	typeof(*log_levels) *it;
@@ -130,6 +141,26 @@ static bool set_prune_mode(struct settings* settings, const char *mode)
 	return false;
 }
 
+static bool set_resolution_mode(struct settings *settings, const char *mode)
+{
+	typeof(*resolution_modes) *it;
+	char res[2];
+
+	for (it = resolution_modes; it->name; it++) {
+		if (!strcmp(mode, it->name)) {
+			settings->resolution = it->value;
+
+			sprintf(res, "%d", it->value);
+			setenv("IGT_KMS_RESOLUTION", res, 1);
+
+			return true;
+		}
+	}
+	setenv("IGT_KMS_RESOLUTION", "0", 1);
+
+	return false;
+}
+
 static bool parse_abort_conditions(struct settings *settings, const char *optarg)
 {
 	char *dup, *origdup, *p;
@@ -279,6 +310,12 @@ static const char *usage_str =
 	"                                                  not in the requested test set.\n"
 	"                                                  Useful when you have a hand-written\n"
 	"                                                  testlist.\n"
+	"  --resolution <mode>   Control of taking default DRM display mode for subtests\n"
+	"                        instead of taking the preferred mode exposed by the Kernel.\n"
+	"                        Possible options:\n"
+	"                         default  - Use preferred mode. (default)\n"
+	"                         highest  - Use the mode with highest possible resolution.\n"
+	"                         lowest   - Use the mode with lowest possible resolution.\n"
 	"  -b, --blacklist FILENAME\n"
 	"                        Exclude all test matching to regexes from FILENAME\n"
 	"                        (can be used more than once)\n"
@@ -532,6 +569,7 @@ bool parse_options(int argc, char **argv,
 		{"dmesg-warn-level", required_argument, NULL, OPT_DMESG_WARN_LEVEL},
 		{"prune-mode", required_argument, NULL, OPT_PRUNE_MODE},
 		{"blacklist", required_argument, NULL, OPT_BLACKLIST},
+		{"resolution", optional_argument, NULL, OPT_RESOLUTION},
 		{"list-all", no_argument, NULL, OPT_LIST_ALL},
 		{ 0, 0, 0, 0},
 	};
@@ -640,6 +678,12 @@ bool parse_options(int argc, char **argv,
 					     absolute_path(optarg)))
 				goto error;
 			break;
+		case OPT_RESOLUTION:
+			if (!set_resolution_mode(settings, optarg)) {
+				usage("Cannot parse resolution mode", stderr);
+				goto error;
+			}
+			break;
 		case OPT_LIST_ALL:
 			settings->list_all = true;
 			break;
@@ -854,6 +898,7 @@ bool serialize_settings(struct settings *settings)
 	SERIALIZE_LINE(f, settings, piglit_style_dmesg, "%d");
 	SERIALIZE_LINE(f, settings, dmesg_warn_level, "%d");
 	SERIALIZE_LINE(f, settings, prune_mode, "%d");
+	SERIALIZE_LINE(f, settings, resolution, "%d");
 	SERIALIZE_LINE(f, settings, test_root, "%s");
 	SERIALIZE_LINE(f, settings, results_path, "%s");
 	SERIALIZE_LINE(f, settings, enable_code_coverage, "%d");
@@ -886,6 +931,7 @@ bool read_settings_from_file(struct settings *settings, FILE *f)
 	char *name = NULL, *val = NULL;
 
 	settings->dmesg_warn_level = -1;
+	settings->resolution = 0;
 
 	while (fscanf(f, "%ms : %m[^\n]", &name, &val) == 2) {
 		int numval = atoi(val);
@@ -906,6 +952,7 @@ bool read_settings_from_file(struct settings *settings, FILE *f)
 		PARSE_LINE(settings, name, val, piglit_style_dmesg, numval);
 		PARSE_LINE(settings, name, val, dmesg_warn_level, numval);
 		PARSE_LINE(settings, name, val, prune_mode, numval);
+		PARSE_LINE(settings, name, val, resolution, val ? numval : 0);
 		PARSE_LINE(settings, name, val, test_root, val ? strdup(val) : NULL);
 		PARSE_LINE(settings, name, val, results_path, val ? strdup(val) : NULL);
 		PARSE_LINE(settings, name, val, enable_code_coverage, numval);
diff --git a/runner/settings.h b/runner/settings.h
index 6ae64695..4d2c9951 100644
--- a/runner/settings.h
+++ b/runner/settings.h
@@ -31,6 +31,12 @@ enum {
 	PRUNE_KEEP_REQUESTED,
 };
 
+enum {
+	RESOLUTION_DEFAULT = 0,
+	RESOLUTION_HIGHEST,
+	RESOLUTION_LOWEST,
+};
+
 struct regex_list {
 	char **regex_strings;
 	GRegex **regexes;
@@ -59,6 +65,7 @@ struct settings {
 	bool piglit_style_dmesg;
 	int dmesg_warn_level;
 	int prune_mode;
+	int resolution;
 	bool list_all;
 	char *code_coverage_script;
 	bool enable_code_coverage;
-- 
2.35.1

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

* [igt-dev] [RFC i-g-t 2/4] runner: Unit tests for the --resolution option
  2022-05-27  8:13 [igt-dev] [RFC i-g-t 0/4] runner: Introduce --resolution to igt_runner Bhanuprakash Modem
  2022-05-27  8:13 ` [igt-dev] [RFC i-g-t 1/4] " Bhanuprakash Modem
@ 2022-05-27  8:13 ` Bhanuprakash Modem
  2022-05-27  8:13 ` [igt-dev] [RFC i-g-t 3/4] lib/igt_kms: Add support for --resolution from igt_runner Bhanuprakash Modem
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 13+ messages in thread
From: Bhanuprakash Modem @ 2022-05-27  8:13 UTC (permalink / raw)
  To: igt-dev; +Cc: Petri Latvala

Unit tests for the --resolution option

Cc: Petri Latvala <petri.latvala@intel.com>
Cc: Swati Sharma <swati2.sharma@intel.com>
Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 runner/runner_tests.c | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/runner/runner_tests.c b/runner/runner_tests.c
index 8fe86978..080780c3 100644
--- a/runner/runner_tests.c
+++ b/runner/runner_tests.c
@@ -201,6 +201,7 @@ static void assert_settings_equal(struct settings *one, struct settings *two)
 	igt_assert_eq(one->piglit_style_dmesg, two->piglit_style_dmesg);
 	igt_assert_eq(one->dmesg_warn_level, two->dmesg_warn_level);
 	igt_assert_eq(one->prune_mode, two->prune_mode);
+	igt_assert_eq(one->resolution, two->resolution);
 }
 
 static void assert_job_list_equal(struct job_list *one, struct job_list *two)
@@ -290,6 +291,8 @@ igt_main
 		igt_assert_eq(settings->overall_timeout, 0);
 		igt_assert(!settings->use_watchdog);
 		igt_assert_eq(settings->prune_mode, 0);
+		igt_assert_eq(settings->resolution, 0);
+		igt_assert(!getenv("IGT_KMS_RESOLUTION"));
 		igt_assert(strstr(settings->test_root, "test-root-dir") != NULL);
 		igt_assert(strstr(settings->results_path, "path-to-results") != NULL);
 
@@ -449,6 +452,7 @@ igt_main
 				       "--coverage-per-test",
 				       "--collect-script", "/usr/bin/true",
 				       "--prune-mode=keep-subtests",
+				       "--resolution=default",
 				       "test-root-dir",
 				       "path-to-results",
 		};
@@ -481,6 +485,9 @@ igt_main
 		igt_assert_eq(settings->overall_timeout, 360);
 		igt_assert(settings->use_watchdog);
 		igt_assert_eq(settings->prune_mode, PRUNE_KEEP_SUBTESTS);
+		igt_assert_eq(settings->resolution, RESOLUTION_DEFAULT);
+		igt_assert_eq(atoi(getenv("IGT_KMS_RESOLUTION")), RESOLUTION_DEFAULT);
+		unsetenv("IGT_KMS_RESOLUTION");
 		igt_assert(strstr(settings->test_root, "test-root-dir") != NULL);
 		igt_assert(strstr(settings->results_path, "path-to-results") != NULL);
 
@@ -664,6 +671,34 @@ igt_main
 		igt_assert_eq(settings->prune_mode, PRUNE_KEEP_REQUESTED);
 	}
 
+	igt_subtest("resolution") {
+		const char *argv[] = { "runner",
+				       "--resolution=default",
+				       "test-root-dir",
+				       "results-path",
+		};
+
+		igt_assert(parse_options(ARRAY_SIZE(argv), (char **)argv, settings));
+		igt_assert_eq(settings->resolution, RESOLUTION_DEFAULT);
+		igt_assert_eq(atoi(getenv("IGT_KMS_RESOLUTION")), RESOLUTION_DEFAULT);
+		unsetenv("IGT_KMS_RESOLUTION");
+
+		argv[1] = "--resolution=highest";
+		igt_assert(parse_options(ARRAY_SIZE(argv), (char **)argv, settings));
+		igt_assert_eq(settings->resolution, RESOLUTION_HIGHEST);
+		igt_assert_eq(atoi(getenv("IGT_KMS_RESOLUTION")), RESOLUTION_HIGHEST);
+		unsetenv("IGT_KMS_RESOLUTION");
+
+		argv[1] = "--resolution=lowest";
+		igt_assert(parse_options(ARRAY_SIZE(argv), (char **)argv, settings));
+		igt_assert_eq(settings->resolution, RESOLUTION_LOWEST);
+		igt_assert_eq(atoi(getenv("IGT_KMS_RESOLUTION")), RESOLUTION_LOWEST);
+		unsetenv("IGT_KMS_RESOLUTION");
+
+		argv[1] = "--resolution=unknown";
+		igt_assert(!parse_options(ARRAY_SIZE(argv), (char **)argv, settings));
+	}
+
 	igt_subtest("parse-clears-old-data") {
 		const char *argv[] = { "runner",
 				       "-n", "foo",
@@ -930,6 +965,7 @@ igt_main
 					       "--use-watchdog",
 					       "--piglit-style-dmesg",
 					       "--prune-mode=keep-all",
+					       "--resolution=default",
 					       testdatadir,
 					       dirname,
 			};
-- 
2.35.1

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

* [igt-dev] [RFC i-g-t 3/4] lib/igt_kms: Add support for --resolution from igt_runner
  2022-05-27  8:13 [igt-dev] [RFC i-g-t 0/4] runner: Introduce --resolution to igt_runner Bhanuprakash Modem
  2022-05-27  8:13 ` [igt-dev] [RFC i-g-t 1/4] " Bhanuprakash Modem
  2022-05-27  8:13 ` [igt-dev] [RFC i-g-t 2/4] runner: Unit tests for the --resolution option Bhanuprakash Modem
@ 2022-05-27  8:13 ` Bhanuprakash Modem
  2022-06-10 11:33   ` Petri Latvala
  2022-05-27  8:13 ` [igt-dev] [RFC i-g-t 4/4] HAX: Add debug prints in choosing the default mode Bhanuprakash Modem
                   ` (3 subsequent siblings)
  6 siblings, 1 reply; 13+ messages in thread
From: Bhanuprakash Modem @ 2022-05-27  8:13 UTC (permalink / raw)
  To: igt-dev; +Cc: Petri Latvala

Upon user request igt_runner will set an environment variable to choose
default DRM display mode for subtests instead of taking the preferred
mode.

Example:
Eventhough we have an 8K panel, Kernel may expose 4K or lesser mode
as a preferred mode. So all subtests will take this mode as a default
may cause losing the coverage.

This patch will parse the environment variable exposed by igt_runner
and take the decision to choose the mode from the available list.

The default is still to take the preferred mode exposed by the Kernel.
Other options are:
 * highest: Choose the mode with highest possible resolution.
 * lowest:  Choose the mode with lowest possible resolution.

Cc: Petri Latvala <petri.latvala@intel.com>
Cc: Swati Sharma <swati2.sharma@intel.com>
Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 lib/igt_kms.c | 37 ++++++++++++++++++++++++++++++++++++-
 1 file changed, 36 insertions(+), 1 deletion(-)

diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index 84e798b5..aa964e11 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -1431,6 +1431,20 @@ void kmstest_force_edid(int drm_fd, drmModeConnector *connector,
 	igt_assert(ret != -1);
 }
 
+static int sort_drm_modes_asc(const void *a, const void *b)
+{
+	const drmModeModeInfo *mode1 = a, *mode2 = b;
+
+	return (mode1->hdisplay > mode2->hdisplay) - (mode2->hdisplay > mode1->hdisplay);
+}
+
+static int sort_drm_modes_dsc(const void *a, const void *b)
+{
+	const drmModeModeInfo *mode1 = a, *mode2 = b;
+
+	return (mode1->hdisplay < mode2->hdisplay) - (mode2->hdisplay < mode1->hdisplay);
+}
+
 /**
  * kmstest_get_connector_default_mode:
  * @drm_fd: DRM fd
@@ -1444,7 +1458,13 @@ void kmstest_force_edid(int drm_fd, drmModeConnector *connector,
 bool kmstest_get_connector_default_mode(int drm_fd, drmModeConnector *connector,
 					drmModeModeInfo *mode)
 {
-	int i;
+	enum {
+		RESOLUTION_DEFAULT = 0,
+		RESOLUTION_HIGHEST,
+		RESOLUTION_LOWEST,
+	};
+	char *env;
+	int i, res = RESOLUTION_DEFAULT;
 
 	if (!connector->count_modes) {
 		igt_warn("no modes for connector %d\n",
@@ -1452,6 +1472,21 @@ bool kmstest_get_connector_default_mode(int drm_fd, drmModeConnector *connector,
 		return false;
 	}
 
+	env = getenv("IGT_KMS_RESOLUTION");
+	if (env)
+		res = atoi(env);
+
+	if (res) {
+		qsort(connector->modes,
+		      connector->count_modes,
+		      sizeof(drmModeModeInfo),
+		      (res == RESOLUTION_HIGHEST) ?
+			sort_drm_modes_dsc : sort_drm_modes_asc);
+
+		*mode = connector->modes[0];
+		return true;
+	}
+
 	for (i = 0; i < connector->count_modes; i++) {
 		if (i == 0 ||
 		    connector->modes[i].type & DRM_MODE_TYPE_PREFERRED) {
-- 
2.35.1

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

* [igt-dev] [RFC i-g-t 4/4] HAX: Add debug prints in choosing the default mode
  2022-05-27  8:13 [igt-dev] [RFC i-g-t 0/4] runner: Introduce --resolution to igt_runner Bhanuprakash Modem
                   ` (2 preceding siblings ...)
  2022-05-27  8:13 ` [igt-dev] [RFC i-g-t 3/4] lib/igt_kms: Add support for --resolution from igt_runner Bhanuprakash Modem
@ 2022-05-27  8:13 ` Bhanuprakash Modem
  2022-05-27  8:43 ` [igt-dev] ✗ GitLab.Pipeline: warning for runner: Introduce --resolution to igt_runner Patchwork
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 13+ messages in thread
From: Bhanuprakash Modem @ 2022-05-27  8:13 UTC (permalink / raw)
  To: igt-dev

Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
---
 lib/igt_kms.c | 24 +++++++++++++++++++++++-
 1 file changed, 23 insertions(+), 1 deletion(-)

diff --git a/lib/igt_kms.c b/lib/igt_kms.c
index aa964e11..74a26653 100644
--- a/lib/igt_kms.c
+++ b/lib/igt_kms.c
@@ -1465,6 +1465,7 @@ bool kmstest_get_connector_default_mode(int drm_fd, drmModeConnector *connector,
 	};
 	char *env;
 	int i, res = RESOLUTION_DEFAULT;
+	char conn_name[10] = {0};
 
 	if (!connector->count_modes) {
 		igt_warn("no modes for connector %d\n",
@@ -1472,6 +1473,14 @@ bool kmstest_get_connector_default_mode(int drm_fd, drmModeConnector *connector,
 		return false;
 	}
 
+	sprintf(conn_name, "%s-%d",
+			kmstest_connector_type_str(connector->connector_type),
+			connector->connector_type_id);
+
+	igt_info("[%s]: Available Modes:\n", conn_name);
+	for (i = 0; i < connector->count_modes; i++)
+		kmstest_dump_mode(&connector->modes[i]);
+
 	env = getenv("IGT_KMS_RESOLUTION");
 	if (env)
 		res = atoi(env);
@@ -1483,7 +1492,16 @@ bool kmstest_get_connector_default_mode(int drm_fd, drmModeConnector *connector,
 		      (res == RESOLUTION_HIGHEST) ?
 			sort_drm_modes_dsc : sort_drm_modes_asc);
 
+		igt_info("[%s] Modes after sorting:\n", conn_name);
+		for (i = 0; i < connector->count_modes; i++)
+			kmstest_dump_mode(&connector->modes[i]);
+
 		*mode = connector->modes[0];
+
+		igt_info("Taking %s resolution mode as default: ",
+			 (res == RESOLUTION_HIGHEST) ? "Highest" : "Lowest");
+		kmstest_dump_mode(mode);
+
 		return true;
 	}
 
@@ -1491,8 +1509,12 @@ bool kmstest_get_connector_default_mode(int drm_fd, drmModeConnector *connector,
 		if (i == 0 ||
 		    connector->modes[i].type & DRM_MODE_TYPE_PREFERRED) {
 			*mode = connector->modes[i];
-			if (mode->type & DRM_MODE_TYPE_PREFERRED)
+			if (mode->type & DRM_MODE_TYPE_PREFERRED) {
+				igt_info("Taking Preferred mode as default: ");
+				kmstest_dump_mode(mode);
+
 				break;
+			}
 		}
 	}
 
-- 
2.35.1

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

* [igt-dev] ✗ GitLab.Pipeline: warning for runner: Introduce --resolution to igt_runner
  2022-05-27  8:13 [igt-dev] [RFC i-g-t 0/4] runner: Introduce --resolution to igt_runner Bhanuprakash Modem
                   ` (3 preceding siblings ...)
  2022-05-27  8:13 ` [igt-dev] [RFC i-g-t 4/4] HAX: Add debug prints in choosing the default mode Bhanuprakash Modem
@ 2022-05-27  8:43 ` Patchwork
  2022-05-27  9:37 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
  2022-05-27 11:49 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
  6 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2022-05-27  8:43 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

== Series Details ==

Series: runner: Introduce --resolution to igt_runner
URL   : https://patchwork.freedesktop.org/series/104450/
State : warning

== Summary ==

Pipeline status: FAILED.

see https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/pipelines/597181 for the overview.

test:ninja-test-mips has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/23196619):
  Ok:                   22
  Expected Fail:         3
  Fail:                289
  Unexpected Pass:       0
  Skipped:               0
  Timeout:               0
  
  Full log written to /builds/gfx-ci/igt-ci-tags/build/meson-logs/testlog.txt
  section_end:1653640780:step_script
  section_start:1653640780:upload_artifacts_on_failure
  Uploading artifacts for failed job
  Uploading artifacts...
  build: found 1728 matching files and directories   
  Uploading artifacts as "archive" to coordinator... 201 Created  id=23196619 responseStatus=201 Created token=ZKzGquj8
  section_end:1653640789:upload_artifacts_on_failure
  section_start:1653640789:cleanup_file_variables
  Cleaning up project directory and file based variables
  section_end:1653640789:cleanup_file_variables
  ERROR: Job failed: exit code 1

== Logs ==

For more details see: https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/pipelines/597181

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

* [igt-dev] ✓ Fi.CI.BAT: success for runner: Introduce --resolution to igt_runner
  2022-05-27  8:13 [igt-dev] [RFC i-g-t 0/4] runner: Introduce --resolution to igt_runner Bhanuprakash Modem
                   ` (4 preceding siblings ...)
  2022-05-27  8:43 ` [igt-dev] ✗ GitLab.Pipeline: warning for runner: Introduce --resolution to igt_runner Patchwork
@ 2022-05-27  9:37 ` Patchwork
  2022-05-27 11:49 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
  6 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2022-05-27  9:37 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

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

== Series Details ==

Series: runner: Introduce --resolution to igt_runner
URL   : https://patchwork.freedesktop.org/series/104450/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_11705 -> IGTPW_7179
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

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

  Additional (6): fi-rkl-11600 fi-tgl-u2 fi-icl-u2 bat-rpls-1 bat-rpls-2 fi-bsw-nick 

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

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

### IGT changes ###

#### Suppressed ####

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

  * igt@i915_pm_rpm@module-reload:
    - {bat-rpls-1}:       NOTRUN -> [INCOMPLETE][1]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/bat-rpls-1/igt@i915_pm_rpm@module-reload.html

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_huc_copy@huc-copy:
    - fi-tgl-u2:          NOTRUN -> [SKIP][2] ([i915#2190])
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-tgl-u2/igt@gem_huc_copy@huc-copy.html
    - fi-rkl-11600:       NOTRUN -> [SKIP][3] ([i915#2190])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-rkl-11600/igt@gem_huc_copy@huc-copy.html
    - fi-icl-u2:          NOTRUN -> [SKIP][4] ([i915#2190])
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-icl-u2/igt@gem_huc_copy@huc-copy.html

  * igt@gem_lmem_swapping@basic:
    - fi-rkl-11600:       NOTRUN -> [SKIP][5] ([i915#4613]) +3 similar issues
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-rkl-11600/igt@gem_lmem_swapping@basic.html

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

  * igt@gem_tiled_pread_basic:
    - fi-rkl-11600:       NOTRUN -> [SKIP][7] ([i915#3282])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-rkl-11600/igt@gem_tiled_pread_basic.html

  * igt@i915_pm_backlight@basic-brightness:
    - fi-rkl-11600:       NOTRUN -> [SKIP][8] ([i915#3012])
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-rkl-11600/igt@i915_pm_backlight@basic-brightness.html

  * igt@i915_pm_rpm@module-reload:
    - fi-cfl-8109u:       [PASS][9] -> [DMESG-FAIL][10] ([i915#62]) +1 similar issue
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/fi-cfl-8109u/igt@i915_pm_rpm@module-reload.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-cfl-8109u/igt@i915_pm_rpm@module-reload.html
    - fi-icl-u2:          NOTRUN -> [FAIL][11] ([i915#3049])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-icl-u2/igt@i915_pm_rpm@module-reload.html

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

  * igt@i915_selftest@live@memory_region:
    - fi-cfl-8109u:       [PASS][14] -> [DMESG-WARN][15] ([i915#5904]) +12 similar issues
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/fi-cfl-8109u/igt@i915_selftest@live@memory_region.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-cfl-8109u/igt@i915_selftest@live@memory_region.html

  * igt@i915_selftest@live@objects:
    - fi-icl-u2:          NOTRUN -> [DMESG-WARN][16] ([i915#2867]) +7 similar issues
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-icl-u2/igt@i915_selftest@live@objects.html

  * igt@i915_suspend@basic-s2idle-without-i915:
    - bat-dg1-5:          NOTRUN -> [INCOMPLETE][17] ([i915#6011])
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/bat-dg1-5/igt@i915_suspend@basic-s2idle-without-i915.html
    - fi-bdw-gvtdvm:      NOTRUN -> [INCOMPLETE][18] ([i915#4817])
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-bdw-gvtdvm/igt@i915_suspend@basic-s2idle-without-i915.html

  * igt@i915_suspend@basic-s3-without-i915:
    - fi-rkl-11600:       NOTRUN -> [INCOMPLETE][19] ([i915#5982])
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-rkl-11600/igt@i915_suspend@basic-s3-without-i915.html
    - fi-icl-u2:          NOTRUN -> [SKIP][20] ([i915#5903])
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-icl-u2/igt@i915_suspend@basic-s3-without-i915.html

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

  * igt@kms_chamelium@dp-crc-fast:
    - fi-rkl-11600:       NOTRUN -> [SKIP][22] ([fdo#111827]) +7 similar issues
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-rkl-11600/igt@kms_chamelium@dp-crc-fast.html
    - fi-bsw-nick:        NOTRUN -> [SKIP][23] ([fdo#109271] / [fdo#111827]) +8 similar issues
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-bsw-nick/igt@kms_chamelium@dp-crc-fast.html

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

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

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

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
    - fi-icl-u2:          NOTRUN -> [SKIP][28] ([fdo#109278]) +2 similar issues
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-icl-u2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html

  * igt@kms_flip@basic-plain-flip@a-edp1:
    - bat-adlp-4:         [PASS][29] -> [DMESG-WARN][30] ([i915#3576]) +1 similar issue
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/bat-adlp-4/igt@kms_flip@basic-plain-flip@a-edp1.html
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/bat-adlp-4/igt@kms_flip@basic-plain-flip@a-edp1.html

  * igt@kms_force_connector_basic@force-load-detect:
    - fi-tgl-u2:          NOTRUN -> [SKIP][31] ([fdo#109285])
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-tgl-u2/igt@kms_force_connector_basic@force-load-detect.html
    - fi-rkl-11600:       NOTRUN -> [SKIP][32] ([fdo#109285] / [i915#4098])
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-rkl-11600/igt@kms_force_connector_basic@force-load-detect.html
    - fi-icl-u2:          NOTRUN -> [SKIP][33] ([fdo#109285])
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-icl-u2/igt@kms_force_connector_basic@force-load-detect.html

  * igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-b:
    - fi-cfl-8109u:       [PASS][34] -> [DMESG-WARN][35] ([i915#62]) +13 similar issues
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/fi-cfl-8109u/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-b.html
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-cfl-8109u/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-b.html

  * igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d:
    - fi-rkl-11600:       NOTRUN -> [SKIP][36] ([i915#4070] / [i915#533])
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-rkl-11600/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-pipe-d.html

  * igt@kms_psr@primary_mmap_gtt:
    - fi-rkl-11600:       NOTRUN -> [SKIP][37] ([i915#1072]) +3 similar issues
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-rkl-11600/igt@kms_psr@primary_mmap_gtt.html

  * igt@kms_setmode@basic-clone-single-crtc:
    - fi-icl-u2:          NOTRUN -> [SKIP][38] ([i915#3555])
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-icl-u2/igt@kms_setmode@basic-clone-single-crtc.html
    - fi-tgl-u2:          NOTRUN -> [SKIP][39] ([i915#3555])
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-tgl-u2/igt@kms_setmode@basic-clone-single-crtc.html
    - fi-rkl-11600:       NOTRUN -> [SKIP][40] ([i915#3555] / [i915#4098])
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-rkl-11600/igt@kms_setmode@basic-clone-single-crtc.html

  * igt@prime_vgem@basic-fence-flip:
    - fi-bsw-nick:        NOTRUN -> [SKIP][41] ([fdo#109271]) +48 similar issues
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-bsw-nick/igt@prime_vgem@basic-fence-flip.html

  * igt@prime_vgem@basic-userptr:
    - fi-rkl-11600:       NOTRUN -> [SKIP][42] ([fdo#109295] / [i915#3301] / [i915#3708])
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-rkl-11600/igt@prime_vgem@basic-userptr.html
    - fi-icl-u2:          NOTRUN -> [SKIP][43] ([fdo#109295] / [i915#3301])
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-icl-u2/igt@prime_vgem@basic-userptr.html
    - fi-tgl-u2:          NOTRUN -> [SKIP][44] ([fdo#109295] / [i915#3301])
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-tgl-u2/igt@prime_vgem@basic-userptr.html

  * igt@prime_vgem@basic-write:
    - fi-rkl-11600:       NOTRUN -> [SKIP][45] ([fdo#109295] / [i915#3291] / [i915#3708]) +2 similar issues
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-rkl-11600/igt@prime_vgem@basic-write.html

  
#### Possible fixes ####

  * igt@i915_selftest@live@execlists:
    - fi-bdw-gvtdvm:      [INCOMPLETE][46] ([i915#2940] / [i915#5801]) -> [PASS][47]
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/fi-bdw-gvtdvm/igt@i915_selftest@live@execlists.html
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/fi-bdw-gvtdvm/igt@i915_selftest@live@execlists.html

  * igt@i915_selftest@live@gt_engines:
    - bat-dg1-5:          [INCOMPLETE][48] ([i915#4418]) -> [PASS][49]
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/bat-dg1-5/igt@i915_selftest@live@gt_engines.html
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/bat-dg1-5/igt@i915_selftest@live@gt_engines.html

  * igt@i915_selftest@live@requests:
    - {bat-dg2-9}:        [DMESG-WARN][50] ([i915#5763]) -> [PASS][51] +8 similar issues
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/bat-dg2-9/igt@i915_selftest@live@requests.html
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/bat-dg2-9/igt@i915_selftest@live@requests.html

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

  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
  [fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
  [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
  [i915#2867]: https://gitlab.freedesktop.org/drm/intel/issues/2867
  [i915#2940]: https://gitlab.freedesktop.org/drm/intel/issues/2940
  [i915#3012]: https://gitlab.freedesktop.org/drm/intel/issues/3012
  [i915#3049]: https://gitlab.freedesktop.org/drm/intel/issues/3049
  [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
  [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#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
  [i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402
  [i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
  [i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#4418]: https://gitlab.freedesktop.org/drm/intel/issues/4418
  [i915#4494]: https://gitlab.freedesktop.org/drm/intel/issues/4494
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4817]: https://gitlab.freedesktop.org/drm/intel/issues/4817
  [i915#4957]: https://gitlab.freedesktop.org/drm/intel/issues/4957
  [i915#5122]: https://gitlab.freedesktop.org/drm/intel/issues/5122
  [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
  [i915#5763]: https://gitlab.freedesktop.org/drm/intel/issues/5763
  [i915#5801]: https://gitlab.freedesktop.org/drm/intel/issues/5801
  [i915#5874]: https://gitlab.freedesktop.org/drm/intel/issues/5874
  [i915#5903]: https://gitlab.freedesktop.org/drm/intel/issues/5903
  [i915#5904]: https://gitlab.freedesktop.org/drm/intel/issues/5904
  [i915#5982]: https://gitlab.freedesktop.org/drm/intel/issues/5982
  [i915#6011]: https://gitlab.freedesktop.org/drm/intel/issues/6011
  [i915#62]: https://gitlab.freedesktop.org/drm/intel/issues/62


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

  * CI: CI-20190529 -> None
  * IGT: IGT_6495 -> IGTPW_7179

  CI-20190529: 20190529
  CI_DRM_11705: 18a2e6dbca526f996da04741cf5ef169e810a50e @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_7179: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/index.html
  IGT_6495: 7e2033da45f024a0348e6034fcb7f70a91b80ee9 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

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

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

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

* [igt-dev] ✓ Fi.CI.IGT: success for runner: Introduce --resolution to igt_runner
  2022-05-27  8:13 [igt-dev] [RFC i-g-t 0/4] runner: Introduce --resolution to igt_runner Bhanuprakash Modem
                   ` (5 preceding siblings ...)
  2022-05-27  9:37 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
@ 2022-05-27 11:49 ` Patchwork
  6 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2022-05-27 11:49 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

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

== Series Details ==

Series: runner: Introduce --resolution to igt_runner
URL   : https://patchwork.freedesktop.org/series/104450/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_11705_full -> IGTPW_7179_full
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

Participating hosts (13 -> 8)
------------------------------

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

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

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

### IGT changes ###

#### Suppressed ####

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

  * {igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5@pipe-b-edp-1}:
    - shard-iclb:         [PASS][1] -> [SKIP][2] +2 similar issues
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-iclb3/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5@pipe-b-edp-1.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb2/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5@pipe-b-edp-1.html

  
New tests
---------

  New tests have been introduced between CI_DRM_11705_full and IGTPW_7179_full:

### New IGT tests (108) ###

  * igt@gem_exec_balancer@hog:
    - Statuses : 5 pass(s) 1 skip(s)
    - Exec time: [0.0, 4.45] s

  * igt@gem_exec_balancer@sliced:
    - Statuses : 6 pass(s) 1 skip(s)
    - Exec time: [0.0, 4.66] s

  * igt@gem_exec_endless@dispatch:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@gem_exec_endless@dispatch@bcs0:
    - Statuses : 1 pass(s) 1 skip(s)
    - Exec time: [0.00] s

  * igt@gem_exec_endless@dispatch@rcs0:
    - Statuses : 2 pass(s)
    - Exec time: [0.00, 0.01] s

  * igt@gem_exec_endless@dispatch@vcs0:
    - Statuses : 2 pass(s)
    - Exec time: [0.00, 0.01] s

  * igt@gem_exec_endless@dispatch@vecs0:
    - Statuses : 2 pass(s)
    - Exec time: [0.00, 0.01] s

  * igt@gem_exec_reloc@basic-concurrent0:
    - Statuses : 7 pass(s)
    - Exec time: [5.39, 5.45] s

  * igt@gem_exec_reloc@basic-concurrent16:
    - Statuses :
    - Exec time: [None] s

  * igt@gem_exec_schedule@preempt-engines:
    - Statuses :
    - Exec time: [None] s

  * igt@gem_exec_schedule@submit-early-slice:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@gem_exec_schedule@submit-early-slice@bcs0:
    - Statuses : 5 pass(s)
    - Exec time: [0.03, 0.08] s

  * igt@gem_exec_schedule@submit-early-slice@rcs0:
    - Statuses : 5 pass(s)
    - Exec time: [0.03, 0.07] s

  * igt@gem_exec_schedule@submit-early-slice@vcs0:
    - Statuses : 5 pass(s)
    - Exec time: [0.03, 0.07] s

  * igt@gem_exec_schedule@submit-early-slice@vcs1:
    - Statuses : 3 pass(s)
    - Exec time: [0.03, 0.04] s

  * igt@gem_exec_schedule@submit-early-slice@vecs0:
    - Statuses : 5 pass(s)
    - Exec time: [0.03, 0.07] s

  * igt@gem_exec_schedule@submit-golden-slice:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@gem_exec_schedule@submit-golden-slice@bcs0:
    - Statuses : 6 pass(s)
    - Exec time: [0.02, 0.07] s

  * igt@gem_exec_schedule@submit-golden-slice@rcs0:
    - Statuses : 6 pass(s)
    - Exec time: [0.03, 0.08] s

  * igt@gem_exec_schedule@submit-golden-slice@vcs0:
    - Statuses : 6 pass(s)
    - Exec time: [0.02, 0.07] s

  * igt@gem_exec_schedule@submit-golden-slice@vcs1:
    - Statuses : 3 pass(s)
    - Exec time: [0.03, 0.04] s

  * igt@gem_exec_schedule@submit-golden-slice@vecs0:
    - Statuses : 6 pass(s)
    - Exec time: [0.02, 0.06] s

  * igt@gem_exec_schedule@submit-late-slice:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@gem_exec_schedule@submit-late-slice@bcs0:
    - Statuses : 5 pass(s)
    - Exec time: [0.03, 0.07] s

  * igt@gem_exec_schedule@submit-late-slice@rcs0:
    - Statuses : 5 pass(s)
    - Exec time: [0.03, 0.07] s

  * igt@gem_exec_schedule@submit-late-slice@vcs0:
    - Statuses : 5 pass(s)
    - Exec time: [0.03, 0.07] s

  * igt@gem_exec_schedule@submit-late-slice@vcs1:
    - Statuses : 3 pass(s)
    - Exec time: [0.03, 0.05] s

  * igt@gem_exec_schedule@submit-late-slice@vecs0:
    - Statuses : 5 pass(s)
    - Exec time: [0.03, 0.07] s

  * igt@i915_pciid:
    - Statuses : 7 pass(s)
    - Exec time: [0.04, 0.12] s

  * igt@i915_pm_lpsp@kms-lpsp:
    - Statuses :
    - Exec time: [None] s

  * igt@i915_pm_rc6_residency@rc6-fence:
    - Statuses : 3 pass(s)
    - Exec time: [12.21, 15.26] s

  * igt@i915_query@engine-info:
    - Statuses : 7 pass(s)
    - Exec time: [0.00, 0.01] s

  * igt@i915_query@engine-info-invalid:
    - Statuses : 3 pass(s)
    - Exec time: [0.0] s

  * igt@kms_big_fb@linear-16bpp-rotate-0:
    - Statuses : 7 pass(s)
    - Exec time: [1.29, 4.98] s

  * igt@kms_big_fb@linear-16bpp-rotate-180:
    - Statuses : 7 pass(s)
    - Exec time: [1.29, 5.02] s

  * igt@kms_big_fb@linear-16bpp-rotate-270:
    - Statuses : 7 skip(s)
    - Exec time: [0.02, 0.28] s

  * igt@kms_big_fb@linear-16bpp-rotate-90:
    - Statuses :
    - Exec time: [None] s

  * igt@kms_big_fb@linear-32bpp-rotate-0:
    - Statuses : 3 pass(s)
    - Exec time: [1.42, 6.39] s

  * igt@kms_big_fb@linear-32bpp-rotate-180:
    - Statuses : 3 pass(s)
    - Exec time: [1.61, 6.85] s

  * igt@kms_big_fb@linear-32bpp-rotate-270:
    - Statuses : 3 skip(s)
    - Exec time: [0.01, 0.28] s

  * igt@kms_big_fb@linear-32bpp-rotate-90:
    - Statuses : 3 skip(s)
    - Exec time: [0.03, 0.26] s

  * igt@kms_big_fb@linear-64bpp-rotate-0:
    - Statuses : 7 pass(s)
    - Exec time: [1.67, 9.28] s

  * igt@kms_big_fb@linear-64bpp-rotate-180:
    - Statuses : 4 pass(s)
    - Exec time: [1.67, 9.15] s

  * igt@kms_big_fb@linear-64bpp-rotate-270:
    - Statuses : 3 skip(s)
    - Exec time: [0.02, 0.27] s

  * igt@kms_big_fb@linear-64bpp-rotate-90:
    - Statuses : 7 skip(s)
    - Exec time: [0.01, 0.25] s

  * igt@kms_big_fb@linear-8bpp-rotate-0:
    - Statuses : 7 pass(s)
    - Exec time: [1.16, 4.66] s

  * igt@kms_big_fb@linear-8bpp-rotate-180:
    - Statuses : 1 dmesg-warn(s) 6 pass(s)
    - Exec time: [1.13, 4.58] s

  * igt@kms_big_fb@linear-8bpp-rotate-270:
    - Statuses : 6 skip(s)
    - Exec time: [0.02, 0.25] s

  * igt@kms_big_fb@linear-8bpp-rotate-90:
    - Statuses :
    - Exec time: [None] s

  * igt@kms_big_fb@linear-addfb:
    - Statuses : 6 pass(s)
    - Exec time: [0.0, 0.00] s

  * igt@kms_big_fb@x-tiled-16bpp-rotate-0:
    - Statuses : 7 pass(s)
    - Exec time: [1.13, 4.07] s

  * igt@kms_big_fb@x-tiled-16bpp-rotate-180:
    - Statuses : 6 pass(s)
    - Exec time: [1.20, 4.40] s

  * igt@kms_big_fb@x-tiled-16bpp-rotate-270:
    - Statuses : 6 skip(s)
    - Exec time: [0.01, 0.24] s

  * igt@kms_big_fb@x-tiled-16bpp-rotate-90:
    - Statuses : 7 skip(s)
    - Exec time: [0.01, 0.24] s

  * igt@kms_big_fb@x-tiled-32bpp-rotate-0:
    - Statuses :
    - Exec time: [None] s

  * igt@kms_big_fb@x-tiled-32bpp-rotate-180:
    - Statuses :
    - Exec time: [None] s

  * igt@kms_big_fb@x-tiled-32bpp-rotate-270:
    - Statuses : 7 skip(s)
    - Exec time: [0.02, 0.24] s

  * igt@kms_big_fb@x-tiled-32bpp-rotate-90:
    - Statuses : 6 skip(s)
    - Exec time: [0.01, 0.25] s

  * igt@kms_big_fb@x-tiled-64bpp-rotate-0:
    - Statuses : 7 pass(s)
    - Exec time: [1.69, 8.15] s

  * igt@kms_big_fb@x-tiled-64bpp-rotate-180:
    - Statuses : 7 pass(s)
    - Exec time: [1.63, 8.19] s

  * igt@kms_big_fb@x-tiled-64bpp-rotate-270:
    - Statuses : 7 skip(s)
    - Exec time: [0.02, 0.27] s

  * igt@kms_big_fb@x-tiled-64bpp-rotate-90:
    - Statuses : 6 skip(s)
    - Exec time: [0.04, 0.26] s

  * igt@kms_big_fb@x-tiled-8bpp-rotate-0:
    - Statuses : 6 pass(s)
    - Exec time: [1.01, 3.42] s

  * igt@kms_big_fb@x-tiled-8bpp-rotate-180:
    - Statuses : 3 pass(s)
    - Exec time: [1.14, 2.83] s

  * igt@kms_big_fb@x-tiled-8bpp-rotate-270:
    - Statuses : 7 skip(s)
    - Exec time: [0.03, 0.27] s

  * igt@kms_big_fb@x-tiled-8bpp-rotate-90:
    - Statuses : 7 skip(s)
    - Exec time: [0.02, 0.29] s

  * igt@kms_big_fb@x-tiled-addfb:
    - Statuses : 7 pass(s)
    - Exec time: [0.0, 0.00] s

  * igt@kms_big_fb@x-tiled-addfb-size-offset-overflow:
    - Statuses : 4 pass(s) 2 skip(s)
    - Exec time: [0.0] s

  * igt@kms_big_fb@x-tiled-addfb-size-overflow:
    - Statuses : 6 pass(s) 1 skip(s)
    - Exec time: [0.0, 0.00] s

  * igt@kms_big_fb@y-tiled-16bpp-rotate-0:
    - Statuses : 1 dmesg-warn(s) 5 pass(s) 1 skip(s)
    - Exec time: [0.0, 4.09] s

  * igt@kms_big_fb@y-tiled-16bpp-rotate-180:
    - Statuses : 6 pass(s) 1 skip(s)
    - Exec time: [0.0, 4.16] s

  * igt@kms_big_fb@y-tiled-16bpp-rotate-270:
    - Statuses : 3 pass(s) 4 skip(s)
    - Exec time: [0.0, 1.94] s

  * igt@kms_big_fb@y-tiled-16bpp-rotate-90:
    - Statuses : 3 skip(s)
    - Exec time: [0.0, 0.25] s

  * igt@kms_big_fb@y-tiled-32bpp-rotate-0:
    - Statuses : 5 pass(s) 1 skip(s)
    - Exec time: [0.0, 5.40] s

  * igt@kms_big_fb@y-tiled-32bpp-rotate-180:
    - Statuses : 6 pass(s) 1 skip(s)
    - Exec time: [0.0, 5.45] s

  * igt@kms_big_fb@y-tiled-32bpp-rotate-270:
    - Statuses : 6 pass(s) 1 skip(s)
    - Exec time: [0.0, 5.50] s

  * igt@kms_big_fb@y-tiled-32bpp-rotate-90:
    - Statuses :
    - Exec time: [None] s

  * igt@kms_big_fb@y-tiled-64bpp-rotate-0:
    - Statuses : 6 pass(s) 1 skip(s)
    - Exec time: [0.00, 8.82] s

  * igt@kms_big_fb@y-tiled-64bpp-rotate-180:
    - Statuses :
    - Exec time: [None] s

  * igt@kms_big_fb@y-tiled-64bpp-rotate-270:
    - Statuses : 3 skip(s)
    - Exec time: [0.0, 0.28] s

  * igt@kms_big_fb@y-tiled-64bpp-rotate-90:
    - Statuses : 6 skip(s)
    - Exec time: [0.0, 0.29] s

  * igt@kms_big_fb@y-tiled-8bpp-rotate-0:
    - Statuses : 6 pass(s) 1 skip(s)
    - Exec time: [0.0, 3.44] s

  * igt@kms_big_fb@y-tiled-8bpp-rotate-180:
    - Statuses : 5 pass(s) 1 skip(s)
    - Exec time: [0.0, 3.66] s

  * igt@kms_big_fb@y-tiled-8bpp-rotate-270:
    - Statuses : 7 skip(s)
    - Exec time: [0.0, 0.30] s

  * igt@kms_big_fb@y-tiled-8bpp-rotate-90:
    - Statuses : 6 skip(s)
    - Exec time: [0.0, 0.26] s

  * igt@kms_big_fb@y-tiled-addfb:
    - Statuses : 6 pass(s) 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_big_fb@y-tiled-addfb-size-offset-overflow:
    - Statuses : 4 pass(s) 2 skip(s)
    - Exec time: [0.0] s

  * igt@kms_big_fb@y-tiled-addfb-size-overflow:
    - Statuses : 6 pass(s) 1 skip(s)
    - Exec time: [0.0, 0.00] s

  * igt@kms_big_fb@yf-tiled-16bpp-rotate-0:
    - Statuses : 3 pass(s) 1 skip(s)
    - Exec time: [0.0, 4.18] s

  * igt@kms_big_fb@yf-tiled-16bpp-rotate-180:
    - Statuses : 2 pass(s) 1 skip(s)
    - Exec time: [0.0, 4.20] s

  * igt@kms_big_fb@yf-tiled-16bpp-rotate-270:
    - Statuses : 1 pass(s) 5 skip(s)
    - Exec time: [0.0, 1.93] s

  * igt@kms_big_fb@yf-tiled-16bpp-rotate-90:
    - Statuses : 1 pass(s) 6 skip(s)
    - Exec time: [0.0, 1.77] s

  * igt@kms_big_fb@yf-tiled-32bpp-rotate-0:
    - Statuses :
    - Exec time: [None] s

  * igt@kms_big_fb@yf-tiled-32bpp-rotate-180:
    - Statuses :
    - Exec time: [None] s

  * igt@kms_big_fb@yf-tiled-32bpp-rotate-270:
    - Statuses : 4 pass(s) 3 skip(s)
    - Exec time: [0.0, 5.44] s

  * igt@kms_big_fb@yf-tiled-32bpp-rotate-90:
    - Statuses : 4 pass(s) 3 skip(s)
    - Exec time: [0.0, 5.66] s

  * igt@kms_big_fb@yf-tiled-64bpp-rotate-0:
    - Statuses : 7 skip(s)
    - Exec time: [0.0] s

  * igt@kms_big_fb@yf-tiled-64bpp-rotate-180:
    - Statuses : 6 skip(s)
    - Exec time: [0.0] s

  * igt@kms_big_fb@yf-tiled-64bpp-rotate-270:
    - Statuses : 6 skip(s)
    - Exec time: [0.0, 0.00] s

  * igt@kms_big_fb@yf-tiled-64bpp-rotate-90:
    - Statuses : 6 skip(s)
    - Exec time: [0.0] s

  * igt@kms_big_fb@yf-tiled-8bpp-rotate-0:
    - Statuses : 4 skip(s)
    - Exec time: [0.0] s

  * igt@kms_big_fb@yf-tiled-8bpp-rotate-180:
    - Statuses :
    - Exec time: [None] s

  * igt@kms_big_fb@yf-tiled-8bpp-rotate-270:
    - Statuses : 3 skip(s)
    - Exec time: [0.0] s

  * igt@kms_big_fb@yf-tiled-8bpp-rotate-90:
    - Statuses : 6 skip(s)
    - Exec time: [0.0] s

  * igt@kms_big_fb@yf-tiled-addfb:
    - Statuses : 4 pass(s) 3 skip(s)
    - Exec time: [0.0, 0.00] s

  * igt@kms_big_fb@yf-tiled-addfb-size-offset-overflow:
    - Statuses : 2 pass(s) 4 skip(s)
    - Exec time: [0.0] s

  * igt@kms_big_fb@yf-tiled-addfb-size-overflow:
    - Statuses : 3 pass(s) 2 skip(s)
    - Exec time: [0.0, 0.00] s

  * igt@kms_chamelium@hdmi-audio:
    - Statuses : 3 skip(s)
    - Exec time: [0.0] s

  

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_ccs@block-copy-compressed:
    - shard-tglb:         NOTRUN -> [SKIP][3] ([i915#3555] / [i915#5325]) +1 similar issue
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb8/igt@gem_ccs@block-copy-compressed.html
    - shard-iclb:         NOTRUN -> [SKIP][4] ([i915#5327])
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb3/igt@gem_ccs@block-copy-compressed.html

  * igt@gem_ccs@ctrl-surf-copy-new-ctx:
    - shard-glk:          NOTRUN -> [SKIP][5] ([fdo#109271]) +86 similar issues
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-glk2/igt@gem_ccs@ctrl-surf-copy-new-ctx.html

  * igt@gem_ctx_sseu@engines:
    - shard-tglb:         NOTRUN -> [SKIP][6] ([i915#280])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb3/igt@gem_ctx_sseu@engines.html

  * igt@gem_exec_balancer@parallel-balancer:
    - shard-iclb:         [PASS][7] -> [SKIP][8] ([i915#4525])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-iclb4/igt@gem_exec_balancer@parallel-balancer.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb3/igt@gem_exec_balancer@parallel-balancer.html

  * igt@gem_exec_fair@basic-deadline:
    - shard-kbl:          [PASS][9] -> [FAIL][10] ([i915#2846])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-kbl6/igt@gem_exec_fair@basic-deadline.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl7/igt@gem_exec_fair@basic-deadline.html

  * igt@gem_exec_fair@basic-none@vcs0:
    - shard-glk:          [PASS][11] -> [FAIL][12] ([i915#2842])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-glk6/igt@gem_exec_fair@basic-none@vcs0.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-glk2/igt@gem_exec_fair@basic-none@vcs0.html

  * igt@gem_exec_fair@basic-pace-share@rcs0:
    - shard-tglb:         NOTRUN -> [FAIL][13] ([i915#2842]) +1 similar issue
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb8/igt@gem_exec_fair@basic-pace-share@rcs0.html

  * igt@gem_exec_flush@basic-batch-kernel-default-wb:
    - shard-snb:          [PASS][14] -> [SKIP][15] ([fdo#109271]) +3 similar issues
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-snb7/igt@gem_exec_flush@basic-batch-kernel-default-wb.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-snb6/igt@gem_exec_flush@basic-batch-kernel-default-wb.html

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

  * igt@gem_exec_whisper@basic-queues-priority-all:
    - shard-glk:          [PASS][17] -> [DMESG-WARN][18] ([i915#118])
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-glk5/igt@gem_exec_whisper@basic-queues-priority-all.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-glk3/igt@gem_exec_whisper@basic-queues-priority-all.html

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

  * igt@gem_lmem_swapping@heavy-verify-random:
    - shard-kbl:          NOTRUN -> [SKIP][20] ([fdo#109271] / [i915#4613]) +4 similar issues
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl7/igt@gem_lmem_swapping@heavy-verify-random.html
    - shard-tglb:         NOTRUN -> [SKIP][21] ([i915#4613]) +4 similar issues
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb3/igt@gem_lmem_swapping@heavy-verify-random.html

  * igt@gem_lmem_swapping@verify:
    - shard-iclb:         NOTRUN -> [SKIP][22] ([i915#4613])
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb7/igt@gem_lmem_swapping@verify.html
    - shard-glk:          NOTRUN -> [SKIP][23] ([fdo#109271] / [i915#4613])
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-glk9/igt@gem_lmem_swapping@verify.html

  * igt@gem_media_vme:
    - shard-tglb:         NOTRUN -> [SKIP][24] ([i915#284])
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb8/igt@gem_media_vme.html

  * igt@gem_pxp@regular-baseline-src-copy-readible:
    - shard-tglb:         NOTRUN -> [SKIP][25] ([i915#4270]) +3 similar issues
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb3/igt@gem_pxp@regular-baseline-src-copy-readible.html
    - shard-iclb:         NOTRUN -> [SKIP][26] ([i915#4270]) +1 similar issue
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb6/igt@gem_pxp@regular-baseline-src-copy-readible.html

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

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

  * igt@gem_userptr_blits@input-checking:
    - shard-glk:          NOTRUN -> [DMESG-WARN][29] ([i915#4991])
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-glk5/igt@gem_userptr_blits@input-checking.html

  * igt@gem_userptr_blits@readonly-unsync:
    - shard-tglb:         NOTRUN -> [SKIP][30] ([i915#3297]) +1 similar issue
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb1/igt@gem_userptr_blits@readonly-unsync.html

  * igt@gem_userptr_blits@unsync-unmap:
    - shard-iclb:         NOTRUN -> [SKIP][31] ([i915#3297])
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb7/igt@gem_userptr_blits@unsync-unmap.html

  * igt@gem_userptr_blits@vma-merge:
    - shard-glk:          NOTRUN -> [FAIL][32] ([i915#3318])
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-glk5/igt@gem_userptr_blits@vma-merge.html
    - shard-kbl:          NOTRUN -> [FAIL][33] ([i915#3318])
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl4/igt@gem_userptr_blits@vma-merge.html

  * igt@gem_workarounds@suspend-resume-fd:
    - shard-kbl:          [PASS][34] -> [DMESG-WARN][35] ([i915#180]) +1 similar issue
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-kbl4/igt@gem_workarounds@suspend-resume-fd.html
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl4/igt@gem_workarounds@suspend-resume-fd.html

  * igt@gen7_exec_parse@cmd-crossing-page:
    - shard-tglb:         NOTRUN -> [SKIP][36] ([fdo#109289]) +4 similar issues
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb1/igt@gen7_exec_parse@cmd-crossing-page.html

  * igt@gen9_exec_parse@allowed-single:
    - shard-apl:          [PASS][37] -> [DMESG-WARN][38] ([i915#5566] / [i915#716])
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-apl6/igt@gen9_exec_parse@allowed-single.html
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl3/igt@gen9_exec_parse@allowed-single.html

  * igt@gen9_exec_parse@bb-chained:
    - shard-iclb:         NOTRUN -> [SKIP][39] ([i915#2856]) +1 similar issue
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb6/igt@gen9_exec_parse@bb-chained.html

  * igt@gen9_exec_parse@bb-start-out:
    - shard-tglb:         NOTRUN -> [SKIP][40] ([i915#2527] / [i915#2856]) +2 similar issues
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb3/igt@gen9_exec_parse@bb-start-out.html

  * igt@i915_pm_lpsp@screens-disabled:
    - shard-tglb:         NOTRUN -> [SKIP][41] ([i915#1902])
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb8/igt@i915_pm_lpsp@screens-disabled.html
    - shard-iclb:         NOTRUN -> [SKIP][42] ([i915#1902])
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb3/igt@i915_pm_lpsp@screens-disabled.html

  * igt@i915_pm_rpm@dpms-mode-unset-non-lpsp:
    - shard-tglb:         NOTRUN -> [SKIP][43] ([fdo#111644] / [i915#1397] / [i915#2411]) +2 similar issues
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb7/igt@i915_pm_rpm@dpms-mode-unset-non-lpsp.html

  * igt@i915_pm_rpm@dpms-non-lpsp:
    - shard-iclb:         NOTRUN -> [SKIP][44] ([fdo#110892]) +1 similar issue
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb7/igt@i915_pm_rpm@dpms-non-lpsp.html

  * igt@i915_pm_rpm@gem-execbuf-stress-pc8:
    - shard-iclb:         NOTRUN -> [SKIP][45] ([fdo#109293] / [fdo#109506])
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb1/igt@i915_pm_rpm@gem-execbuf-stress-pc8.html

  * igt@i915_query@query-topology-known-pci-ids:
    - shard-tglb:         NOTRUN -> [SKIP][46] ([fdo#109303])
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb7/igt@i915_query@query-topology-known-pci-ids.html
    - shard-iclb:         NOTRUN -> [SKIP][47] ([fdo#109303])
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb5/igt@i915_query@query-topology-known-pci-ids.html

  * igt@i915_selftest@live@gt_lrc:
    - shard-tglb:         NOTRUN -> [DMESG-FAIL][48] ([i915#2373])
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb6/igt@i915_selftest@live@gt_lrc.html

  * igt@i915_selftest@live@gt_pm:
    - shard-tglb:         NOTRUN -> [DMESG-FAIL][49] ([i915#1759])
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb6/igt@i915_selftest@live@gt_pm.html

  * igt@kms_big_fb@4-tiled-8bpp-rotate-180:
    - shard-iclb:         NOTRUN -> [SKIP][50] ([i915#5286]) +3 similar issues
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb4/igt@kms_big_fb@4-tiled-8bpp-rotate-180.html

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

  * igt@kms_big_fb@linear-8bpp-rotate-180 (NEW):
    - shard-apl:          [PASS][52] -> [DMESG-WARN][53] ([i915#62]) +21 similar issues
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-apl6/igt@kms_big_fb@linear-8bpp-rotate-180.html
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl8/igt@kms_big_fb@linear-8bpp-rotate-180.html

  * igt@kms_big_fb@x-tiled-32bpp-rotate-270 (NEW):
    - {shard-tglu}:       NOTRUN -> [SKIP][54] ([fdo#111614]) +4 similar issues
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglu-6/igt@kms_big_fb@x-tiled-32bpp-rotate-270.html
    - shard-iclb:         NOTRUN -> [SKIP][55] ([fdo#110725] / [fdo#111614]) +1 similar issue
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb3/igt@kms_big_fb@x-tiled-32bpp-rotate-270.html

  * igt@kms_big_fb@x-tiled-32bpp-rotate-90 (NEW):
    - shard-tglb:         NOTRUN -> [SKIP][56] ([fdo#111614]) +2 similar issues
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb2/igt@kms_big_fb@x-tiled-32bpp-rotate-90.html

  * igt@kms_big_fb@yf-tiled-32bpp-rotate-270 (NEW):
    - shard-tglb:         NOTRUN -> [SKIP][57] ([fdo#111615]) +7 similar issues
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb6/igt@kms_big_fb@yf-tiled-32bpp-rotate-270.html

  * igt@kms_big_fb@yf-tiled-64bpp-rotate-0 (NEW):
    - {shard-tglu}:       NOTRUN -> [SKIP][58] ([fdo#111615]) +1 similar issue
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglu-6/igt@kms_big_fb@yf-tiled-64bpp-rotate-0.html

  * igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip:
    - shard-iclb:         NOTRUN -> [SKIP][59] ([fdo#110723])
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb7/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip.html

  * igt@kms_ccs@pipe-a-random-ccs-data-4_tiled_dg2_mc_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][60] ([i915#6095]) +3 similar issues
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb8/igt@kms_ccs@pipe-a-random-ccs-data-4_tiled_dg2_mc_ccs.html

  * igt@kms_ccs@pipe-a-random-ccs-data-y_tiled_gen12_mc_ccs:
    - shard-kbl:          NOTRUN -> [SKIP][61] ([fdo#109271] / [i915#3886]) +9 similar issues
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl1/igt@kms_ccs@pipe-a-random-ccs-data-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-b-crc-primary-rotation-180-y_tiled_gen12_rc_ccs_cc:
    - shard-glk:          NOTRUN -> [SKIP][62] ([fdo#109271] / [i915#3886]) +7 similar issues
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-glk2/igt@kms_ccs@pipe-b-crc-primary-rotation-180-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_mc_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][63] ([i915#3689] / [i915#3886]) +4 similar issues
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb7/igt@kms_ccs@pipe-b-crc-sprite-planes-basic-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-c-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc:
    - shard-iclb:         NOTRUN -> [SKIP][64] ([fdo#109278] / [i915#3886]) +6 similar issues
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb8/igt@kms_ccs@pipe-c-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc.html
    - shard-apl:          NOTRUN -> [SKIP][65] ([fdo#109271] / [i915#3886]) +4 similar issues
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl4/igt@kms_ccs@pipe-c-ccs-on-another-bo-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-c-random-ccs-data-y_tiled_gen12_rc_ccs_cc:
    - shard-snb:          NOTRUN -> [SKIP][66] ([fdo#109271]) +90 similar issues
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-snb7/igt@kms_ccs@pipe-c-random-ccs-data-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-d-bad-rotation-90-yf_tiled_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][67] ([fdo#111615] / [i915#3689]) +9 similar issues
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb2/igt@kms_ccs@pipe-d-bad-rotation-90-yf_tiled_ccs.html

  * igt@kms_ccs@pipe-d-random-ccs-data-y_tiled_gen12_mc_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][68] ([i915#3689]) +10 similar issues
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb3/igt@kms_ccs@pipe-d-random-ccs-data-y_tiled_gen12_mc_ccs.html

  * igt@kms_chamelium@dp-hpd-with-enabled-mode:
    - shard-iclb:         NOTRUN -> [SKIP][69] ([fdo#109284] / [fdo#111827]) +7 similar issues
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb4/igt@kms_chamelium@dp-hpd-with-enabled-mode.html

  * igt@kms_chamelium@dp-mode-timings:
    - shard-apl:          NOTRUN -> [SKIP][70] ([fdo#109271] / [fdo#111827]) +4 similar issues
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl7/igt@kms_chamelium@dp-mode-timings.html
    - shard-glk:          NOTRUN -> [SKIP][71] ([fdo#109271] / [fdo#111827]) +4 similar issues
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-glk9/igt@kms_chamelium@dp-mode-timings.html
    - shard-snb:          NOTRUN -> [SKIP][72] ([fdo#109271] / [fdo#111827]) +1 similar issue
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-snb5/igt@kms_chamelium@dp-mode-timings.html

  * igt@kms_chamelium@hdmi-edid-read:
    - shard-tglb:         NOTRUN -> [SKIP][73] ([fdo#109284] / [fdo#111827]) +13 similar issues
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb5/igt@kms_chamelium@hdmi-edid-read.html

  * igt@kms_chamelium@vga-hpd-for-each-pipe:
    - shard-kbl:          NOTRUN -> [SKIP][74] ([fdo#109271] / [fdo#111827]) +18 similar issues
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl1/igt@kms_chamelium@vga-hpd-for-each-pipe.html

  * igt@kms_color@pipe-d-ctm-0-25:
    - shard-iclb:         NOTRUN -> [SKIP][75] ([fdo#109278] / [i915#1149]) +1 similar issue
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb5/igt@kms_color@pipe-d-ctm-0-25.html

  * igt@kms_content_protection@lic:
    - shard-apl:          NOTRUN -> [TIMEOUT][76] ([i915#1319])
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl6/igt@kms_content_protection@lic.html
    - shard-iclb:         NOTRUN -> [SKIP][77] ([fdo#109300] / [fdo#111066])
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb4/igt@kms_content_protection@lic.html
    - shard-tglb:         NOTRUN -> [SKIP][78] ([i915#1063])
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb2/igt@kms_content_protection@lic.html
    - shard-kbl:          NOTRUN -> [TIMEOUT][79] ([i915#1319])
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl3/igt@kms_content_protection@lic.html

  * igt@kms_cursor_crc@pipe-a-cursor-32x10-offscreen:
    - shard-tglb:         NOTRUN -> [SKIP][80] ([i915#3359]) +8 similar issues
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb6/igt@kms_cursor_crc@pipe-a-cursor-32x10-offscreen.html

  * igt@kms_cursor_crc@pipe-a-cursor-512x170-random:
    - shard-tglb:         NOTRUN -> [SKIP][81] ([fdo#109279] / [i915#3359]) +6 similar issues
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb1/igt@kms_cursor_crc@pipe-a-cursor-512x170-random.html

  * igt@kms_cursor_crc@pipe-c-cursor-32x32-onscreen:
    - shard-tglb:         NOTRUN -> [SKIP][82] ([i915#3319]) +1 similar issue
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb5/igt@kms_cursor_crc@pipe-c-cursor-32x32-onscreen.html

  * igt@kms_cursor_crc@pipe-c-cursor-512x512-offscreen:
    - shard-iclb:         NOTRUN -> [SKIP][83] ([fdo#109278] / [fdo#109279])
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb7/igt@kms_cursor_crc@pipe-c-cursor-512x512-offscreen.html

  * igt@kms_cursor_legacy@2x-long-nonblocking-modeset-vs-cursor-atomic:
    - shard-iclb:         NOTRUN -> [SKIP][84] ([fdo#109274] / [fdo#109278]) +1 similar issue
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb4/igt@kms_cursor_legacy@2x-long-nonblocking-modeset-vs-cursor-atomic.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions:
    - shard-glk:          NOTRUN -> [FAIL][85] ([i915#2346])
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-glk3/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
    - shard-glk:          [PASS][86] -> [FAIL][87] ([i915#2346] / [i915#533])
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-glk9/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-glk3/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html

  * igt@kms_cursor_legacy@pipe-d-single-bo:
    - shard-kbl:          NOTRUN -> [SKIP][88] ([fdo#109271] / [i915#533]) +2 similar issues
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl1/igt@kms_cursor_legacy@pipe-d-single-bo.html

  * igt@kms_cursor_legacy@pipe-d-single-move:
    - shard-iclb:         NOTRUN -> [SKIP][89] ([fdo#109278]) +30 similar issues
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb6/igt@kms_cursor_legacy@pipe-d-single-move.html

  * igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle:
    - shard-tglb:         NOTRUN -> [SKIP][90] ([i915#4103]) +2 similar issues
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb2/igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle.html

  * igt@kms_draw_crc@draw-method-xrgb2101010-blt-4tiled:
    - shard-tglb:         NOTRUN -> [SKIP][91] ([i915#5287]) +2 similar issues
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb6/igt@kms_draw_crc@draw-method-xrgb2101010-blt-4tiled.html
    - shard-iclb:         NOTRUN -> [SKIP][92] ([i915#5287]) +1 similar issue
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb6/igt@kms_draw_crc@draw-method-xrgb2101010-blt-4tiled.html

  * igt@kms_fbcon_fbt@fbc-suspend:
    - shard-kbl:          NOTRUN -> [INCOMPLETE][93] ([i915#180])
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl4/igt@kms_fbcon_fbt@fbc-suspend.html

  * igt@kms_flip@2x-blocking-absolute-wf_vblank-interruptible:
    - shard-tglb:         NOTRUN -> [SKIP][94] ([fdo#109274] / [fdo#111825]) +17 similar issues
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb3/igt@kms_flip@2x-blocking-absolute-wf_vblank-interruptible.html

  * igt@kms_flip@2x-flip-vs-expired-vblank@ac-hdmi-a1-hdmi-a2:
    - shard-glk:          [PASS][95] -> [FAIL][96] ([i915#79])
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-glk7/igt@kms_flip@2x-flip-vs-expired-vblank@ac-hdmi-a1-hdmi-a2.html
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-glk1/igt@kms_flip@2x-flip-vs-expired-vblank@ac-hdmi-a1-hdmi-a2.html

  * igt@kms_flip@2x-wf_vblank-ts-check-interruptible:
    - shard-iclb:         NOTRUN -> [SKIP][97] ([fdo#109274]) +2 similar issues
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb7/igt@kms_flip@2x-wf_vblank-ts-check-interruptible.html

  * igt@kms_flip@flip-vs-suspend-interruptible@a-dp1:
    - shard-kbl:          NOTRUN -> [DMESG-WARN][98] ([i915#180]) +3 similar issues
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl4/igt@kms_flip@flip-vs-suspend-interruptible@a-dp1.html
    - shard-apl:          NOTRUN -> [DMESG-WARN][99] ([i915#62])
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl8/igt@kms_flip@flip-vs-suspend-interruptible@a-dp1.html

  * igt@kms_flip@flip-vs-suspend@a-dp1:
    - shard-apl:          [PASS][100] -> [DMESG-WARN][101] ([i915#180]) +4 similar issues
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-apl2/igt@kms_flip@flip-vs-suspend@a-dp1.html
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl6/igt@kms_flip@flip-vs-suspend@a-dp1.html

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

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-upscaling:
    - shard-glk:          [PASS][103] -> [FAIL][104] ([i915#4911])
   [103]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-glk2/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-upscaling.html
   [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-glk8/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-upscaling.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling:
    - shard-iclb:         [PASS][105] -> [SKIP][106] ([i915#3701])
   [105]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-iclb3/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling.html
   [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb2/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-blt:
    - shard-kbl:          NOTRUN -> [SKIP][107] ([fdo#109271]) +265 similar issues
   [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl7/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-indfb-plflip-blt:
    - shard-tglb:         NOTRUN -> [SKIP][108] ([fdo#109280] / [fdo#111825]) +32 similar issues
   [108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb5/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-indfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-render:
    - shard-iclb:         NOTRUN -> [SKIP][109] ([fdo#109280]) +17 similar issues
   [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb2/igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-indfb-draw-render.html

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

  * igt@kms_plane_alpha_blend@pipe-c-alpha-opaque-fb:
    - shard-kbl:          NOTRUN -> [FAIL][111] ([fdo#108145] / [i915#265]) +3 similar issues
   [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl1/igt@kms_plane_alpha_blend@pipe-c-alpha-opaque-fb.html

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

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

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

  * igt@kms_plane_lowres@pipe-b-tiling-y:
    - shard-iclb:         NOTRUN -> [SKIP][115] ([i915#3536])
   [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb2/igt@kms_plane_lowres@pipe-b-tiling-y.html

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

  * igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf:
    - shard-tglb:         NOTRUN -> [SKIP][117] ([i915#2920]) +1 similar issue
   [117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb5/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf.html
    - shard-iclb:         NOTRUN -> [SKIP][118] ([i915#658])
   [118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb7/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf.html

  * igt@kms_psr2_sf@cursor-plane-update-sf:
    - shard-iclb:         NOTRUN -> [SKIP][119] ([fdo#111068] / [i915#658])
   [119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb6/igt@kms_psr2_sf@cursor-plane-update-sf.html

  * igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area:
    - shard-apl:          NOTRUN -> [SKIP][120] ([fdo#109271] / [i915#658])
   [120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl2/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area.html
    - shard-kbl:          NOTRUN -> [SKIP][121] ([fdo#109271] / [i915#658]) +3 similar issues
   [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl4/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area.html
    - shard-iclb:         NOTRUN -> [SKIP][122] ([i915#2920])
   [122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb2/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area.html

  * igt@kms_psr2_su@page_flip-nv12:
    - shard-tglb:         NOTRUN -> [SKIP][123] ([i915#1911]) +1 similar issue
   [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb8/igt@kms_psr2_su@page_flip-nv12.html

  * igt@kms_psr@psr2_cursor_mmap_cpu:
    - shard-iclb:         NOTRUN -> [SKIP][124] ([fdo#109441])
   [124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb1/igt@kms_psr@psr2_cursor_mmap_cpu.html

  * igt@kms_psr@psr2_no_drrs:
    - shard-iclb:         [PASS][125] -> [SKIP][126] ([fdo#109441]) +1 similar issue
   [125]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-iclb2/igt@kms_psr@psr2_no_drrs.html
   [126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb7/igt@kms_psr@psr2_no_drrs.html

  * igt@kms_psr@psr2_primary_mmap_cpu:
    - shard-tglb:         NOTRUN -> [FAIL][127] ([i915#132] / [i915#3467]) +2 similar issues
   [127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb6/igt@kms_psr@psr2_primary_mmap_cpu.html

  * igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180:
    - shard-tglb:         NOTRUN -> [SKIP][128] ([fdo#111615] / [i915#5289])
   [128]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb3/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-180.html

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

  * igt@kms_vblank@pipe-d-ts-continuation-idle:
    - shard-apl:          NOTRUN -> [SKIP][130] ([fdo#109271]) +68 similar issues
   [130]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl3/igt@kms_vblank@pipe-d-ts-continuation-idle.html

  * igt@kms_vrr@flip-suspend:
    - shard-tglb:         NOTRUN -> [SKIP][131] ([i915#3555]) +2 similar issues
   [131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb8/igt@kms_vrr@flip-suspend.html

  * igt@nouveau_crc@pipe-c-source-outp-complete:
    - shard-tglb:         NOTRUN -> [SKIP][132] ([i915#2530]) +4 similar issues
   [132]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb7/igt@nouveau_crc@pipe-c-source-outp-complete.html
    - shard-iclb:         NOTRUN -> [SKIP][133] ([i915#2530])
   [133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb4/igt@nouveau_crc@pipe-c-source-outp-complete.html

  * igt@nouveau_crc@pipe-d-source-rg:
    - shard-iclb:         NOTRUN -> [SKIP][134] ([fdo#109278] / [i915#2530]) +1 similar issue
   [134]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb3/igt@nouveau_crc@pipe-d-source-rg.html

  * igt@perf@unprivileged-single-ctx-counters:
    - shard-iclb:         NOTRUN -> [SKIP][135] ([fdo#109289]) +1 similar issue
   [135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb7/igt@perf@unprivileged-single-ctx-counters.html

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

  * igt@prime_vgem@fence-flip-hang:
    - shard-iclb:         NOTRUN -> [SKIP][137] ([fdo#109295]) +1 similar issue
   [137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb7/igt@prime_vgem@fence-flip-hang.html

  * igt@prime_vgem@fence-read-hang:
    - shard-tglb:         NOTRUN -> [SKIP][138] ([fdo#109295]) +1 similar issue
   [138]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb5/igt@prime_vgem@fence-read-hang.html

  * igt@syncobj_timeline@transfer-timeline-point:
    - shard-iclb:         NOTRUN -> [DMESG-FAIL][139] ([i915#5098])
   [139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb3/igt@syncobj_timeline@transfer-timeline-point.html
    - shard-kbl:          NOTRUN -> [DMESG-FAIL][140] ([i915#5098])
   [140]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl4/igt@syncobj_timeline@transfer-timeline-point.html
    - shard-apl:          NOTRUN -> [DMESG-FAIL][141] ([i915#5098])
   [141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl6/igt@syncobj_timeline@transfer-timeline-point.html
    - shard-glk:          NOTRUN -> [DMESG-FAIL][142] ([i915#5098])
   [142]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-glk8/igt@syncobj_timeline@transfer-timeline-point.html
    - shard-tglb:         NOTRUN -> [DMESG-FAIL][143] ([i915#5098])
   [143]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb8/igt@syncobj_timeline@transfer-timeline-point.html
    - shard-snb:          NOTRUN -> [DMESG-FAIL][144] ([i915#5098])
   [144]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-snb7/igt@syncobj_timeline@transfer-timeline-point.html

  * igt@sysfs_clients@busy:
    - shard-tglb:         NOTRUN -> [SKIP][145] ([i915#2994]) +1 similar issue
   [145]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb2/igt@sysfs_clients@busy.html
    - shard-iclb:         NOTRUN -> [SKIP][146] ([i915#2994])
   [146]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb4/igt@sysfs_clients@busy.html
    - shard-kbl:          NOTRUN -> [SKIP][147] ([fdo#109271] / [i915#2994])
   [147]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl3/igt@sysfs_clients@busy.html

  * igt@sysfs_clients@fair-7:
    - shard-glk:          NOTRUN -> [SKIP][148] ([fdo#109271] / [i915#2994])
   [148]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-glk2/igt@sysfs_clients@fair-7.html

  
#### Possible fixes ####

  * igt@gem_exec_capture@pi@rcs0:
    - shard-iclb:         [INCOMPLETE][149] ([i915#3371]) -> [PASS][150]
   [149]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-iclb6/igt@gem_exec_capture@pi@rcs0.html
   [150]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb7/igt@gem_exec_capture@pi@rcs0.html
    - {shard-tglu}:       [INCOMPLETE][151] ([i915#3371]) -> [PASS][152]
   [151]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-tglu-5/igt@gem_exec_capture@pi@rcs0.html
   [152]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglu-8/igt@gem_exec_capture@pi@rcs0.html

  * igt@gem_exec_fair@basic-none@vcs0:
    - shard-apl:          [FAIL][153] ([i915#2842]) -> [PASS][154] +1 similar issue
   [153]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-apl8/igt@gem_exec_fair@basic-none@vcs0.html
   [154]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl2/igt@gem_exec_fair@basic-none@vcs0.html

  * igt@gem_exec_fair@basic-none@vcs1:
    - shard-kbl:          [FAIL][155] ([i915#2842]) -> [PASS][156] +1 similar issue
   [155]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-kbl6/igt@gem_exec_fair@basic-none@vcs1.html
   [156]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl1/igt@gem_exec_fair@basic-none@vcs1.html

  * igt@gem_exec_flush@basic-batch-kernel-default-uc:
    - shard-snb:          [SKIP][157] ([fdo#109271]) -> [PASS][158] +1 similar issue
   [157]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-snb6/igt@gem_exec_flush@basic-batch-kernel-default-uc.html
   [158]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-snb2/igt@gem_exec_flush@basic-batch-kernel-default-uc.html

  * igt@i915_pm_dc@dc9-dpms:
    - shard-apl:          [SKIP][159] ([fdo#109271]) -> [PASS][160]
   [159]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-apl6/igt@i915_pm_dc@dc9-dpms.html
   [160]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl1/igt@i915_pm_dc@dc9-dpms.html

  * igt@i915_suspend@debugfs-reader:
    - shard-kbl:          [INCOMPLETE][161] ([i915#3614]) -> [PASS][162]
   [161]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-kbl4/igt@i915_suspend@debugfs-reader.html
   [162]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl6/igt@i915_suspend@debugfs-reader.html

  * igt@kms_big_fb@yf-tiled-32bpp-rotate-270 (NEW):
    - shard-glk:          [FAIL][163] ([i915#1888] / [i915#5138]) -> [PASS][164]
   [163]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-glk2/igt@kms_big_fb@yf-tiled-32bpp-rotate-270.html
   [164]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-glk4/igt@kms_big_fb@yf-tiled-32bpp-rotate-270.html
    - shard-iclb:         [FAIL][165] ([i915#1888]) -> [PASS][166]
   [165]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-iclb2/igt@kms_big_fb@yf-tiled-32bpp-rotate-270.html
   [166]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb6/igt@kms_big_fb@yf-tiled-32bpp-rotate-270.html

  * igt@kms_cursor_crc@pipe-c-cursor-suspend:
    - shard-kbl:          [DMESG-WARN][167] ([i915#180]) -> [PASS][168]
   [167]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-kbl4/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
   [168]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl6/igt@kms_cursor_crc@pipe-c-cursor-suspend.html

  * igt@kms_pipe_crc_basic@disable-crc-after-crtc-pipe-b:
    - shard-tglb:         [INCOMPLETE][169] -> [PASS][170]
   [169]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-tglb8/igt@kms_pipe_crc_basic@disable-crc-after-crtc-pipe-b.html
   [170]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb7/igt@kms_pipe_crc_basic@disable-crc-after-crtc-pipe-b.html

  * igt@kms_psr@psr2_dpms:
    - shard-iclb:         [SKIP][171] ([fdo#109441]) -> [PASS][172] +1 similar issue
   [171]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-iclb3/igt@kms_psr@psr2_dpms.html
   [172]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb2/igt@kms_psr@psr2_dpms.html

  * igt@kms_psr_stress_test@flip-primary-invalidate-overlay:
    - shard-iclb:         [SKIP][173] ([i915#5519]) -> [PASS][174]
   [173]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-iclb4/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html
   [174]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb8/igt@kms_psr_stress_test@flip-primary-invalidate-overlay.html

  
#### Warnings ####

  * igt@gem_exec_balancer@parallel:
    - shard-iclb:         [DMESG-WARN][175] ([i915#5614]) -> [SKIP][176] ([i915#4525])
   [175]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-iclb4/igt@gem_exec_balancer@parallel.html
   [176]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb6/igt@gem_exec_balancer@parallel.html

  * igt@gem_exec_balancer@parallel-ordering:
    - shard-iclb:         [SKIP][177] ([i915#4525]) -> [DMESG-FAIL][178] ([i915#5614])
   [177]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-iclb7/igt@gem_exec_balancer@parallel-ordering.html
   [178]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb2/igt@gem_exec_balancer@parallel-ordering.html

  * igt@gem_exec_balancer@parallel-out-fence:
    - shard-iclb:         [SKIP][179] ([i915#4525]) -> [DMESG-WARN][180] ([i915#5614])
   [179]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-iclb5/igt@gem_exec_balancer@parallel-out-fence.html
   [180]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb2/igt@gem_exec_balancer@parallel-out-fence.html

  * igt@kms_ccs@pipe-c-crc-primary-rotation-180-4_tiled_dg2_mc_ccs:
    - shard-iclb:         [SKIP][181] ([fdo#109278] / [i915#6095]) -> [SKIP][182] ([fdo#109278]) +9 similar issues
   [181]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-iclb2/igt@kms_ccs@pipe-c-crc-primary-rotation-180-4_tiled_dg2_mc_ccs.html
   [182]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb8/igt@kms_ccs@pipe-c-crc-primary-rotation-180-4_tiled_dg2_mc_ccs.html

  * igt@kms_content_protection@mei_interface:
    - shard-iclb:         [SKIP][183] ([fdo#109300]) -> [SKIP][184] ([fdo#109300] / [fdo#111066])
   [183]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-iclb8/igt@kms_content_protection@mei_interface.html
   [184]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb2/igt@kms_content_protection@mei_interface.html
    - shard-tglb:         [SKIP][185] ([fdo#109300]) -> [SKIP][186] ([i915#1063])
   [185]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-tglb2/igt@kms_content_protection@mei_interface.html
   [186]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-tglb1/igt@kms_content_protection@mei_interface.html

  * igt@kms_psr2_su@page_flip-nv12:
    - shard-iclb:         [FAIL][187] ([i915#5939]) -> [SKIP][188] ([fdo#109642] / [fdo#111068] / [i915#658]) +1 similar issue
   [187]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-iclb2/igt@kms_psr2_su@page_flip-nv12.html
   [188]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-iclb3/igt@kms_psr2_su@page_flip-nv12.html

  * igt@runner@aborted:
    - shard-kbl:          ([FAIL][189], [FAIL][190], [FAIL][191], [FAIL][192], [FAIL][193], [FAIL][194], [FAIL][195], [FAIL][196], [FAIL][197], [FAIL][198], [FAIL][199], [FAIL][200], [FAIL][201]) ([i915#3002] / [i915#4312] / [i915#5257]) -> ([FAIL][202], [FAIL][203], [FAIL][204], [FAIL][205], [FAIL][206], [FAIL][207], [FAIL][208], [FAIL][209], [FAIL][210], [FAIL][211], [FAIL][212], [FAIL][213], [FAIL][214], [FAIL][215]) ([i915#180] / [i915#3002] / [i915#4312] / [i915#5257] / [i915#92])
   [189]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-kbl6/igt@runner@aborted.html
   [190]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-kbl1/igt@runner@aborted.html
   [191]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-kbl4/igt@runner@aborted.html
   [192]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-kbl6/igt@runner@aborted.html
   [193]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-kbl4/igt@runner@aborted.html
   [194]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-kbl6/igt@runner@aborted.html
   [195]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-kbl3/igt@runner@aborted.html
   [196]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-kbl1/igt@runner@aborted.html
   [197]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-kbl6/igt@runner@aborted.html
   [198]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-kbl7/igt@runner@aborted.html
   [199]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-kbl7/igt@runner@aborted.html
   [200]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-kbl7/igt@runner@aborted.html
   [201]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-kbl7/igt@runner@aborted.html
   [202]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl3/igt@runner@aborted.html
   [203]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl7/igt@runner@aborted.html
   [204]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl3/igt@runner@aborted.html
   [205]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl7/igt@runner@aborted.html
   [206]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl4/igt@runner@aborted.html
   [207]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl6/igt@runner@aborted.html
   [208]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl4/igt@runner@aborted.html
   [209]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl3/igt@runner@aborted.html
   [210]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl4/igt@runner@aborted.html
   [211]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl4/igt@runner@aborted.html
   [212]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl3/igt@runner@aborted.html
   [213]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl4/igt@runner@aborted.html
   [214]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl4/igt@runner@aborted.html
   [215]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-kbl6/igt@runner@aborted.html
    - shard-apl:          ([FAIL][216], [FAIL][217], [FAIL][218], [FAIL][219]) ([i915#180] / [i915#3002] / [i915#4312] / [i915#5257]) -> ([FAIL][220], [FAIL][221], [FAIL][222], [FAIL][223], [FAIL][224], [FAIL][225], [FAIL][226], [FAIL][227], [FAIL][228]) ([fdo#109271] / [i915#180] / [i915#3002] / [i915#4312] / [i915#5257])
   [216]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-apl6/igt@runner@aborted.html
   [217]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-apl6/igt@runner@aborted.html
   [218]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-apl3/igt@runner@aborted.html
   [219]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11705/shard-apl2/igt@runner@aborted.html
   [220]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl3/igt@runner@aborted.html
   [221]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl7/igt@runner@aborted.html
   [222]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl1/igt@runner@aborted.html
   [223]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl6/igt@runner@aborted.html
   [224]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl6/igt@runner@aborted.html
   [225]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl3/igt@runner@aborted.html
   [226]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl3/igt@runner@aborted.html
   [227]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl7/igt@runner@aborted.html
   [228]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/shard-apl6/igt@runner@aborted.html

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

  [fdo#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#109283]: https://bugs.freedesktop.org/show_bug.cgi?id=109283
  [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#109293]: https://bugs.freedesktop.org/show_bug.cgi?id=109293
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [fdo#109300]: https://bugs.freedesktop.org/show_bug.cgi?id=109300
  [fdo#109303]: https://bugs.freedesktop.org/show_bug.cgi?id=109303
  [fdo#109312]: https://bugs.freedesktop.org/show_bug.cgi?id=109312
  [fdo#109313]: https://bugs.freedesktop.org/show_bug.cgi?id=109313
  [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
  [fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
  [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
  [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
  [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
  [fdo#110725]: https://bugs.freedesktop.org/show_bug.cgi?id=110725
  [fdo#110892]: https://bugs.freedesktop.org/show_bug.cgi?id=110892
  [fdo#111066]: https://bugs.freedesktop.org/show_bug.cgi?id=111066
  [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
  [fdo#112283]: https://bugs.freedesktop.org/show_bug.cgi?id=112283
  [i915#1063]: https://gitlab.freedesktop.org/drm/intel/issues/1063
  [i915#1149]: https://gitlab.freedesktop.org/drm/intel/issues/1149
  [i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
  [i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118
  [i915#1319]: https://gitlab.freedesktop.org/drm/intel/issues/1319
  [i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132
  [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
  [i915#1759]: https://gitlab.freedesktop.org/drm/intel/issues/1759
  [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
  [i915#1888]: https://gitlab.freedesktop.org/drm/intel/issues/1888
  [i915#1902]: https://gitlab.freedesktop.org/drm/intel/issues/1902
  [i915#1911]: https://gitlab.freedesktop.org/drm/intel/issues/1911
  [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
  [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
  [i915#2373]: https://gitlab.freedesktop.org/drm/intel/issues/2373
  [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#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
  [i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
  [i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
  [i915#284]: https://gitlab.freedesktop.org/drm/intel/issues/284
  [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
  [i915#2846]: https://gitlab.freedesktop.org/drm/intel/issues/2846
  [i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
  [i915#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#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116
  [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
  [i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
  [i915#3318]: https://gitlab.freedesktop.org/drm/intel/issues/3318
  [i915#3319]: https://gitlab.freedesktop.org/drm/intel/issues/3319
  [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
  [i915#3371]: https://gitlab.freedesktop.org/drm/intel/issues/3371
  [i915#3464]: https://gitlab.freedesktop.org/drm/intel/issues/3464
  [i915#3467]: https://gitlab.freedesktop.org/drm/intel/issues/3467
  [i915#3536]: https://gitlab.freedesktop.org/drm/intel/issues/3536
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3614]: https://gitlab.freedesktop.org/drm/intel/issues/3614
  [i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
  [i915#3701]: https://gitlab.freedesktop.org/drm/intel/issues/3701
  [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
  [i915#404]: https://gitlab.freedesktop.org/drm/intel/issues/404
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4171]: https://gitlab.freedesktop.org/drm/intel/issues/4171
  [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4911]: https://gitlab.freedesktop.org/drm/intel/issues/4911
  [i915#4991]: https://gitlab.freedesktop.org/drm/intel/issues/4991
  [i915#5098]: https://gitlab.freedesktop.org/drm/intel/issues/5098
  [i915#5138]: https://gitlab.freedesktop.org/drm/intel/issues/5138
  [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
  [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
  [i915#5257]: https://gitlab.freedesktop.org/drm/intel/issues/5257
  [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
  [i915#5287]: https://gitlab.freedesktop.org/drm/intel/issues/5287
  [i915#5288]: https://gitlab.freedesktop.org/drm/intel/issues/5288
  [i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
  [i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325
  [i915#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#5519]: https://gitlab.freedesktop.org/drm/intel/issues/5519
  [i915#5566]: https://gitlab.freedesktop.org/drm/intel/issues/5566
  [i915#5614]: https://gitlab.freedesktop.org/drm/intel/issues/5614
  [i915#5939]: https://gitlab.freedesktop.org/drm/intel/issues/5939
  [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
  [i915#62]: https://gitlab.freedesktop.org/drm/intel/issues/62
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716
  [i915#768]: https://gitlab.freedesktop.org/drm/intel/issues/768
  [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
  [i915#92]: https://gitlab.freedesktop.org/drm/intel/issues/92


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

  * CI: CI-20190529 -> None
  * IGT: IGT_6495 -> IGTPW_7179
  * Piglit: piglit_4509 -> None

  CI-20190529: 20190529
  CI_DRM_11705: 18a2e6dbca526f996da04741cf5ef169e810a50e @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_7179: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7179/index.html
  IGT_6495: 7e2033da45f024a0348e6034fcb7f70a91b80ee9 @ 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_7179/index.html

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

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

* Re: [igt-dev] [RFC i-g-t 1/4] runner: Introduce --resolution to igt_runner
  2022-05-27  8:13 ` [igt-dev] [RFC i-g-t 1/4] " Bhanuprakash Modem
@ 2022-05-27 12:39   ` Petri Latvala
  2022-06-10 11:31     ` Petri Latvala
  0 siblings, 1 reply; 13+ messages in thread
From: Petri Latvala @ 2022-05-27 12:39 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

On Fri, May 27, 2022 at 01:43:50PM +0530, Bhanuprakash Modem wrote:
> Allow finer control of taking default DRM display mode for subtests
> instead of taking the preferred mode exposed by the Kernel.
> 
> Example:
> Eventhough we have an 8K panel, Kernel may expose 4K or lesser mode
> as a preferred mode. So all subtests will take this mode as a default
> may cause losing the coverage.
> 
> This patch will set the environment variable based on the user request,
> and IGT will parse this environment variable and take the decision to
> choose the mode from the available list.
> 
> The default is still to take the preferred mode exposed by the Kernel.
> Other options are:
> * highest: Choose the mode with highest possible resolution.
> * lowest:  Choose the mode with lowest possible resolution.
> 
> Cc: Petri Latvala <petri.latvala@intel.com>
> Cc: Swati Sharma <swati2.sharma@intel.com>
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> ---
>  runner/executor.c |  3 +++
>  runner/settings.c | 47 +++++++++++++++++++++++++++++++++++++++++++++++
>  runner/settings.h |  7 +++++++
>  3 files changed, 57 insertions(+)
> 
> diff --git a/runner/executor.c b/runner/executor.c
> index 6e6ca9cc..fc805c30 100644
> --- a/runner/executor.c
> +++ b/runner/executor.c
> @@ -2056,6 +2056,9 @@ bool execute(struct execute_state *state,
>  	}
>  
>   end:
> +	if (getenv("IGT_KMS_RESOLUTION"))
> +		unsetenv("IGT_KMS_RESOLUTION");
> +
>  	if (settings->enable_code_coverage && !settings->cov_results_per_test) {
>  		char *reason = NULL;
>  
> diff --git a/runner/settings.c b/runner/settings.c
> index bb63a9f4..a20bcd01 100644
> --- a/runner/settings.c
> +++ b/runner/settings.c
> @@ -30,6 +30,7 @@ enum {
>  	OPT_COV_RESULTS_PER_TEST,
>  	OPT_VERSION,
>  	OPT_PRUNE_MODE,
> +	OPT_RESOLUTION,
>  	OPT_HELP = 'h',
>  	OPT_NAME = 'n',
>  	OPT_DRY_RUN = 'd',
> @@ -78,6 +79,16 @@ static struct {
>  	{ 0, 0 },
>  };
>  
> +static struct {
> +	int value;
> +	const char *name;
> +} resolution_modes[] = {
> +	{ RESOLUTION_DEFAULT, "default" },
> +	{ RESOLUTION_HIGHEST, "highest" },
> +	{ RESOLUTION_LOWEST, "lowest" },
> +	{ 0, 0 },
> +};
> +
>  static bool set_log_level(struct settings* settings, const char *level)
>  {
>  	typeof(*log_levels) *it;
> @@ -130,6 +141,26 @@ static bool set_prune_mode(struct settings* settings, const char *mode)
>  	return false;
>  }
>  
> +static bool set_resolution_mode(struct settings *settings, const char *mode)
> +{
> +	typeof(*resolution_modes) *it;
> +	char res[2];
> +
> +	for (it = resolution_modes; it->name; it++) {
> +		if (!strcmp(mode, it->name)) {
> +			settings->resolution = it->value;
> +
> +			sprintf(res, "%d", it->value);
> +			setenv("IGT_KMS_RESOLUTION", res, 1);
> +
> +			return true;
> +		}
> +	}
> +	setenv("IGT_KMS_RESOLUTION", "0", 1);
> +
> +	return false;
> +}
> +
>  static bool parse_abort_conditions(struct settings *settings, const char *optarg)
>  {
>  	char *dup, *origdup, *p;
> @@ -279,6 +310,12 @@ static const char *usage_str =
>  	"                                                  not in the requested test set.\n"
>  	"                                                  Useful when you have a hand-written\n"
>  	"                                                  testlist.\n"
> +	"  --resolution <mode>   Control of taking default DRM display mode for subtests\n"
> +	"                        instead of taking the preferred mode exposed by the Kernel.\n"
> +	"                        Possible options:\n"
> +	"                         default  - Use preferred mode. (default)\n"
> +	"                         highest  - Use the mode with highest possible resolution.\n"
> +	"                         lowest   - Use the mode with lowest possible resolution.\n"
>  	"  -b, --blacklist FILENAME\n"
>  	"                        Exclude all test matching to regexes from FILENAME\n"
>  	"                        (can be used more than once)\n"
> @@ -532,6 +569,7 @@ bool parse_options(int argc, char **argv,
>  		{"dmesg-warn-level", required_argument, NULL, OPT_DMESG_WARN_LEVEL},
>  		{"prune-mode", required_argument, NULL, OPT_PRUNE_MODE},
>  		{"blacklist", required_argument, NULL, OPT_BLACKLIST},
> +		{"resolution", optional_argument, NULL, OPT_RESOLUTION},
>  		{"list-all", no_argument, NULL, OPT_LIST_ALL},
>  		{ 0, 0, 0, 0},
>  	};
> @@ -640,6 +678,12 @@ bool parse_options(int argc, char **argv,
>  					     absolute_path(optarg)))
>  				goto error;
>  			break;
> +		case OPT_RESOLUTION:
> +			if (!set_resolution_mode(settings, optarg)) {
> +				usage("Cannot parse resolution mode", stderr);
> +				goto error;
> +			}
> +			break;

If you only set the env var here, it won't be set on resumes.

>  		case OPT_LIST_ALL:
>  			settings->list_all = true;
>  			break;
> @@ -854,6 +898,7 @@ bool serialize_settings(struct settings *settings)
>  	SERIALIZE_LINE(f, settings, piglit_style_dmesg, "%d");
>  	SERIALIZE_LINE(f, settings, dmesg_warn_level, "%d");
>  	SERIALIZE_LINE(f, settings, prune_mode, "%d");
> +	SERIALIZE_LINE(f, settings, resolution, "%d");
>  	SERIALIZE_LINE(f, settings, test_root, "%s");
>  	SERIALIZE_LINE(f, settings, results_path, "%s");
>  	SERIALIZE_LINE(f, settings, enable_code_coverage, "%d");
> @@ -886,6 +931,7 @@ bool read_settings_from_file(struct settings *settings, FILE *f)
>  	char *name = NULL, *val = NULL;
>  
>  	settings->dmesg_warn_level = -1;
> +	settings->resolution = 0;

If a zero val is the default, you don't need to set it here
explicitly. Anything calling this function has called init_settings
which memsets the whole object to 0.



I'll look into this in more detail next week. I need to form an actual
opinion on a few subjects, such as whether this is needed in runner at
all (one can set environment variables when executing and let runner
just pass them through, it doesn't clean the environment), whether
--resolution is a good name for the switch, and whether I want a more
generic environment storing/handling in the runner instead now or
later.



-- 
Petri Latvala


>  
>  	while (fscanf(f, "%ms : %m[^\n]", &name, &val) == 2) {
>  		int numval = atoi(val);
> @@ -906,6 +952,7 @@ bool read_settings_from_file(struct settings *settings, FILE *f)
>  		PARSE_LINE(settings, name, val, piglit_style_dmesg, numval);
>  		PARSE_LINE(settings, name, val, dmesg_warn_level, numval);
>  		PARSE_LINE(settings, name, val, prune_mode, numval);
> +		PARSE_LINE(settings, name, val, resolution, val ? numval : 0);
>  		PARSE_LINE(settings, name, val, test_root, val ? strdup(val) : NULL);
>  		PARSE_LINE(settings, name, val, results_path, val ? strdup(val) : NULL);
>  		PARSE_LINE(settings, name, val, enable_code_coverage, numval);
> diff --git a/runner/settings.h b/runner/settings.h
> index 6ae64695..4d2c9951 100644
> --- a/runner/settings.h
> +++ b/runner/settings.h
> @@ -31,6 +31,12 @@ enum {
>  	PRUNE_KEEP_REQUESTED,
>  };
>  
> +enum {
> +	RESOLUTION_DEFAULT = 0,
> +	RESOLUTION_HIGHEST,
> +	RESOLUTION_LOWEST,
> +};
> +
>  struct regex_list {
>  	char **regex_strings;
>  	GRegex **regexes;
> @@ -59,6 +65,7 @@ struct settings {
>  	bool piglit_style_dmesg;
>  	int dmesg_warn_level;
>  	int prune_mode;
> +	int resolution;
>  	bool list_all;
>  	char *code_coverage_script;
>  	bool enable_code_coverage;
> -- 
> 2.35.1
> 

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

* Re: [igt-dev] [RFC i-g-t 1/4] runner: Introduce --resolution to igt_runner
  2022-05-27 12:39   ` Petri Latvala
@ 2022-06-10 11:31     ` Petri Latvala
  2022-06-10 12:16       ` Knop, Ryszard
  0 siblings, 1 reply; 13+ messages in thread
From: Petri Latvala @ 2022-06-10 11:31 UTC (permalink / raw)
  To: Bhanuprakash Modem, Ryszard Knop; +Cc: igt-dev

On Fri, May 27, 2022 at 03:39:22PM +0300, Petri Latvala wrote:
> On Fri, May 27, 2022 at 01:43:50PM +0530, Bhanuprakash Modem wrote:
> > Allow finer control of taking default DRM display mode for subtests
> > instead of taking the preferred mode exposed by the Kernel.
> > 
> > Example:
> > Eventhough we have an 8K panel, Kernel may expose 4K or lesser mode
> > as a preferred mode. So all subtests will take this mode as a default
> > may cause losing the coverage.
> > 
> > This patch will set the environment variable based on the user request,
> > and IGT will parse this environment variable and take the decision to
> > choose the mode from the available list.
> > 
> > The default is still to take the preferred mode exposed by the Kernel.
> > Other options are:
> > * highest: Choose the mode with highest possible resolution.
> > * lowest:  Choose the mode with lowest possible resolution.
> > 
> > Cc: Petri Latvala <petri.latvala@intel.com>
> > Cc: Swati Sharma <swati2.sharma@intel.com>
> > Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> > ---
> >  runner/executor.c |  3 +++
> >  runner/settings.c | 47 +++++++++++++++++++++++++++++++++++++++++++++++
> >  runner/settings.h |  7 +++++++
> >  3 files changed, 57 insertions(+)
> > 
> > diff --git a/runner/executor.c b/runner/executor.c
> > index 6e6ca9cc..fc805c30 100644
> > --- a/runner/executor.c
> > +++ b/runner/executor.c
> > @@ -2056,6 +2056,9 @@ bool execute(struct execute_state *state,
> >  	}
> >  
> >   end:
> > +	if (getenv("IGT_KMS_RESOLUTION"))
> > +		unsetenv("IGT_KMS_RESOLUTION");
> > +
> >  	if (settings->enable_code_coverage && !settings->cov_results_per_test) {
> >  		char *reason = NULL;
> >  
> > diff --git a/runner/settings.c b/runner/settings.c
> > index bb63a9f4..a20bcd01 100644
> > --- a/runner/settings.c
> > +++ b/runner/settings.c
> > @@ -30,6 +30,7 @@ enum {
> >  	OPT_COV_RESULTS_PER_TEST,
> >  	OPT_VERSION,
> >  	OPT_PRUNE_MODE,
> > +	OPT_RESOLUTION,
> >  	OPT_HELP = 'h',
> >  	OPT_NAME = 'n',
> >  	OPT_DRY_RUN = 'd',
> > @@ -78,6 +79,16 @@ static struct {
> >  	{ 0, 0 },
> >  };
> >  
> > +static struct {
> > +	int value;
> > +	const char *name;
> > +} resolution_modes[] = {
> > +	{ RESOLUTION_DEFAULT, "default" },
> > +	{ RESOLUTION_HIGHEST, "highest" },
> > +	{ RESOLUTION_LOWEST, "lowest" },
> > +	{ 0, 0 },
> > +};
> > +
> >  static bool set_log_level(struct settings* settings, const char *level)
> >  {
> >  	typeof(*log_levels) *it;
> > @@ -130,6 +141,26 @@ static bool set_prune_mode(struct settings* settings, const char *mode)
> >  	return false;
> >  }
> >  
> > +static bool set_resolution_mode(struct settings *settings, const char *mode)
> > +{
> > +	typeof(*resolution_modes) *it;
> > +	char res[2];
> > +
> > +	for (it = resolution_modes; it->name; it++) {
> > +		if (!strcmp(mode, it->name)) {
> > +			settings->resolution = it->value;
> > +
> > +			sprintf(res, "%d", it->value);
> > +			setenv("IGT_KMS_RESOLUTION", res, 1);
> > +
> > +			return true;
> > +		}
> > +	}
> > +	setenv("IGT_KMS_RESOLUTION", "0", 1);
> > +
> > +	return false;
> > +}
> > +
> >  static bool parse_abort_conditions(struct settings *settings, const char *optarg)
> >  {
> >  	char *dup, *origdup, *p;
> > @@ -279,6 +310,12 @@ static const char *usage_str =
> >  	"                                                  not in the requested test set.\n"
> >  	"                                                  Useful when you have a hand-written\n"
> >  	"                                                  testlist.\n"
> > +	"  --resolution <mode>   Control of taking default DRM display mode for subtests\n"
> > +	"                        instead of taking the preferred mode exposed by the Kernel.\n"
> > +	"                        Possible options:\n"
> > +	"                         default  - Use preferred mode. (default)\n"
> > +	"                         highest  - Use the mode with highest possible resolution.\n"
> > +	"                         lowest   - Use the mode with lowest possible resolution.\n"
> >  	"  -b, --blacklist FILENAME\n"
> >  	"                        Exclude all test matching to regexes from FILENAME\n"
> >  	"                        (can be used more than once)\n"
> > @@ -532,6 +569,7 @@ bool parse_options(int argc, char **argv,
> >  		{"dmesg-warn-level", required_argument, NULL, OPT_DMESG_WARN_LEVEL},
> >  		{"prune-mode", required_argument, NULL, OPT_PRUNE_MODE},
> >  		{"blacklist", required_argument, NULL, OPT_BLACKLIST},
> > +		{"resolution", optional_argument, NULL, OPT_RESOLUTION},
> >  		{"list-all", no_argument, NULL, OPT_LIST_ALL},
> >  		{ 0, 0, 0, 0},
> >  	};
> > @@ -640,6 +678,12 @@ bool parse_options(int argc, char **argv,
> >  					     absolute_path(optarg)))
> >  				goto error;
> >  			break;
> > +		case OPT_RESOLUTION:
> > +			if (!set_resolution_mode(settings, optarg)) {
> > +				usage("Cannot parse resolution mode", stderr);
> > +				goto error;
> > +			}
> > +			break;
> 
> If you only set the env var here, it won't be set on resumes.
> 
> >  		case OPT_LIST_ALL:
> >  			settings->list_all = true;
> >  			break;
> > @@ -854,6 +898,7 @@ bool serialize_settings(struct settings *settings)
> >  	SERIALIZE_LINE(f, settings, piglit_style_dmesg, "%d");
> >  	SERIALIZE_LINE(f, settings, dmesg_warn_level, "%d");
> >  	SERIALIZE_LINE(f, settings, prune_mode, "%d");
> > +	SERIALIZE_LINE(f, settings, resolution, "%d");
> >  	SERIALIZE_LINE(f, settings, test_root, "%s");
> >  	SERIALIZE_LINE(f, settings, results_path, "%s");
> >  	SERIALIZE_LINE(f, settings, enable_code_coverage, "%d");
> > @@ -886,6 +931,7 @@ bool read_settings_from_file(struct settings *settings, FILE *f)
> >  	char *name = NULL, *val = NULL;
> >  
> >  	settings->dmesg_warn_level = -1;
> > +	settings->resolution = 0;
> 
> If a zero val is the default, you don't need to set it here
> explicitly. Anything calling this function has called init_settings
> which memsets the whole object to 0.
> 
> 
> 
> I'll look into this in more detail next week. I need to form an actual
> opinion on a few subjects, such as whether this is needed in runner at
> all (one can set environment variables when executing and let runner
> just pass them through, it doesn't clean the environment), whether
> --resolution is a good name for the switch, and whether I want a more
> generic environment storing/handling in the runner instead now or
> later.

Alright, my opinion is that it's better to have a generic --env flag
on igt_runner instead. It's useful to have the support for making sure
other env vars also get correctly set on resumes, notably IGT_DEVICE.

In short, we need --environment=key=value, and also --environment=key
(gets the var from the current environment, stores the
value). Repeated flags store more values.

If you don't have the bandwidth to work on that change yourself, I
suppose Ryszard might be able to pick this up. Ryszard, what do you
think?


-- 
Petri Latvala

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

* Re: [igt-dev] [RFC i-g-t 3/4] lib/igt_kms: Add support for --resolution from igt_runner
  2022-05-27  8:13 ` [igt-dev] [RFC i-g-t 3/4] lib/igt_kms: Add support for --resolution from igt_runner Bhanuprakash Modem
@ 2022-06-10 11:33   ` Petri Latvala
  0 siblings, 0 replies; 13+ messages in thread
From: Petri Latvala @ 2022-06-10 11:33 UTC (permalink / raw)
  To: Bhanuprakash Modem; +Cc: igt-dev

On Fri, May 27, 2022 at 01:43:52PM +0530, Bhanuprakash Modem wrote:
> Upon user request igt_runner will set an environment variable to choose
> default DRM display mode for subtests instead of taking the preferred
> mode.
> 
> Example:
> Eventhough we have an 8K panel, Kernel may expose 4K or lesser mode
> as a preferred mode. So all subtests will take this mode as a default
> may cause losing the coverage.
> 
> This patch will parse the environment variable exposed by igt_runner
> and take the decision to choose the mode from the available list.
> 
> The default is still to take the preferred mode exposed by the Kernel.
> Other options are:
>  * highest: Choose the mode with highest possible resolution.
>  * lowest:  Choose the mode with lowest possible resolution.
> 
> Cc: Petri Latvala <petri.latvala@intel.com>
> Cc: Swati Sharma <swati2.sharma@intel.com>
> Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> ---
>  lib/igt_kms.c | 37 ++++++++++++++++++++++++++++++++++++-
>  1 file changed, 36 insertions(+), 1 deletion(-)
> 
> diff --git a/lib/igt_kms.c b/lib/igt_kms.c
> index 84e798b5..aa964e11 100644
> --- a/lib/igt_kms.c
> +++ b/lib/igt_kms.c
> @@ -1431,6 +1431,20 @@ void kmstest_force_edid(int drm_fd, drmModeConnector *connector,
>  	igt_assert(ret != -1);
>  }
>  
> +static int sort_drm_modes_asc(const void *a, const void *b)
> +{
> +	const drmModeModeInfo *mode1 = a, *mode2 = b;
> +
> +	return (mode1->hdisplay > mode2->hdisplay) - (mode2->hdisplay > mode1->hdisplay);
> +}
> +
> +static int sort_drm_modes_dsc(const void *a, const void *b)
> +{
> +	const drmModeModeInfo *mode1 = a, *mode2 = b;
> +
> +	return (mode1->hdisplay < mode2->hdisplay) - (mode2->hdisplay < mode1->hdisplay);
> +}
> +
>  /**
>   * kmstest_get_connector_default_mode:
>   * @drm_fd: DRM fd
> @@ -1444,7 +1458,13 @@ void kmstest_force_edid(int drm_fd, drmModeConnector *connector,
>  bool kmstest_get_connector_default_mode(int drm_fd, drmModeConnector *connector,
>  					drmModeModeInfo *mode)
>  {
> -	int i;
> +	enum {
> +		RESOLUTION_DEFAULT = 0,
> +		RESOLUTION_HIGHEST,
> +		RESOLUTION_LOWEST,
> +	};
> +	char *env;
> +	int i, res = RESOLUTION_DEFAULT;
>  
>  	if (!connector->count_modes) {
>  		igt_warn("no modes for connector %d\n",
> @@ -1452,6 +1472,21 @@ bool kmstest_get_connector_default_mode(int drm_fd, drmModeConnector *connector,
>  		return false;
>  	}
>  
> +	env = getenv("IGT_KMS_RESOLUTION");
> +	if (env)
> +		res = atoi(env);

With what I replied to the igt_runner patch in mind, the parsing of
the strings "highest" and "lowest" would have to be done here instead
of in the runner.


-- 
Petri Latvala


> +
> +	if (res) {
> +		qsort(connector->modes,
> +		      connector->count_modes,
> +		      sizeof(drmModeModeInfo),
> +		      (res == RESOLUTION_HIGHEST) ?
> +			sort_drm_modes_dsc : sort_drm_modes_asc);
> +
> +		*mode = connector->modes[0];
> +		return true;
> +	}
> +
>  	for (i = 0; i < connector->count_modes; i++) {
>  		if (i == 0 ||
>  		    connector->modes[i].type & DRM_MODE_TYPE_PREFERRED) {
> -- 
> 2.35.1
> 

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

* Re: [igt-dev] [RFC i-g-t 1/4] runner: Introduce --resolution to igt_runner
  2022-06-10 11:31     ` Petri Latvala
@ 2022-06-10 12:16       ` Knop, Ryszard
  2022-06-10 13:21         ` Petri Latvala
  0 siblings, 1 reply; 13+ messages in thread
From: Knop, Ryszard @ 2022-06-10 12:16 UTC (permalink / raw)
  To: Latvala, Petri, Modem, Bhanuprakash; +Cc: igt-dev

On Fri, 2022-06-10 at 14:31 +0300, Petri Latvala wrote:
> On Fri, May 27, 2022 at 03:39:22PM +0300, Petri Latvala wrote:
> > On Fri, May 27, 2022 at 01:43:50PM +0530, Bhanuprakash Modem wrote:
> > > Allow finer control of taking default DRM display mode for
> > > subtests
> > > instead of taking the preferred mode exposed by the Kernel.
> > > 
> > > Example:
> > > Eventhough we have an 8K panel, Kernel may expose 4K or lesser
> > > mode
> > > as a preferred mode. So all subtests will take this mode as a
> > > default
> > > may cause losing the coverage.
> > > 
> > > This patch will set the environment variable based on the user
> > > request,
> > > and IGT will parse this environment variable and take the
> > > decision to
> > > choose the mode from the available list.
> > > 
> > > The default is still to take the preferred mode exposed by the
> > > Kernel.
> > > Other options are:
> > > * highest: Choose the mode with highest possible resolution.
> > > * lowest:  Choose the mode with lowest possible resolution.
> > > 
> > > Cc: Petri Latvala <petri.latvala@intel.com>
> > > Cc: Swati Sharma <swati2.sharma@intel.com>
> > > Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> > > ---
> > >  runner/executor.c |  3 +++
> > >  runner/settings.c | 47
> > > +++++++++++++++++++++++++++++++++++++++++++++++
> > >  runner/settings.h |  7 +++++++
> > >  3 files changed, 57 insertions(+)
> > > 
> > > diff --git a/runner/executor.c b/runner/executor.c
> > > index 6e6ca9cc..fc805c30 100644
> > > --- a/runner/executor.c
> > > +++ b/runner/executor.c
> > > @@ -2056,6 +2056,9 @@ bool execute(struct execute_state *state,
> > >         }
> > >  
> > >   end:
> > > +       if (getenv("IGT_KMS_RESOLUTION"))
> > > +               unsetenv("IGT_KMS_RESOLUTION");
> > > +
> > >         if (settings->enable_code_coverage && !settings-
> > > >cov_results_per_test) {
> > >                 char *reason = NULL;
> > >  
> > > diff --git a/runner/settings.c b/runner/settings.c
> > > index bb63a9f4..a20bcd01 100644
> > > --- a/runner/settings.c
> > > +++ b/runner/settings.c
> > > @@ -30,6 +30,7 @@ enum {
> > >         OPT_COV_RESULTS_PER_TEST,
> > >         OPT_VERSION,
> > >         OPT_PRUNE_MODE,
> > > +       OPT_RESOLUTION,
> > >         OPT_HELP = 'h',
> > >         OPT_NAME = 'n',
> > >         OPT_DRY_RUN = 'd',
> > > @@ -78,6 +79,16 @@ static struct {
> > >         { 0, 0 },
> > >  };
> > >  
> > > +static struct {
> > > +       int value;
> > > +       const char *name;
> > > +} resolution_modes[] = {
> > > +       { RESOLUTION_DEFAULT, "default" },
> > > +       { RESOLUTION_HIGHEST, "highest" },
> > > +       { RESOLUTION_LOWEST, "lowest" },
> > > +       { 0, 0 },
> > > +};
> > > +
> > >  static bool set_log_level(struct settings* settings, const char
> > > *level)
> > >  {
> > >         typeof(*log_levels) *it;
> > > @@ -130,6 +141,26 @@ static bool set_prune_mode(struct settings*
> > > settings, const char *mode)
> > >         return false;
> > >  }
> > >  
> > > +static bool set_resolution_mode(struct settings *settings, const
> > > char *mode)
> > > +{
> > > +       typeof(*resolution_modes) *it;
> > > +       char res[2];
> > > +
> > > +       for (it = resolution_modes; it->name; it++) {
> > > +               if (!strcmp(mode, it->name)) {
> > > +                       settings->resolution = it->value;
> > > +
> > > +                       sprintf(res, "%d", it->value);
> > > +                       setenv("IGT_KMS_RESOLUTION", res, 1);
> > > +
> > > +                       return true;
> > > +               }
> > > +       }
> > > +       setenv("IGT_KMS_RESOLUTION", "0", 1);
> > > +
> > > +       return false;
> > > +}
> > > +
> > >  static bool parse_abort_conditions(struct settings *settings,
> > > const char *optarg)
> > >  {
> > >         char *dup, *origdup, *p;
> > > @@ -279,6 +310,12 @@ static const char *usage_str =
> > >         "                                                  not in
> > > the requested test set.\n"
> > >         "                                                  Useful
> > > when you have a hand-written\n"
> > >         "                                                 
> > > testlist.\n"
> > > +       "  --resolution <mode>   Control of taking default DRM
> > > display mode for subtests\n"
> > > +       "                        instead of taking the preferred
> > > mode exposed by the Kernel.\n"
> > > +       "                        Possible options:\n"
> > > +       "                         default  - Use preferred mode.
> > > (default)\n"
> > > +       "                         highest  - Use the mode with
> > > highest possible resolution.\n"
> > > +       "                         lowest   - Use the mode with
> > > lowest possible resolution.\n"
> > >         "  -b, --blacklist FILENAME\n"
> > >         "                        Exclude all test matching to
> > > regexes from FILENAME\n"
> > >         "                        (can be used more than once)\n"
> > > @@ -532,6 +569,7 @@ bool parse_options(int argc, char **argv,
> > >                 {"dmesg-warn-level", required_argument, NULL,
> > > OPT_DMESG_WARN_LEVEL},
> > >                 {"prune-mode", required_argument, NULL,
> > > OPT_PRUNE_MODE},
> > >                 {"blacklist", required_argument, NULL,
> > > OPT_BLACKLIST},
> > > +               {"resolution", optional_argument, NULL,
> > > OPT_RESOLUTION},
> > >                 {"list-all", no_argument, NULL, OPT_LIST_ALL},
> > >                 { 0, 0, 0, 0},
> > >         };
> > > @@ -640,6 +678,12 @@ bool parse_options(int argc, char **argv,
> > >                                             
> > > absolute_path(optarg)))
> > >                                 goto error;
> > >                         break;
> > > +               case OPT_RESOLUTION:
> > > +                       if (!set_resolution_mode(settings,
> > > optarg)) {
> > > +                               usage("Cannot parse resolution
> > > mode", stderr);
> > > +                               goto error;
> > > +                       }
> > > +                       break;
> > 
> > If you only set the env var here, it won't be set on resumes.
> > 
> > >                 case OPT_LIST_ALL:
> > >                         settings->list_all = true;
> > >                         break;
> > > @@ -854,6 +898,7 @@ bool serialize_settings(struct settings
> > > *settings)
> > >         SERIALIZE_LINE(f, settings, piglit_style_dmesg, "%d");
> > >         SERIALIZE_LINE(f, settings, dmesg_warn_level, "%d");
> > >         SERIALIZE_LINE(f, settings, prune_mode, "%d");
> > > +       SERIALIZE_LINE(f, settings, resolution, "%d");
> > >         SERIALIZE_LINE(f, settings, test_root, "%s");
> > >         SERIALIZE_LINE(f, settings, results_path, "%s");
> > >         SERIALIZE_LINE(f, settings, enable_code_coverage, "%d");
> > > @@ -886,6 +931,7 @@ bool read_settings_from_file(struct settings
> > > *settings, FILE *f)
> > >         char *name = NULL, *val = NULL;
> > >  
> > >         settings->dmesg_warn_level = -1;
> > > +       settings->resolution = 0;
> > 
> > If a zero val is the default, you don't need to set it here
> > explicitly. Anything calling this function has called init_settings
> > which memsets the whole object to 0.
> > 
> > 
> > 
> > I'll look into this in more detail next week. I need to form an
> > actual
> > opinion on a few subjects, such as whether this is needed in runner
> > at
> > all (one can set environment variables when executing and let
> > runner
> > just pass them through, it doesn't clean the environment), whether
> > --resolution is a good name for the switch, and whether I want a
> > more
> > generic environment storing/handling in the runner instead now or
> > later.
> 
> Alright, my opinion is that it's better to have a generic --env flag
> on igt_runner instead. It's useful to have the support for making
> sure
> other env vars also get correctly set on resumes, notably IGT_DEVICE.
> 
> In short, we need --environment=key=value, and also --environment=key
> (gets the var from the current environment, stores the
> value). Repeated flags store more values.
> 
> If you don't have the bandwidth to work on that change yourself, I
> suppose Ryszard might be able to pick this up. Ryszard, what do you
> think?
> 
> 

Yeah, I can take this. The runner should not touch the
IGT_KMS_RESOLUTION var at all in that case, rather have that handled in
the test process, and any vars marked via --environment will get saved
for resumes.

Just one question, if the var is not set in the environment and the
flag gets set to just the name, should the runner error out, or just
set an empty var?

Ryszard

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

* Re: [igt-dev] [RFC i-g-t 1/4] runner: Introduce --resolution to igt_runner
  2022-06-10 12:16       ` Knop, Ryszard
@ 2022-06-10 13:21         ` Petri Latvala
  0 siblings, 0 replies; 13+ messages in thread
From: Petri Latvala @ 2022-06-10 13:21 UTC (permalink / raw)
  To: Knop, Ryszard; +Cc: igt-dev

On Fri, Jun 10, 2022 at 03:16:25PM +0300, Knop, Ryszard wrote:
> On Fri, 2022-06-10 at 14:31 +0300, Petri Latvala wrote:
> > On Fri, May 27, 2022 at 03:39:22PM +0300, Petri Latvala wrote:
> > > On Fri, May 27, 2022 at 01:43:50PM +0530, Bhanuprakash Modem wrote:
> > > > Allow finer control of taking default DRM display mode for
> > > > subtests
> > > > instead of taking the preferred mode exposed by the Kernel.
> > > >
> > > > Example:
> > > > Eventhough we have an 8K panel, Kernel may expose 4K or lesser
> > > > mode
> > > > as a preferred mode. So all subtests will take this mode as a
> > > > default
> > > > may cause losing the coverage.
> > > >
> > > > This patch will set the environment variable based on the user
> > > > request,
> > > > and IGT will parse this environment variable and take the
> > > > decision to
> > > > choose the mode from the available list.
> > > >
> > > > The default is still to take the preferred mode exposed by the
> > > > Kernel.
> > > > Other options are:
> > > > * highest: Choose the mode with highest possible resolution.
> > > > * lowest:  Choose the mode with lowest possible resolution.
> > > >
> > > > Cc: Petri Latvala <petri.latvala@intel.com>
> > > > Cc: Swati Sharma <swati2.sharma@intel.com>
> > > > Signed-off-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>
> > > > ---
> > > >  runner/executor.c |  3 +++
> > > >  runner/settings.c | 47
> > > > +++++++++++++++++++++++++++++++++++++++++++++++
> > > >  runner/settings.h |  7 +++++++
> > > >  3 files changed, 57 insertions(+)
> > > >
> > > > diff --git a/runner/executor.c b/runner/executor.c
> > > > index 6e6ca9cc..fc805c30 100644
> > > > --- a/runner/executor.c
> > > > +++ b/runner/executor.c
> > > > @@ -2056,6 +2056,9 @@ bool execute(struct execute_state *state,
> > > >         }
> > > >
> > > >   end:
> > > > +       if (getenv("IGT_KMS_RESOLUTION"))
> > > > +               unsetenv("IGT_KMS_RESOLUTION");
> > > > +
> > > >         if (settings->enable_code_coverage && !settings-
> > > > >cov_results_per_test) {
> > > >                 char *reason = NULL;
> > > >
> > > > diff --git a/runner/settings.c b/runner/settings.c
> > > > index bb63a9f4..a20bcd01 100644
> > > > --- a/runner/settings.c
> > > > +++ b/runner/settings.c
> > > > @@ -30,6 +30,7 @@ enum {
> > > >         OPT_COV_RESULTS_PER_TEST,
> > > >         OPT_VERSION,
> > > >         OPT_PRUNE_MODE,
> > > > +       OPT_RESOLUTION,
> > > >         OPT_HELP = 'h',
> > > >         OPT_NAME = 'n',
> > > >         OPT_DRY_RUN = 'd',
> > > > @@ -78,6 +79,16 @@ static struct {
> > > >         { 0, 0 },
> > > >  };
> > > >
> > > > +static struct {
> > > > +       int value;
> > > > +       const char *name;
> > > > +} resolution_modes[] = {
> > > > +       { RESOLUTION_DEFAULT, "default" },
> > > > +       { RESOLUTION_HIGHEST, "highest" },
> > > > +       { RESOLUTION_LOWEST, "lowest" },
> > > > +       { 0, 0 },
> > > > +};
> > > > +
> > > >  static bool set_log_level(struct settings* settings, const char
> > > > *level)
> > > >  {
> > > >         typeof(*log_levels) *it;
> > > > @@ -130,6 +141,26 @@ static bool set_prune_mode(struct settings*
> > > > settings, const char *mode)
> > > >         return false;
> > > >  }
> > > >
> > > > +static bool set_resolution_mode(struct settings *settings, const
> > > > char *mode)
> > > > +{
> > > > +       typeof(*resolution_modes) *it;
> > > > +       char res[2];
> > > > +
> > > > +       for (it = resolution_modes; it->name; it++) {
> > > > +               if (!strcmp(mode, it->name)) {
> > > > +                       settings->resolution = it->value;
> > > > +
> > > > +                       sprintf(res, "%d", it->value);
> > > > +                       setenv("IGT_KMS_RESOLUTION", res, 1);
> > > > +
> > > > +                       return true;
> > > > +               }
> > > > +       }
> > > > +       setenv("IGT_KMS_RESOLUTION", "0", 1);
> > > > +
> > > > +       return false;
> > > > +}
> > > > +
> > > >  static bool parse_abort_conditions(struct settings *settings,
> > > > const char *optarg)
> > > >  {
> > > >         char *dup, *origdup, *p;
> > > > @@ -279,6 +310,12 @@ static const char *usage_str =
> > > >         "                                                  not in
> > > > the requested test set.\n"
> > > >         "                                                  Useful
> > > > when you have a hand-written\n"
> > > >         "
> > > > testlist.\n"
> > > > +       "  --resolution <mode>   Control of taking default DRM
> > > > display mode for subtests\n"
> > > > +       "                        instead of taking the preferred
> > > > mode exposed by the Kernel.\n"
> > > > +       "                        Possible options:\n"
> > > > +       "                         default  - Use preferred mode.
> > > > (default)\n"
> > > > +       "                         highest  - Use the mode with
> > > > highest possible resolution.\n"
> > > > +       "                         lowest   - Use the mode with
> > > > lowest possible resolution.\n"
> > > >         "  -b, --blacklist FILENAME\n"
> > > >         "                        Exclude all test matching to
> > > > regexes from FILENAME\n"
> > > >         "                        (can be used more than once)\n"
> > > > @@ -532,6 +569,7 @@ bool parse_options(int argc, char **argv,
> > > >                 {"dmesg-warn-level", required_argument, NULL,
> > > > OPT_DMESG_WARN_LEVEL},
> > > >                 {"prune-mode", required_argument, NULL,
> > > > OPT_PRUNE_MODE},
> > > >                 {"blacklist", required_argument, NULL,
> > > > OPT_BLACKLIST},
> > > > +               {"resolution", optional_argument, NULL,
> > > > OPT_RESOLUTION},
> > > >                 {"list-all", no_argument, NULL, OPT_LIST_ALL},
> > > >                 { 0, 0, 0, 0},
> > > >         };
> > > > @@ -640,6 +678,12 @@ bool parse_options(int argc, char **argv,
> > > >
> > > > absolute_path(optarg)))
> > > >                                 goto error;
> > > >                         break;
> > > > +               case OPT_RESOLUTION:
> > > > +                       if (!set_resolution_mode(settings,
> > > > optarg)) {
> > > > +                               usage("Cannot parse resolution
> > > > mode", stderr);
> > > > +                               goto error;
> > > > +                       }
> > > > +                       break;
> > >
> > > If you only set the env var here, it won't be set on resumes.
> > >
> > > >                 case OPT_LIST_ALL:
> > > >                         settings->list_all = true;
> > > >                         break;
> > > > @@ -854,6 +898,7 @@ bool serialize_settings(struct settings
> > > > *settings)
> > > >         SERIALIZE_LINE(f, settings, piglit_style_dmesg, "%d");
> > > >         SERIALIZE_LINE(f, settings, dmesg_warn_level, "%d");
> > > >         SERIALIZE_LINE(f, settings, prune_mode, "%d");
> > > > +       SERIALIZE_LINE(f, settings, resolution, "%d");
> > > >         SERIALIZE_LINE(f, settings, test_root, "%s");
> > > >         SERIALIZE_LINE(f, settings, results_path, "%s");
> > > >         SERIALIZE_LINE(f, settings, enable_code_coverage, "%d");
> > > > @@ -886,6 +931,7 @@ bool read_settings_from_file(struct settings
> > > > *settings, FILE *f)
> > > >         char *name = NULL, *val = NULL;
> > > >
> > > >         settings->dmesg_warn_level = -1;
> > > > +       settings->resolution = 0;
> > >
> > > If a zero val is the default, you don't need to set it here
> > > explicitly. Anything calling this function has called init_settings
> > > which memsets the whole object to 0.
> > >
> > >
> > >
> > > I'll look into this in more detail next week. I need to form an
> > > actual
> > > opinion on a few subjects, such as whether this is needed in runner
> > > at
> > > all (one can set environment variables when executing and let
> > > runner
> > > just pass them through, it doesn't clean the environment), whether
> > > --resolution is a good name for the switch, and whether I want a
> > > more
> > > generic environment storing/handling in the runner instead now or
> > > later.
> >
> > Alright, my opinion is that it's better to have a generic --env flag
> > on igt_runner instead. It's useful to have the support for making
> > sure
> > other env vars also get correctly set on resumes, notably IGT_DEVICE.
> >
> > In short, we need --environment=key=value, and also --environment=key
> > (gets the var from the current environment, stores the
> > value). Repeated flags store more values.
> >
> > If you don't have the bandwidth to work on that change yourself, I
> > suppose Ryszard might be able to pick this up. Ryszard, what do you
> > think?
> >
> >
> 
> Yeah, I can take this. The runner should not touch the
> IGT_KMS_RESOLUTION var at all in that case, rather have that handled in
> the test process, and any vars marked via --environment will get saved
> for resumes.
> 
> Just one question, if the var is not set in the environment and the
> flag gets set to just the name, should the runner error out, or just
> set an empty var?

I say error out. It's most probably a user mistake.


-- 
Petri Latvala

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

end of thread, other threads:[~2022-06-10 13:23 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-05-27  8:13 [igt-dev] [RFC i-g-t 0/4] runner: Introduce --resolution to igt_runner Bhanuprakash Modem
2022-05-27  8:13 ` [igt-dev] [RFC i-g-t 1/4] " Bhanuprakash Modem
2022-05-27 12:39   ` Petri Latvala
2022-06-10 11:31     ` Petri Latvala
2022-06-10 12:16       ` Knop, Ryszard
2022-06-10 13:21         ` Petri Latvala
2022-05-27  8:13 ` [igt-dev] [RFC i-g-t 2/4] runner: Unit tests for the --resolution option Bhanuprakash Modem
2022-05-27  8:13 ` [igt-dev] [RFC i-g-t 3/4] lib/igt_kms: Add support for --resolution from igt_runner Bhanuprakash Modem
2022-06-10 11:33   ` Petri Latvala
2022-05-27  8:13 ` [igt-dev] [RFC i-g-t 4/4] HAX: Add debug prints in choosing the default mode Bhanuprakash Modem
2022-05-27  8:43 ` [igt-dev] ✗ GitLab.Pipeline: warning for runner: Introduce --resolution to igt_runner Patchwork
2022-05-27  9:37 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
2022-05-27 11:49 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork

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