Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests
@ 2025-03-03 23:14 Umesh Nerlige Ramappa
  2025-03-03 23:14 ` [PATCH i-g-t v2 01/14] tests/intel/xe_oa: Use static for global variables Umesh Nerlige Ramappa
                   ` (16 more replies)
  0 siblings, 17 replies; 25+ messages in thread
From: Umesh Nerlige Ramappa @ 2025-03-03 23:14 UTC (permalink / raw)
  To: igt-dev, Ashutosh Dixit

Some refactor, rewrite and fixes for OA tests. Added some tuning
parameters to control execution on slower platforms and simulation.

v2: Added review comments

Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>

Umesh Nerlige Ramappa (14):
  tests/intel/xe_oa: Use static for global variables
  tests/intel/xe_oa: Drop unused macro
  tests/intel/xe_oa: Use period_ns in max_oa_exponent_for_period_lte
  tests/intel/xe_oa: Rename oa_exp_1_millisec to oa_exponent_default
  tests/intel/xe_oa: Use default exponent for some tests
  tests/intel/xe_oa: Use same render copy width and height across tests
  tests/intel/xe_oa: Rewrite the polling small buf test
  tests/intel/xe_oa: Simplify the buffer-fill test
  tests/intel/xe_oa: Use default buffer size for non-zero reason
  tests/intel/xe_oa: Test oa buffer sizes
  tests/intel/xe_oa: Rewrite enable-disable test
  tests/intel/xe_oa: Enable unprivileged-single-ctx-counters and fix it
  tests/intel/xe_oa: Fix mmio_trigger_reports testing
  tests/intel/xe_oa: Set boundaries for OA exponent test

 tests/intel/xe_oa.c | 570 ++++++++++++++++----------------------------
 1 file changed, 205 insertions(+), 365 deletions(-)

-- 
2.34.1


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

* [PATCH i-g-t v2 01/14] tests/intel/xe_oa: Use static for global variables
  2025-03-03 23:14 [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests Umesh Nerlige Ramappa
@ 2025-03-03 23:14 ` Umesh Nerlige Ramappa
  2025-03-03 23:14 ` [PATCH i-g-t v2 02/14] tests/intel/xe_oa: Drop unused macro Umesh Nerlige Ramappa
                   ` (15 subsequent siblings)
  16 siblings, 0 replies; 25+ messages in thread
From: Umesh Nerlige Ramappa @ 2025-03-03 23:14 UTC (permalink / raw)
  To: igt-dev, Ashutosh Dixit

Use static for mmio_data and hwe.

Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
---
 tests/intel/xe_oa.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
index 6abf44128..562a4edf2 100644
--- a/tests/intel/xe_oa.c
+++ b/tests/intel/xe_oa.c
@@ -296,12 +296,12 @@ static int pm_fd = -1;
 static int stream_fd = -1;
 static uint32_t devid;
 
-struct drm_xe_engine_class_instance default_hwe;
+static struct drm_xe_engine_class_instance default_hwe;
 
 static struct intel_xe_perf *intel_xe_perf;
 static uint64_t oa_exp_1_millisec;
 static size_t default_oa_buffer_size;
-struct intel_mmio_data mmio_data;
+static struct intel_mmio_data mmio_data;
 static igt_render_copyfunc_t render_copy;
 
 static struct intel_xe_perf_metric_set *metric_set(const struct drm_xe_engine_class_instance *hwe)
-- 
2.34.1


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

* [PATCH i-g-t v2 02/14] tests/intel/xe_oa: Drop unused macro
  2025-03-03 23:14 [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests Umesh Nerlige Ramappa
  2025-03-03 23:14 ` [PATCH i-g-t v2 01/14] tests/intel/xe_oa: Use static for global variables Umesh Nerlige Ramappa
@ 2025-03-03 23:14 ` Umesh Nerlige Ramappa
  2025-03-03 23:14 ` [PATCH i-g-t v2 03/14] tests/intel/xe_oa: Use period_ns in max_oa_exponent_for_period_lte Umesh Nerlige Ramappa
                   ` (14 subsequent siblings)
  16 siblings, 0 replies; 25+ messages in thread
From: Umesh Nerlige Ramappa @ 2025-03-03 23:14 UTC (permalink / raw)
  To: igt-dev, Ashutosh Dixit

Drop unused for helper

Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
---
 tests/intel/xe_oa.c | 7 -------
 1 file changed, 7 deletions(-)

diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
index 562a4edf2..5c68f1d79 100644
--- a/tests/intel/xe_oa.c
+++ b/tests/intel/xe_oa.c
@@ -4788,13 +4788,6 @@ static const char *xe_engine_class_name(uint32_t engine_class)
 		igt_dynamic_f("%s-%d-%s", xe_engine_class_name(hwe->engine_class), \
 			      hwe->engine_instance, str)
 
-#define __for_one_render_engine_0(hwe) \
-	xe_for_each_engine(drm_fd, hwe) \
-		if (hwe->engine_class == DRM_XE_ENGINE_CLASS_RENDER) \
-			break; \
-	for_each_if(hwe->engine_class == DRM_XE_ENGINE_CLASS_RENDER) \
-		igt_dynamic_f("rcs-%d", hwe->engine_instance)
-
 #define __for_one_render_engine(hwe)	      \
 	for (int m = 0, done = 0; !done; m++) \
 		for_each_if(m < xe_number_engines(drm_fd) && \
-- 
2.34.1


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

* [PATCH i-g-t v2 03/14] tests/intel/xe_oa: Use period_ns in max_oa_exponent_for_period_lte
  2025-03-03 23:14 [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests Umesh Nerlige Ramappa
  2025-03-03 23:14 ` [PATCH i-g-t v2 01/14] tests/intel/xe_oa: Use static for global variables Umesh Nerlige Ramappa
  2025-03-03 23:14 ` [PATCH i-g-t v2 02/14] tests/intel/xe_oa: Drop unused macro Umesh Nerlige Ramappa
@ 2025-03-03 23:14 ` Umesh Nerlige Ramappa
  2025-03-03 23:38   ` Dixit, Ashutosh
  2025-03-03 23:14 ` [PATCH i-g-t v2 04/14] tests/intel/xe_oa: Rename oa_exp_1_millisec to oa_exponent_default Umesh Nerlige Ramappa
                   ` (13 subsequent siblings)
  16 siblings, 1 reply; 25+ messages in thread
From: Umesh Nerlige Ramappa @ 2025-03-03 23:14 UTC (permalink / raw)
  To: igt-dev, Ashutosh Dixit

Rename the argument in max_oa_exponent_for_period_lte() to period_ns to
specify the units of the period.

Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
---
 tests/intel/xe_oa.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
index 5c68f1d79..b15958de6 100644
--- a/tests/intel/xe_oa.c
+++ b/tests/intel/xe_oa.c
@@ -688,10 +688,10 @@ timebase_scale(uint64_t delta)
 }
 
 /* Returns: the largest OA exponent that will still result in a sampling period
- * less than or equal to the given @period.
+ * less than or equal to the given @period_ns.
  */
 static int
-max_oa_exponent_for_period_lte(uint64_t period)
+max_oa_exponent_for_period_lte(uint64_t period_ns)
 {
 	/* NB: timebase_scale() takes a uint64_t and an exponent of 30
 	 * would already represent a period of ~3 minutes so there's
@@ -700,7 +700,7 @@ max_oa_exponent_for_period_lte(uint64_t period)
 	for (int i = 0; i < 30; i++) {
 		uint64_t oa_period = timebase_scale(2 << i);
 
-		if (oa_period > period)
+		if (oa_period > period_ns)
 			return max(0, i - 1);
 	}
 
-- 
2.34.1


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

* [PATCH i-g-t v2 04/14] tests/intel/xe_oa: Rename oa_exp_1_millisec to oa_exponent_default
  2025-03-03 23:14 [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests Umesh Nerlige Ramappa
                   ` (2 preceding siblings ...)
  2025-03-03 23:14 ` [PATCH i-g-t v2 03/14] tests/intel/xe_oa: Use period_ns in max_oa_exponent_for_period_lte Umesh Nerlige Ramappa
@ 2025-03-03 23:14 ` Umesh Nerlige Ramappa
  2025-03-03 23:14 ` [PATCH i-g-t v2 05/14] tests/intel/xe_oa: Use default exponent for some tests Umesh Nerlige Ramappa
                   ` (12 subsequent siblings)
  16 siblings, 0 replies; 25+ messages in thread
From: Umesh Nerlige Ramappa @ 2025-03-03 23:14 UTC (permalink / raw)
  To: igt-dev, Ashutosh Dixit

On slower platforms, the idea is to set the default oa_exponent to a
smaller value so that test execution is faster. Rename the global
exponent to default so it can be set to platform-specific value.

v2: Add more detail in commit message (Ashutosh)

Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
---
 tests/intel/xe_oa.c | 34 +++++++++++++++++-----------------
 1 file changed, 17 insertions(+), 17 deletions(-)

diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
index b15958de6..eddd91939 100644
--- a/tests/intel/xe_oa.c
+++ b/tests/intel/xe_oa.c
@@ -299,7 +299,7 @@ static uint32_t devid;
 static struct drm_xe_engine_class_instance default_hwe;
 
 static struct intel_xe_perf *intel_xe_perf;
-static uint64_t oa_exp_1_millisec;
+static uint64_t oa_exponent_default;
 static size_t default_oa_buffer_size;
 static struct intel_mmio_data mmio_data;
 static igt_render_copyfunc_t render_copy;
@@ -514,7 +514,7 @@ static size_t get_default_oa_buffer_size(int fd)
 		/* OA unit configuration */
 		DRM_XE_OA_PROPERTY_OA_METRIC_SET, default_test_set->perf_oa_metrics_set,
 		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(default_test_set->perf_oa_format),
-		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exp_1_millisec,
+		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
 	};
 	struct intel_xe_oa_open_prop param = {
 		.num_properties = ARRAY_SIZE(properties) / 2,
@@ -1089,7 +1089,7 @@ init_sys_info(void)
 
 	intel_xe_perf_load_perf_configs(intel_xe_perf, drm_fd);
 
-	oa_exp_1_millisec = max_oa_exponent_for_period_lte(1000000);
+	oa_exponent_default = max_oa_exponent_for_period_lte(1000000);
 
 	default_oa_buffer_size = get_default_oa_buffer_size(drm_fd);
 	igt_debug("default_oa_buffer_size: %zu\n", default_oa_buffer_size);
@@ -1114,7 +1114,7 @@ static void test_system_wide_paranoid(void)
 			/* OA unit configuration */
 			DRM_XE_OA_PROPERTY_OA_METRIC_SET, default_test_set->perf_oa_metrics_set,
 			DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(default_test_set->perf_oa_format),
-			DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exp_1_millisec,
+			DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
 		};
 		struct intel_xe_oa_open_prop param = {
 			.num_properties = ARRAY_SIZE(properties) / 2,
@@ -1140,7 +1140,7 @@ static void test_system_wide_paranoid(void)
 			/* OA unit configuration */
 			DRM_XE_OA_PROPERTY_OA_METRIC_SET, default_test_set->perf_oa_metrics_set,
 			DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(default_test_set->perf_oa_format),
-			DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exp_1_millisec,
+			DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
 		};
 		struct intel_xe_oa_open_prop param = {
 			.num_properties = ARRAY_SIZE(properties) / 2,
@@ -1174,7 +1174,7 @@ static void test_invalid_oa_metric_set_id(void)
 
 		/* OA unit configuration */
 		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(default_test_set->perf_oa_format),
-		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exp_1_millisec,
+		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
 		DRM_XE_OA_PROPERTY_OA_METRIC_SET, UINT64_MAX,
 	};
 	struct intel_xe_oa_open_prop param = {
@@ -1211,7 +1211,7 @@ static void test_invalid_oa_format_id(void)
 
 		/* OA unit configuration */
 		DRM_XE_OA_PROPERTY_OA_METRIC_SET, default_test_set->perf_oa_metrics_set,
-		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exp_1_millisec,
+		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
 		DRM_XE_OA_PROPERTY_OA_FORMAT, UINT64_MAX, /* No __ff() here */
 	};
 	struct intel_xe_oa_open_prop param = {
@@ -1246,7 +1246,7 @@ static void test_missing_sample_flags(void)
 
 		/* OA unit configuration */
 		DRM_XE_OA_PROPERTY_OA_METRIC_SET, default_test_set->perf_oa_metrics_set,
-		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exp_1_millisec,
+		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
 		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(default_test_set->perf_oa_format),
 	};
 	struct intel_xe_oa_open_prop param = {
@@ -1536,7 +1536,7 @@ static void test_oa_formats(const struct drm_xe_engine_class_instance *hwe)
 		igt_debug("Checking OA format %s\n", format.name);
 
 		open_and_read_2_oa_reports(i,
-					   oa_exp_1_millisec,
+					   oa_exponent_default,
 					   oa_report0,
 					   oa_report1,
 					   false, /* timer reports only */
@@ -3420,7 +3420,7 @@ test_rc6_disable(void)
 		/* OA unit configuration */
 		DRM_XE_OA_PROPERTY_OA_METRIC_SET, default_test_set->perf_oa_metrics_set,
 		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(default_test_set->perf_oa_format),
-		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exp_1_millisec,
+		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
 	};
 	struct intel_xe_oa_open_prop param = {
 		.num_properties = ARRAY_SIZE(properties) / 2,
@@ -3648,7 +3648,7 @@ test_create_destroy_userspace_config(void)
 		/* OA unit configuration */
 		DRM_XE_OA_PROPERTY_SAMPLE_OA, true,
 		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(default_test_set->perf_oa_format),
-		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exp_1_millisec,
+		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
 		DRM_XE_OA_PROPERTY_OA_DISABLED, true,
 		DRM_XE_OA_PROPERTY_OA_METRIC_SET
 	};
@@ -3948,7 +3948,7 @@ static void test_oa_regs_whitelist(const struct drm_xe_engine_class_instance *hw
 		DRM_XE_OA_PROPERTY_SAMPLE_OA, true,
 		DRM_XE_OA_PROPERTY_OA_METRIC_SET, test_set->perf_oa_metrics_set,
 		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(test_set->perf_oa_format),
-		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exp_1_millisec,
+		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
 	};
 	struct intel_xe_oa_open_prop param = {
 		.num_properties = sizeof(properties) / 16,
@@ -4154,7 +4154,7 @@ test_oa_unit_exclusive_stream(bool exponent)
 		DRM_XE_OA_PROPERTY_OA_METRIC_SET, 0,
 		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(0),
 		DRM_XE_OA_PROPERTY_OA_ENGINE_INSTANCE, 0,
-		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exp_1_millisec,
+		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
 	};
 	struct intel_xe_oa_open_prop param = {
 		.num_properties = ARRAY_SIZE(properties) / 2,
@@ -4216,7 +4216,7 @@ test_oa_unit_exclusive_stream(bool exponent)
 		properties[7] = __ff(test_set->perf_oa_format);
 		properties[9] = hwe->engine_instance;
 		properties[10] = DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT;
-		properties[11] = oa_exp_1_millisec;
+		properties[11] = oa_exponent_default;
 		intel_xe_perf_ioctl_err(drm_fd, DRM_XE_OBSERVATION_OP_STREAM_OPEN, &param, EBUSY);
 
 		/* case 2: concurrent access to non-OAG unit should fail */
@@ -4374,7 +4374,7 @@ static void map_oa_buffer_forked_access(const struct drm_xe_engine_class_instanc
 static void mmap_wait_for_periodic_reports(void *oa_vaddr, uint32_t n,
 					   const struct drm_xe_engine_class_instance *hwe)
 {
-	uint32_t period_us = oa_exponent_to_ns(oa_exp_1_millisec) / 1000;
+	uint32_t period_us = oa_exponent_to_ns(oa_exponent_default) / 1000;
 	struct intel_xe_perf_metric_set *test_set = metric_set(hwe);
 	uint64_t fmt = test_set->perf_oa_format;
 	uint32_t num_periodic_reports = 0;
@@ -4440,7 +4440,7 @@ static void closed_fd_and_unmapped_access(const struct drm_xe_engine_class_insta
 		DRM_XE_OA_PROPERTY_SAMPLE_OA, true,
 		DRM_XE_OA_PROPERTY_OA_METRIC_SET, default_test_set->perf_oa_metrics_set,
 		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(default_test_set->perf_oa_format),
-		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exp_1_millisec,
+		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
 	};
 	struct intel_xe_oa_open_prop param = {
 		.num_properties = ARRAY_SIZE(properties) / 2,
@@ -4487,7 +4487,7 @@ static void test_mapped_oa_buffer(map_oa_buffer_test_t test_with_fd_open,
 		DRM_XE_OA_PROPERTY_SAMPLE_OA, true,
 		DRM_XE_OA_PROPERTY_OA_METRIC_SET, test_set->perf_oa_metrics_set,
 		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(test_set->perf_oa_format),
-		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exp_1_millisec,
+		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
 		DRM_XE_OA_PROPERTY_OA_ENGINE_INSTANCE, hwe->engine_instance,
 	};
 	struct intel_xe_oa_open_prop param = {
-- 
2.34.1


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

* [PATCH i-g-t v2 05/14] tests/intel/xe_oa: Use default exponent for some tests
  2025-03-03 23:14 [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests Umesh Nerlige Ramappa
                   ` (3 preceding siblings ...)
  2025-03-03 23:14 ` [PATCH i-g-t v2 04/14] tests/intel/xe_oa: Rename oa_exp_1_millisec to oa_exponent_default Umesh Nerlige Ramappa
@ 2025-03-03 23:14 ` Umesh Nerlige Ramappa
  2025-03-03 23:14 ` [PATCH i-g-t v2 06/14] tests/intel/xe_oa: Use same render copy width and height across tests Umesh Nerlige Ramappa
                   ` (11 subsequent siblings)
  16 siblings, 0 replies; 25+ messages in thread
From: Umesh Nerlige Ramappa @ 2025-03-03 23:14 UTC (permalink / raw)
  To: igt-dev, Ashutosh Dixit

Some tests are not dependent on the oa_exponent value, so just use the
default exponent for such tests, so that the tests can be tuned to run
in reasonable time on slow platforms.

- oa-tlb-validate
- short-reads
- stress-open-close
- mmio-triggered-reports

v2: Explain "why" in commit message (Ashutosh)

Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
---
 tests/intel/xe_oa.c | 16 ++++++----------
 1 file changed, 6 insertions(+), 10 deletions(-)

diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
index eddd91939..7889adf1e 100644
--- a/tests/intel/xe_oa.c
+++ b/tests/intel/xe_oa.c
@@ -2316,7 +2316,6 @@ num_valid_reports_captured(struct intel_xe_oa_open_prop *param,
 static void
 test_oa_tlb_invalidate(const struct drm_xe_engine_class_instance *hwe)
 {
-	int oa_exponent = max_oa_exponent_for_period_lte(30000000);
 	struct intel_xe_perf_metric_set *test_set = metric_set(hwe);
 	uint64_t properties[] = {
 		DRM_XE_OA_PROPERTY_OA_UNIT_ID, 0,
@@ -2324,7 +2323,7 @@ test_oa_tlb_invalidate(const struct drm_xe_engine_class_instance *hwe)
 
 		DRM_XE_OA_PROPERTY_OA_METRIC_SET, test_set->perf_oa_metrics_set,
 		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(test_set->perf_oa_format),
-		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent,
+		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
 		DRM_XE_OA_PROPERTY_OA_DISABLED, true,
 		DRM_XE_OA_PROPERTY_OA_ENGINE_INSTANCE, hwe->engine_instance,
 	};
@@ -2342,14 +2341,14 @@ test_oa_tlb_invalidate(const struct drm_xe_engine_class_instance *hwe)
 	 */
 	duration = 5LL * NSEC_PER_SEC;
 	num_reports1 = num_valid_reports_captured(&param, &duration, test_set->perf_oa_format);
-	num_expected_reports = duration / oa_exponent_to_ns(oa_exponent);
+	num_expected_reports = duration / oa_exponent_to_ns(oa_exponent_default);
 	igt_debug("expected num reports = %d\n", num_expected_reports);
 	igt_debug("actual num reports = %d\n", num_reports1);
 	igt_assert(num_reports1 > 0.95 * num_expected_reports);
 
 	duration = 5LL * NSEC_PER_SEC;
 	num_reports2 = num_valid_reports_captured(&param, &duration, test_set->perf_oa_format);
-	num_expected_reports = duration / oa_exponent_to_ns(oa_exponent);
+	num_expected_reports = duration / oa_exponent_to_ns(oa_exponent_default);
 	igt_debug("expected num reports = %d\n", num_expected_reports);
 	igt_debug("actual num reports = %d\n", num_reports2);
 	igt_assert(num_reports2 > 0.95 * num_expected_reports);
@@ -2738,7 +2737,6 @@ test_enable_disable(const struct drm_xe_engine_class_instance *hwe)
 static void
 test_short_reads(void)
 {
-	int oa_exponent = max_oa_exponent_for_period_lte(5000);
 	uint64_t properties[] = {
 		DRM_XE_OA_PROPERTY_OA_UNIT_ID, 0,
 
@@ -2748,7 +2746,7 @@ test_short_reads(void)
 		/* OA unit configuration */
 		DRM_XE_OA_PROPERTY_OA_METRIC_SET, default_test_set->perf_oa_metrics_set,
 		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(default_test_set->perf_oa_format),
-		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent,
+		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
 	};
 	struct intel_xe_oa_open_prop param = {
 		.num_properties = ARRAY_SIZE(properties) / 2,
@@ -3464,7 +3462,6 @@ test_stress_open_close(const struct drm_xe_engine_class_instance *hwe)
 	load_helper_run(HIGH);
 
 	igt_until_timeout(2) {
-		int oa_exponent = 5; /* 5 micro seconds */
 		uint64_t properties[] = {
 			DRM_XE_OA_PROPERTY_OA_UNIT_ID, 0,
 
@@ -3476,7 +3473,7 @@ test_stress_open_close(const struct drm_xe_engine_class_instance *hwe)
 			/* OA unit configuration */
 			DRM_XE_OA_PROPERTY_OA_METRIC_SET, test_set->perf_oa_metrics_set,
 			DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(test_set->perf_oa_format),
-			DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent,
+			DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
 			DRM_XE_OA_PROPERTY_OA_DISABLED, true,
 			DRM_XE_OA_PROPERTY_OA_ENGINE_INSTANCE, hwe->engine_instance,
 		};
@@ -3990,12 +3987,11 @@ static void
 __test_mmio_triggered_reports(struct drm_xe_engine_class_instance *hwe)
 {
 	struct intel_xe_perf_metric_set *test_set = default_test_set;
-	int oa_exponent = max_oa_exponent_for_period_lte(2 * NSEC_PER_SEC);
 	uint64_t properties[] = {
 		DRM_XE_OA_PROPERTY_SAMPLE_OA, true,
 		DRM_XE_OA_PROPERTY_OA_METRIC_SET, test_set->perf_oa_metrics_set,
 		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(test_set->perf_oa_format),
-		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent,
+		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
 		DRM_XE_OA_PROPERTY_OA_ENGINE_INSTANCE, hwe->engine_instance,
 	};
 	struct intel_xe_oa_open_prop param = {
-- 
2.34.1


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

* [PATCH i-g-t v2 06/14] tests/intel/xe_oa: Use same render copy width and height across tests
  2025-03-03 23:14 [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests Umesh Nerlige Ramappa
                   ` (4 preceding siblings ...)
  2025-03-03 23:14 ` [PATCH i-g-t v2 05/14] tests/intel/xe_oa: Use default exponent for some tests Umesh Nerlige Ramappa
@ 2025-03-03 23:14 ` Umesh Nerlige Ramappa
  2025-03-03 23:14 ` [PATCH i-g-t v2 07/14] tests/intel/xe_oa: Rewrite the polling small buf test Umesh Nerlige Ramappa
                   ` (10 subsequent siblings)
  16 siblings, 0 replies; 25+ messages in thread
From: Umesh Nerlige Ramappa @ 2025-03-03 23:14 UTC (permalink / raw)
  To: igt-dev, Ashutosh Dixit

Use the same width and height for render copy frame to make execution
times uniform across tests.

v2: Update commit message (Ashutosh)

Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
---
 tests/intel/xe_oa.c | 39 +++++++++++++++++++--------------------
 1 file changed, 19 insertions(+), 20 deletions(-)

diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
index 7889adf1e..08406ca5c 100644
--- a/tests/intel/xe_oa.c
+++ b/tests/intel/xe_oa.c
@@ -303,6 +303,7 @@ static uint64_t oa_exponent_default;
 static size_t default_oa_buffer_size;
 static struct intel_mmio_data mmio_data;
 static igt_render_copyfunc_t render_copy;
+static uint32_t rc_width, rc_height;
 
 static struct intel_xe_perf_metric_set *metric_set(const struct drm_xe_engine_class_instance *hwe)
 {
@@ -1089,6 +1090,8 @@ init_sys_info(void)
 
 	intel_xe_perf_load_perf_configs(intel_xe_perf, drm_fd);
 
+	rc_width = 1920;
+	rc_height = 1080;
 	oa_exponent_default = max_oa_exponent_for_period_lte(1000000);
 
 	default_oa_buffer_size = get_default_oa_buffer_size(drm_fd);
@@ -1608,7 +1611,7 @@ static void load_helper_run(enum load load)
 
 		while (!lh.exit) {
 			render_copy(lh.ibb,
-				    &lh.src, 0, 0, 1920, 1080,
+				    &lh.src, 0, 0, rc_width, rc_height,
 				    &lh.dst, 0, 0);
 
 			intel_bb_sync(lh.ibb);
@@ -1645,8 +1648,8 @@ static void load_helper_init(void)
 
 	lh.ibb = intel_bb_create_with_context(drm_fd, lh.context_id, lh.vm, NULL, BATCH_SZ);
 
-	scratch_buf_init(lh.bops, &lh.dst, 1920, 1080, 0);
-	scratch_buf_init(lh.bops, &lh.src, 1920, 1080, 0);
+	scratch_buf_init(lh.bops, &lh.dst, rc_width, rc_height, 0);
+	scratch_buf_init(lh.bops, &lh.src, rc_width, rc_height, 0);
 }
 
 static void load_helper_fini(void)
@@ -3112,8 +3115,6 @@ static void single_ctx_helper(struct drm_xe_engine_class_instance *hwe)
 	uint64_t delta_ts64, delta_oa32;
 	uint64_t delta_ts64_ns, delta_oa32_ns;
 	uint64_t delta_delta;
-	int width = 800;
-	int height = 600;
 #define INVALID_CTX_ID 0xffffffff
 	uint32_t ctx0_id = INVALID_CTX_ID;
 	uint32_t ctx1_id = INVALID_CTX_ID;
@@ -3125,8 +3126,8 @@ static void single_ctx_helper(struct drm_xe_engine_class_instance *hwe)
 	bops = buf_ops_create(drm_fd);
 
 	for (int i = 0; i < ARRAY_SIZE(src); i++) {
-		scratch_buf_init(bops, &src[i], width, height, 0xff0000ff);
-		scratch_buf_init(bops, &dst[i], width, height, 0x00ff00ff);
+		scratch_buf_init(bops, &src[i], rc_width, rc_height, 0xff0000ff);
+		scratch_buf_init(bops, &dst[i], rc_width, rc_height, 0x00ff00ff);
 	}
 
 	vm = xe_vm_create(drm_fd, 0, 0);
@@ -3139,7 +3140,7 @@ static void single_ctx_helper(struct drm_xe_engine_class_instance *hwe)
 
 	/* Submit some early, unmeasured, work to the context we want */
 	render_copy(ibb0,
-		    &src[0], 0, 0, width, height,
+		    &src[0], 0, 0, rc_width, rc_height,
 		    &dst[0], 0, 0);
 
 	/* Initialize the context parameter to the perf open ioctl here */
@@ -3175,7 +3176,7 @@ static void single_ctx_helper(struct drm_xe_engine_class_instance *hwe)
 
 	/* This is the work/context that is measured for counter increments */
 	render_copy(ibb0,
-		    &src[0], 0, 0, width, height,
+		    &src[0], 0, 0, rc_width, rc_height,
 		    &dst[0], 0, 0);
 	intel_bb_flush_render(ibb0);
 
@@ -3200,11 +3201,11 @@ static void single_ctx_helper(struct drm_xe_engine_class_instance *hwe)
 	 * context1
 	 */
 	render_copy(ibb1,
-		    &src[1], 0, 0, width, height,
+		    &src[1], 0, 0, rc_width, rc_height,
 		    &dst[1], 0, 0);
 
 	render_copy(ibb1,
-		    &src[2], 0, 0, width, height,
+		    &src[2], 0, 0, rc_width, rc_height,
 		    &dst[2], 0, 0);
 	intel_bb_flush_render(ibb1);
 
@@ -3325,7 +3326,7 @@ static void single_ctx_helper(struct drm_xe_engine_class_instance *hwe)
 	igt_debug("n samples written = %"PRIu64"/%"PRIu64" (%ix%i)\n",
 		  accumulator.deltas[2 + 21],
 		  accumulator.deltas[2 + 26],
-		  width, height);
+		  rc_width, rc_height);
 	accumulator_print(&accumulator, "filtered");
 
 	/* Verify that the work actually happened by comparing the src
@@ -3334,7 +3335,7 @@ static void single_ctx_helper(struct drm_xe_engine_class_instance *hwe)
 	buf_map(drm_fd, &src[0], false);
 	buf_map(drm_fd, &dst[0], false);
 
-	ret = memcmp(src[0].ptr, dst[0].ptr, 4 * width * height);
+	ret = memcmp(src[0].ptr, dst[0].ptr, 4 * rc_width * rc_height);
 	intel_buf_unmap(&src[0]);
 	intel_buf_unmap(&dst[0]);
 
@@ -3350,9 +3351,9 @@ static void single_ctx_helper(struct drm_xe_engine_class_instance *hwe)
 	/* Check that this test passed. The test measures the number of 2x2
 	 * samples written to the render target using the counter A26. For
 	 * OAR, this counter will only have increments relevant to this specific
-	 * context. The value equals the width * height of the rendered work.
+	 * context. The value equals the rc_width * rc_height of the rendered work.
 	 */
-	igt_assert_eq(accumulator.deltas[2 + 26], width * height);
+	igt_assert_eq(accumulator.deltas[2 + 26], rc_width * rc_height);
 
  skip_check:
 	/* Clean up */
@@ -4006,8 +4007,6 @@ __test_mmio_triggered_reports(struct drm_xe_engine_class_instance *hwe)
 	struct buf_ops *bops;
 	struct intel_bb *ibb;
 	uint32_t context, vm;
-	int height = 600;
-	int width = 800;
 	uint8_t *buf;
 
 	bops = buf_ops_create(drm_fd);
@@ -4019,8 +4018,8 @@ __test_mmio_triggered_reports(struct drm_xe_engine_class_instance *hwe)
 	memset(dst_buf->ptr, 0, 4096);
 	intel_buf_unmap(dst_buf);
 
-	scratch_buf_init(bops, &src, width, height, 0xff0000ff);
-	scratch_buf_init(bops, &dst, width, height, 0x00ff00ff);
+	scratch_buf_init(bops, &src, rc_width, rc_height, 0xff0000ff);
+	scratch_buf_init(bops, &dst, rc_width, rc_height, 0x00ff00ff);
 
 	vm = xe_vm_create(drm_fd, 0, 0);
 	context = xe_exec_queue_create(drm_fd, vm, hwe, 0);
@@ -4039,7 +4038,7 @@ __test_mmio_triggered_reports(struct drm_xe_engine_class_instance *hwe)
 
 	if (render_copy)
 		render_copy(ibb,
-			    &src, 0, 0, width, height,
+			    &src, 0, 0, rc_width, rc_height,
 			    &dst, 0, 0);
 
 	emit_mmio_triggered_report(ibb, 0xc0ffee22);
-- 
2.34.1


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

* [PATCH i-g-t v2 07/14] tests/intel/xe_oa: Rewrite the polling small buf test
  2025-03-03 23:14 [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests Umesh Nerlige Ramappa
                   ` (5 preceding siblings ...)
  2025-03-03 23:14 ` [PATCH i-g-t v2 06/14] tests/intel/xe_oa: Use same render copy width and height across tests Umesh Nerlige Ramappa
@ 2025-03-03 23:14 ` Umesh Nerlige Ramappa
  2025-03-04  0:05   ` Dixit, Ashutosh
  2025-03-03 23:14 ` [PATCH i-g-t v2 08/14] tests/intel/xe_oa: Simplify the buffer-fill test Umesh Nerlige Ramappa
                   ` (9 subsequent siblings)
  16 siblings, 1 reply; 25+ messages in thread
From: Umesh Nerlige Ramappa @ 2025-03-03 23:14 UTC (permalink / raw)
  To: igt-dev, Ashutosh Dixit

The polling-small-buf test is specifically testing that POLLIN is still
set after an ENOSPC error. In the buggy code, POLLIN was cleared on
the ENOSPC error even though there was data to be read. The test was
putting an upper bound on the number of bytes read in a fixed duration
of time. While this worked, we had occassional failures that were due to
scheduling and other dependencies outside the scope of this test.

In an attempt to make the test more robust,
- use a more definitive method to wait for few reports
- force an ENOSPC error using a small buffer
- Ensure POLLIN is still set in the subsequent poll() call

v2:
- Add "why" in commit message (Ashutosh)
- Use uapi to wait for N reports

Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
---
 tests/intel/xe_oa.c | 53 ++++++++++++++++++++-------------------------
 1 file changed, 23 insertions(+), 30 deletions(-)

diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
index 08406ca5c..dd16b39a9 100644
--- a/tests/intel/xe_oa.c
+++ b/tests/intel/xe_oa.c
@@ -2216,7 +2216,6 @@ static void test_polling(uint64_t requested_oa_period,
  */
 static void test_polling_small_buf(void)
 {
-	int oa_exponent = max_oa_exponent_for_period_lte(40 * 1000); /* 40us */
 	uint64_t properties[] = {
 		DRM_XE_OA_PROPERTY_OA_UNIT_ID, 0,
 
@@ -2226,50 +2225,44 @@ static void test_polling_small_buf(void)
 		/* OA unit configuration */
 		DRM_XE_OA_PROPERTY_OA_METRIC_SET, default_test_set->perf_oa_metrics_set,
 		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(default_test_set->perf_oa_format),
-		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent,
+		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
+		DRM_XE_OA_PROPERTY_WAIT_NUM_REPORTS, 5,
 		DRM_XE_OA_PROPERTY_OA_DISABLED, true,
 	};
 	struct intel_xe_oa_open_prop param = {
 		.num_properties = ARRAY_SIZE(properties) / 2,
 		.properties_ptr = to_user_pointer(properties),
 	};
-	uint32_t test_duration = 80 * 1000 * 1000;
-	int sample_size = get_oa_format(default_test_set->perf_oa_format).size;
-	int n_expected_reports = test_duration / oa_exponent_to_ns(oa_exponent);
-	int n_expect_read_bytes = n_expected_reports * sample_size;
-	struct timespec ts = {};
-	int n_bytes_read = 0;
-	uint32_t n_polls = 0;
+	struct pollfd pollfd;
+	uint8_t buf[10];
+	int ret;
 
 	stream_fd = __perf_open(drm_fd, &param, true /* prevent_pm */);
 	set_fd_flags(stream_fd, O_CLOEXEC | O_NONBLOCK);
-	do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_ENABLE, 0);
 
-	while (igt_nsec_elapsed(&ts) < test_duration) {
-		struct pollfd pollfd = { .fd = stream_fd, .events = POLLIN };
-
-		ppoll(&pollfd, 1, NULL, NULL);
-		if (pollfd.revents & POLLIN) {
-			uint8_t buf[1024];
-			int ret;
+	/* Kickstart the capture */
+	do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_ENABLE, 0);
 
-			ret = read(stream_fd, buf, sizeof(buf));
-			if (ret >= 0)
-				n_bytes_read += ret;
-		}
+	/*
+	 * Wait for number of reports specified in
+	 * DRM_XE_OA_PROPERTY_WAIT_NUM_REPORTS
+	 */
+	pollfd.fd = stream_fd;
+	pollfd.events = POLLIN;
+	poll(&pollfd, 1, -1);
+	igt_assert(pollfd.revents & POLLIN);
 
-		n_polls++;
-	}
+	/* Just read one report and expect ENOSPC */
+	errno = 0;
+	ret = read(stream_fd, buf, sizeof(buf));
+	igt_assert_eq(ret, -1);
+	igt_assert_eq(errno, ENOSPC);
 
-	igt_info("Read %d expected %d (%.2f%% of the expected number), polls=%u\n",
-		 n_bytes_read, n_expect_read_bytes,
-		 n_bytes_read * 100.0f / n_expect_read_bytes,
-		 n_polls);
+	/* Poll with 0 timeout and expect POLLIN flag to be set */
+	poll(&pollfd, 1, 0);
+	igt_assert(pollfd.revents & POLLIN);
 
 	__perf_close(stream_fd);
-
-	igt_assert(abs(n_expect_read_bytes - n_bytes_read) <
-		   0.20 * n_expect_read_bytes);
 }
 
 static int
-- 
2.34.1


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

* [PATCH i-g-t v2 08/14] tests/intel/xe_oa: Simplify the buffer-fill test
  2025-03-03 23:14 [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests Umesh Nerlige Ramappa
                   ` (6 preceding siblings ...)
  2025-03-03 23:14 ` [PATCH i-g-t v2 07/14] tests/intel/xe_oa: Rewrite the polling small buf test Umesh Nerlige Ramappa
@ 2025-03-03 23:14 ` Umesh Nerlige Ramappa
  2025-03-04  0:17   ` Dixit, Ashutosh
  2025-03-04  0:28   ` Dixit, Ashutosh
  2025-03-03 23:14 ` [PATCH i-g-t v2 09/14] tests/intel/xe_oa: Use default buffer size for non-zero reason Umesh Nerlige Ramappa
                   ` (8 subsequent siblings)
  16 siblings, 2 replies; 25+ messages in thread
From: Umesh Nerlige Ramappa @ 2025-03-03 23:14 UTC (permalink / raw)
  To: igt-dev, Ashutosh Dixit

Simplify the buffer-fill test for quicker runs on slow platforms.

We only want to test that the BUFFER OVERFLOW status is set when we do
not read the OA stream data in time. To do so, keeping reading zero
bytes of data until you hit a buffer overflow.

v2:
- Add reason to the commit msg
- Drop 'wraparound' from test description
- s/disable/disabled
- drop unnecessary double-bang for int to bool conversion
- Fix regression in test execution time

Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
---
 tests/intel/xe_oa.c | 128 +++++++++-----------------------------------
 1 file changed, 24 insertions(+), 104 deletions(-)

diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
index dd16b39a9..3b9f13d9e 100644
--- a/tests/intel/xe_oa.c
+++ b/tests/intel/xe_oa.c
@@ -304,6 +304,7 @@ static size_t default_oa_buffer_size;
 static struct intel_mmio_data mmio_data;
 static igt_render_copyfunc_t render_copy;
 static uint32_t rc_width, rc_height;
+static uint32_t buffer_fill_size;
 
 static struct intel_xe_perf_metric_set *metric_set(const struct drm_xe_engine_class_instance *hwe)
 {
@@ -1092,6 +1093,7 @@ init_sys_info(void)
 
 	rc_width = 1920;
 	rc_height = 1080;
+	buffer_fill_size = SZ_16M;
 	oa_exponent_default = max_oa_exponent_for_period_lte(1000000);
 
 	default_oa_buffer_size = get_default_oa_buffer_size(drm_fd);
@@ -2352,7 +2354,7 @@ test_oa_tlb_invalidate(const struct drm_xe_engine_class_instance *hwe)
 
 /**
  * SUBTEST: buffer-fill
- * Description: Test filling, wraparound and overflow of OA buffer
+ * Description: Test filling and overflow of OA buffer
  */
 static void
 test_buffer_fill(const struct drm_xe_engine_class_instance *hwe)
@@ -2373,123 +2375,41 @@ test_buffer_fill(const struct drm_xe_engine_class_instance *hwe)
 		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(fmt),
 		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent,
 		DRM_XE_OA_PROPERTY_OA_ENGINE_INSTANCE, hwe->engine_instance,
+		DRM_XE_OA_PROPERTY_OA_DISABLED, true,
+		DRM_XE_OA_PROPERTY_OA_BUFFER_SIZE, buffer_fill_size,
 	};
 	struct intel_xe_oa_open_prop param = {
 		.num_properties = ARRAY_SIZE(properties) / 2,
 		.properties_ptr = to_user_pointer(properties),
 	};
-	size_t report_size = get_oa_format(fmt).size;
-	int buf_size = 65536 * report_size;
-	uint8_t *buf = malloc(buf_size);
-	int len;
-	int n_full_oa_reports = default_oa_buffer_size / report_size;
-	uint64_t fill_duration = n_full_oa_reports * oa_period;
-	uint32_t *last_periodic_report = malloc(report_size);
+	char *buf = malloc(1024);
+	bool overflow_seen;
 	u32 oa_status;
+	int len;
 
-	igt_assert(fill_duration < 1000000000);
-
+	igt_debug("oa_period %s\n", pretty_print_oa_period(oa_period));
 	stream_fd = __perf_open(drm_fd, &param, true /* prevent_pm */);
         set_fd_flags(stream_fd, O_CLOEXEC);
 
-	for (int i = 0; i < 5; i++) {
-		bool overflow_seen;
-		uint32_t n_periodic_reports;
-		uint32_t first_timestamp = 0, last_timestamp = 0;
-
-		do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_ENABLE, 0);
-
-		nanosleep(&(struct timespec){ .tv_sec = 0,
-					      .tv_nsec = fill_duration * 1.25 },
-			  NULL);
-again:
-		oa_status = 0;
-		while ((len = read(stream_fd, buf, buf_size)) == -1 && errno == EINTR)
-			;
-
-		if (errno == EIO) {
-			oa_status = get_stream_status(stream_fd);
-			igt_debug("oa_status %#x\n", oa_status);
-			overflow_seen = oa_status & DRM_XE_OASTATUS_BUFFER_OVERFLOW;
-			igt_assert_eq(overflow_seen, true);
-			goto again;
-		}
-		igt_assert_neq(len, -1);
-
-		do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_DISABLE, 0);
-
-		igt_debug("fill_duration = %"PRIu64"ns, oa_exponent = %u\n",
-			  fill_duration, oa_exponent);
-
-		do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_ENABLE, 0);
-
-		nanosleep(&(struct timespec){ .tv_sec = 0,
-					.tv_nsec = fill_duration / 2 },
-			NULL);
-
-		n_periodic_reports = 0;
-
-		/* Because of the race condition between notification of new
-		 * reports and reports landing in memory, we need to rely on
-		 * timestamps to figure whether we've read enough of them.
-		 */
-		while (((last_timestamp - first_timestamp) * oa_period) < (fill_duration / 2)) {
-
-			igt_debug("dts=%u elapsed=%"PRIu64" duration=%"PRIu64"\n",
-				  last_timestamp - first_timestamp,
-				  (last_timestamp - first_timestamp) * oa_period,
-				  fill_duration / 2);
-again_1:
-			oa_status = 0;
-			while ((len = read(stream_fd, buf, buf_size)) == -1 && errno == EINTR)
-				;
-			if (errno == EIO) {
-				oa_status = get_stream_status(stream_fd);
-				igt_debug("oa_status %#x\n", oa_status);
-				igt_assert(!(oa_status & DRM_XE_OASTATUS_BUFFER_OVERFLOW));
-				goto again_1;
-			}
-			igt_assert_neq(len, -1);
-
-			for (int offset = 0; offset < len; offset += report_size) {
-				uint32_t *report = (void *) (buf + offset);
-
-				igt_debug(" > report ts=%"PRIu64""
-					  " ts_delta_last_periodic=%"PRIu64" is_timer=%i ctx_id=%8x nb_periodic=%u\n",
-					  oa_timestamp(report, fmt),
-					  n_periodic_reports > 0 ?  oa_timestamp_delta(report, last_periodic_report, fmt) : 0,
-					  oa_report_is_periodic(report),
-					  oa_report_get_ctx_id(report),
-					  n_periodic_reports);
-
-				if (first_timestamp == 0)
-					first_timestamp = oa_timestamp(report, fmt);
-				last_timestamp = oa_timestamp(report, fmt);
-
-				if (oa_report_is_periodic(report)) {
-					memcpy(last_periodic_report, report, report_size);
-					n_periodic_reports++;
-				}
-			}
-		}
-
-		do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_DISABLE, 0);
-
-		igt_debug("first ts = %u, last ts = %u\n", first_timestamp, last_timestamp);
+	/* OA buffer is disabled, we do not expect any error status */
+	oa_status = get_stream_status(stream_fd);
+	overflow_seen = oa_status & DRM_XE_OASTATUS_BUFFER_OVERFLOW;
+	igt_assert_eq(overflow_seen, 0);
 
-		igt_debug("%f < %zu < %f\n",
-			  report_size * n_full_oa_reports * 0.45,
-			  n_periodic_reports * report_size,
-			  report_size * n_full_oa_reports * 0.55);
+	do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_ENABLE, 0);
 
-		igt_assert(n_periodic_reports * report_size >
-			   report_size * n_full_oa_reports * 0.45);
-		igt_assert(n_periodic_reports * report_size <
-			   report_size * n_full_oa_reports * 0.55);
+	errno = 0;
+	/* Read 0 bytes repeatedly until you see an EIO */
+	while ((len = read(stream_fd, buf, 0)) == -1 && (errno == EINTR || errno == ENOSPC)) {
+		usleep(100);
 	}
+	igt_assert_eq(len, -1);
+	igt_assert_eq(errno, EIO);
 
-	free(last_periodic_report);
-	free(buf);
+	/* Ensure buffer overflowed */
+	oa_status = get_stream_status(stream_fd);
+	overflow_seen = oa_status & DRM_XE_OASTATUS_BUFFER_OVERFLOW;
+	igt_assert(overflow_seen);
 
 	__perf_close(stream_fd);
 }
-- 
2.34.1


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

* [PATCH i-g-t v2 09/14] tests/intel/xe_oa: Use default buffer size for non-zero reason
  2025-03-03 23:14 [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests Umesh Nerlige Ramappa
                   ` (7 preceding siblings ...)
  2025-03-03 23:14 ` [PATCH i-g-t v2 08/14] tests/intel/xe_oa: Simplify the buffer-fill test Umesh Nerlige Ramappa
@ 2025-03-03 23:14 ` Umesh Nerlige Ramappa
  2025-03-03 23:14 ` [PATCH i-g-t v2 10/14] tests/intel/xe_oa: Test oa buffer sizes Umesh Nerlige Ramappa
                   ` (7 subsequent siblings)
  16 siblings, 0 replies; 25+ messages in thread
From: Umesh Nerlige Ramappa @ 2025-03-03 23:14 UTC (permalink / raw)
  To: igt-dev, Ashutosh Dixit

Use a default buffer size for non-zero-reason for and strip
out testing buffer size in the same test.

Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
---
 tests/intel/xe_oa.c | 14 ++++----------
 1 file changed, 4 insertions(+), 10 deletions(-)

diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
index 3b9f13d9e..206e3e617 100644
--- a/tests/intel/xe_oa.c
+++ b/tests/intel/xe_oa.c
@@ -2437,7 +2437,7 @@ test_non_zero_reason(const struct drm_xe_engine_class_instance *hwe, size_t oa_b
 		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(fmt),
 		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent,
 		DRM_XE_OA_PROPERTY_OA_ENGINE_INSTANCE, hwe->engine_instance,
-		DRM_XE_OA_PROPERTY_OA_BUFFER_SIZE, oa_buffer_size,
+		DRM_XE_OA_PROPERTY_OA_BUFFER_SIZE, oa_buffer_size ?: buffer_fill_size
 	};
 	struct intel_xe_oa_open_prop param = {
 		.num_properties = ARRAY_SIZE(properties) / 2,
@@ -4796,15 +4796,9 @@ igt_main
 		__for_one_hwe_in_oag(hwe)
 			test_buffer_fill(hwe);
 
-	igt_subtest_with_dynamic("non-zero-reason") {
-		if (oau->capabilities & DRM_XE_OA_CAPS_OA_BUFFER_SIZE) {
-			__for_one_hwe_in_oag_w_arg(hwe, "16M")
-				test_non_zero_reason(hwe, SZ_16M);
-		} else {
-			__for_one_hwe_in_oag_w_arg(hwe, "default")
-				test_non_zero_reason(hwe, 0);
-		}
-	}
+	igt_subtest_with_dynamic("non-zero-reason")
+		__for_one_hwe_in_oag(hwe)
+			test_non_zero_reason(hwe, 0);
 
 	igt_subtest("disabled-read-error")
 		test_disabled_read_error();
-- 
2.34.1


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

* [PATCH i-g-t v2 10/14] tests/intel/xe_oa: Test oa buffer sizes
  2025-03-03 23:14 [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests Umesh Nerlige Ramappa
                   ` (8 preceding siblings ...)
  2025-03-03 23:14 ` [PATCH i-g-t v2 09/14] tests/intel/xe_oa: Use default buffer size for non-zero reason Umesh Nerlige Ramappa
@ 2025-03-03 23:14 ` Umesh Nerlige Ramappa
  2025-03-03 23:14 ` [PATCH i-g-t v2 11/14] tests/intel/xe_oa: Rewrite enable-disable test Umesh Nerlige Ramappa
                   ` (6 subsequent siblings)
  16 siblings, 0 replies; 25+ messages in thread
From: Umesh Nerlige Ramappa @ 2025-03-03 23:14 UTC (permalink / raw)
  To: igt-dev, Ashutosh Dixit

Introduce oa buffer size test separately. Pick a random valid buffer
size for the test.

Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
---
 tests/intel/xe_oa.c | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
index 206e3e617..9c10a8fd2 100644
--- a/tests/intel/xe_oa.c
+++ b/tests/intel/xe_oa.c
@@ -93,6 +93,23 @@ struct accumulator {
 	uint64_t deltas[MAX_RAW_OA_COUNTERS];
 };
 
+struct oa_buf_size {
+	char name[12];
+	uint32_t size;
+} buf_sizes[] = {
+	{ "128K", SZ_128K },
+	{ "256K", SZ_256K },
+	{ "512K", SZ_512K },
+	{ "1M", SZ_1M },
+	{ "2M", SZ_2M },
+	{ "4M", SZ_4M },
+	{ "8M", SZ_8M },
+	{ "16M", SZ_16M },
+	{ "32M", SZ_32M },
+	{ "64M", SZ_64M },
+	{ "128M", SZ_128M },
+};
+
 /* OA unit types */
 enum {
 	OAG,
@@ -305,6 +322,7 @@ static struct intel_mmio_data mmio_data;
 static igt_render_copyfunc_t render_copy;
 static uint32_t rc_width, rc_height;
 static uint32_t buffer_fill_size;
+static uint32_t num_buf_sizes;
 
 static struct intel_xe_perf_metric_set *metric_set(const struct drm_xe_engine_class_instance *hwe)
 {
@@ -1094,6 +1112,7 @@ init_sys_info(void)
 	rc_width = 1920;
 	rc_height = 1080;
 	buffer_fill_size = SZ_16M;
+	num_buf_sizes = ARRAY_SIZE(buf_sizes);
 	oa_exponent_default = max_oa_exponent_for_period_lte(1000000);
 
 	default_oa_buffer_size = get_default_oa_buffer_size(drm_fd);
@@ -4796,6 +4815,17 @@ igt_main
 		__for_one_hwe_in_oag(hwe)
 			test_buffer_fill(hwe);
 
+	/**
+	 * SUBTEST: buffer-size
+	 * Description: Test various OA buffer sizes
+	 */
+	igt_subtest_with_dynamic("buffer-size") {
+		long k = random() % num_buf_sizes;
+
+		__for_one_hwe_in_oag_w_arg(hwe, buf_sizes[k].name)
+			test_non_zero_reason(hwe, buf_sizes[k].size);
+	}
+
 	igt_subtest_with_dynamic("non-zero-reason")
 		__for_one_hwe_in_oag(hwe)
 			test_non_zero_reason(hwe, 0);
-- 
2.34.1


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

* [PATCH i-g-t v2 11/14] tests/intel/xe_oa: Rewrite enable-disable test
  2025-03-03 23:14 [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests Umesh Nerlige Ramappa
                   ` (9 preceding siblings ...)
  2025-03-03 23:14 ` [PATCH i-g-t v2 10/14] tests/intel/xe_oa: Test oa buffer sizes Umesh Nerlige Ramappa
@ 2025-03-03 23:14 ` Umesh Nerlige Ramappa
  2025-03-04  0:51   ` Dixit, Ashutosh
  2025-03-03 23:15 ` [PATCH i-g-t v2 12/14] tests/intel/xe_oa: Enable unprivileged-single-ctx-counters and fix it Umesh Nerlige Ramappa
                   ` (5 subsequent siblings)
  16 siblings, 1 reply; 25+ messages in thread
From: Umesh Nerlige Ramappa @ 2025-03-03 23:14 UTC (permalink / raw)
  To: igt-dev, Ashutosh Dixit

Keep it simple and just check if enable/disable is working correctly
using the read call and existing uapi.

v2: Drop mmio and use the value returned in read (Ashutosh)

Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
---
 tests/intel/xe_oa.c | 140 ++++++++------------------------------------
 1 file changed, 24 insertions(+), 116 deletions(-)

diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
index 9c10a8fd2..47c4a1fdb 100644
--- a/tests/intel/xe_oa.c
+++ b/tests/intel/xe_oa.c
@@ -2524,145 +2524,53 @@ test_non_zero_reason(const struct drm_xe_engine_class_instance *hwe, size_t oa_b
 static void
 test_enable_disable(const struct drm_xe_engine_class_instance *hwe)
 {
-	/* ~5 micro second period */
-	int oa_exponent = max_oa_exponent_for_period_lte(5000);
-	uint64_t oa_period = oa_exponent_to_ns(oa_exponent);
+	uint32_t num_reports = 5;
 	struct intel_xe_perf_metric_set *test_set = metric_set(hwe);
 	uint64_t fmt = test_set->perf_oa_format;
 	uint64_t properties[] = {
 		DRM_XE_OA_PROPERTY_OA_UNIT_ID, 0,
-
-		/* Include OA reports in samples */
 		DRM_XE_OA_PROPERTY_SAMPLE_OA, true,
-
-		/* OA unit configuration */
 		DRM_XE_OA_PROPERTY_OA_METRIC_SET, test_set->perf_oa_metrics_set,
 		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(fmt),
-		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent,
+		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
 		DRM_XE_OA_PROPERTY_OA_DISABLED, true,
 		DRM_XE_OA_PROPERTY_OA_ENGINE_INSTANCE, hwe->engine_instance,
+		DRM_XE_OA_PROPERTY_WAIT_NUM_REPORTS, num_reports,
 	};
 	struct intel_xe_oa_open_prop param = {
 		.num_properties = ARRAY_SIZE(properties) / 2,
 		.properties_ptr = to_user_pointer(properties),
 	};
-	size_t report_size = get_oa_format(fmt).size;
-	int buf_size = 65536 * report_size;
-	uint8_t *buf = malloc(buf_size);
-	int n_full_oa_reports = default_oa_buffer_size / report_size;
-	uint64_t fill_duration = n_full_oa_reports * oa_period;
-	uint32_t *last_periodic_report = malloc(report_size);
-
-	load_helper_init();
-	load_helper_run(HIGH);
+	size_t format_size = get_oa_format(fmt).size;
+	uint8_t buf[num_reports * format_size];
+	struct pollfd pollfd;
+	int ret;
 
 	stream_fd = __perf_open(drm_fd, &param, true /* prevent_pm */);
         set_fd_flags(stream_fd, O_CLOEXEC);
 
-	for (int i = 0; i < 5; i++) {
-		int len;
-		uint32_t n_periodic_reports;
-		uint64_t first_timestamp = 0, last_timestamp = 0;
-		u32 oa_status;
-
-		/* Giving enough time for an overflow might help catch whether
-		 * the OA unit has been enabled even if the driver might at
-		 * least avoid copying reports while disabled.
-		 */
-		nanosleep(&(struct timespec){ .tv_sec = 0,
-					      .tv_nsec = fill_duration * 1.25 },
-			  NULL);
-
-		while ((len = read(stream_fd, buf, buf_size)) == -1 &&
-		       (errno == EINTR || errno == EIO))
-			;
-
-		igt_assert_eq(len, -1);
-		igt_assert_eq(errno, EINVAL);
-
-		do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_ENABLE, 0);
-
-		nanosleep(&(struct timespec){ .tv_sec = 0,
-					      .tv_nsec = fill_duration / 2 },
-			NULL);
-
-		n_periodic_reports = 0;
-
-		/* Because of the race condition between notification of new
-		 * reports and reports landing in memory, we need to rely on
-		 * timestamps to figure whether we've read enough of them.
-		 */
-		while (((last_timestamp - first_timestamp) * oa_period) < (fill_duration / 2)) {
-
-			while ((len = read(stream_fd, buf, buf_size)) == -1 && errno == EINTR)
-				;
-			if (errno == EIO) {
-				oa_status = get_stream_status(stream_fd);
-				igt_debug("oa_status %#x\n", oa_status);
-				igt_assert(!(oa_status & DRM_XE_OASTATUS_BUFFER_OVERFLOW));
-				continue;
-			}
-			igt_assert_neq(len, -1);
-
-			for (int offset = 0; offset < len; offset += report_size) {
-				uint32_t *report = (void *) (buf + offset);
-
-				if (first_timestamp == 0)
-					first_timestamp = oa_timestamp(report, fmt);
-				last_timestamp = oa_timestamp(report, fmt);
-
-				igt_debug(" > report ts=%"PRIx64""
-					  " ts_delta_last_periodic=%s%"PRIu64""
-					  " is_timer=%i ctx_id=0x%8x\n",
-					  oa_timestamp(report, fmt),
-					  oa_report_is_periodic(report) ? " " : "*",
-					  n_periodic_reports > 0 ?  oa_timestamp_delta(report, last_periodic_report, fmt) : 0,
-					  oa_report_is_periodic(report),
-					  oa_report_get_ctx_id(report));
-
-				if (oa_report_is_periodic(report)) {
-					memcpy(last_periodic_report, report, report_size);
-
-					/* We want to measure only the periodic reports,
-					 * ctx-switch might inflate the content of the
-					 * buffer and skew or measurement.
-					 */
-					n_periodic_reports++;
-				}
-			}
-		}
-
-		do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_DISABLE, 0);
-
-		igt_debug("first ts = %"PRIu64", last ts = %"PRIu64"\n", first_timestamp, last_timestamp);
-
-		igt_debug("%f < %zu < %f\n",
-			  report_size * n_full_oa_reports * 0.45,
-			  n_periodic_reports * report_size,
-			  report_size * n_full_oa_reports * 0.55);
-
-		igt_assert((n_periodic_reports * report_size) >
-			   (report_size * n_full_oa_reports * 0.45));
-		igt_assert((n_periodic_reports * report_size) <
-			   report_size * n_full_oa_reports * 0.55);
-
+	errno = 0;
+	ret = read(stream_fd, buf, sizeof(buf));
+	igt_assert_eq(ret, -1);
+	igt_assert_eq(errno, EINVAL);
 
-		/* It's considered an error to read a stream while it's disabled
-		 * since it would block indefinitely...
-		 */
-		len = read(stream_fd, buf, buf_size);
+	do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_ENABLE, 0);
 
-		igt_assert_eq(len, -1);
-		igt_assert_eq(errno, EINVAL);
-	}
+	/*
+	 * Wait for number of reports specified in
+	 * DRM_XE_OA_PROPERTY_WAIT_NUM_REPORTS
+	 */
+	pollfd.fd = stream_fd;
+	pollfd.events = POLLIN;
+	poll(&pollfd, 1, -1);
+	igt_assert(pollfd.revents & POLLIN);
 
-	free(last_periodic_report);
-	free(buf);
+	/* Ensure num_reports can be read */
+	while ((ret = read(stream_fd, buf, sizeof(buf))) < 0 && errno == EINTR)
+		;
+	igt_assert_eq(ret, sizeof(buf));
 
 	__perf_close(stream_fd);
-
-	load_helper_stop();
-	load_helper_fini();
 }
 
 /**
-- 
2.34.1


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

* [PATCH i-g-t v2 12/14] tests/intel/xe_oa: Enable unprivileged-single-ctx-counters and fix it
  2025-03-03 23:14 [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests Umesh Nerlige Ramappa
                   ` (10 preceding siblings ...)
  2025-03-03 23:14 ` [PATCH i-g-t v2 11/14] tests/intel/xe_oa: Rewrite enable-disable test Umesh Nerlige Ramappa
@ 2025-03-03 23:15 ` Umesh Nerlige Ramappa
  2025-03-03 23:15 ` [PATCH i-g-t v2 13/14] tests/intel/xe_oa: Fix mmio_trigger_reports testing Umesh Nerlige Ramappa
                   ` (4 subsequent siblings)
  16 siblings, 0 replies; 25+ messages in thread
From: Umesh Nerlige Ramappa @ 2025-03-03 23:15 UTC (permalink / raw)
  To: igt-dev, Ashutosh Dixit

unprivileged-single-ctx-counters was hardcoded for a format size of 256
bytes. Fix it up for generic format size.

Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
---
 tests/intel/xe_oa.c | 93 +++++++++++++++++++++++----------------------
 1 file changed, 48 insertions(+), 45 deletions(-)

diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
index 47c4a1fdb..ca2faa555 100644
--- a/tests/intel/xe_oa.c
+++ b/tests/intel/xe_oa.c
@@ -2962,6 +2962,16 @@ static void single_ctx_helper(struct drm_xe_engine_class_instance *hwe)
 	struct accumulator accumulator = {
 		.format = fmt
 	};
+	uint32_t ctx_id_offset, counter_offset, dst_buf_size;
+	struct oa_format format = get_oa_format(fmt);
+
+	if (format.report_hdr_64bit) {
+		ctx_id_offset = 4;
+		counter_offset = 8;
+	} else {
+		ctx_id_offset = 2;
+		counter_offset = 4;
+	}
 
 	bops = buf_ops_create(drm_fd);
 
@@ -2990,25 +3000,29 @@ static void single_ctx_helper(struct drm_xe_engine_class_instance *hwe)
 	stream_fd = __perf_open(drm_fd, &param, false);
         set_fd_flags(stream_fd, O_CLOEXEC);
 
-	dst_buf = intel_buf_create(bops, 4096, 1, 8, 64,
+#define FOUR_REPORTS (4 * format.size)
+#define BO_REPORT_OFFSET(_r) (_r * format.size)
+
+#define FOUR_TIMESTAMPS (4 * 8)
+#define BO_TIMESTAMP_OFFSET(_r) (FOUR_REPORTS + (_r * 8))
+
+	dst_buf_size = FOUR_REPORTS + FOUR_TIMESTAMPS;
+	dst_buf = intel_buf_create(bops, dst_buf_size, 1, 8, 64,
 				   I915_TILING_NONE,
 				   I915_COMPRESSION_NONE);
 
 	/* Set write domain to cpu briefly to fill the buffer with 80s */
 	buf_map(drm_fd, dst_buf, true /* write enable */);
-	memset(dst_buf->ptr, 0x80, 2048);
-	memset((uint8_t *) dst_buf->ptr + 2048, 0, 2048);
+	memset(dst_buf->ptr, 0, dst_buf_size);
+	memset(dst_buf->ptr, 0x80, FOUR_REPORTS);
 	intel_buf_unmap(dst_buf);
 
 	/* Submit an mi-rpc to context0 before measurable work */
-#define BO_TIMESTAMP_OFFSET0 1024
-#define BO_REPORT_OFFSET0 0
-#define BO_REPORT_ID0 0xdeadbeef
 	emit_stall_timestamp_and_rpc(ibb0,
 				     dst_buf,
-				     BO_TIMESTAMP_OFFSET0,
-				     BO_REPORT_OFFSET0,
-				     BO_REPORT_ID0);
+				     BO_TIMESTAMP_OFFSET(0),
+				     BO_REPORT_OFFSET(0),
+				     0xdeadbeef);
 	intel_bb_flush_render(ibb0);
 
 	/* Remove intel_buf from ibb0 added implicitly in rendercopy */
@@ -3026,14 +3040,11 @@ static void single_ctx_helper(struct drm_xe_engine_class_instance *hwe)
 	 * all zeroes, since the counters will only increment for the
 	 * context passed to perf open ioctl
 	 */
-#define BO_TIMESTAMP_OFFSET2 1040
-#define BO_REPORT_OFFSET2 512
-#define BO_REPORT_ID2 0x00c0ffee
 	emit_stall_timestamp_and_rpc(ibb1,
 				     dst_buf,
-				     BO_TIMESTAMP_OFFSET2,
-				     BO_REPORT_OFFSET2,
-				     BO_REPORT_ID2);
+				     BO_TIMESTAMP_OFFSET(2),
+				     BO_REPORT_OFFSET(2),
+				     0x00c0ffee);
 	intel_bb_flush_render(ibb1);
 
 	/* Submit two copies on the other context to avoid a false
@@ -3050,28 +3061,22 @@ static void single_ctx_helper(struct drm_xe_engine_class_instance *hwe)
 	intel_bb_flush_render(ibb1);
 
 	/* Submit an mi-rpc to context1 after all work */
-#define BO_TIMESTAMP_OFFSET3 1048
-#define BO_REPORT_OFFSET3 768
-#define BO_REPORT_ID3 0x01c0ffee
 	emit_stall_timestamp_and_rpc(ibb1,
 				     dst_buf,
-				     BO_TIMESTAMP_OFFSET3,
-				     BO_REPORT_OFFSET3,
-				     BO_REPORT_ID3);
+				     BO_TIMESTAMP_OFFSET(3),
+				     BO_REPORT_OFFSET(3),
+				     0x01c0ffee);
 	intel_bb_flush_render(ibb1);
 
 	/* Remove intel_buf from ibb1 added implicitly in rendercopy */
 	intel_bb_remove_intel_buf(ibb1, dst_buf);
 
 	/* Submit an mi-rpc to context0 after all measurable work */
-#define BO_TIMESTAMP_OFFSET1 1032
-#define BO_REPORT_OFFSET1 256
-#define BO_REPORT_ID1 0xbeefbeef
 	emit_stall_timestamp_and_rpc(ibb0,
 				     dst_buf,
-				     BO_TIMESTAMP_OFFSET1,
-				     BO_REPORT_OFFSET1,
-				     BO_REPORT_ID1);
+				     BO_TIMESTAMP_OFFSET(1),
+				     BO_REPORT_OFFSET(1),
+				     0xbeefbeef);
 	intel_bb_flush_render(ibb0);
 	intel_bb_sync(ibb0);
 	intel_bb_sync(ibb1);
@@ -3091,33 +3096,32 @@ static void single_ctx_helper(struct drm_xe_engine_class_instance *hwe)
 	report0_32 = dst_buf->ptr;
 	igt_assert_eq(report0_32[0], 0xdeadbeef);
 	igt_assert(oa_timestamp(report0_32, fmt));
-	ctx0_id = report0_32[2];
+	ctx0_id = report0_32[ctx_id_offset];
 	igt_debug("MI_RPC(start) CTX ID: %u\n", ctx0_id);
-	dump_report(report0_32, 64, "report0_32");
+	dump_report(report0_32, format.size / 4, "report0_32");
 
-	report1_32 = report0_32 + 64;
+	report1_32 = report0_32 + format.size / 4;
 	igt_assert_eq(report1_32[0], 0xbeefbeef);
 	igt_assert(oa_timestamp(report1_32, fmt));
-	ctx1_id = report1_32[2];
+	ctx1_id = report1_32[ctx_id_offset];
 	igt_debug("CTX ID1: %u\n", ctx1_id);
-	dump_report(report1_32, 64, "report1_32");
+	dump_report(report1_32, format.size / 4, "report1_32");
 
 	/* Verify that counters in context1 are all zeroes */
-	report2_32 = report0_32 + 128;
+	report2_32 = report1_32 + format.size / 4;
 	igt_assert_eq(report2_32[0], 0x00c0ffee);
 	igt_assert(oa_timestamp(report2_32, fmt));
-	dump_report(report2_32, 64, "report2_32");
-	igt_assert_eq(0, memcmp(&report2_32[4],
-				(uint8_t *) dst_buf->ptr + 2048,
-				240));
+	dump_report(report2_32, format.size / 4, "report2_32");
 
-	report3_32 = report0_32 + 192;
+	report3_32 = report2_32 + format.size / 4;
 	igt_assert_eq(report3_32[0], 0x01c0ffee);
 	igt_assert(oa_timestamp(report3_32, fmt));
-	dump_report(report3_32, 64, "report3_32");
-	igt_assert_eq(0, memcmp(&report3_32[4],
-				(uint8_t *) dst_buf->ptr + 2048,
-				240));
+	dump_report(report3_32, format.size / 4, "report3_32");
+
+	for (int k = counter_offset; k < format.size / 4; k++) {
+		igt_assert_f(report2_32[k] == 0, "Failed counter %d check\n", k);
+		igt_assert_f(report3_32[k] == 0, "Failed counter %d check\n", k);
+	}
 
 	/* Accumulate deltas for counters - A0, A21 and A26 */
 	memset(accumulator.deltas, 0, sizeof(accumulator.deltas));
@@ -3136,8 +3140,8 @@ static void single_ctx_helper(struct drm_xe_engine_class_instance *hwe)
 	 * the OA report timestamps should be almost identical but
 	 * allow a 500 nanoseconds margin.
 	 */
-	timestamp0_64 = *(uint64_t *)(((uint8_t *)dst_buf->ptr) + BO_TIMESTAMP_OFFSET0);
-	timestamp1_64 = *(uint64_t *)(((uint8_t *)dst_buf->ptr) + BO_TIMESTAMP_OFFSET1);
+	timestamp0_64 = *(uint64_t *)(((uint8_t *)dst_buf->ptr) + BO_TIMESTAMP_OFFSET(0));
+	timestamp1_64 = *(uint64_t *)(((uint8_t *)dst_buf->ptr) + BO_TIMESTAMP_OFFSET(1));
 
 	igt_debug("ts_timestamp64 0 = %"PRIu64"\n", timestamp0_64);
 	igt_debug("ts_timestamp64 1 = %"PRIu64"\n", timestamp1_64);
@@ -4783,7 +4787,6 @@ igt_main
 
 		igt_subtest_with_dynamic("unprivileged-single-ctx-counters") {
 			igt_require_f(render_copy, "no render-copy function\n");
-			igt_require(intel_graphics_ver(devid) < IP_VER(20, 0));
 			__for_one_render_engine(hwe)
 				test_single_ctx_render_target_writes_a_counter(hwe);
 		}
-- 
2.34.1


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

* [PATCH i-g-t v2 13/14] tests/intel/xe_oa: Fix mmio_trigger_reports testing
  2025-03-03 23:14 [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests Umesh Nerlige Ramappa
                   ` (11 preceding siblings ...)
  2025-03-03 23:15 ` [PATCH i-g-t v2 12/14] tests/intel/xe_oa: Enable unprivileged-single-ctx-counters and fix it Umesh Nerlige Ramappa
@ 2025-03-03 23:15 ` Umesh Nerlige Ramappa
  2025-03-03 23:15 ` [PATCH i-g-t v2 14/14] tests/intel/xe_oa: Set boundaries for OA exponent test Umesh Nerlige Ramappa
                   ` (3 subsequent siblings)
  16 siblings, 0 replies; 25+ messages in thread
From: Umesh Nerlige Ramappa @ 2025-03-03 23:15 UTC (permalink / raw)
  To: igt-dev, Ashutosh Dixit

The MI_STORE command needs modification to set the right amount of
dwords.

Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
---
 tests/intel/xe_oa.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
index ca2faa555..bf6764345 100644
--- a/tests/intel/xe_oa.c
+++ b/tests/intel/xe_oa.c
@@ -3689,7 +3689,7 @@ emit_oa_reg_read(struct intel_bb *ibb, struct intel_buf *dst, uint32_t offset,
 {
 	intel_bb_add_intel_buf(ibb, dst, true);
 
-	intel_bb_out(ibb, MI_STORE_REGISTER_MEM | 2);
+	intel_bb_out(ibb, MI_STORE_REGISTER_MEM_GEN8);
 	intel_bb_out(ibb, reg);
 	intel_bb_emit_reloc(ibb, dst->handle,
 			    I915_GEM_DOMAIN_INSTRUCTION,
-- 
2.34.1


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

* [PATCH i-g-t v2 14/14] tests/intel/xe_oa: Set boundaries for OA exponent test
  2025-03-03 23:14 [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests Umesh Nerlige Ramappa
                   ` (12 preceding siblings ...)
  2025-03-03 23:15 ` [PATCH i-g-t v2 13/14] tests/intel/xe_oa: Fix mmio_trigger_reports testing Umesh Nerlige Ramappa
@ 2025-03-03 23:15 ` Umesh Nerlige Ramappa
  2025-03-04  1:56 ` ✓ Xe.CI.BAT: success for Some refactor, rewrite and fixes for OA tests (rev2) Patchwork
                   ` (2 subsequent siblings)
  16 siblings, 0 replies; 25+ messages in thread
From: Umesh Nerlige Ramappa @ 2025-03-03 23:15 UTC (permalink / raw)
  To: igt-dev, Ashutosh Dixit

Define min and max oa exponents for the oa exponent test so that they
can be set differently on slow platforms.

Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
---
 tests/intel/xe_oa.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
index bf6764345..0afa2bdc9 100644
--- a/tests/intel/xe_oa.c
+++ b/tests/intel/xe_oa.c
@@ -321,6 +321,8 @@ static size_t default_oa_buffer_size;
 static struct intel_mmio_data mmio_data;
 static igt_render_copyfunc_t render_copy;
 static uint32_t rc_width, rc_height;
+static uint32_t max_oa_exponent;
+static uint32_t min_oa_exponent;
 static uint32_t buffer_fill_size;
 static uint32_t num_buf_sizes;
 
@@ -1109,6 +1111,8 @@ init_sys_info(void)
 
 	intel_xe_perf_load_perf_configs(intel_xe_perf, drm_fd);
 
+	min_oa_exponent = 5;
+	max_oa_exponent = 20;
 	rc_width = 1920;
 	rc_height = 1080;
 	buffer_fill_size = SZ_16M;
@@ -1710,7 +1714,7 @@ static void test_oa_exponents(const struct drm_xe_engine_class_instance *hwe)
 	 * test can fail due to buffer overflows if it wasn't possible to
 	 * keep up, so we don't start from an exponent of zero...
 	 */
-	for (int exponent = 5; exponent < 20; exponent++) {
+	for (int exponent = min_oa_exponent; exponent < max_oa_exponent; exponent++) {
 		uint64_t properties[] = {
 			DRM_XE_OA_PROPERTY_OA_UNIT_ID, 0,
 
-- 
2.34.1


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

* Re: [PATCH i-g-t v2 03/14] tests/intel/xe_oa: Use period_ns in max_oa_exponent_for_period_lte
  2025-03-03 23:14 ` [PATCH i-g-t v2 03/14] tests/intel/xe_oa: Use period_ns in max_oa_exponent_for_period_lte Umesh Nerlige Ramappa
@ 2025-03-03 23:38   ` Dixit, Ashutosh
  0 siblings, 0 replies; 25+ messages in thread
From: Dixit, Ashutosh @ 2025-03-03 23:38 UTC (permalink / raw)
  To: Umesh Nerlige Ramappa; +Cc: igt-dev

On Mon, 03 Mar 2025 15:14:51 -0800, Umesh Nerlige Ramappa wrote:
>
> Rename the argument in max_oa_exponent_for_period_lte() to period_ns to
> specify the units of the period.

Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>

>
> Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
> ---
>  tests/intel/xe_oa.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
> index 5c68f1d79..b15958de6 100644
> --- a/tests/intel/xe_oa.c
> +++ b/tests/intel/xe_oa.c
> @@ -688,10 +688,10 @@ timebase_scale(uint64_t delta)
>  }
>
>  /* Returns: the largest OA exponent that will still result in a sampling period
> - * less than or equal to the given @period.
> + * less than or equal to the given @period_ns.
>   */
>  static int
> -max_oa_exponent_for_period_lte(uint64_t period)
> +max_oa_exponent_for_period_lte(uint64_t period_ns)
>  {
>	/* NB: timebase_scale() takes a uint64_t and an exponent of 30
>	 * would already represent a period of ~3 minutes so there's
> @@ -700,7 +700,7 @@ max_oa_exponent_for_period_lte(uint64_t period)
>	for (int i = 0; i < 30; i++) {
>		uint64_t oa_period = timebase_scale(2 << i);
>
> -		if (oa_period > period)
> +		if (oa_period > period_ns)
>			return max(0, i - 1);
>	}
>
> --
> 2.34.1
>

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

* Re: [PATCH i-g-t v2 07/14] tests/intel/xe_oa: Rewrite the polling small buf test
  2025-03-03 23:14 ` [PATCH i-g-t v2 07/14] tests/intel/xe_oa: Rewrite the polling small buf test Umesh Nerlige Ramappa
@ 2025-03-04  0:05   ` Dixit, Ashutosh
  0 siblings, 0 replies; 25+ messages in thread
From: Dixit, Ashutosh @ 2025-03-04  0:05 UTC (permalink / raw)
  To: Umesh Nerlige Ramappa; +Cc: igt-dev

On Mon, 03 Mar 2025 15:14:55 -0800, Umesh Nerlige Ramappa wrote:
>
> The polling-small-buf test is specifically testing that POLLIN is still
> set after an ENOSPC error. In the buggy code, POLLIN was cleared on
> the ENOSPC error even though there was data to be read. The test was
> putting an upper bound on the number of bytes read in a fixed duration
> of time. While this worked, we had occassional failures that were due to
> scheduling and other dependencies outside the scope of this test.
>
> In an attempt to make the test more robust,
> - use a more definitive method to wait for few reports
> - force an ENOSPC error using a small buffer
> - Ensure POLLIN is still set in the subsequent poll() call
>
> v2:
> - Add "why" in commit message (Ashutosh)
> - Use uapi to wait for N reports

Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>

>
> Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
> ---
>  tests/intel/xe_oa.c | 53 ++++++++++++++++++++-------------------------
>  1 file changed, 23 insertions(+), 30 deletions(-)
>
> diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
> index 08406ca5c..dd16b39a9 100644
> --- a/tests/intel/xe_oa.c
> +++ b/tests/intel/xe_oa.c
> @@ -2216,7 +2216,6 @@ static void test_polling(uint64_t requested_oa_period,
>   */
>  static void test_polling_small_buf(void)
>  {
> -	int oa_exponent = max_oa_exponent_for_period_lte(40 * 1000); /* 40us */
>	uint64_t properties[] = {
>		DRM_XE_OA_PROPERTY_OA_UNIT_ID, 0,
>
> @@ -2226,50 +2225,44 @@ static void test_polling_small_buf(void)
>		/* OA unit configuration */
>		DRM_XE_OA_PROPERTY_OA_METRIC_SET, default_test_set->perf_oa_metrics_set,
>		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(default_test_set->perf_oa_format),
> -		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent,
> +		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
> +		DRM_XE_OA_PROPERTY_WAIT_NUM_REPORTS, 5,
>		DRM_XE_OA_PROPERTY_OA_DISABLED, true,
>	};
>	struct intel_xe_oa_open_prop param = {
>		.num_properties = ARRAY_SIZE(properties) / 2,
>		.properties_ptr = to_user_pointer(properties),
>	};
> -	uint32_t test_duration = 80 * 1000 * 1000;
> -	int sample_size = get_oa_format(default_test_set->perf_oa_format).size;
> -	int n_expected_reports = test_duration / oa_exponent_to_ns(oa_exponent);
> -	int n_expect_read_bytes = n_expected_reports * sample_size;
> -	struct timespec ts = {};
> -	int n_bytes_read = 0;
> -	uint32_t n_polls = 0;
> +	struct pollfd pollfd;
> +	uint8_t buf[10];
> +	int ret;
>
>	stream_fd = __perf_open(drm_fd, &param, true /* prevent_pm */);
>	set_fd_flags(stream_fd, O_CLOEXEC | O_NONBLOCK);
> -	do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_ENABLE, 0);
>
> -	while (igt_nsec_elapsed(&ts) < test_duration) {
> -		struct pollfd pollfd = { .fd = stream_fd, .events = POLLIN };
> -
> -		ppoll(&pollfd, 1, NULL, NULL);
> -		if (pollfd.revents & POLLIN) {
> -			uint8_t buf[1024];
> -			int ret;
> +	/* Kickstart the capture */
> +	do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_ENABLE, 0);
>
> -			ret = read(stream_fd, buf, sizeof(buf));
> -			if (ret >= 0)
> -				n_bytes_read += ret;
> -		}
> +	/*
> +	 * Wait for number of reports specified in
> +	 * DRM_XE_OA_PROPERTY_WAIT_NUM_REPORTS
> +	 */
> +	pollfd.fd = stream_fd;
> +	pollfd.events = POLLIN;
> +	poll(&pollfd, 1, -1);
> +	igt_assert(pollfd.revents & POLLIN);
>
> -		n_polls++;
> -	}
> +	/* Just read one report and expect ENOSPC */
> +	errno = 0;
> +	ret = read(stream_fd, buf, sizeof(buf));
> +	igt_assert_eq(ret, -1);
> +	igt_assert_eq(errno, ENOSPC);
>
> -	igt_info("Read %d expected %d (%.2f%% of the expected number), polls=%u\n",
> -		 n_bytes_read, n_expect_read_bytes,
> -		 n_bytes_read * 100.0f / n_expect_read_bytes,
> -		 n_polls);
> +	/* Poll with 0 timeout and expect POLLIN flag to be set */
> +	poll(&pollfd, 1, 0);
> +	igt_assert(pollfd.revents & POLLIN);
>
>	__perf_close(stream_fd);
> -
> -	igt_assert(abs(n_expect_read_bytes - n_bytes_read) <
> -		   0.20 * n_expect_read_bytes);
>  }
>
>  static int
> --
> 2.34.1
>

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

* Re: [PATCH i-g-t v2 08/14] tests/intel/xe_oa: Simplify the buffer-fill test
  2025-03-03 23:14 ` [PATCH i-g-t v2 08/14] tests/intel/xe_oa: Simplify the buffer-fill test Umesh Nerlige Ramappa
@ 2025-03-04  0:17   ` Dixit, Ashutosh
  2025-03-04  0:28   ` Dixit, Ashutosh
  1 sibling, 0 replies; 25+ messages in thread
From: Dixit, Ashutosh @ 2025-03-04  0:17 UTC (permalink / raw)
  To: Umesh Nerlige Ramappa; +Cc: igt-dev

On Mon, 03 Mar 2025 15:14:56 -0800, Umesh Nerlige Ramappa wrote:
>
> Simplify the buffer-fill test for quicker runs on slow platforms.
>
> We only want to test that the BUFFER OVERFLOW status is set when we do
> not read the OA stream data in time. To do so, keeping reading zero
> bytes of data until you hit a buffer overflow.
>
> v2:
> - Add reason to the commit msg
> - Drop 'wraparound' from test description
> - s/disable/disabled
> - drop unnecessary double-bang for int to bool conversion
> - Fix regression in test execution time

OK, reverted to the original 5 us exponent which fixed the execution time.

>
> Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
> Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>

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

* Re: [PATCH i-g-t v2 08/14] tests/intel/xe_oa: Simplify the buffer-fill test
  2025-03-03 23:14 ` [PATCH i-g-t v2 08/14] tests/intel/xe_oa: Simplify the buffer-fill test Umesh Nerlige Ramappa
  2025-03-04  0:17   ` Dixit, Ashutosh
@ 2025-03-04  0:28   ` Dixit, Ashutosh
  2025-03-04 15:11     ` Dixit, Ashutosh
  1 sibling, 1 reply; 25+ messages in thread
From: Dixit, Ashutosh @ 2025-03-04  0:28 UTC (permalink / raw)
  To: Umesh Nerlige Ramappa; +Cc: igt-dev

On Mon, 03 Mar 2025 15:14:56 -0800, Umesh Nerlige Ramappa wrote:
>
>  static struct intel_xe_perf_metric_set *metric_set(const struct drm_xe_engine_class_instance *hwe)
>  {
> @@ -1092,6 +1093,7 @@ init_sys_info(void)
>
>	rc_width = 1920;
>	rc_height = 1080;
> +	buffer_fill_size = SZ_16M;

Sorry, missed this earlier. Note that there is a default_oa_buffer_size,
just below. Can we use that or we need this new buffer_fill_size variable?

The kernel will return a constant default_oa_buffer_size of 16 M (at least
for now).

We can fix this later too if needed, so not need to spin a new version for
now for this. We can do this if we see any other reason for a new version,
till now doesn't look like it.

>	oa_exponent_default = max_oa_exponent_for_period_lte(1000000);
>
>	default_oa_buffer_size = get_default_oa_buffer_size(drm_fd);

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

* Re: [PATCH i-g-t v2 11/14] tests/intel/xe_oa: Rewrite enable-disable test
  2025-03-03 23:14 ` [PATCH i-g-t v2 11/14] tests/intel/xe_oa: Rewrite enable-disable test Umesh Nerlige Ramappa
@ 2025-03-04  0:51   ` Dixit, Ashutosh
  2025-03-04 15:04     ` Dixit, Ashutosh
  0 siblings, 1 reply; 25+ messages in thread
From: Dixit, Ashutosh @ 2025-03-04  0:51 UTC (permalink / raw)
  To: Umesh Nerlige Ramappa; +Cc: igt-dev

On Mon, 03 Mar 2025 15:14:59 -0800, Umesh Nerlige Ramappa wrote:
>
> Keep it simple and just check if enable/disable is working correctly
> using the read call and existing uapi.
>
> v2: Drop mmio and use the value returned in read (Ashutosh)

Thanks for changing this.

>
> Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
> Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
> ---
>  tests/intel/xe_oa.c | 140 ++++++++------------------------------------
>  1 file changed, 24 insertions(+), 116 deletions(-)
>
> diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
> index 9c10a8fd2..47c4a1fdb 100644
> --- a/tests/intel/xe_oa.c
> +++ b/tests/intel/xe_oa.c
> @@ -2524,145 +2524,53 @@ test_non_zero_reason(const struct drm_xe_engine_class_instance *hwe, size_t oa_b
>  static void
>  test_enable_disable(const struct drm_xe_engine_class_instance *hwe)
>  {
> -	/* ~5 micro second period */
> -	int oa_exponent = max_oa_exponent_for_period_lte(5000);
> -	uint64_t oa_period = oa_exponent_to_ns(oa_exponent);
> +	uint32_t num_reports = 5;
>	struct intel_xe_perf_metric_set *test_set = metric_set(hwe);
>	uint64_t fmt = test_set->perf_oa_format;
>	uint64_t properties[] = {
>		DRM_XE_OA_PROPERTY_OA_UNIT_ID, 0,
> -
> -		/* Include OA reports in samples */
>		DRM_XE_OA_PROPERTY_SAMPLE_OA, true,
> -
> -		/* OA unit configuration */
>		DRM_XE_OA_PROPERTY_OA_METRIC_SET, test_set->perf_oa_metrics_set,
>		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(fmt),
> -		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent,
> +		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
>		DRM_XE_OA_PROPERTY_OA_DISABLED, true,
>		DRM_XE_OA_PROPERTY_OA_ENGINE_INSTANCE, hwe->engine_instance,
> +		DRM_XE_OA_PROPERTY_WAIT_NUM_REPORTS, num_reports,
>	};
>	struct intel_xe_oa_open_prop param = {
>		.num_properties = ARRAY_SIZE(properties) / 2,
>		.properties_ptr = to_user_pointer(properties),
>	};
> -	size_t report_size = get_oa_format(fmt).size;
> -	int buf_size = 65536 * report_size;
> -	uint8_t *buf = malloc(buf_size);
> -	int n_full_oa_reports = default_oa_buffer_size / report_size;
> -	uint64_t fill_duration = n_full_oa_reports * oa_period;
> -	uint32_t *last_periodic_report = malloc(report_size);
> -
> -	load_helper_init();
> -	load_helper_run(HIGH);
> +	size_t format_size = get_oa_format(fmt).size;
> +	uint8_t buf[num_reports * format_size];
> +	struct pollfd pollfd;
> +	int ret;
>
>	stream_fd = __perf_open(drm_fd, &param, true /* prevent_pm */);
>          set_fd_flags(stream_fd, O_CLOEXEC);

Doesn't make a difference to the test, but to reduce confusion, I'm
wondering if we should change this to 'O_CLOEXEC | O_NONBLOCK' since we
have introduced poll() here?

Also, there seem to be spaces here rather than tabs.

> -	for (int i = 0; i < 5; i++) {
> -		int len;
> -		uint32_t n_periodic_reports;
> -		uint64_t first_timestamp = 0, last_timestamp = 0;
> -		u32 oa_status;
> -
> -		/* Giving enough time for an overflow might help catch whether
> -		 * the OA unit has been enabled even if the driver might at
> -		 * least avoid copying reports while disabled.
> -		 */
> -		nanosleep(&(struct timespec){ .tv_sec = 0,
> -					      .tv_nsec = fill_duration * 1.25 },
> -			  NULL);
> -
> -		while ((len = read(stream_fd, buf, buf_size)) == -1 &&
> -		       (errno == EINTR || errno == EIO))
> -			;
> -
> -		igt_assert_eq(len, -1);
> -		igt_assert_eq(errno, EINVAL);
> -
> -		do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_ENABLE, 0);
> -
> -		nanosleep(&(struct timespec){ .tv_sec = 0,
> -					      .tv_nsec = fill_duration / 2 },
> -			NULL);
> -
> -		n_periodic_reports = 0;
> -
> -		/* Because of the race condition between notification of new
> -		 * reports and reports landing in memory, we need to rely on
> -		 * timestamps to figure whether we've read enough of them.
> -		 */
> -		while (((last_timestamp - first_timestamp) * oa_period) < (fill_duration / 2)) {
> -
> -			while ((len = read(stream_fd, buf, buf_size)) == -1 && errno == EINTR)
> -				;
> -			if (errno == EIO) {
> -				oa_status = get_stream_status(stream_fd);
> -				igt_debug("oa_status %#x\n", oa_status);
> -				igt_assert(!(oa_status & DRM_XE_OASTATUS_BUFFER_OVERFLOW));
> -				continue;
> -			}
> -			igt_assert_neq(len, -1);
> -
> -			for (int offset = 0; offset < len; offset += report_size) {
> -				uint32_t *report = (void *) (buf + offset);
> -
> -				if (first_timestamp == 0)
> -					first_timestamp = oa_timestamp(report, fmt);
> -				last_timestamp = oa_timestamp(report, fmt);
> -
> -				igt_debug(" > report ts=%"PRIx64""
> -					  " ts_delta_last_periodic=%s%"PRIu64""
> -					  " is_timer=%i ctx_id=0x%8x\n",
> -					  oa_timestamp(report, fmt),
> -					  oa_report_is_periodic(report) ? " " : "*",
> -					  n_periodic_reports > 0 ?  oa_timestamp_delta(report, last_periodic_report, fmt) : 0,
> -					  oa_report_is_periodic(report),
> -					  oa_report_get_ctx_id(report));
> -
> -				if (oa_report_is_periodic(report)) {
> -					memcpy(last_periodic_report, report, report_size);
> -
> -					/* We want to measure only the periodic reports,
> -					 * ctx-switch might inflate the content of the
> -					 * buffer and skew or measurement.
> -					 */
> -					n_periodic_reports++;
> -				}
> -			}
> -		}
> -
> -		do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_DISABLE, 0);
> -
> -		igt_debug("first ts = %"PRIu64", last ts = %"PRIu64"\n", first_timestamp, last_timestamp);
> -
> -		igt_debug("%f < %zu < %f\n",
> -			  report_size * n_full_oa_reports * 0.45,
> -			  n_periodic_reports * report_size,
> -			  report_size * n_full_oa_reports * 0.55);
> -
> -		igt_assert((n_periodic_reports * report_size) >
> -			   (report_size * n_full_oa_reports * 0.45));
> -		igt_assert((n_periodic_reports * report_size) <
> -			   report_size * n_full_oa_reports * 0.55);
> -
> +	errno = 0;
> +	ret = read(stream_fd, buf, sizeof(buf));
> +	igt_assert_eq(ret, -1);
> +	igt_assert_eq(errno, EINVAL);
>
> -		/* It's considered an error to read a stream while it's disabled
> -		 * since it would block indefinitely...
> -		 */
> -		len = read(stream_fd, buf, buf_size);
> +	do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_ENABLE, 0);
>
> -		igt_assert_eq(len, -1);
> -		igt_assert_eq(errno, EINVAL);
> -	}
> +	/*
> +	 * Wait for number of reports specified in
> +	 * DRM_XE_OA_PROPERTY_WAIT_NUM_REPORTS
> +	 */
> +	pollfd.fd = stream_fd;
> +	pollfd.events = POLLIN;
> +	poll(&pollfd, 1, -1);
> +	igt_assert(pollfd.revents & POLLIN);
>
> -	free(last_periodic_report);
> -	free(buf);
> +	/* Ensure num_reports can be read */
> +	while ((ret = read(stream_fd, buf, sizeof(buf))) < 0 && errno == EINTR)
> +		;
> +	igt_assert_eq(ret, sizeof(buf));
>
>	__perf_close(stream_fd);
> -
> -	load_helper_stop();
> -	load_helper_fini();
>  }
>
>  /**
> --
> 2.34.1
>

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

* ✓ Xe.CI.BAT: success for Some refactor, rewrite and fixes for OA tests (rev2)
  2025-03-03 23:14 [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests Umesh Nerlige Ramappa
                   ` (13 preceding siblings ...)
  2025-03-03 23:15 ` [PATCH i-g-t v2 14/14] tests/intel/xe_oa: Set boundaries for OA exponent test Umesh Nerlige Ramappa
@ 2025-03-04  1:56 ` Patchwork
  2025-03-04  2:09 ` ✗ i915.CI.BAT: failure " Patchwork
  2025-03-04  6:07 ` ✗ Xe.CI.Full: " Patchwork
  16 siblings, 0 replies; 25+ messages in thread
From: Patchwork @ 2025-03-04  1:56 UTC (permalink / raw)
  To: Umesh Nerlige Ramappa; +Cc: igt-dev

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

== Series Details ==

Series: Some refactor, rewrite and fixes for OA tests (rev2)
URL   : https://patchwork.freedesktop.org/series/144916/
State : success

== Summary ==

CI Bug Log - changes from XEIGT_8257_BAT -> XEIGTPW_12694_BAT
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Participating hosts (8 -> 7)
------------------------------

  Missing    (1): bat-bmg-1 

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

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

### IGT changes ###

#### Issues hit ####

  * igt@xe_live_ktest@xe_migrate:
    - bat-adlp-vf:        [PASS][1] -> [DMESG-FAIL][2] ([Intel XE#3890]) +1 other test dmesg-fail
   [1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/bat-adlp-vf/igt@xe_live_ktest@xe_migrate.html
   [2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/bat-adlp-vf/igt@xe_live_ktest@xe_migrate.html

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


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

  * IGT: IGT_8257 -> IGTPW_12694
  * Linux: xe-2747-413ae464b8021542ad90cb1fbb15f8efc5050a5d -> xe-2752-1cf56e26a93292ca26fbf891368b75a67e8700dc

  IGTPW_12694: 12694
  IGT_8257: 8257
  xe-2747-413ae464b8021542ad90cb1fbb15f8efc5050a5d: 413ae464b8021542ad90cb1fbb15f8efc5050a5d
  xe-2752-1cf56e26a93292ca26fbf891368b75a67e8700dc: 1cf56e26a93292ca26fbf891368b75a67e8700dc

== Logs ==

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

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

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

* ✗ i915.CI.BAT: failure for Some refactor, rewrite and fixes for OA tests (rev2)
  2025-03-03 23:14 [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests Umesh Nerlige Ramappa
                   ` (14 preceding siblings ...)
  2025-03-04  1:56 ` ✓ Xe.CI.BAT: success for Some refactor, rewrite and fixes for OA tests (rev2) Patchwork
@ 2025-03-04  2:09 ` Patchwork
  2025-03-04  6:07 ` ✗ Xe.CI.Full: " Patchwork
  16 siblings, 0 replies; 25+ messages in thread
From: Patchwork @ 2025-03-04  2:09 UTC (permalink / raw)
  To: Umesh Nerlige Ramappa; +Cc: igt-dev

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

== Series Details ==

Series: Some refactor, rewrite and fixes for OA tests (rev2)
URL   : https://patchwork.freedesktop.org/series/144916/
State : failure

== Summary ==

CI Bug Log - changes from IGT_8257 -> IGTPW_12694
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with IGTPW_12694 absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_12694, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them
  to document this new failure mode, which will reduce false positives in CI.

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

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

  Additional (1): bat-arlh-2 
  Missing    (2): fi-snb-2520m fi-skl-6600u 

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

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

### IGT changes ###

#### Possible regressions ####

  * igt@kms_chamelium_edid@dp-edid-read:
    - bat-dg2-13:         [PASS][1] -> [ABORT][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8257/bat-dg2-13/igt@kms_chamelium_edid@dp-edid-read.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-dg2-13/igt@kms_chamelium_edid@dp-edid-read.html

  * igt@runner@aborted:
    - fi-kbl-8809g:       NOTRUN -> [FAIL][3]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/fi-kbl-8809g/igt@runner@aborted.html

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

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

### IGT changes ###

#### Issues hit ####

  * igt@debugfs_test@basic-hwmon:
    - bat-arlh-2:         NOTRUN -> [SKIP][4] ([i915#11346] / [i915#9318])
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-arlh-2/igt@debugfs_test@basic-hwmon.html

  * igt@fbdev@eof:
    - bat-arlh-2:         NOTRUN -> [SKIP][5] ([i915#11345] / [i915#11346]) +3 other tests skip
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-arlh-2/igt@fbdev@eof.html

  * igt@fbdev@info:
    - bat-arlh-2:         NOTRUN -> [SKIP][6] ([i915#11346] / [i915#1849])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-arlh-2/igt@fbdev@info.html

  * igt@gem_lmem_swapping@basic:
    - bat-arlh-2:         NOTRUN -> [SKIP][7] ([i915#10213] / [i915#11346] / [i915#11671]) +3 other tests skip
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-arlh-2/igt@gem_lmem_swapping@basic.html

  * igt@gem_mmap@basic:
    - bat-arlh-2:         NOTRUN -> [SKIP][8] ([i915#11343] / [i915#11346])
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-arlh-2/igt@gem_mmap@basic.html

  * igt@gem_render_tiled_blits@basic:
    - bat-arlh-2:         NOTRUN -> [SKIP][9] ([i915#10197] / [i915#10211] / [i915#11346] / [i915#11725])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-arlh-2/igt@gem_render_tiled_blits@basic.html

  * igt@gem_tiled_blits@basic:
    - bat-arlh-2:         NOTRUN -> [SKIP][10] ([i915#11346] / [i915#12637]) +4 other tests skip
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-arlh-2/igt@gem_tiled_blits@basic.html

  * igt@gem_tiled_pread_basic:
    - bat-arlh-2:         NOTRUN -> [SKIP][11] ([i915#10206] / [i915#11346] / [i915#11724])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-arlh-2/igt@gem_tiled_pread_basic.html

  * igt@i915_module_load@load:
    - bat-mtlp-9:         [PASS][12] -> [DMESG-WARN][13] ([i915#13494])
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8257/bat-mtlp-9/igt@i915_module_load@load.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-mtlp-9/igt@i915_module_load@load.html

  * igt@i915_pm_rps@basic-api:
    - bat-arlh-2:         NOTRUN -> [SKIP][14] ([i915#10209] / [i915#11346] / [i915#11681])
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-arlh-2/igt@i915_pm_rps@basic-api.html

  * igt@kms_addfb_basic@addfb25-y-tiled-small-legacy:
    - bat-arlh-2:         NOTRUN -> [SKIP][15] ([i915#10200] / [i915#11346] / [i915#11666] / [i915#12203])
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-arlh-2/igt@kms_addfb_basic@addfb25-y-tiled-small-legacy.html

  * igt@kms_addfb_basic@basic-x-tiled-legacy:
    - bat-arlh-2:         NOTRUN -> [SKIP][16] ([i915#10200] / [i915#11346] / [i915#11666]) +8 other tests skip
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-arlh-2/igt@kms_addfb_basic@basic-x-tiled-legacy.html

  * igt@kms_psr@psr-primary-page-flip:
    - bat-arlh-2:         NOTRUN -> [SKIP][17] ([i915#11346]) +32 other tests skip
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-arlh-2/igt@kms_psr@psr-primary-page-flip.html

  * igt@kms_setmode@basic-clone-single-crtc:
    - bat-arlh-2:         NOTRUN -> [SKIP][18] ([i915#10208] / [i915#11346] / [i915#8809])
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-arlh-2/igt@kms_setmode@basic-clone-single-crtc.html

  * igt@prime_vgem@basic-fence-read:
    - bat-arlh-2:         NOTRUN -> [SKIP][19] ([i915#10212] / [i915#11346] / [i915#11726])
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-arlh-2/igt@prime_vgem@basic-fence-read.html

  * igt@prime_vgem@basic-read:
    - bat-arlh-2:         NOTRUN -> [SKIP][20] ([i915#10214] / [i915#11346] / [i915#11726])
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-arlh-2/igt@prime_vgem@basic-read.html

  * igt@prime_vgem@basic-write:
    - bat-arlh-2:         NOTRUN -> [SKIP][21] ([i915#10216] / [i915#11346] / [i915#11723])
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-arlh-2/igt@prime_vgem@basic-write.html

  
#### Possible fixes ####

  * igt@dmabuf@all-tests@dma_fence_chain:
    - fi-bsw-nick:        [INCOMPLETE][22] ([i915#12904]) -> [PASS][23] +1 other test pass
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8257/fi-bsw-nick/igt@dmabuf@all-tests@dma_fence_chain.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/fi-bsw-nick/igt@dmabuf@all-tests@dma_fence_chain.html

  * igt@gem_exec_fence@basic-wait:
    - bat-rpls-4:         [DMESG-WARN][24] ([i915#13400]) -> [PASS][25] +1 other test pass
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8257/bat-rpls-4/igt@gem_exec_fence@basic-wait.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-rpls-4/igt@gem_exec_fence@basic-wait.html

  * igt@i915_selftest@live@ring_submission:
    - bat-twl-1:          [INCOMPLETE][26] ([i915#13761] / [i915#13776]) -> [PASS][27] +1 other test pass
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8257/bat-twl-1/igt@i915_selftest@live@ring_submission.html
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-twl-1/igt@i915_selftest@live@ring_submission.html

  
#### Warnings ####

  * igt@i915_selftest@live:
    - bat-twl-2:          [ABORT][28] ([i915#12919] / [i915#13503]) -> [INCOMPLETE][29] ([i915#12445] / [i915#13761] / [i915#13776])
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8257/bat-twl-2/igt@i915_selftest@live.html
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-twl-2/igt@i915_selftest@live.html

  * igt@i915_selftest@live@reset:
    - bat-twl-2:          [ABORT][30] ([i915#12919] / [i915#13503]) -> [INCOMPLETE][31] ([i915#12445])
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_8257/bat-twl-2/igt@i915_selftest@live@reset.html
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_12694/bat-twl-2/igt@i915_selftest@live@reset.html

  
  [i915#10197]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10197
  [i915#10200]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10200
  [i915#10206]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10206
  [i915#10208]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10208
  [i915#10209]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10209
  [i915#10211]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10211
  [i915#10212]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10212
  [i915#10213]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10213
  [i915#10214]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10214
  [i915#10216]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/10216
  [i915#11343]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11343
  [i915#11345]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11345
  [i915#11346]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11346
  [i915#11666]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11666
  [i915#11671]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11671
  [i915#11681]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11681
  [i915#11723]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11723
  [i915#11724]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11724
  [i915#11725]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11725
  [i915#11726]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11726
  [i915#12203]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12203
  [i915#12445]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12445
  [i915#12637]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12637
  [i915#12904]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12904
  [i915#12919]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/12919
  [i915#13400]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13400
  [i915#13494]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13494
  [i915#13503]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13503
  [i915#13761]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13761
  [i915#13776]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13776
  [i915#1849]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/1849
  [i915#8809]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/8809
  [i915#9318]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/9318


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

  * CI: CI-20190529 -> None
  * IGT: IGT_8257 -> IGTPW_12694
  * Linux: CI_DRM_16215 -> CI_DRM_16220

  CI-20190529: 20190529
  CI_DRM_16215: 413ae464b8021542ad90cb1fbb15f8efc5050a5d @ git://anongit.freedesktop.org/gfx-ci/linux
  CI_DRM_16220: 1cf56e26a93292ca26fbf891368b75a67e8700dc @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_12694: 12694
  IGT_8257: 8257

== Logs ==

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

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

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

* ✗ Xe.CI.Full: failure for Some refactor, rewrite and fixes for OA tests (rev2)
  2025-03-03 23:14 [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests Umesh Nerlige Ramappa
                   ` (15 preceding siblings ...)
  2025-03-04  2:09 ` ✗ i915.CI.BAT: failure " Patchwork
@ 2025-03-04  6:07 ` Patchwork
  16 siblings, 0 replies; 25+ messages in thread
From: Patchwork @ 2025-03-04  6:07 UTC (permalink / raw)
  To: Umesh Nerlige Ramappa; +Cc: igt-dev

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

== Series Details ==

Series: Some refactor, rewrite and fixes for OA tests (rev2)
URL   : https://patchwork.freedesktop.org/series/144916/
State : failure

== Summary ==

CI Bug Log - changes from XEIGT_8257_full -> XEIGTPW_12694_full
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with XEIGTPW_12694_full absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in XEIGTPW_12694_full, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them
  to document this new failure mode, which will reduce false positives in CI.

  

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

  No changes in participating hosts

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

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

### IGT changes ###

#### Possible regressions ####

  * igt@kms_atomic_interruptible@legacy-setmode:
    - shard-lnl:          [PASS][1] -> [SKIP][2] +14 other tests skip
   [1]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-8/igt@kms_atomic_interruptible@legacy-setmode.html
   [2]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_atomic_interruptible@legacy-setmode.html

  * igt@kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-0-async-flip:
    - shard-lnl:          NOTRUN -> [SKIP][3] +41 other tests skip
   [3]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-0-async-flip.html

  * igt@kms_display_modes@extended-mode-basic:
    - shard-bmg:          NOTRUN -> [DMESG-WARN][4]
   [4]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@kms_display_modes@extended-mode-basic.html
    - shard-dg2-set2:     [PASS][5] -> [DMESG-WARN][6] +1 other test dmesg-warn
   [5]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-434/igt@kms_display_modes@extended-mode-basic.html
   [6]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-434/igt@kms_display_modes@extended-mode-basic.html

  * igt@xe_live_ktest@xe_migrate:
    - shard-dg2-set2:     NOTRUN -> [SKIP][7] +1 other test skip
   [7]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@xe_live_ktest@xe_migrate.html

  
#### Warnings ####

  * igt@kms_async_flips@async-flip-with-page-flip-events-atomic:
    - shard-lnl:          [FAIL][8] ([Intel XE#3719] / [Intel XE#911]) -> [SKIP][9]
   [8]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@kms_async_flips@async-flip-with-page-flip-events-atomic.html
   [9]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_async_flips@async-flip-with-page-flip-events-atomic.html

  * igt@kms_atomic_transition@plane-all-modeset-transition-fencing:
    - shard-lnl:          [SKIP][10] ([Intel XE#3279]) -> [SKIP][11]
   [10]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-3/igt@kms_atomic_transition@plane-all-modeset-transition-fencing.html
   [11]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_atomic_transition@plane-all-modeset-transition-fencing.html

  * igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels:
    - shard-lnl:          [SKIP][12] ([Intel XE#4471]) -> [SKIP][13]
   [12]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels.html
   [13]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_atomic_transition@plane-all-modeset-transition-fencing-internal-panels.html

  * igt@kms_big_fb@x-tiled-8bpp-rotate-270:
    - shard-lnl:          [SKIP][14] ([Intel XE#1407]) -> [SKIP][15] +1 other test skip
   [14]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-8/igt@kms_big_fb@x-tiled-8bpp-rotate-270.html
   [15]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_big_fb@x-tiled-8bpp-rotate-270.html

  * igt@kms_big_fb@y-tiled-addfb-size-offset-overflow:
    - shard-lnl:          [SKIP][16] ([Intel XE#1477]) -> [SKIP][17]
   [16]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-8/igt@kms_big_fb@y-tiled-addfb-size-offset-overflow.html
   [17]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_big_fb@y-tiled-addfb-size-offset-overflow.html

  * igt@kms_big_fb@yf-tiled-8bpp-rotate-0:
    - shard-lnl:          [SKIP][18] ([Intel XE#1124]) -> [SKIP][19] +2 other tests skip
   [18]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@kms_big_fb@yf-tiled-8bpp-rotate-0.html
   [19]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_big_fb@yf-tiled-8bpp-rotate-0.html

  * igt@kms_bw@connected-linear-tiling-4-displays-1920x1080p:
    - shard-lnl:          [SKIP][20] ([Intel XE#1512]) -> [SKIP][21]
   [20]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-8/igt@kms_bw@connected-linear-tiling-4-displays-1920x1080p.html
   [21]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_bw@connected-linear-tiling-4-displays-1920x1080p.html

  * igt@kms_ccs@bad-rotation-90-y-tiled-gen12-rc-ccs:
    - shard-lnl:          [SKIP][22] ([Intel XE#2887]) -> [SKIP][23] +4 other tests skip
   [22]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-8/igt@kms_ccs@bad-rotation-90-y-tiled-gen12-rc-ccs.html
   [23]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_ccs@bad-rotation-90-y-tiled-gen12-rc-ccs.html

  * igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs:
    - shard-lnl:          [SKIP][24] ([Intel XE#3432]) -> [SKIP][25]
   [24]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-3/igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs.html
   [25]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_ccs@crc-primary-suspend-yf-tiled-ccs.html

  * igt@kms_ccs@missing-ccs-buffer-4-tiled-mtl-rc-ccs:
    - shard-lnl:          [SKIP][26] ([Intel XE#4472]) -> [SKIP][27]
   [26]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_ccs@missing-ccs-buffer-4-tiled-mtl-rc-ccs.html
   [27]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_ccs@missing-ccs-buffer-4-tiled-mtl-rc-ccs.html

  * igt@kms_content_protection@dp-mst-type-0:
    - shard-lnl:          [SKIP][28] ([Intel XE#307]) -> [SKIP][29]
   [28]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@kms_content_protection@dp-mst-type-0.html
   [29]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_content_protection@dp-mst-type-0.html

  * igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions-varying-size:
    - shard-lnl:          [SKIP][30] ([Intel XE#309]) -> [SKIP][31] +3 other tests skip
   [30]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-2/igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions-varying-size.html
   [31]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions-varying-size.html

  * igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle:
    - shard-lnl:          [SKIP][32] ([Intel XE#323]) -> [SKIP][33]
   [32]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle.html
   [33]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle.html

  * igt@kms_dsc@dsc-with-bpc:
    - shard-lnl:          [SKIP][34] ([Intel XE#2244]) -> [SKIP][35]
   [34]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-6/igt@kms_dsc@dsc-with-bpc.html
   [35]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_dsc@dsc-with-bpc.html

  * igt@kms_tiled_display@basic-test-pattern-with-chamelium:
    - shard-lnl:          [SKIP][36] ([Intel XE#362]) -> [SKIP][37]
   [36]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-6/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html
   [37]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html

  
#### Suppressed ####

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

  * {igt@xe_create@valid-flag}:
    - shard-lnl:          NOTRUN -> [FAIL][38]
   [38]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@xe_create@valid-flag.html

  
New tests
---------

  New tests have been introduced between XEIGT_8257_full and XEIGTPW_12694_full:

### New IGT tests (3) ###

  * igt@xe_oa@buffer-size:
    - Statuses : 2 pass(s) 1 skip(s)
    - Exec time: [0.0, 2.89] s

  * igt@xe_oa@buffer-size@ccs-0-128m:
    - Statuses : 1 pass(s)
    - Exec time: [2.89] s

  * igt@xe_oa@buffer-size@rcs-0-32m:
    - Statuses : 1 pass(s)
    - Exec time: [2.79] s

  

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

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

### IGT changes ###

#### Issues hit ####

  * igt@fbdev@unaligned-write:
    - shard-lnl:          [PASS][39] -> [SKIP][40] ([Intel XE#2134])
   [39]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-8/igt@fbdev@unaligned-write.html
   [40]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@fbdev@unaligned-write.html

  * igt@kms_addfb_basic@addfb25-y-tiled-small-legacy:
    - shard-bmg:          NOTRUN -> [SKIP][41] ([Intel XE#2233])
   [41]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@kms_addfb_basic@addfb25-y-tiled-small-legacy.html

  * igt@kms_async_flips@invalid-async-flip-atomic:
    - shard-dg2-set2:     NOTRUN -> [SKIP][42] ([Intel XE#3768])
   [42]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-434/igt@kms_async_flips@invalid-async-flip-atomic.html
    - shard-lnl:          NOTRUN -> [SKIP][43] ([Intel XE#3768])
   [43]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@kms_async_flips@invalid-async-flip-atomic.html

  * igt@kms_atomic@plane-cursor-legacy@pipe-a-edp-1:
    - shard-lnl:          NOTRUN -> [DMESG-WARN][44] ([Intel XE#324])
   [44]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_atomic@plane-cursor-legacy@pipe-a-edp-1.html

  * igt@kms_atomic@plane-primary-overlay-mutable-zpos:
    - shard-lnl:          NOTRUN -> [SKIP][45] ([Intel XE#3279])
   [45]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-5/igt@kms_atomic@plane-primary-overlay-mutable-zpos.html

  * igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels:
    - shard-bmg:          NOTRUN -> [SKIP][46] ([Intel XE#2370]) +1 other test skip
   [46]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels.html

  * igt@kms_big_fb@4-tiled-64bpp-rotate-90:
    - shard-bmg:          NOTRUN -> [SKIP][47] ([Intel XE#2327]) +8 other tests skip
   [47]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@kms_big_fb@4-tiled-64bpp-rotate-90.html

  * igt@kms_big_fb@linear-16bpp-rotate-90:
    - shard-dg2-set2:     NOTRUN -> [SKIP][48] ([Intel XE#316]) +5 other tests skip
   [48]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_big_fb@linear-16bpp-rotate-90.html

  * igt@kms_big_fb@linear-32bpp-rotate-90:
    - shard-lnl:          NOTRUN -> [SKIP][49] ([Intel XE#1407]) +3 other tests skip
   [49]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-3/igt@kms_big_fb@linear-32bpp-rotate-90.html

  * igt@kms_big_fb@yf-tiled-32bpp-rotate-0:
    - shard-bmg:          NOTRUN -> [SKIP][50] ([Intel XE#1124]) +14 other tests skip
   [50]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@kms_big_fb@yf-tiled-32bpp-rotate-0.html

  * igt@kms_big_fb@yf-tiled-addfb:
    - shard-dg2-set2:     NOTRUN -> [SKIP][51] ([Intel XE#619])
   [51]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_big_fb@yf-tiled-addfb.html

  * igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip:
    - shard-dg2-set2:     NOTRUN -> [SKIP][52] ([Intel XE#1124]) +10 other tests skip
   [52]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-436/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip.html
    - shard-lnl:          NOTRUN -> [SKIP][53] ([Intel XE#1124]) +5 other tests skip
   [53]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180-hflip-async-flip.html

  * igt@kms_bw@connected-linear-tiling-2-displays-2160x1440p:
    - shard-lnl:          NOTRUN -> [SKIP][54] ([Intel XE#4472]) +10 other tests skip
   [54]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_bw@connected-linear-tiling-2-displays-2160x1440p.html

  * igt@kms_bw@connected-linear-tiling-4-displays-2560x1440p:
    - shard-bmg:          NOTRUN -> [SKIP][55] ([Intel XE#2314] / [Intel XE#2894]) +1 other test skip
   [55]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@kms_bw@connected-linear-tiling-4-displays-2560x1440p.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][56] ([Intel XE#2191])
   [56]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-436/igt@kms_bw@connected-linear-tiling-4-displays-2560x1440p.html

  * igt@kms_bw@linear-tiling-1-displays-2560x1440p:
    - shard-dg2-set2:     NOTRUN -> [SKIP][57] ([Intel XE#367]) +2 other tests skip
   [57]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-436/igt@kms_bw@linear-tiling-1-displays-2560x1440p.html

  * igt@kms_bw@linear-tiling-2-displays-2560x1440p:
    - shard-lnl:          NOTRUN -> [SKIP][58] ([Intel XE#367])
   [58]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-3/igt@kms_bw@linear-tiling-2-displays-2560x1440p.html

  * igt@kms_bw@linear-tiling-4-displays-2160x1440p:
    - shard-bmg:          NOTRUN -> [SKIP][59] ([Intel XE#367]) +4 other tests skip
   [59]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@kms_bw@linear-tiling-4-displays-2160x1440p.html
    - shard-lnl:          NOTRUN -> [SKIP][60] ([Intel XE#1512])
   [60]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_bw@linear-tiling-4-displays-2160x1440p.html

  * igt@kms_ccs@bad-rotation-90-yf-tiled-ccs@pipe-c-dp-2:
    - shard-dg2-set2:     NOTRUN -> [SKIP][61] ([Intel XE#787]) +259 other tests skip
   [61]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_ccs@bad-rotation-90-yf-tiled-ccs@pipe-c-dp-2.html

  * igt@kms_ccs@ccs-on-another-bo-y-tiled-gen12-rc-ccs-cc@pipe-d-dp-4:
    - shard-dg2-set2:     NOTRUN -> [SKIP][62] ([Intel XE#455] / [Intel XE#787]) +70 other tests skip
   [62]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-433/igt@kms_ccs@ccs-on-another-bo-y-tiled-gen12-rc-ccs-cc@pipe-d-dp-4.html

  * igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs@pipe-c-edp-1:
    - shard-lnl:          NOTRUN -> [SKIP][63] ([Intel XE#2669]) +3 other tests skip
   [63]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs@pipe-c-edp-1.html

  * igt@kms_ccs@crc-primary-basic-y-tiled-ccs:
    - shard-bmg:          NOTRUN -> [SKIP][64] ([Intel XE#2887]) +22 other tests skip
   [64]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@kms_ccs@crc-primary-basic-y-tiled-ccs.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs:
    - shard-dg2-set2:     NOTRUN -> [SKIP][65] ([Intel XE#3442])
   [65]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs:
    - shard-dg2-set2:     [PASS][66] -> [DMESG-WARN][67] ([Intel XE#4199])
   [66]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-433/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs.html
   [67]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-433/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs@pipe-b-hdmi-a-6:
    - shard-dg2-set2:     [PASS][68] -> [INCOMPLETE][69] ([Intel XE#3862]) +2 other tests incomplete
   [68]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-464/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs@pipe-b-hdmi-a-6.html
   [69]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-463/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs@pipe-b-hdmi-a-6.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc:
    - shard-bmg:          NOTRUN -> [SKIP][70] ([Intel XE#3432]) +3 other tests skip
   [70]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc.html

  * igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-mc-ccs:
    - shard-lnl:          NOTRUN -> [SKIP][71] ([Intel XE#3432])
   [71]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-5/igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-mc-ccs.html

  * igt@kms_ccs@random-ccs-data-4-tiled-bmg-ccs:
    - shard-dg2-set2:     NOTRUN -> [SKIP][72] ([Intel XE#2907]) +1 other test skip
   [72]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-436/igt@kms_ccs@random-ccs-data-4-tiled-bmg-ccs.html

  * igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs:
    - shard-dg2-set2:     [PASS][73] -> [INCOMPLETE][74] ([Intel XE#1727] / [Intel XE#2705] / [Intel XE#3113])
   [73]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-434/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs.html
   [74]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-433/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs.html

  * igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc@pipe-d-dp-4:
    - shard-dg2-set2:     NOTRUN -> [DMESG-WARN][75] ([Intel XE#1727] / [Intel XE#2705] / [Intel XE#3113])
   [75]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-433/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc@pipe-d-dp-4.html

  * igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs@pipe-a-hdmi-a-6:
    - shard-dg2-set2:     [PASS][76] -> [INCOMPLETE][77] ([Intel XE#2705] / [Intel XE#3113])
   [76]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-434/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs@pipe-a-hdmi-a-6.html
   [77]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-433/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs@pipe-a-hdmi-a-6.html

  * igt@kms_ccs@random-ccs-data-4-tiled-lnl-ccs@pipe-c-dp-2:
    - shard-bmg:          NOTRUN -> [SKIP][78] ([Intel XE#2652] / [Intel XE#787]) +8 other tests skip
   [78]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_ccs@random-ccs-data-4-tiled-lnl-ccs@pipe-c-dp-2.html

  * igt@kms_ccs@random-ccs-data-4-tiled-mtl-mc-ccs:
    - shard-lnl:          NOTRUN -> [SKIP][79] ([Intel XE#2887]) +13 other tests skip
   [79]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-5/igt@kms_ccs@random-ccs-data-4-tiled-mtl-mc-ccs.html

  * igt@kms_cdclk@mode-transition-all-outputs:
    - shard-bmg:          NOTRUN -> [SKIP][80] ([Intel XE#2724])
   [80]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_cdclk@mode-transition-all-outputs.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][81] ([Intel XE#4418])
   [81]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-433/igt@kms_cdclk@mode-transition-all-outputs.html

  * igt@kms_cdclk@mode-transition@pipe-d-dp-4:
    - shard-dg2-set2:     NOTRUN -> [SKIP][82] ([Intel XE#4417]) +3 other tests skip
   [82]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-434/igt@kms_cdclk@mode-transition@pipe-d-dp-4.html

  * igt@kms_chamelium_audio@dp-audio:
    - shard-lnl:          NOTRUN -> [SKIP][83] ([Intel XE#373]) +7 other tests skip
   [83]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_chamelium_audio@dp-audio.html

  * igt@kms_chamelium_color@ctm-0-25:
    - shard-lnl:          NOTRUN -> [SKIP][84] ([Intel XE#306])
   [84]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-5/igt@kms_chamelium_color@ctm-0-25.html

  * igt@kms_chamelium_color@ctm-green-to-red:
    - shard-bmg:          NOTRUN -> [SKIP][85] ([Intel XE#2325])
   [85]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@kms_chamelium_color@ctm-green-to-red.html

  * igt@kms_chamelium_color@ctm-limited-range:
    - shard-dg2-set2:     NOTRUN -> [SKIP][86] ([Intel XE#306])
   [86]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-434/igt@kms_chamelium_color@ctm-limited-range.html

  * igt@kms_chamelium_edid@vga-edid-read:
    - shard-dg2-set2:     NOTRUN -> [SKIP][87] ([Intel XE#373]) +9 other tests skip
   [87]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_chamelium_edid@vga-edid-read.html

  * igt@kms_chamelium_frames@hdmi-aspect-ratio:
    - shard-bmg:          NOTRUN -> [SKIP][88] ([Intel XE#2252]) +13 other tests skip
   [88]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@kms_chamelium_frames@hdmi-aspect-ratio.html

  * igt@kms_content_protection@dp-mst-type-0:
    - shard-bmg:          NOTRUN -> [SKIP][89] ([Intel XE#2390])
   [89]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_content_protection@dp-mst-type-0.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][90] ([Intel XE#307])
   [90]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-433/igt@kms_content_protection@dp-mst-type-0.html

  * igt@kms_content_protection@legacy@pipe-a-dp-2:
    - shard-dg2-set2:     NOTRUN -> [FAIL][91] ([Intel XE#1178]) +2 other tests fail
   [91]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_content_protection@legacy@pipe-a-dp-2.html

  * igt@kms_content_protection@uevent:
    - shard-lnl:          NOTRUN -> [SKIP][92] ([Intel XE#3278]) +1 other test skip
   [92]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_content_protection@uevent.html

  * igt@kms_cursor_crc@cursor-offscreen-32x32:
    - shard-bmg:          NOTRUN -> [SKIP][93] ([Intel XE#2320]) +2 other tests skip
   [93]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@kms_cursor_crc@cursor-offscreen-32x32.html

  * igt@kms_cursor_crc@cursor-onscreen-512x170:
    - shard-dg2-set2:     NOTRUN -> [SKIP][94] ([Intel XE#308]) +2 other tests skip
   [94]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_cursor_crc@cursor-onscreen-512x170.html

  * igt@kms_cursor_crc@cursor-sliding-32x10:
    - shard-lnl:          NOTRUN -> [SKIP][95] ([Intel XE#1424]) +2 other tests skip
   [95]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@kms_cursor_crc@cursor-sliding-32x10.html

  * igt@kms_cursor_crc@cursor-sliding-512x512:
    - shard-bmg:          NOTRUN -> [SKIP][96] ([Intel XE#2321]) +3 other tests skip
   [96]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@kms_cursor_crc@cursor-sliding-512x512.html

  * igt@kms_cursor_legacy@2x-flip-vs-cursor-atomic:
    - shard-dg2-set2:     [PASS][97] -> [SKIP][98] ([Intel XE#309]) +1 other test skip
   [97]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-432/igt@kms_cursor_legacy@2x-flip-vs-cursor-atomic.html
   [98]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@kms_cursor_legacy@2x-flip-vs-cursor-atomic.html

  * igt@kms_cursor_legacy@2x-long-flip-vs-cursor-legacy:
    - shard-bmg:          NOTRUN -> [SKIP][99] ([Intel XE#2291]) +1 other test skip
   [99]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-legacy.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy:
    - shard-bmg:          NOTRUN -> [SKIP][100] ([Intel XE#2286])
   [100]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-legacy.html

  * igt@kms_cursor_legacy@cursora-vs-flipa-atomic:
    - shard-lnl:          [PASS][101] -> [SKIP][102] ([Intel XE#4471]) +19 other tests skip
   [101]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-2/igt@kms_cursor_legacy@cursora-vs-flipa-atomic.html
   [102]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_cursor_legacy@cursora-vs-flipa-atomic.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa-varying-size:
    - shard-lnl:          NOTRUN -> [SKIP][103] ([Intel XE#309]) +5 other tests skip
   [103]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@kms_cursor_legacy@cursorb-vs-flipa-varying-size.html
    - shard-bmg:          NOTRUN -> [DMESG-WARN][104] ([Intel XE#877])
   [104]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@kms_cursor_legacy@cursorb-vs-flipa-varying-size.html

  * igt@kms_dirtyfb@drrs-dirtyfb-ioctl:
    - shard-bmg:          NOTRUN -> [SKIP][105] ([Intel XE#1508])
   [105]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@kms_dirtyfb@drrs-dirtyfb-ioctl.html
    - shard-lnl:          NOTRUN -> [SKIP][106] ([Intel XE#1508])
   [106]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_dirtyfb@drrs-dirtyfb-ioctl.html

  * igt@kms_dp_link_training@uhbr-sst:
    - shard-bmg:          NOTRUN -> [SKIP][107] ([Intel XE#4354])
   [107]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@kms_dp_link_training@uhbr-sst.html

  * igt@kms_dsc@dsc-fractional-bpp-with-bpc:
    - shard-bmg:          NOTRUN -> [SKIP][108] ([Intel XE#2244]) +1 other test skip
   [108]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@kms_dsc@dsc-fractional-bpp-with-bpc.html

  * igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-dirtyfb-tests:
    - shard-bmg:          NOTRUN -> [SKIP][109] ([Intel XE#4422]) +1 other test skip
   [109]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-dirtyfb-tests.html

  * igt@kms_feature_discovery@display-1x:
    - shard-lnl:          [PASS][110] -> [SKIP][111] ([Intel XE#702])
   [110]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-3/igt@kms_feature_discovery@display-1x.html
   [111]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_feature_discovery@display-1x.html

  * igt@kms_feature_discovery@display-2x:
    - shard-lnl:          NOTRUN -> [SKIP][112] ([Intel XE#702])
   [112]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_feature_discovery@display-2x.html

  * igt@kms_feature_discovery@display-3x:
    - shard-lnl:          NOTRUN -> [SKIP][113] ([Intel XE#703])
   [113]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_feature_discovery@display-3x.html

  * igt@kms_feature_discovery@display-4x:
    - shard-bmg:          NOTRUN -> [SKIP][114] ([Intel XE#1138])
   [114]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@kms_feature_discovery@display-4x.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][115] ([Intel XE#1138])
   [115]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_feature_discovery@display-4x.html
    - shard-lnl:          NOTRUN -> [SKIP][116] ([Intel XE#1138])
   [116]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_feature_discovery@display-4x.html

  * igt@kms_feature_discovery@psr1:
    - shard-lnl:          [PASS][117] -> [SKIP][118] ([Intel XE#1135])
   [117]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-3/igt@kms_feature_discovery@psr1.html
   [118]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_feature_discovery@psr1.html

  * igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@ac-hdmi-a2-dp2:
    - shard-dg2-set2:     NOTRUN -> [FAIL][119] ([Intel XE#301]) +2 other tests fail
   [119]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@ac-hdmi-a2-dp2.html

  * igt@kms_flip@2x-flip-vs-expired-vblank@ad-dp2-hdmi-a3:
    - shard-bmg:          [PASS][120] -> [FAIL][121] ([Intel XE#3321])
   [120]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-2/igt@kms_flip@2x-flip-vs-expired-vblank@ad-dp2-hdmi-a3.html
   [121]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_flip@2x-flip-vs-expired-vblank@ad-dp2-hdmi-a3.html

  * igt@kms_flip@2x-flip-vs-modeset:
    - shard-dg2-set2:     [PASS][122] -> [SKIP][123] ([Intel XE#310])
   [122]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-432/igt@kms_flip@2x-flip-vs-modeset.html
   [123]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@kms_flip@2x-flip-vs-modeset.html

  * igt@kms_flip@2x-flip-vs-panning-interruptible:
    - shard-bmg:          [PASS][124] -> [SKIP][125] ([Intel XE#2316]) +1 other test skip
   [124]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-8/igt@kms_flip@2x-flip-vs-panning-interruptible.html
   [125]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@kms_flip@2x-flip-vs-panning-interruptible.html

  * igt@kms_flip@2x-flip-vs-rmfb-interruptible:
    - shard-lnl:          NOTRUN -> [SKIP][126] ([Intel XE#1421]) +7 other tests skip
   [126]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-3/igt@kms_flip@2x-flip-vs-rmfb-interruptible.html

  * igt@kms_flip@2x-flip-vs-suspend-interruptible:
    - shard-dg2-set2:     [PASS][127] -> [DMESG-WARN][128] ([Intel XE#2955])
   [127]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-463/igt@kms_flip@2x-flip-vs-suspend-interruptible.html
   [128]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-433/igt@kms_flip@2x-flip-vs-suspend-interruptible.html

  * igt@kms_flip@2x-modeset-vs-vblank-race:
    - shard-bmg:          NOTRUN -> [SKIP][129] ([Intel XE#2316]) +1 other test skip
   [129]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@kms_flip@2x-modeset-vs-vblank-race.html

  * igt@kms_flip@2x-plain-flip:
    - shard-dg2-set2:     NOTRUN -> [SKIP][130] ([Intel XE#310]) +1 other test skip
   [130]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@kms_flip@2x-plain-flip.html

  * igt@kms_flip@blocking-absolute-wf_vblank:
    - shard-lnl:          [PASS][131] -> [SKIP][132] ([Intel XE#2482]) +11 other tests skip
   [131]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-2/igt@kms_flip@blocking-absolute-wf_vblank.html
   [132]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_flip@blocking-absolute-wf_vblank.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible:
    - shard-lnl:          NOTRUN -> [SKIP][133] ([Intel XE#2482]) +4 other tests skip
   [133]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_flip@flip-vs-expired-vblank-interruptible.html

  * igt@kms_flip@plain-flip-ts-check-interruptible:
    - shard-lnl:          [PASS][134] -> [FAIL][135] ([Intel XE#886]) +1 other test fail
   [134]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-6/igt@kms_flip@plain-flip-ts-check-interruptible.html
   [135]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-5/igt@kms_flip@plain-flip-ts-check-interruptible.html

  * igt@kms_flip@wf_vblank-ts-check-interruptible@a-edp1:
    - shard-lnl:          NOTRUN -> [FAIL][136] ([Intel XE#886]) +1 other test fail
   [136]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@kms_flip@wf_vblank-ts-check-interruptible@a-edp1.html

  * igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling:
    - shard-lnl:          NOTRUN -> [SKIP][137] ([Intel XE#1397] / [Intel XE#1745]) +1 other test skip
   [137]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@kms_flip_scaled_crc@flip-32bpp-xtile-to-64bpp-xtile-downscaling.html

  * igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling:
    - shard-lnl:          NOTRUN -> [SKIP][138] ([Intel XE#1401] / [Intel XE#1745]) +2 other tests skip
   [138]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling.html

  * igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling@pipe-a-default-mode:
    - shard-lnl:          NOTRUN -> [SKIP][139] ([Intel XE#1401]) +6 other tests skip
   [139]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling@pipe-a-default-mode.html

  * igt@kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-upscaling:
    - shard-lnl:          NOTRUN -> [SKIP][140] ([Intel XE#1745]) +2 other tests skip
   [140]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_flip_scaled_crc@flip-64bpp-linear-to-16bpp-linear-upscaling.html

  * igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-downscaling@pipe-a-default-mode:
    - shard-lnl:          NOTRUN -> [SKIP][141] ([Intel XE#1397]) +2 other tests skip
   [141]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-3/igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-downscaling@pipe-a-default-mode.html

  * igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-upscaling:
    - shard-lnl:          [PASS][142] -> [SKIP][143] ([Intel XE#1745]) +1 other test skip
   [142]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-6/igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-upscaling.html
   [143]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-upscaling.html

  * igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-downscaling:
    - shard-bmg:          NOTRUN -> [SKIP][144] ([Intel XE#2293] / [Intel XE#2380]) +3 other tests skip
   [144]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-16bpp-yftile-downscaling.html

  * igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling@pipe-a-valid-mode:
    - shard-bmg:          NOTRUN -> [SKIP][145] ([Intel XE#2293]) +3 other tests skip
   [145]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling@pipe-a-valid-mode.html

  * igt@kms_frontbuffer_tracking@drrs-1p-primscrn-cur-indfb-draw-render:
    - shard-lnl:          NOTRUN -> [SKIP][146] ([Intel XE#651]) +8 other tests skip
   [146]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@kms_frontbuffer_tracking@drrs-1p-primscrn-cur-indfb-draw-render.html

  * igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-pri-indfb-draw-mmap-wc:
    - shard-bmg:          NOTRUN -> [SKIP][147] ([Intel XE#2311]) +31 other tests skip
   [147]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-pri-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-indfb-msflip-blt:
    - shard-bmg:          NOTRUN -> [SKIP][148] ([Intel XE#4141]) +19 other tests skip
   [148]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-indfb-msflip-blt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-move:
    - shard-dg2-set2:     NOTRUN -> [SKIP][149] ([Intel XE#656]) +11 other tests skip
   [149]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-move.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-plflip-blt:
    - shard-dg2-set2:     [PASS][150] -> [SKIP][151] ([Intel XE#656]) +4 other tests skip
   [150]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-434/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-plflip-blt.html
   [151]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-onoff:
    - shard-bmg:          NOTRUN -> [SKIP][152] ([Intel XE#2312]) +13 other tests skip
   [152]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-onoff.html

  * igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-render:
    - shard-lnl:          NOTRUN -> [SKIP][153] ([Intel XE#2548]) +41 other tests skip
   [153]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbcdrrs-rgb101010-draw-mmap-wc:
    - shard-dg2-set2:     NOTRUN -> [SKIP][154] ([Intel XE#651]) +32 other tests skip
   [154]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-463/igt@kms_frontbuffer_tracking@fbcdrrs-rgb101010-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@fbcdrrs-tiling-y:
    - shard-dg2-set2:     NOTRUN -> [SKIP][155] ([Intel XE#658])
   [155]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-463/igt@kms_frontbuffer_tracking@fbcdrrs-tiling-y.html
    - shard-bmg:          NOTRUN -> [SKIP][156] ([Intel XE#2352])
   [156]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_frontbuffer_tracking@fbcdrrs-tiling-y.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-blt:
    - shard-dg2-set2:     NOTRUN -> [SKIP][157] ([Intel XE#653]) +36 other tests skip
   [157]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-fullscreen:
    - shard-lnl:          [PASS][158] -> [SKIP][159] ([Intel XE#2548]) +24 other tests skip
   [158]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-6/igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-fullscreen.html
   [159]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_frontbuffer_tracking@psr-1p-primscrn-spr-indfb-fullscreen.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-render:
    - shard-lnl:          NOTRUN -> [SKIP][160] ([Intel XE#656]) +25 other tests skip
   [160]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-3/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-render.html

  * igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-wc:
    - shard-bmg:          NOTRUN -> [SKIP][161] ([Intel XE#2313]) +33 other tests skip
   [161]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-wc.html

  * igt@kms_getfb@getfb-reject-ccs:
    - shard-dg2-set2:     NOTRUN -> [SKIP][162] ([Intel XE#605])
   [162]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_getfb@getfb-reject-ccs.html

  * igt@kms_invalid_mode@int-max-clock:
    - shard-lnl:          NOTRUN -> [SKIP][163] ([Intel XE#2568])
   [163]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_invalid_mode@int-max-clock.html

  * igt@kms_joiner@basic-force-ultra-joiner:
    - shard-bmg:          NOTRUN -> [SKIP][164] ([Intel XE#2934]) +1 other test skip
   [164]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@kms_joiner@basic-force-ultra-joiner.html

  * igt@kms_joiner@invalid-modeset-big-joiner:
    - shard-dg2-set2:     NOTRUN -> [SKIP][165] ([Intel XE#346])
   [165]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-433/igt@kms_joiner@invalid-modeset-big-joiner.html
    - shard-lnl:          NOTRUN -> [SKIP][166] ([Intel XE#346])
   [166]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_joiner@invalid-modeset-big-joiner.html

  * igt@kms_joiner@invalid-modeset-force-big-joiner:
    - shard-lnl:          NOTRUN -> [SKIP][167] ([Intel XE#4328])
   [167]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_joiner@invalid-modeset-force-big-joiner.html

  * igt@kms_joiner@invalid-modeset-force-ultra-joiner:
    - shard-dg2-set2:     NOTRUN -> [SKIP][168] ([Intel XE#2925])
   [168]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_joiner@invalid-modeset-force-ultra-joiner.html

  * igt@kms_panel_fitting@legacy:
    - shard-bmg:          NOTRUN -> [SKIP][169] ([Intel XE#2486])
   [169]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_panel_fitting@legacy.html

  * igt@kms_pipe_stress@stress-xrgb8888-ytiled:
    - shard-dg2-set2:     NOTRUN -> [SKIP][170] ([Intel XE#4359])
   [170]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-436/igt@kms_pipe_stress@stress-xrgb8888-ytiled.html

  * igt@kms_plane@plane-panning-bottom-right-suspend:
    - shard-lnl:          [PASS][171] -> [SKIP][172] ([Intel XE#3380]) +1 other test skip
   [171]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-3/igt@kms_plane@plane-panning-bottom-right-suspend.html
   [172]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_plane@plane-panning-bottom-right-suspend.html

  * igt@kms_plane_cursor@viewport:
    - shard-dg2-set2:     [PASS][173] -> [FAIL][174] ([Intel XE#616]) +1 other test fail
   [173]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-434/igt@kms_plane_cursor@viewport.html
   [174]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-436/igt@kms_plane_cursor@viewport.html

  * igt@kms_plane_lowres@tiling-yf:
    - shard-bmg:          NOTRUN -> [SKIP][175] ([Intel XE#2393])
   [175]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_plane_lowres@tiling-yf.html

  * igt@kms_plane_scaling@2x-scaler-multi-pipe:
    - shard-dg2-set2:     NOTRUN -> [SKIP][176] ([Intel XE#309])
   [176]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@kms_plane_scaling@2x-scaler-multi-pipe.html

  * igt@kms_plane_scaling@intel-max-src-size:
    - shard-dg2-set2:     NOTRUN -> [DMESG-WARN][177] ([Intel XE#2566]) +2 other tests dmesg-warn
   [177]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_plane_scaling@intel-max-src-size.html
    - shard-lnl:          NOTRUN -> [SKIP][178] ([Intel XE#3307])
   [178]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_plane_scaling@intel-max-src-size.html

  * igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers@pipe-d:
    - shard-dg2-set2:     NOTRUN -> [SKIP][179] ([Intel XE#2763] / [Intel XE#455]) +3 other tests skip
   [179]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_plane_scaling@plane-downscale-factor-0-25-with-modifiers@pipe-d.html

  * igt@kms_plane_scaling@plane-downscale-factor-0-5-with-pixel-format@pipe-c:
    - shard-lnl:          NOTRUN -> [SKIP][180] ([Intel XE#2763]) +19 other tests skip
   [180]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_plane_scaling@plane-downscale-factor-0-5-with-pixel-format@pipe-c.html

  * igt@kms_plane_scaling@plane-downscale-factor-0-75-with-pixel-format@pipe-b:
    - shard-lnl:          [PASS][181] -> [SKIP][182] ([Intel XE#2763]) +23 other tests skip
   [181]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-4/igt@kms_plane_scaling@plane-downscale-factor-0-75-with-pixel-format@pipe-b.html
   [182]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_plane_scaling@plane-downscale-factor-0-75-with-pixel-format@pipe-b.html

  * igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5@pipe-b:
    - shard-bmg:          NOTRUN -> [SKIP][183] ([Intel XE#2763]) +29 other tests skip
   [183]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-5@pipe-b.html

  * igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-25@pipe-b:
    - shard-dg2-set2:     NOTRUN -> [SKIP][184] ([Intel XE#2763]) +5 other tests skip
   [184]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-434/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-25@pipe-b.html

  * igt@kms_pm_backlight@bad-brightness:
    - shard-lnl:          [PASS][185] -> [SKIP][186] ([Intel XE#870])
   [185]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-4/igt@kms_pm_backlight@bad-brightness.html
   [186]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_pm_backlight@bad-brightness.html

  * igt@kms_pm_backlight@brightness-with-dpms:
    - shard-bmg:          NOTRUN -> [SKIP][187] ([Intel XE#2938])
   [187]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@kms_pm_backlight@brightness-with-dpms.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][188] ([Intel XE#2938])
   [188]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-433/igt@kms_pm_backlight@brightness-with-dpms.html

  * igt@kms_pm_backlight@fade-with-suspend:
    - shard-dg2-set2:     NOTRUN -> [SKIP][189] ([Intel XE#870]) +1 other test skip
   [189]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-434/igt@kms_pm_backlight@fade-with-suspend.html
    - shard-bmg:          NOTRUN -> [SKIP][190] ([Intel XE#870])
   [190]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@kms_pm_backlight@fade-with-suspend.html

  * igt@kms_pm_dc@dc5-dpms:
    - shard-lnl:          NOTRUN -> [FAIL][191] ([Intel XE#718])
   [191]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_pm_dc@dc5-dpms.html

  * igt@kms_pm_dc@dc6-psr:
    - shard-bmg:          NOTRUN -> [SKIP][192] ([Intel XE#2392])
   [192]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_pm_dc@dc6-psr.html

  * igt@kms_pm_dc@deep-pkgc:
    - shard-bmg:          NOTRUN -> [SKIP][193] ([Intel XE#2505])
   [193]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@kms_pm_dc@deep-pkgc.html

  * igt@kms_pm_rpm@dpms-lpsp:
    - shard-bmg:          NOTRUN -> [SKIP][194] ([Intel XE#1439] / [Intel XE#3141] / [Intel XE#836]) +1 other test skip
   [194]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_pm_rpm@dpms-lpsp.html

  * igt@kms_pm_rpm@modeset-non-lpsp:
    - shard-dg2-set2:     NOTRUN -> [DMESG-WARN][195] ([Intel XE#4330]) +8 other tests dmesg-warn
   [195]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-433/igt@kms_pm_rpm@modeset-non-lpsp.html
    - shard-lnl:          NOTRUN -> [SKIP][196] ([Intel XE#1439] / [Intel XE#3141]) +1 other test skip
   [196]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_pm_rpm@modeset-non-lpsp.html

  * igt@kms_pm_rpm@system-suspend-modeset:
    - shard-dg2-set2:     [PASS][197] -> [DMESG-WARN][198] ([Intel XE#2042] / [Intel XE#4330])
   [197]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-464/igt@kms_pm_rpm@system-suspend-modeset.html
   [198]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-463/igt@kms_pm_rpm@system-suspend-modeset.html

  * igt@kms_psr2_sf@fbc-pr-plane-move-sf-dmg-area:
    - shard-dg2-set2:     NOTRUN -> [SKIP][199] ([Intel XE#1489]) +5 other tests skip
   [199]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-436/igt@kms_psr2_sf@fbc-pr-plane-move-sf-dmg-area.html
    - shard-lnl:          NOTRUN -> [SKIP][200] ([Intel XE#1489]) +4 other tests skip
   [200]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_psr2_sf@fbc-pr-plane-move-sf-dmg-area.html

  * igt@kms_psr2_sf@fbc-psr2-primary-plane-update-sf-dmg-area:
    - shard-lnl:          [PASS][201] -> [SKIP][202] ([Intel XE#1489]) +4 other tests skip
   [201]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-6/igt@kms_psr2_sf@fbc-psr2-primary-plane-update-sf-dmg-area.html
   [202]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_psr2_sf@fbc-psr2-primary-plane-update-sf-dmg-area.html

  * igt@kms_psr2_sf@pr-cursor-plane-update-sf:
    - shard-lnl:          NOTRUN -> [SKIP][203] ([Intel XE#2893]) +1 other test skip
   [203]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@kms_psr2_sf@pr-cursor-plane-update-sf.html

  * igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-exceed-fully-sf:
    - shard-bmg:          NOTRUN -> [SKIP][204] ([Intel XE#1489]) +11 other tests skip
   [204]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-exceed-fully-sf.html

  * igt@kms_psr@fbc-psr-sprite-render:
    - shard-dg2-set2:     NOTRUN -> [SKIP][205] ([Intel XE#2850] / [Intel XE#929]) +17 other tests skip
   [205]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-463/igt@kms_psr@fbc-psr-sprite-render.html

  * igt@kms_psr@pr-no-drrs:
    - shard-lnl:          NOTRUN -> [SKIP][206] ([Intel XE#2850] / [Intel XE#929]) +4 other tests skip
   [206]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_psr@pr-no-drrs.html

  * igt@kms_psr@pr-sprite-plane-onoff:
    - shard-bmg:          NOTRUN -> [SKIP][207] ([Intel XE#2234] / [Intel XE#2850]) +17 other tests skip
   [207]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_psr@pr-sprite-plane-onoff.html
    - shard-lnl:          NOTRUN -> [SKIP][208] ([Intel XE#1406]) +2 other tests skip
   [208]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@kms_psr@pr-sprite-plane-onoff.html

  * igt@kms_psr@psr-primary-render:
    - shard-lnl:          [PASS][209] -> [SKIP][210] ([Intel XE#2850] / [Intel XE#929]) +5 other tests skip
   [209]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-6/igt@kms_psr@psr-primary-render.html
   [210]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_psr@psr-primary-render.html

  * igt@kms_psr_stress_test@invalidate-primary-flip-overlay:
    - shard-bmg:          NOTRUN -> [SKIP][211] ([Intel XE#2414])
   [211]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][212] ([Intel XE#2939])
   [212]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-463/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html
    - shard-lnl:          NOTRUN -> [SKIP][213] ([Intel XE#2939])
   [213]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html

  * igt@kms_rotation_crc@multiplane-rotation-cropping-top:
    - shard-lnl:          NOTRUN -> [SKIP][214] ([Intel XE#4471]) +10 other tests skip
   [214]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_rotation_crc@multiplane-rotation-cropping-top.html

  * igt@kms_rotation_crc@primary-y-tiled-reflect-x-0:
    - shard-bmg:          NOTRUN -> [SKIP][215] ([Intel XE#2330])
   [215]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@kms_rotation_crc@primary-y-tiled-reflect-x-0.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][216] ([Intel XE#1127])
   [216]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-436/igt@kms_rotation_crc@primary-y-tiled-reflect-x-0.html

  * igt@kms_rotation_crc@primary-y-tiled-reflect-x-90:
    - shard-dg2-set2:     NOTRUN -> [SKIP][217] ([Intel XE#3414]) +1 other test skip
   [217]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_rotation_crc@primary-y-tiled-reflect-x-90.html
    - shard-lnl:          NOTRUN -> [SKIP][218] ([Intel XE#3414] / [Intel XE#3904])
   [218]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@kms_rotation_crc@primary-y-tiled-reflect-x-90.html

  * igt@kms_rotation_crc@sprite-rotation-180:
    - shard-lnl:          [PASS][219] -> [SKIP][220] ([Intel XE#4472]) +18 other tests skip
   [219]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@kms_rotation_crc@sprite-rotation-180.html
   [220]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_rotation_crc@sprite-rotation-180.html

  * igt@kms_scaling_modes@scaling-mode-full-aspect:
    - shard-bmg:          NOTRUN -> [SKIP][221] ([Intel XE#2413])
   [221]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@kms_scaling_modes@scaling-mode-full-aspect.html

  * igt@kms_setmode@invalid-clone-exclusive-crtc:
    - shard-bmg:          NOTRUN -> [SKIP][222] ([Intel XE#1435])
   [222]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@kms_setmode@invalid-clone-exclusive-crtc.html
    - shard-lnl:          NOTRUN -> [SKIP][223] ([Intel XE#1435])
   [223]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_setmode@invalid-clone-exclusive-crtc.html

  * igt@kms_tiled_display@basic-test-pattern:
    - shard-dg2-set2:     NOTRUN -> [FAIL][224] ([Intel XE#1729])
   [224]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-436/igt@kms_tiled_display@basic-test-pattern.html

  * igt@kms_tv_load_detect@load-detect:
    - shard-bmg:          NOTRUN -> [SKIP][225] ([Intel XE#2450])
   [225]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@kms_tv_load_detect@load-detect.html

  * igt@kms_vblank@accuracy-idle:
    - shard-dg2-set2:     [PASS][226] -> [DMESG-WARN][227] ([Intel XE#4330]) +12 other tests dmesg-warn
   [226]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-464/igt@kms_vblank@accuracy-idle.html
   [227]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-463/igt@kms_vblank@accuracy-idle.html

  * igt@kms_vblank@query-busy:
    - shard-bmg:          [PASS][228] -> [DMESG-WARN][229] ([Intel XE#4330]) +18 other tests dmesg-warn
   [228]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-7/igt@kms_vblank@query-busy.html
   [229]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@kms_vblank@query-busy.html

  * igt@kms_vblank@ts-continuation-suspend:
    - shard-bmg:          NOTRUN -> [DMESG-WARN][230] ([Intel XE#4330]) +11 other tests dmesg-warn
   [230]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@kms_vblank@ts-continuation-suspend.html

  * igt@kms_vrr@flip-dpms:
    - shard-dg2-set2:     NOTRUN -> [SKIP][231] ([Intel XE#455]) +25 other tests skip
   [231]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_vrr@flip-dpms.html

  * igt@kms_vrr@flip-suspend:
    - shard-bmg:          NOTRUN -> [SKIP][232] ([Intel XE#1499])
   [232]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@kms_vrr@flip-suspend.html

  * igt@kms_writeback@writeback-check-output-xrgb2101010:
    - shard-dg2-set2:     NOTRUN -> [SKIP][233] ([Intel XE#756])
   [233]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-433/igt@kms_writeback@writeback-check-output-xrgb2101010.html
    - shard-lnl:          NOTRUN -> [SKIP][234] ([Intel XE#756])
   [234]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_writeback@writeback-check-output-xrgb2101010.html

  * igt@sriov_basic@enable-vfs-autoprobe-off:
    - shard-bmg:          NOTRUN -> [SKIP][235] ([Intel XE#1091] / [Intel XE#2849])
   [235]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@sriov_basic@enable-vfs-autoprobe-off.html

  * igt@sriov_basic@enable-vfs-bind-unbind-each-numvfs-all:
    - shard-dg2-set2:     NOTRUN -> [SKIP][236] ([Intel XE#1091] / [Intel XE#2849])
   [236]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-434/igt@sriov_basic@enable-vfs-bind-unbind-each-numvfs-all.html

  * igt@testdisplay:
    - shard-dg2-set2:     NOTRUN -> [DMESG-WARN][237] ([Intel XE#2705])
   [237]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@testdisplay.html

  * igt@xe_compute_preempt@compute-threadgroup-preempt@engine-drm_xe_engine_class_compute:
    - shard-dg2-set2:     NOTRUN -> [SKIP][238] ([Intel XE#1280] / [Intel XE#455]) +1 other test skip
   [238]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@xe_compute_preempt@compute-threadgroup-preempt@engine-drm_xe_engine_class_compute.html

  * igt@xe_copy_basic@mem-copy-linear-0xfffe:
    - shard-dg2-set2:     NOTRUN -> [SKIP][239] ([Intel XE#1123])
   [239]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-463/igt@xe_copy_basic@mem-copy-linear-0xfffe.html

  * igt@xe_copy_basic@mem-set-linear-0x3fff:
    - shard-dg2-set2:     NOTRUN -> [SKIP][240] ([Intel XE#1126]) +1 other test skip
   [240]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@xe_copy_basic@mem-set-linear-0x3fff.html

  * igt@xe_create@create-big-vram:
    - shard-lnl:          NOTRUN -> [SKIP][241] ([Intel XE#1062])
   [241]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@xe_create@create-big-vram.html

  * igt@xe_eudebug@basic-vm-bind-metadata-discovery:
    - shard-bmg:          NOTRUN -> [SKIP][242] ([Intel XE#2905]) +14 other tests skip
   [242]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@xe_eudebug@basic-vm-bind-metadata-discovery.html

  * igt@xe_eudebug@basic-vm-bind-ufence-reconnect:
    - shard-bmg:          NOTRUN -> [SKIP][243] ([Intel XE#3889])
   [243]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@xe_eudebug@basic-vm-bind-ufence-reconnect.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][244] ([Intel XE#3889])
   [244]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-436/igt@xe_eudebug@basic-vm-bind-ufence-reconnect.html

  * igt@xe_eudebug@basic-vm-bind-ufence-sigint-client:
    - shard-lnl:          NOTRUN -> [SKIP][245] ([Intel XE#3889])
   [245]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-5/igt@xe_eudebug@basic-vm-bind-ufence-sigint-client.html

  * igt@xe_eudebug_online@interrupt-all-set-breakpoint:
    - shard-dg2-set2:     NOTRUN -> [SKIP][246] ([Intel XE#2905]) +13 other tests skip
   [246]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@xe_eudebug_online@interrupt-all-set-breakpoint.html
    - shard-lnl:          NOTRUN -> [SKIP][247] ([Intel XE#2905]) +11 other tests skip
   [247]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@xe_eudebug_online@interrupt-all-set-breakpoint.html

  * igt@xe_evict@evict-beng-large-cm:
    - shard-lnl:          NOTRUN -> [SKIP][248] ([Intel XE#688]) +4 other tests skip
   [248]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@xe_evict@evict-beng-large-cm.html

  * igt@xe_exec_basic@multigpu-no-exec-null-defer-mmap:
    - shard-dg2-set2:     NOTRUN -> [SKIP][249] ([Intel XE#1392]) +2 other tests skip
   [249]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@xe_exec_basic@multigpu-no-exec-null-defer-mmap.html

  * igt@xe_exec_basic@multigpu-no-exec-userptr-invalidate:
    - shard-lnl:          NOTRUN -> [SKIP][250] ([Intel XE#1392]) +7 other tests skip
   [250]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@xe_exec_basic@multigpu-no-exec-userptr-invalidate.html

  * igt@xe_exec_basic@multigpu-no-exec-userptr-invalidate-race:
    - shard-dg2-set2:     [PASS][251] -> [SKIP][252] ([Intel XE#1392]) +3 other tests skip
   [251]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-433/igt@xe_exec_basic@multigpu-no-exec-userptr-invalidate-race.html
   [252]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@xe_exec_basic@multigpu-no-exec-userptr-invalidate-race.html

  * igt@xe_exec_basic@multigpu-once-null-rebind:
    - shard-bmg:          NOTRUN -> [SKIP][253] ([Intel XE#2322]) +14 other tests skip
   [253]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@xe_exec_basic@multigpu-once-null-rebind.html

  * igt@xe_exec_fault_mode@once-rebind-prefetch:
    - shard-dg2-set2:     NOTRUN -> [SKIP][254] ([Intel XE#288]) +20 other tests skip
   [254]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-434/igt@xe_exec_fault_mode@once-rebind-prefetch.html

  * igt@xe_exec_mix_modes@exec-simple-batch-store-dma-fence:
    - shard-dg2-set2:     NOTRUN -> [SKIP][255] ([Intel XE#2360])
   [255]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-463/igt@xe_exec_mix_modes@exec-simple-batch-store-dma-fence.html

  * igt@xe_huc_copy@huc_copy:
    - shard-dg2-set2:     NOTRUN -> [SKIP][256] ([Intel XE#255])
   [256]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-434/igt@xe_huc_copy@huc_copy.html

  * igt@xe_live_ktest@xe_mocs@xe_live_mocs_kernel_kunit:
    - shard-dg2-set2:     [PASS][257] -> [FAIL][258] ([Intel XE#1999]) +2 other tests fail
   [257]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-432/igt@xe_live_ktest@xe_mocs@xe_live_mocs_kernel_kunit.html
   [258]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-434/igt@xe_live_ktest@xe_mocs@xe_live_mocs_kernel_kunit.html

  * igt@xe_mmap@small-bar:
    - shard-bmg:          NOTRUN -> [SKIP][259] ([Intel XE#586])
   [259]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@xe_mmap@small-bar.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][260] ([Intel XE#512])
   [260]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@xe_mmap@small-bar.html
    - shard-lnl:          NOTRUN -> [SKIP][261] ([Intel XE#512])
   [261]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@xe_mmap@small-bar.html

  * igt@xe_mmap@vram:
    - shard-lnl:          NOTRUN -> [SKIP][262] ([Intel XE#1416])
   [262]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@xe_mmap@vram.html

  * igt@xe_module_load@force-load:
    - shard-bmg:          NOTRUN -> [SKIP][263] ([Intel XE#2457])
   [263]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@xe_module_load@force-load.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][264] ([Intel XE#378])
   [264]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-436/igt@xe_module_load@force-load.html
    - shard-lnl:          NOTRUN -> [SKIP][265] ([Intel XE#378])
   [265]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@xe_module_load@force-load.html

  * igt@xe_oa@oa-unit-exclusive-stream-sample-oa:
    - shard-dg2-set2:     NOTRUN -> [SKIP][266] ([Intel XE#2541] / [Intel XE#3573]) +8 other tests skip
   [266]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@xe_oa@oa-unit-exclusive-stream-sample-oa.html

  * igt@xe_pat@display-vs-wb-transient:
    - shard-dg2-set2:     NOTRUN -> [SKIP][267] ([Intel XE#1337])
   [267]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-433/igt@xe_pat@display-vs-wb-transient.html

  * igt@xe_pm@s2idle-d3cold-basic-exec:
    - shard-bmg:          NOTRUN -> [SKIP][268] ([Intel XE#2284]) +1 other test skip
   [268]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@xe_pm@s2idle-d3cold-basic-exec.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][269] ([Intel XE#2284] / [Intel XE#366])
   [269]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@xe_pm@s2idle-d3cold-basic-exec.html

  * igt@xe_pm@s3-d3hot-basic-exec:
    - shard-lnl:          NOTRUN -> [SKIP][270] ([Intel XE#584]) +1 other test skip
   [270]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@xe_pm@s3-d3hot-basic-exec.html

  * igt@xe_pm@s3-vm-bind-userptr:
    - shard-bmg:          [PASS][271] -> [DMESG-WARN][272] ([Intel XE#4330] / [Intel XE#569]) +1 other test dmesg-warn
   [271]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-4/igt@xe_pm@s3-vm-bind-userptr.html
   [272]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@xe_pm@s3-vm-bind-userptr.html

  * igt@xe_pm@s4-d3hot-basic-exec:
    - shard-bmg:          NOTRUN -> [ABORT][273] ([Intel XE#4268])
   [273]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@xe_pm@s4-d3hot-basic-exec.html

  * igt@xe_query@multigpu-query-cs-cycles:
    - shard-bmg:          NOTRUN -> [SKIP][274] ([Intel XE#944])
   [274]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@xe_query@multigpu-query-cs-cycles.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][275] ([Intel XE#944])
   [275]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-436/igt@xe_query@multigpu-query-cs-cycles.html

  * igt@xe_query@multigpu-query-invalid-size:
    - shard-lnl:          NOTRUN -> [SKIP][276] ([Intel XE#944]) +2 other tests skip
   [276]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@xe_query@multigpu-query-invalid-size.html

  * igt@xe_sriov_auto_provisioning@selfconfig-basic:
    - shard-dg2-set2:     NOTRUN -> [SKIP][277] ([Intel XE#4130])
   [277]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@xe_sriov_auto_provisioning@selfconfig-basic.html
    - shard-lnl:          NOTRUN -> [SKIP][278] ([Intel XE#4130])
   [278]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-3/igt@xe_sriov_auto_provisioning@selfconfig-basic.html

  * igt@xe_sriov_flr@flr-twice:
    - shard-bmg:          NOTRUN -> [SKIP][279] ([Intel XE#4273])
   [279]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@xe_sriov_flr@flr-twice.html

  * igt@xe_sriov_scheduling@nonpreempt-engine-resets:
    - shard-dg2-set2:     NOTRUN -> [SKIP][280] ([Intel XE#4351])
   [280]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-463/igt@xe_sriov_scheduling@nonpreempt-engine-resets.html
    - shard-bmg:          NOTRUN -> [SKIP][281] ([Intel XE#4351])
   [281]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@xe_sriov_scheduling@nonpreempt-engine-resets.html

  
#### Possible fixes ####

  * igt@fbdev@info:
    - shard-lnl:          [SKIP][282] ([Intel XE#2134]) -> [PASS][283] +1 other test pass
   [282]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@fbdev@info.html
   [283]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@fbdev@info.html

  * igt@kms_big_fb@4-tiled-addfb-size-overflow:
    - shard-lnl:          [SKIP][284] ([Intel XE#4471]) -> [PASS][285] +23 other tests pass
   [284]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_big_fb@4-tiled-addfb-size-overflow.html
   [285]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_big_fb@4-tiled-addfb-size-overflow.html

  * igt@kms_cursor_crc@cursor-suspend:
    - shard-lnl:          [DMESG-WARN][286] ([Intel XE#2932]) -> [PASS][287] +2 other tests pass
   [286]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-4/igt@kms_cursor_crc@cursor-suspend.html
   [287]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@kms_cursor_crc@cursor-suspend.html

  * igt@kms_cursor_legacy@2x-cursor-vs-flip-legacy:
    - shard-dg2-set2:     [SKIP][288] ([Intel XE#309]) -> [PASS][289] +3 other tests pass
   [288]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-464/igt@kms_cursor_legacy@2x-cursor-vs-flip-legacy.html
   [289]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-434/igt@kms_cursor_legacy@2x-cursor-vs-flip-legacy.html

  * igt@kms_cursor_legacy@2x-flip-vs-cursor-atomic:
    - shard-bmg:          [SKIP][290] ([Intel XE#2291]) -> [PASS][291] +2 other tests pass
   [290]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-4/igt@kms_cursor_legacy@2x-flip-vs-cursor-atomic.html
   [291]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_cursor_legacy@2x-flip-vs-cursor-atomic.html

  * igt@kms_cursor_legacy@cursora-vs-flipa-legacy:
    - shard-dg2-set2:     [INCOMPLETE][292] ([Intel XE#3226]) -> [PASS][293]
   [292]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-436/igt@kms_cursor_legacy@cursora-vs-flipa-legacy.html
   [293]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@kms_cursor_legacy@cursora-vs-flipa-legacy.html

  * igt@kms_cursor_legacy@short-flip-before-cursor-atomic-transitions-varying-size:
    - shard-lnl:          [SKIP][294] ([Intel XE#4472]) -> [PASS][295] +13 other tests pass
   [294]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_cursor_legacy@short-flip-before-cursor-atomic-transitions-varying-size.html
   [295]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_cursor_legacy@short-flip-before-cursor-atomic-transitions-varying-size.html

  * igt@kms_fbcon_fbt@fbc-suspend:
    - shard-dg2-set2:     [DMESG-FAIL][296] ([Intel XE#4330]) -> [PASS][297]
   [296]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-463/igt@kms_fbcon_fbt@fbc-suspend.html
   [297]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-433/igt@kms_fbcon_fbt@fbc-suspend.html

  * igt@kms_flip@2x-dpms-vs-vblank-race:
    - shard-dg2-set2:     [SKIP][298] ([Intel XE#310]) -> [PASS][299] +7 other tests pass
   [298]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-464/igt@kms_flip@2x-dpms-vs-vblank-race.html
   [299]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-436/igt@kms_flip@2x-dpms-vs-vblank-race.html

  * igt@kms_flip@2x-flip-vs-dpms:
    - shard-bmg:          [SKIP][300] ([Intel XE#2316]) -> [PASS][301] +3 other tests pass
   [300]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-4/igt@kms_flip@2x-flip-vs-dpms.html
   [301]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_flip@2x-flip-vs-dpms.html

  * igt@kms_flip@blocking-wf_vblank:
    - shard-lnl:          [FAIL][302] ([Intel XE#886]) -> [PASS][303] +2 other tests pass
   [302]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-4/igt@kms_flip@blocking-wf_vblank.html
   [303]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_flip@blocking-wf_vblank.html

  * igt@kms_flip@flip-vs-dpms-off-vs-modeset:
    - shard-dg2-set2:     [DMESG-WARN][304] ([Intel XE#2955]) -> [PASS][305] +4 other tests pass
   [304]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-463/igt@kms_flip@flip-vs-dpms-off-vs-modeset.html
   [305]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@kms_flip@flip-vs-dpms-off-vs-modeset.html
    - shard-bmg:          [DMESG-WARN][306] ([Intel XE#2955]) -> [PASS][307]
   [306]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-1/igt@kms_flip@flip-vs-dpms-off-vs-modeset.html
   [307]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_flip@flip-vs-dpms-off-vs-modeset.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible:
    - shard-dg2-set2:     [INCOMPLETE][308] ([Intel XE#2049]) -> [PASS][309]
   [308]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-434/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
   [309]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_flip@flip-vs-expired-vblank-interruptible.html

  * igt@kms_flip@flip-vs-panning-vs-hang:
    - shard-lnl:          [SKIP][310] ([Intel XE#2482]) -> [PASS][311] +4 other tests pass
   [310]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_flip@flip-vs-panning-vs-hang.html
   [311]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@kms_flip@flip-vs-panning-vs-hang.html

  * igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-upscaling:
    - shard-lnl:          [SKIP][312] ([Intel XE#1745]) -> [PASS][313] +1 other test pass
   [312]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-upscaling.html
   [313]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-16bpp-4tile-upscaling.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-blt:
    - shard-lnl:          [SKIP][314] ([Intel XE#2548]) -> [PASS][315] +24 other tests pass
   [314]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-blt.html
   [315]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-onoff:
    - shard-dg2-set2:     [SKIP][316] ([Intel XE#656]) -> [PASS][317] +1 other test pass
   [316]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-464/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-onoff.html
   [317]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-434/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-onoff.html

  * igt@kms_joiner@basic-force-big-joiner:
    - shard-lnl:          [SKIP][318] ([Intel XE#4328]) -> [PASS][319]
   [318]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_joiner@basic-force-big-joiner.html
   [319]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_joiner@basic-force-big-joiner.html

  * igt@kms_plane_multiple@tiling-4:
    - shard-dg2-set2:     [DMESG-WARN][320] ([Intel XE#4361]) -> [PASS][321]
   [320]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-433/igt@kms_plane_multiple@tiling-4.html
   [321]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_plane_multiple@tiling-4.html

  * igt@kms_plane_scaling@invalid-parameters:
    - shard-lnl:          [SKIP][322] ([Intel XE#3308]) -> [PASS][323]
   [322]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_plane_scaling@invalid-parameters.html
   [323]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@kms_plane_scaling@invalid-parameters.html

  * igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-modifiers:
    - shard-lnl:          [SKIP][324] ([Intel XE#2763]) -> [PASS][325] +13 other tests pass
   [324]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-modifiers.html
   [325]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-modifiers.html

  * igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats:
    - shard-dg2-set2:     [DMESG-WARN][326] ([Intel XE#2566] / [Intel XE#4330]) -> [PASS][327] +1 other test pass
   [326]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-434/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats.html
   [327]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats.html

  * igt@kms_plane_scaling@plane-upscale-20x20-with-modifiers:
    - shard-bmg:          [INCOMPLETE][328] ([Intel XE#2566]) -> [PASS][329] +1 other test pass
   [328]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-4/igt@kms_plane_scaling@plane-upscale-20x20-with-modifiers.html
   [329]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@kms_plane_scaling@plane-upscale-20x20-with-modifiers.html

  * igt@kms_pm_rpm@dpms-non-lpsp:
    - shard-dg2-set2:     [SKIP][330] ([Intel XE#836]) -> [PASS][331] +1 other test pass
   [330]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-464/igt@kms_pm_rpm@dpms-non-lpsp.html
   [331]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_pm_rpm@dpms-non-lpsp.html

  * igt@kms_pm_rpm@legacy-planes:
    - shard-lnl:          [SKIP][332] -> [PASS][333] +6 other tests pass
   [332]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_pm_rpm@legacy-planes.html
   [333]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_pm_rpm@legacy-planes.html

  * igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-exceed-fully-sf:
    - shard-lnl:          [SKIP][334] ([Intel XE#1489]) -> [PASS][335] +6 other tests pass
   [334]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-exceed-fully-sf.html
   [335]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-exceed-fully-sf.html

  * igt@kms_psr@psr-no-drrs:
    - shard-lnl:          [SKIP][336] ([Intel XE#2850] / [Intel XE#929]) -> [PASS][337] +8 other tests pass
   [336]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_psr@psr-no-drrs.html
   [337]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_psr@psr-no-drrs.html

  * igt@kms_sequence@get-busy:
    - shard-bmg:          [DMESG-WARN][338] ([Intel XE#4330]) -> [PASS][339] +19 other tests pass
   [338]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-1/igt@kms_sequence@get-busy.html
   [339]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@kms_sequence@get-busy.html

  * igt@xe_ccs@ctrl-surf-copy-new-ctx:
    - shard-dg2-set2:     [DMESG-WARN][340] ([Intel XE#4330]) -> [PASS][341] +59 other tests pass
   [340]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-432/igt@xe_ccs@ctrl-surf-copy-new-ctx.html
   [341]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@xe_ccs@ctrl-surf-copy-new-ctx.html

  * igt@xe_exec_basic@multigpu-no-exec-basic:
    - shard-dg2-set2:     [SKIP][342] ([Intel XE#1392]) -> [PASS][343] +1 other test pass
   [342]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-432/igt@xe_exec_basic@multigpu-no-exec-basic.html
   [343]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@xe_exec_basic@multigpu-no-exec-basic.html

  * igt@xe_exec_compute_mode@many-execqueues-rebind:
    - shard-dg2-set2:     [INCOMPLETE][344] -> [PASS][345] +1 other test pass
   [344]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-463/igt@xe_exec_compute_mode@many-execqueues-rebind.html
   [345]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@xe_exec_compute_mode@many-execqueues-rebind.html

  * igt@xe_exec_threads@threads-bal-mixed-fd-basic:
    - shard-bmg:          [FAIL][346] -> [PASS][347]
   [346]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-1/igt@xe_exec_threads@threads-bal-mixed-fd-basic.html
   [347]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@xe_exec_threads@threads-bal-mixed-fd-basic.html

  * igt@xe_fault_injection@inject-fault-probe-function-xe_device_create:
    - shard-dg2-set2:     [DMESG-WARN][348] -> [PASS][349]
   [348]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-464/igt@xe_fault_injection@inject-fault-probe-function-xe_device_create.html
   [349]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@xe_fault_injection@inject-fault-probe-function-xe_device_create.html

  * igt@xe_module_load@load:
    - shard-lnl:          ([PASS][350], [PASS][351], [PASS][352], [SKIP][353], [PASS][354], [PASS][355], [PASS][356], [PASS][357], [PASS][358], [PASS][359], [PASS][360], [PASS][361], [PASS][362], [PASS][363], [PASS][364], [PASS][365], [PASS][366], [PASS][367], [PASS][368], [PASS][369], [PASS][370], [PASS][371], [PASS][372], [PASS][373], [PASS][374], [PASS][375]) ([Intel XE#378]) -> ([PASS][376], [PASS][377], [PASS][378], [PASS][379], [PASS][380], [PASS][381], [PASS][382], [PASS][383], [PASS][384], [PASS][385], [PASS][386], [PASS][387], [PASS][388], [PASS][389], [PASS][390], [PASS][391], [PASS][392], [PASS][393], [PASS][394], [PASS][395], [PASS][396], [PASS][397], [PASS][398], [PASS][399], [PASS][400])
   [350]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@xe_module_load@load.html
   [351]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@xe_module_load@load.html
   [352]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@xe_module_load@load.html
   [353]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-4/igt@xe_module_load@load.html
   [354]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@xe_module_load@load.html
   [355]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-2/igt@xe_module_load@load.html
   [356]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-2/igt@xe_module_load@load.html
   [357]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-8/igt@xe_module_load@load.html
   [358]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-8/igt@xe_module_load@load.html
   [359]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-3/igt@xe_module_load@load.html
   [360]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@xe_module_load@load.html
   [361]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@xe_module_load@load.html
   [362]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@xe_module_load@load.html
   [363]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@xe_module_load@load.html
   [364]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@xe_module_load@load.html
   [365]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-3/igt@xe_module_load@load.html
   [366]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-6/igt@xe_module_load@load.html
   [367]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-3/igt@xe_module_load@load.html
   [368]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-8/igt@xe_module_load@load.html
   [369]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@xe_module_load@load.html
   [370]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@xe_module_load@load.html
   [371]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-4/igt@xe_module_load@load.html
   [372]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-4/igt@xe_module_load@load.html
   [373]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-6/igt@xe_module_load@load.html
   [374]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@xe_module_load@load.html
   [375]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@xe_module_load@load.html
   [376]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@xe_module_load@load.html
   [377]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@xe_module_load@load.html
   [378]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@xe_module_load@load.html
   [379]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@xe_module_load@load.html
   [380]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@xe_module_load@load.html
   [381]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-5/igt@xe_module_load@load.html
   [382]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-5/igt@xe_module_load@load.html
   [383]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-5/igt@xe_module_load@load.html
   [384]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@xe_module_load@load.html
   [385]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@xe_module_load@load.html
   [386]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@xe_module_load@load.html
   [387]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@xe_module_load@load.html
   [388]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@xe_module_load@load.html
   [389]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-3/igt@xe_module_load@load.html
   [390]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-3/igt@xe_module_load@load.html
   [391]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-3/igt@xe_module_load@load.html
   [392]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@xe_module_load@load.html
   [393]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@xe_module_load@load.html
   [394]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@xe_module_load@load.html
   [395]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@xe_module_load@load.html
   [396]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@xe_module_load@load.html
   [397]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@xe_module_load@load.html
   [398]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@xe_module_load@load.html
   [399]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@xe_module_load@load.html
   [400]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@xe_module_load@load.html
    - shard-bmg:          ([PASS][401], [PASS][402], [PASS][403], [PASS][404], [PASS][405], [PASS][406], [PASS][407], [PASS][408], [PASS][409], [PASS][410], [PASS][411], [PASS][412], [SKIP][413], [PASS][414], [PASS][415], [PASS][416], [PASS][417], [PASS][418], [PASS][419], [PASS][420], [PASS][421]) ([Intel XE#2457]) -> ([PASS][422], [PASS][423], [PASS][424], [PASS][425], [PASS][426], [PASS][427], [PASS][428], [PASS][429], [PASS][430], [PASS][431], [PASS][432], [PASS][433], [PASS][434], [PASS][435], [PASS][436], [PASS][437], [PASS][438], [PASS][439])
   [401]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-1/igt@xe_module_load@load.html
   [402]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-1/igt@xe_module_load@load.html
   [403]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-1/igt@xe_module_load@load.html
   [404]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-1/igt@xe_module_load@load.html
   [405]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-8/igt@xe_module_load@load.html
   [406]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-7/igt@xe_module_load@load.html
   [407]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-7/igt@xe_module_load@load.html
   [408]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-7/igt@xe_module_load@load.html
   [409]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-7/igt@xe_module_load@load.html
   [410]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-2/igt@xe_module_load@load.html
   [411]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-4/igt@xe_module_load@load.html
   [412]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-4/igt@xe_module_load@load.html
   [413]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-7/igt@xe_module_load@load.html
   [414]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-8/igt@xe_module_load@load.html
   [415]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-8/igt@xe_module_load@load.html
   [416]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-8/igt@xe_module_load@load.html
   [417]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-4/igt@xe_module_load@load.html
   [418]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-2/igt@xe_module_load@load.html
   [419]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-4/igt@xe_module_load@load.html
   [420]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-2/igt@xe_module_load@load.html
   [421]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-2/igt@xe_module_load@load.html
   [422]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@xe_module_load@load.html
   [423]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@xe_module_load@load.html
   [424]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@xe_module_load@load.html
   [425]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@xe_module_load@load.html
   [426]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@xe_module_load@load.html
   [427]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@xe_module_load@load.html
   [428]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@xe_module_load@load.html
   [429]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@xe_module_load@load.html
   [430]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@xe_module_load@load.html
   [431]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@xe_module_load@load.html
   [432]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@xe_module_load@load.html
   [433]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@xe_module_load@load.html
   [434]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@xe_module_load@load.html
   [435]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@xe_module_load@load.html
   [436]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@xe_module_load@load.html
   [437]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@xe_module_load@load.html
   [438]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-2/igt@xe_module_load@load.html
   [439]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@xe_module_load@load.html

  * igt@xe_pm@s3-d3hot-basic-exec:
    - shard-bmg:          [DMESG-WARN][440] ([Intel XE#4330] / [Intel XE#569]) -> [PASS][441] +2 other tests pass
   [440]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-2/igt@xe_pm@s3-d3hot-basic-exec.html
   [441]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@xe_pm@s3-d3hot-basic-exec.html
    - shard-dg2-set2:     [DMESG-WARN][442] ([Intel XE#4330] / [Intel XE#569]) -> [PASS][443] +2 other tests pass
   [442]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-434/igt@xe_pm@s3-d3hot-basic-exec.html
   [443]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@xe_pm@s3-d3hot-basic-exec.html

  
#### Warnings ####

  * igt@kms_atomic@plane-cursor-legacy:
    - shard-lnl:          [SKIP][444] ([Intel XE#4472]) -> [DMESG-WARN][445] ([Intel XE#324])
   [444]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_atomic@plane-cursor-legacy.html
   [445]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_atomic@plane-cursor-legacy.html

  * igt@kms_atomic_transition@plane-all-modeset-transition:
    - shard-lnl:          [SKIP][446] ([Intel XE#3279]) -> [SKIP][447] ([Intel XE#4471])
   [446]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-2/igt@kms_atomic_transition@plane-all-modeset-transition.html
   [447]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_atomic_transition@plane-all-modeset-transition.html

  * igt@kms_atomic_transition@plane-toggle-modeset-transition:
    - shard-lnl:          [DMESG-WARN][448] ([Intel XE#324]) -> [SKIP][449] ([Intel XE#4471])
   [448]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-8/igt@kms_atomic_transition@plane-toggle-modeset-transition.html
   [449]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_atomic_transition@plane-toggle-modeset-transition.html

  * igt@kms_big_fb@4-tiled-32bpp-rotate-270:
    - shard-lnl:          [SKIP][450] ([Intel XE#1407]) -> [SKIP][451] ([Intel XE#4472]) +1 other test skip
   [450]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-2/igt@kms_big_fb@4-tiled-32bpp-rotate-270.html
   [451]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_big_fb@4-tiled-32bpp-rotate-270.html

  * igt@kms_big_fb@4-tiled-8bpp-rotate-270:
    - shard-lnl:          [SKIP][452] ([Intel XE#4472]) -> [SKIP][453] ([Intel XE#1407]) +2 other tests skip
   [452]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_big_fb@4-tiled-8bpp-rotate-270.html
   [453]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@kms_big_fb@4-tiled-8bpp-rotate-270.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip:
    - shard-lnl:          [SKIP][454] ([Intel XE#4472]) -> [SKIP][455] ([Intel XE#3658])
   [454]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip.html
   [455]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-3/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-hflip-async-flip.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip:
    - shard-lnl:          [SKIP][456] ([Intel XE#1407]) -> [SKIP][457] ([Intel XE#4471]) +1 other test skip
   [456]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-2/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip.html
   [457]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-180-hflip.html

  * igt@kms_big_fb@linear-16bpp-rotate-270:
    - shard-lnl:          [SKIP][458] ([Intel XE#4471]) -> [SKIP][459] ([Intel XE#1407])
   [458]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_big_fb@linear-16bpp-rotate-270.html
   [459]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-5/igt@kms_big_fb@linear-16bpp-rotate-270.html

  * igt@kms_big_fb@y-tiled-32bpp-rotate-0:
    - shard-lnl:          [SKIP][460] ([Intel XE#4472]) -> [SKIP][461] ([Intel XE#4471]) +17 other tests skip
   [460]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_big_fb@y-tiled-32bpp-rotate-0.html
   [461]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_big_fb@y-tiled-32bpp-rotate-0.html

  * igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-hflip:
    - shard-lnl:          [SKIP][462] ([Intel XE#1124]) -> [SKIP][463] ([Intel XE#4472]) +3 other tests skip
   [462]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-4/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-hflip.html
   [463]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0-hflip.html

  * igt@kms_big_fb@yf-tiled-32bpp-rotate-0:
    - shard-lnl:          [SKIP][464] ([Intel XE#4471]) -> [SKIP][465] ([Intel XE#1124]) +3 other tests skip
   [464]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_big_fb@yf-tiled-32bpp-rotate-0.html
   [465]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_big_fb@yf-tiled-32bpp-rotate-0.html

  * igt@kms_big_fb@yf-tiled-64bpp-rotate-90:
    - shard-lnl:          [SKIP][466] ([Intel XE#1124]) -> [SKIP][467] ([Intel XE#4471]) +1 other test skip
   [466]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-4/igt@kms_big_fb@yf-tiled-64bpp-rotate-90.html
   [467]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_big_fb@yf-tiled-64bpp-rotate-90.html

  * igt@kms_big_fb@yf-tiled-addfb-size-overflow:
    - shard-lnl:          [SKIP][468] ([Intel XE#4471]) -> [SKIP][469] ([Intel XE#1428])
   [468]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_big_fb@yf-tiled-addfb-size-overflow.html
   [469]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-5/igt@kms_big_fb@yf-tiled-addfb-size-overflow.html

  * igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip:
    - shard-lnl:          [SKIP][470] ([Intel XE#4472]) -> [SKIP][471] ([Intel XE#1124]) +2 other tests skip
   [470]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip.html
   [471]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip.html

  * igt@kms_bw@connected-linear-tiling-2-displays-2560x1440p:
    - shard-lnl:          [SKIP][472] ([Intel XE#2191]) -> [SKIP][473] ([Intel XE#4472]) +1 other test skip
   [472]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-4/igt@kms_bw@connected-linear-tiling-2-displays-2560x1440p.html
   [473]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_bw@connected-linear-tiling-2-displays-2560x1440p.html

  * igt@kms_bw@connected-linear-tiling-3-displays-2560x1440p:
    - shard-lnl:          [SKIP][474] ([Intel XE#4471]) -> [SKIP][475] ([Intel XE#2191])
   [474]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_bw@connected-linear-tiling-3-displays-2560x1440p.html
   [475]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-5/igt@kms_bw@connected-linear-tiling-3-displays-2560x1440p.html

  * igt@kms_bw@connected-linear-tiling-4-displays-2160x1440p:
    - shard-lnl:          [SKIP][476] ([Intel XE#1512]) -> [SKIP][477] ([Intel XE#4472])
   [476]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-3/igt@kms_bw@connected-linear-tiling-4-displays-2160x1440p.html
   [477]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_bw@connected-linear-tiling-4-displays-2160x1440p.html

  * igt@kms_bw@linear-tiling-2-displays-3840x2160p:
    - shard-lnl:          [SKIP][478] ([Intel XE#367]) -> [SKIP][479] ([Intel XE#4472]) +1 other test skip
   [478]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-8/igt@kms_bw@linear-tiling-2-displays-3840x2160p.html
   [479]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_bw@linear-tiling-2-displays-3840x2160p.html

  * igt@kms_bw@linear-tiling-3-displays-2560x1440p:
    - shard-lnl:          [SKIP][480] ([Intel XE#4472]) -> [SKIP][481] ([Intel XE#367]) +1 other test skip
   [480]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_bw@linear-tiling-3-displays-2560x1440p.html
   [481]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@kms_bw@linear-tiling-3-displays-2560x1440p.html

  * igt@kms_bw@linear-tiling-4-displays-1920x1080p:
    - shard-lnl:          [SKIP][482] ([Intel XE#1512]) -> [SKIP][483] ([Intel XE#4471])
   [482]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-2/igt@kms_bw@linear-tiling-4-displays-1920x1080p.html
   [483]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_bw@linear-tiling-4-displays-1920x1080p.html

  * igt@kms_bw@linear-tiling-4-displays-2560x1440p:
    - shard-lnl:          [SKIP][484] ([Intel XE#4472]) -> [SKIP][485] ([Intel XE#1512])
   [484]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_bw@linear-tiling-4-displays-2560x1440p.html
   [485]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@kms_bw@linear-tiling-4-displays-2560x1440p.html

  * igt@kms_ccs@bad-aux-stride-4-tiled-mtl-mc-ccs@pipe-d-hdmi-a-6:
    - shard-dg2-set2:     [SKIP][486] ([Intel XE#455] / [Intel XE#787]) -> [SKIP][487] ([Intel XE#787]) +9 other tests skip
   [486]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-464/igt@kms_ccs@bad-aux-stride-4-tiled-mtl-mc-ccs@pipe-d-hdmi-a-6.html
   [487]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-434/igt@kms_ccs@bad-aux-stride-4-tiled-mtl-mc-ccs@pipe-d-hdmi-a-6.html

  * igt@kms_ccs@bad-pixel-format-yf-tiled-ccs:
    - shard-lnl:          [SKIP][488] ([Intel XE#4472]) -> [SKIP][489] ([Intel XE#2887]) +5 other tests skip
   [488]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_ccs@bad-pixel-format-yf-tiled-ccs.html
   [489]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@kms_ccs@bad-pixel-format-yf-tiled-ccs.html

  * igt@kms_ccs@bad-rotation-90-y-tiled-gen12-mc-ccs:
    - shard-lnl:          [SKIP][490] ([Intel XE#2887]) -> [SKIP][491] ([Intel XE#4472]) +6 other tests skip
   [490]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-6/igt@kms_ccs@bad-rotation-90-y-tiled-gen12-mc-ccs.html
   [491]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_ccs@bad-rotation-90-y-tiled-gen12-mc-ccs.html

  * igt@kms_ccs@bad-rotation-90-y-tiled-gen12-rc-ccs-cc@pipe-d-hdmi-a-6:
    - shard-dg2-set2:     [SKIP][492] ([Intel XE#787]) -> [SKIP][493] ([Intel XE#455] / [Intel XE#787])
   [492]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-463/igt@kms_ccs@bad-rotation-90-y-tiled-gen12-rc-ccs-cc@pipe-d-hdmi-a-6.html
   [493]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@kms_ccs@bad-rotation-90-y-tiled-gen12-rc-ccs-cc@pipe-d-hdmi-a-6.html

  * igt@kms_ccs@crc-primary-rotation-180-4-tiled-mtl-mc-ccs:
    - shard-lnl:          [SKIP][494] ([Intel XE#2887]) -> [SKIP][495] ([Intel XE#4471]) +2 other tests skip
   [494]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-8/igt@kms_ccs@crc-primary-rotation-180-4-tiled-mtl-mc-ccs.html
   [495]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_ccs@crc-primary-rotation-180-4-tiled-mtl-mc-ccs.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs:
    - shard-lnl:          [SKIP][496] ([Intel XE#3432]) -> [SKIP][497] ([Intel XE#4471]) +1 other test skip
   [496]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs.html
   [497]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc:
    - shard-dg2-set2:     [DMESG-WARN][498] ([Intel XE#4199]) -> [INCOMPLETE][499] ([Intel XE#3862])
   [498]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-434/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc.html
   [499]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-434/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs-cc.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc:
    - shard-lnl:          [SKIP][500] ([Intel XE#3432]) -> [SKIP][501] ([Intel XE#4472])
   [500]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc.html
   [501]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc.html

  * igt@kms_ccs@random-ccs-data-4-tiled-bmg-ccs:
    - shard-lnl:          [SKIP][502] ([Intel XE#2669]) -> [SKIP][503] ([Intel XE#4472])
   [502]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-4/igt@kms_ccs@random-ccs-data-4-tiled-bmg-ccs.html
   [503]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_ccs@random-ccs-data-4-tiled-bmg-ccs.html

  * igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc:
    - shard-dg2-set2:     [INCOMPLETE][504] -> [DMESG-WARN][505] ([Intel XE#1727] / [Intel XE#2705] / [Intel XE#3113])
   [504]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-433/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc.html
   [505]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-433/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc.html
    - shard-lnl:          [SKIP][506] ([Intel XE#4471]) -> [SKIP][507] ([Intel XE#2887]) +1 other test skip
   [506]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc.html
   [507]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc.html

  * igt@kms_content_protection@atomic:
    - shard-lnl:          [SKIP][508] ([Intel XE#3278]) -> [SKIP][509] ([Intel XE#4471])
   [508]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-3/igt@kms_content_protection@atomic.html
   [509]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_content_protection@atomic.html

  * igt@kms_content_protection@content-type-change:
    - shard-lnl:          [SKIP][510] ([Intel XE#4472]) -> [SKIP][511] ([Intel XE#3278])
   [510]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_content_protection@content-type-change.html
   [511]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@kms_content_protection@content-type-change.html

  * igt@kms_content_protection@dp-mst-type-1:
    - shard-lnl:          [SKIP][512] ([Intel XE#4471]) -> [SKIP][513] ([Intel XE#307])
   [512]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_content_protection@dp-mst-type-1.html
   [513]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-5/igt@kms_content_protection@dp-mst-type-1.html

  * igt@kms_content_protection@legacy:
    - shard-dg2-set2:     [SKIP][514] ([Intel XE#455]) -> [FAIL][515] ([Intel XE#1178]) +1 other test fail
   [514]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-464/igt@kms_content_protection@legacy.html
   [515]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_content_protection@legacy.html

  * igt@kms_content_protection@lic-type-0:
    - shard-dg2-set2:     [DMESG-FAIL][516] ([Intel XE#4330]) -> [FAIL][517] ([Intel XE#1178])
   [516]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-463/igt@kms_content_protection@lic-type-0.html
   [517]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_content_protection@lic-type-0.html

  * igt@kms_content_protection@mei-interface:
    - shard-lnl:          [SKIP][518] ([Intel XE#4472]) -> [SKIP][519] ([Intel XE#1468])
   [518]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_content_protection@mei-interface.html
   [519]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@kms_content_protection@mei-interface.html

  * igt@kms_cursor_crc@cursor-offscreen-128x42:
    - shard-lnl:          [SKIP][520] ([Intel XE#1424]) -> [SKIP][521] ([Intel XE#4472]) +2 other tests skip
   [520]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-8/igt@kms_cursor_crc@cursor-offscreen-128x42.html
   [521]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_cursor_crc@cursor-offscreen-128x42.html

  * igt@kms_cursor_crc@cursor-onscreen-128x42:
    - shard-lnl:          [SKIP][522] ([Intel XE#4471]) -> [SKIP][523] ([Intel XE#1424]) +1 other test skip
   [522]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_cursor_crc@cursor-onscreen-128x42.html
   [523]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_cursor_crc@cursor-onscreen-128x42.html

  * igt@kms_cursor_crc@cursor-onscreen-512x170:
    - shard-lnl:          [SKIP][524] ([Intel XE#2321]) -> [SKIP][525] ([Intel XE#4472]) +1 other test skip
   [524]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-4/igt@kms_cursor_crc@cursor-onscreen-512x170.html
   [525]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_cursor_crc@cursor-onscreen-512x170.html

  * igt@kms_cursor_crc@cursor-onscreen-512x512:
    - shard-lnl:          [SKIP][526] ([Intel XE#4471]) -> [SKIP][527] ([Intel XE#2321]) +1 other test skip
   [526]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_cursor_crc@cursor-onscreen-512x512.html
   [527]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_cursor_crc@cursor-onscreen-512x512.html

  * igt@kms_cursor_crc@cursor-random-128x42:
    - shard-lnl:          [SKIP][528] ([Intel XE#4472]) -> [SKIP][529] ([Intel XE#1424]) +2 other tests skip
   [528]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_cursor_crc@cursor-random-128x42.html
   [529]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@kms_cursor_crc@cursor-random-128x42.html

  * igt@kms_cursor_crc@cursor-random-512x512:
    - shard-lnl:          [SKIP][530] ([Intel XE#2321]) -> [SKIP][531] ([Intel XE#4471])
   [530]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@kms_cursor_crc@cursor-random-512x512.html
   [531]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_cursor_crc@cursor-random-512x512.html

  * igt@kms_cursor_crc@cursor-rapid-movement-128x42:
    - shard-lnl:          [SKIP][532] ([Intel XE#1424]) -> [SKIP][533] ([Intel XE#4471]) +4 other tests skip
   [532]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@kms_cursor_crc@cursor-rapid-movement-128x42.html
   [533]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_cursor_crc@cursor-rapid-movement-128x42.html

  * igt@kms_cursor_legacy@2x-cursor-vs-flip-legacy:
    - shard-lnl:          [SKIP][534] ([Intel XE#4472]) -> [SKIP][535] ([Intel XE#309]) +2 other tests skip
   [534]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_cursor_legacy@2x-cursor-vs-flip-legacy.html
   [535]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@kms_cursor_legacy@2x-cursor-vs-flip-legacy.html

  * igt@kms_cursor_legacy@2x-long-nonblocking-modeset-vs-cursor-atomic:
    - shard-lnl:          [SKIP][536] ([Intel XE#4471]) -> [SKIP][537] ([Intel XE#309])
   [536]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_cursor_legacy@2x-long-nonblocking-modeset-vs-cursor-atomic.html
   [537]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@kms_cursor_legacy@2x-long-nonblocking-modeset-vs-cursor-atomic.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic:
    - shard-lnl:          [SKIP][538] ([Intel XE#323]) -> [SKIP][539] ([Intel XE#4472])
   [538]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-3/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html
   [539]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_cursor_legacy@basic-busy-flip-before-cursor-atomic.html

  * igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions-varying-size:
    - shard-dg2-set2:     [DMESG-WARN][540] ([Intel XE#4330]) -> [SKIP][541] ([Intel XE#309]) +1 other test skip
   [540]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-463/igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions-varying-size.html
   [541]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@kms_cursor_legacy@cursora-vs-flipb-atomic-transitions-varying-size.html

  * igt@kms_cursor_legacy@cursora-vs-flipb-varying-size:
    - shard-bmg:          [DMESG-WARN][542] ([Intel XE#4330]) -> [SKIP][543] ([Intel XE#2291])
   [542]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-1/igt@kms_cursor_legacy@cursora-vs-flipb-varying-size.html
   [543]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@kms_cursor_legacy@cursora-vs-flipb-varying-size.html

  * igt@kms_cursor_legacy@cursorb-vs-flipb-toggle:
    - shard-lnl:          [SKIP][544] ([Intel XE#309]) -> [SKIP][545] ([Intel XE#4471]) +1 other test skip
   [544]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@kms_cursor_legacy@cursorb-vs-flipb-toggle.html
   [545]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_cursor_legacy@cursorb-vs-flipb-toggle.html

  * igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions:
    - shard-lnl:          [SKIP][546] ([Intel XE#4472]) -> [SKIP][547] ([Intel XE#323])
   [546]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions.html
   [547]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions.html

  * igt@kms_display_modes@extended-mode-basic:
    - shard-lnl:          [SKIP][548] ([Intel XE#4472]) -> [SKIP][549] ([Intel XE#4302])
   [548]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_display_modes@extended-mode-basic.html
   [549]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@kms_display_modes@extended-mode-basic.html

  * igt@kms_dp_link_training@uhbr-sst:
    - shard-lnl:          [SKIP][550] ([Intel XE#4354]) -> [SKIP][551] ([Intel XE#4472])
   [550]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@kms_dp_link_training@uhbr-sst.html
   [551]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_dp_link_training@uhbr-sst.html

  * igt@kms_dp_linktrain_fallback@dp-fallback:
    - shard-dg2-set2:     [SKIP][552] ([Intel XE#4331]) -> [DMESG-WARN][553] ([Intel XE#4330])
   [552]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-464/igt@kms_dp_linktrain_fallback@dp-fallback.html
   [553]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-434/igt@kms_dp_linktrain_fallback@dp-fallback.html

  * igt@kms_dp_linktrain_fallback@dsc-fallback:
    - shard-lnl:          [SKIP][554] ([Intel XE#4331]) -> [SKIP][555] ([Intel XE#4471])
   [554]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-3/igt@kms_dp_linktrain_fallback@dsc-fallback.html
   [555]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_dp_linktrain_fallback@dsc-fallback.html

  * igt@kms_dsc@dsc-with-bpc-formats:
    - shard-lnl:          [SKIP][556] ([Intel XE#4472]) -> [SKIP][557] ([Intel XE#2244])
   [556]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_dsc@dsc-with-bpc-formats.html
   [557]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-5/igt@kms_dsc@dsc-with-bpc-formats.html

  * igt@kms_dsc@dsc-with-formats:
    - shard-dg2-set2:     [INCOMPLETE][558] ([Intel XE#2594]) -> [SKIP][559] ([Intel XE#455])
   [558]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-433/igt@kms_dsc@dsc-with-formats.html
   [559]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@kms_dsc@dsc-with-formats.html

  * igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-out-visible-area:
    - shard-lnl:          [SKIP][560] ([Intel XE#4471]) -> [SKIP][561] ([Intel XE#4422])
   [560]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-out-visible-area.html
   [561]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-5/igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-out-visible-area.html

  * igt@kms_flip@2x-flip-vs-expired-vblank:
    - shard-dg2-set2:     [FAIL][562] ([Intel XE#301]) -> [SKIP][563] ([Intel XE#310])
   [562]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-433/igt@kms_flip@2x-flip-vs-expired-vblank.html
   [563]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@kms_flip@2x-flip-vs-expired-vblank.html

  * igt@kms_flip@flip-vs-expired-vblank:
    - shard-lnl:          [FAIL][564] ([Intel XE#301] / [Intel XE#3149]) -> [SKIP][565] ([Intel XE#2482])
   [564]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-2/igt@kms_flip@flip-vs-expired-vblank.html
   [565]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_flip@flip-vs-expired-vblank.html

  * igt@kms_flip@flip-vs-suspend-interruptible:
    - shard-dg2-set2:     [INCOMPLETE][566] ([Intel XE#2049] / [Intel XE#2597]) -> [DMESG-WARN][567] ([Intel XE#2955])
   [566]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-432/igt@kms_flip@flip-vs-suspend-interruptible.html
   [567]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-434/igt@kms_flip@flip-vs-suspend-interruptible.html

  * igt@kms_flip@wf_vblank-ts-check-interruptible:
    - shard-lnl:          [SKIP][568] ([Intel XE#2482]) -> [FAIL][569] ([Intel XE#886])
   [568]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_flip@wf_vblank-ts-check-interruptible.html
   [569]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@kms_flip@wf_vblank-ts-check-interruptible.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-downscaling:
    - shard-lnl:          [SKIP][570] ([Intel XE#1401] / [Intel XE#1745]) -> [SKIP][571] ([Intel XE#1745]) +1 other test skip
   [570]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-8/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-downscaling.html
   [571]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytileccs-downscaling.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling:
    - shard-lnl:          [SKIP][572] ([Intel XE#1745]) -> [SKIP][573] ([Intel XE#1401] / [Intel XE#1745]) +3 other tests skip
   [572]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling.html
   [573]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-5/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-downscaling.html

  * igt@kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-downscaling:
    - shard-lnl:          [SKIP][574] ([Intel XE#1397] / [Intel XE#1745]) -> [SKIP][575] ([Intel XE#1745]) +2 other tests skip
   [574]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-downscaling.html
   [575]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_flip_scaled_crc@flip-64bpp-linear-to-32bpp-linear-downscaling.html

  * igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-downscaling:
    - shard-lnl:          [SKIP][576] ([Intel XE#1745]) -> [SKIP][577] ([Intel XE#1397] / [Intel XE#1745])
   [576]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-downscaling.html
   [577]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-3/igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-downscaling.html

  * igt@kms_frontbuffer_tracking@drrs-1p-primscrn-pri-shrfb-draw-render:
    - shard-lnl:          [SKIP][578] ([Intel XE#651]) -> [SKIP][579] ([Intel XE#2548]) +16 other tests skip
   [578]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-2/igt@kms_frontbuffer_tracking@drrs-1p-primscrn-pri-shrfb-draw-render.html
   [579]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_frontbuffer_tracking@drrs-1p-primscrn-pri-shrfb-draw-render.html

  * igt@kms_frontbuffer_tracking@drrs-2p-primscrn-spr-indfb-draw-render:
    - shard-bmg:          [SKIP][580] ([Intel XE#2312]) -> [SKIP][581] ([Intel XE#2311]) +5 other tests skip
   [580]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-4/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-spr-indfb-draw-render.html
   [581]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-spr-indfb-draw-render.html

  * igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-cur-indfb-draw-blt:
    - shard-bmg:          [SKIP][582] ([Intel XE#2311]) -> [SKIP][583] ([Intel XE#2312]) +3 other tests skip
   [582]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-8/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-cur-indfb-draw-blt.html
   [583]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@kms_frontbuffer_tracking@drrs-2p-scndscrn-cur-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-blt:
    - shard-bmg:          [SKIP][584] ([Intel XE#2312]) -> [SKIP][585] ([Intel XE#4141])
   [584]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-4/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-blt.html
   [585]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc:
    - shard-bmg:          [SKIP][586] ([Intel XE#4141]) -> [SKIP][587] ([Intel XE#2312]) +3 other tests skip
   [586]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-8/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc.html
   [587]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-spr-indfb-onoff:
    - shard-lnl:          [SKIP][588] ([Intel XE#2548]) -> [SKIP][589] ([Intel XE#651]) +11 other tests skip
   [588]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-spr-indfb-onoff.html
   [589]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-spr-indfb-onoff.html

  * igt@kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-shrfb-draw-blt:
    - shard-dg2-set2:     [SKIP][590] ([Intel XE#651]) -> [SKIP][591] ([Intel XE#656]) +8 other tests skip
   [590]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-433/igt@kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-shrfb-draw-blt.html
   [591]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@kms_frontbuffer_tracking@fbcdrrs-2p-primscrn-pri-shrfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-blt:
    - shard-lnl:          [SKIP][592] ([Intel XE#2548]) -> [SKIP][593] ([Intel XE#656]) +30 other tests skip
   [592]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-blt.html
   [593]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-5/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-mmap-wc:
    - shard-dg2-set2:     [SKIP][594] ([Intel XE#656]) -> [SKIP][595] ([Intel XE#651]) +10 other tests skip
   [594]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-464/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-mmap-wc.html
   [595]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-434/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-onoff:
    - shard-dg2-set2:     [SKIP][596] ([Intel XE#656]) -> [SKIP][597] ([Intel XE#653]) +8 other tests skip
   [596]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-464/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-onoff.html
   [597]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-434/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-onoff.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-render:
    - shard-dg2-set2:     [SKIP][598] ([Intel XE#653]) -> [SKIP][599] ([Intel XE#656]) +3 other tests skip
   [598]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-433/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-render.html
   [599]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-464/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-spr-indfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-blt:
    - shard-bmg:          [SKIP][600] ([Intel XE#2313]) -> [SKIP][601] ([Intel XE#2312]) +9 other tests skip
   [600]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-1/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-blt.html
   [601]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-4/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-tiling-y:
    - shard-lnl:          [SKIP][602] ([Intel XE#1469]) -> [SKIP][603] ([Intel XE#2548])
   [602]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@kms_frontbuffer_tracking@fbcpsr-tiling-y.html
   [603]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_frontbuffer_tracking@fbcpsr-tiling-y.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-draw-blt:
    - shard-bmg:          [SKIP][604] ([Intel XE#2312]) -> [SKIP][605] ([Intel XE#2313]) +4 other tests skip
   [604]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-4/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-draw-blt.html
   [605]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-8/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-cur-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-blt:
    - shard-lnl:          [SKIP][606] ([Intel XE#656]) -> [SKIP][607] ([Intel XE#2548]) +44 other tests skip
   [606]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-blt.html
   [607]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-indfb-draw-blt.html

  * igt@kms_hdr@brightness-with-hdr:
    - shard-bmg:          [SKIP][608] ([Intel XE#3544]) -> [SKIP][609] ([Intel XE#3374] / [Intel XE#3544])
   [608]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-bmg-4/igt@kms_hdr@brightness-with-hdr.html
   [609]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-bmg-7/igt@kms_hdr@brightness-with-hdr.html

  * igt@kms_hdr@invalid-hdr:
    - shard-lnl:          [SKIP][610] ([Intel XE#4471]) -> [SKIP][611] ([Intel XE#4472]) +9 other tests skip
   [610]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_hdr@invalid-hdr.html
   [611]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_hdr@invalid-hdr.html

  * igt@kms_hdr@static-toggle-dpms:
    - shard-lnl:          [SKIP][612] ([Intel XE#4472]) -> [SKIP][613] ([Intel XE#1503]) +1 other test skip
   [612]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_hdr@static-toggle-dpms.html
   [613]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@kms_hdr@static-toggle-dpms.html

  * igt@kms_plane@plane-position-hole-dpms:
    - shard-lnl:          [DMESG-WARN][614] ([Intel XE#324]) -> [SKIP][615] ([Intel XE#3380])
   [614]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-4/igt@kms_plane@plane-position-hole-dpms.html
   [615]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_plane@plane-position-hole-dpms.html

  * igt@kms_plane_lowres@tiling-y:
    - shard-lnl:          [SKIP][616] ([Intel XE#599]) -> [SKIP][617] ([Intel XE#4472]) +1 other test skip
   [616]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-8/igt@kms_plane_lowres@tiling-y.html
   [617]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_plane_lowres@tiling-y.html

  * igt@kms_plane_multiple@tiling-y:
    - shard-lnl:          [SKIP][618] ([Intel XE#4471]) -> [SKIP][619] ([Intel XE#2493])
   [618]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_plane_multiple@tiling-y.html
   [619]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-5/igt@kms_plane_multiple@tiling-y.html

  * igt@kms_pm_dc@dc6-psr:
    - shard-lnl:          [FAIL][620] ([Intel XE#1430]) -> [SKIP][621] ([Intel XE#1129])
   [620]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-2/igt@kms_pm_dc@dc6-psr.html
   [621]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_pm_dc@dc6-psr.html

  * igt@kms_pm_dc@deep-pkgc:
    - shard-lnl:          [SKIP][622] ([Intel XE#2861]) -> [FAIL][623] ([Intel XE#2029])
   [622]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_pm_dc@deep-pkgc.html
   [623]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-3/igt@kms_pm_dc@deep-pkgc.html

  * igt@kms_psr2_sf@pr-overlay-plane-update-continuous-sf:
    - shard-lnl:          [SKIP][624] ([Intel XE#1489]) -> [SKIP][625] ([Intel XE#2893]) +2 other tests skip
   [624]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_psr2_sf@pr-overlay-plane-update-continuous-sf.html
   [625]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_psr2_sf@pr-overlay-plane-update-continuous-sf.html

  * igt@kms_psr2_sf@pr-plane-move-sf-dmg-area:
    - shard-lnl:          [SKIP][626] ([Intel XE#2893]) -> [SKIP][627] ([Intel XE#1489]) +5 other tests skip
   [626]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-6/igt@kms_psr2_sf@pr-plane-move-sf-dmg-area.html
   [627]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_psr2_sf@pr-plane-move-sf-dmg-area.html

  * igt@kms_psr2_su@frontbuffer-xrgb8888:
    - shard-lnl:          [SKIP][628] ([Intel XE#1122]) -> [SKIP][629] ([Intel XE#1128])
   [628]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_psr2_su@frontbuffer-xrgb8888.html
   [629]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@kms_psr2_su@frontbuffer-xrgb8888.html

  * igt@kms_psr2_su@page_flip-nv12:
    - shard-lnl:          [SKIP][630] ([Intel XE#1128]) -> [SKIP][631] ([Intel XE#1122])
   [630]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-3/igt@kms_psr2_su@page_flip-nv12.html
   [631]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_psr2_su@page_flip-nv12.html

  * igt@kms_psr@fbc-pr-cursor-plane-move:
    - shard-lnl:          [SKIP][632] ([Intel XE#1406]) -> [SKIP][633] ([Intel XE#2850] / [Intel XE#929]) +9 other tests skip
   [632]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-3/igt@kms_psr@fbc-pr-cursor-plane-move.html
   [633]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_psr@fbc-pr-cursor-plane-move.html

  * igt@kms_psr@pr-sprite-blt:
    - shard-lnl:          [SKIP][634] ([Intel XE#2850] / [Intel XE#929]) -> [SKIP][635] ([Intel XE#1406]) +1 other test skip
   [634]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-1/igt@kms_psr@pr-sprite-blt.html
   [635]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-3/igt@kms_psr@pr-sprite-blt.html

  * igt@kms_rotation_crc@primary-rotation-270:
    - shard-lnl:          [SKIP][636] ([Intel XE#3414] / [Intel XE#3904]) -> [SKIP][637] ([Intel XE#4471]) +1 other test skip
   [636]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-5/igt@kms_rotation_crc@primary-rotation-270.html
   [637]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_rotation_crc@primary-rotation-270.html

  * igt@kms_rotation_crc@primary-y-tiled-reflect-x-0:
    - shard-lnl:          [SKIP][638] ([Intel XE#1127]) -> [SKIP][639] ([Intel XE#4471])
   [638]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-2/igt@kms_rotation_crc@primary-y-tiled-reflect-x-0.html
   [639]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_rotation_crc@primary-y-tiled-reflect-x-0.html

  * igt@kms_rotation_crc@primary-y-tiled-reflect-x-180:
    - shard-lnl:          [SKIP][640] ([Intel XE#1127]) -> [SKIP][641] ([Intel XE#4472])
   [640]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-8/igt@kms_rotation_crc@primary-y-tiled-reflect-x-180.html
   [641]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_rotation_crc@primary-y-tiled-reflect-x-180.html

  * igt@kms_rotation_crc@primary-y-tiled-reflect-x-270:
    - shard-lnl:          [SKIP][642] ([Intel XE#4472]) -> [SKIP][643] ([Intel XE#3414] / [Intel XE#3904])
   [642]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_rotation_crc@primary-y-tiled-reflect-x-270.html
   [643]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-6/igt@kms_rotation_crc@primary-y-tiled-reflect-x-270.html

  * igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0:
    - shard-lnl:          [SKIP][644] ([Intel XE#4472]) -> [SKIP][645] ([Intel XE#1127])
   [644]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0.html
   [645]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-8/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0.html

  * igt@kms_rotation_crc@primary-yf-tiled-reflect-x-90:
    - shard-lnl:          [SKIP][646] ([Intel XE#3414] / [Intel XE#3904]) -> [SKIP][647] ([Intel XE#4472])
   [646]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-4/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-90.html
   [647]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-7/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-90.html

  * igt@kms_universal_plane@cursor-fb-leak:
    - shard-lnl:          [FAIL][648] ([Intel XE#899]) -> [SKIP][649] ([Intel XE#4471])
   [648]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-2/igt@kms_universal_plane@cursor-fb-leak.html
   [649]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-1/igt@kms_universal_plane@cursor-fb-leak.html

  * igt@kms_vrr@seamless-rr-switch-vrr:
    - shard-lnl:          [SKIP][650] ([Intel XE#4472]) -> [SKIP][651] ([Intel XE#1499]) +1 other test skip
   [650]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-lnl-7/igt@kms_vrr@seamless-rr-switch-vrr.html
   [651]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-lnl-4/igt@kms_vrr@seamless-rr-switch-vrr.html

  * igt@xe_exec_basic@multigpu-once-basic-defer-mmap:
    - shard-dg2-set2:     [DMESG-WARN][652] ([Intel XE#4330]) -> [SKIP][653] ([Intel XE#1392])
   [652]: https://intel-gfx-ci.01.org/tree/intel-xe/IGT_8257/shard-dg2-464/igt@xe_exec_basic@multigpu-once-basic-defer-mmap.html
   [653]: https://intel-gfx-ci.01.org/tree/intel-xe/IGTPW_12694/shard-dg2-432/igt@xe_exec_basic@multigpu-once-basic-defer-mmap.html

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

  [Intel XE#1062]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1062
  [Intel XE#1091]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1091
  [Intel XE#1122]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1122
  [Intel XE#1123]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1123
  [Intel XE#1124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1124
  [Intel XE#1126]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1126
  [Intel XE#1127]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1127
  [Intel XE#1128]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1128
  [Intel XE#1129]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1129
  [Intel XE#1135]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1135
  [Intel XE#1138]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1138
  [Intel XE#1178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1178
  [Intel XE#1280]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1280
  [Intel XE#1337]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1337
  [Intel XE#1392]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1392
  [Intel XE#1397]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1397
  [Intel XE#1401]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1401
  [Intel XE#1406]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1406
  [Intel XE#1407]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1407
  [Intel XE#1416]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1416
  [Intel XE#1421]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1421
  [Intel XE#1424]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1424
  [Intel XE#1428]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1428
  [Intel XE#1430]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1430
  [Intel XE#1435]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1435
  [Intel XE#1439]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1439
  [Intel XE#1468]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1468
  [Intel XE#1469]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1469
  [Intel XE#1477]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1477
  [Intel XE#1489]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1489
  [Intel XE#1499]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1499
  [Intel XE#1503]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1503
  [Intel XE#1508]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1508
  [Intel XE#1512]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1512
  [Intel XE#1727]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1727
  [Intel XE#1729]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1729
  [Intel XE#1745]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1745
  [Intel XE#1999]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1999
  [Intel XE#2029]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2029
  [Intel XE#2042]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2042
  [Intel XE#2049]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2049
  [Intel XE#2134]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2134
  [Intel XE#2191]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2191
  [Intel XE#2233]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2233
  [Intel XE#2234]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2234
  [Intel XE#2244]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2244
  [Intel XE#2252]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2252
  [Intel XE#2284]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2284
  [Intel XE#2286]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2286
  [Intel XE#2291]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2291
  [Intel XE#2293]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2293
  [Intel XE#2311]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2311
  [Intel XE#2312]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2312
  [Intel XE#2313]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2313
  [Intel XE#2314]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2314
  [Intel XE#2316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2316
  [Intel XE#2320]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2320
  [Intel XE#2321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2321
  [Intel XE#2322]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2322
  [Intel XE#2325]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2325
  [Intel XE#2327]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2327
  [Intel XE#2330]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2330
  [Intel XE#2352]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2352
  [Intel XE#2360]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2360
  [Intel XE#2370]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2370
  [Intel XE#2380]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2380
  [Intel XE#2390]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2390
  [Intel XE#2392]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2392
  [Intel XE#2393]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2393
  [Intel XE#2413]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2413
  [Intel XE#2414]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2414
  [Intel XE#2450]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2450
  [Intel XE#2457]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2457
  [Intel XE#2482]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2482
  [Intel XE#2486]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2486
  [Intel XE#2493]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2493
  [Intel XE#2505]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2505
  [Intel XE#2541]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2541
  [Intel XE#2548]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2548
  [Intel XE#255]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/255
  [Intel XE#2566]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2566
  [Intel XE#2568]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2568
  [Intel XE#2594]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2594
  [Intel XE#2597]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2597
  [Intel XE#2652]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2652
  [Intel XE#2669]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2669
  [Intel XE#2705]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2705
  [Intel XE#2724]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2724
  [Intel XE#2763]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2763
  [Intel XE#2849]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2849
  [Intel XE#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850
  [Intel XE#2861]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2861
  [Intel XE#288]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/288
  [Intel XE#2887]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2887
  [Intel XE#2893]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2893
  [Intel XE#2894]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2894
  [Intel XE#2905]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2905
  [Intel XE#2907]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2907
  [Intel XE#2925]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2925
  [Intel XE#2932]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2932
  [Intel XE#2934]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2934
  [Intel XE#2938]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2938
  [Intel XE#2939]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2939
  [Intel XE#2955]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2955
  [Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301
  [Intel XE#306]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/306
  [Intel XE#307]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/307
  [Intel XE#308]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/308
  [Intel XE#309]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/309
  [Intel XE#310]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/310
  [Intel XE#3113]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3113
  [Intel XE#3141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3141
  [Intel XE#3149]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3149
  [Intel XE#316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/316
  [Intel XE#3226]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3226
  [Intel XE#323]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/323
  [Intel XE#324]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/324
  [Intel XE#3278]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3278
  [Intel XE#3279]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3279
  [Intel XE#3307]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3307
  [Intel XE#3308]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3308
  [Intel XE#3321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3321
  [Intel XE#3374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3374
  [Intel XE#3380]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3380
  [Intel XE#3414]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3414
  [Intel XE#3432]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3432
  [Intel XE#3442]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3442
  [Intel XE#346]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/346
  [Intel XE#3544]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3544
  [Intel XE#3573]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3573
  [Intel XE#362]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/362
  [Intel XE#3658]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3658
  [Intel XE#366]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/366
  [Intel XE#367]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/367
  [Intel XE#3719]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3719
  [Intel XE#373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/373
  [Intel XE#3768]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3768
  [Intel XE#378]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/378
  [Intel XE#3862]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3862
  [Intel XE#3889]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3889
  [Intel XE#3904]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3904
  [Intel XE#4130]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4130
  [Intel XE#4141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4141
  [Intel XE#4199]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4199
  [Intel XE#4268]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4268
  [Intel XE#4273]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4273
  [Intel XE#4302]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4302
  [Intel XE#4328]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4328
  [Intel XE#4330]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4330
  [Intel XE#4331]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4331
  [Intel XE#4351]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4351
  [Intel XE#4354]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4354
  [Intel XE#4359]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4359
  [Intel XE#4361]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4361
  [Intel XE#4417]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4417
  [Intel XE#4418]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4418
  [Intel XE#4422]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4422
  [Intel XE#4471]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4471
  [Intel XE#4472]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4472
  [Intel XE#455]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/455
  [Intel XE#512]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/512
  [Intel XE#569]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/569
  [Intel XE#584]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/584
  [Intel XE#586]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/586
  [Intel XE#599]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/599
  [Intel XE#605]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/605
  [Intel XE#616]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/616
  [Intel XE#619]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/619
  [Intel XE#651]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/651
  [Intel XE#653]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/653
  [Intel XE#656]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/656
  [Intel XE#658]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/658
  [Intel XE#688]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/688
  [Intel XE#702]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/702
  [Intel XE#703]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/703
  [Intel XE#718]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/718
  [Intel XE#756]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/756
  [Intel XE#787]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/787
  [Intel XE#836]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/836
  [Intel XE#870]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/870
  [Intel XE#877]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/877
  [Intel XE#886]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/886
  [Intel XE#899]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/899
  [Intel XE#911]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/911
  [Intel XE#929]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/929
  [Intel XE#944]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/944


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

  * IGT: IGT_8257 -> IGTPW_12694
  * Linux: xe-2747-413ae464b8021542ad90cb1fbb15f8efc5050a5d -> xe-2752-1cf56e26a93292ca26fbf891368b75a67e8700dc

  IGTPW_12694: 12694
  IGT_8257: 8257
  xe-2747-413ae464b8021542ad90cb1fbb15f8efc5050a5d: 413ae464b8021542ad90cb1fbb15f8efc5050a5d
  xe-2752-1cf56e26a93292ca26fbf891368b75a67e8700dc: 1cf56e26a93292ca26fbf891368b75a67e8700dc

== Logs ==

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

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

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

* Re: [PATCH i-g-t v2 11/14] tests/intel/xe_oa: Rewrite enable-disable test
  2025-03-04  0:51   ` Dixit, Ashutosh
@ 2025-03-04 15:04     ` Dixit, Ashutosh
  0 siblings, 0 replies; 25+ messages in thread
From: Dixit, Ashutosh @ 2025-03-04 15:04 UTC (permalink / raw)
  To: Umesh Nerlige Ramappa; +Cc: igt-dev

On Mon, 03 Mar 2025 16:51:43 -0800, Dixit, Ashutosh wrote:
>
> On Mon, 03 Mar 2025 15:14:59 -0800, Umesh Nerlige Ramappa wrote:
> >
> > Keep it simple and just check if enable/disable is working correctly
> > using the read call and existing uapi.
> >
> > v2: Drop mmio and use the value returned in read (Ashutosh)
>
> Thanks for changing this.
>
> >
> > Signed-off-by: Umesh Nerlige Ramappa <umesh.nerlige.ramappa@intel.com>
> > Reviewed-by: Ashutosh Dixit <ashutosh.dixit@intel.com>
> > ---
> >  tests/intel/xe_oa.c | 140 ++++++++------------------------------------
> >  1 file changed, 24 insertions(+), 116 deletions(-)
> >
> > diff --git a/tests/intel/xe_oa.c b/tests/intel/xe_oa.c
> > index 9c10a8fd2..47c4a1fdb 100644
> > --- a/tests/intel/xe_oa.c
> > +++ b/tests/intel/xe_oa.c
> > @@ -2524,145 +2524,53 @@ test_non_zero_reason(const struct drm_xe_engine_class_instance *hwe, size_t oa_b
> >  static void
> >  test_enable_disable(const struct drm_xe_engine_class_instance *hwe)
> >  {
> > -	/* ~5 micro second period */
> > -	int oa_exponent = max_oa_exponent_for_period_lte(5000);
> > -	uint64_t oa_period = oa_exponent_to_ns(oa_exponent);
> > +	uint32_t num_reports = 5;
> >	struct intel_xe_perf_metric_set *test_set = metric_set(hwe);
> >	uint64_t fmt = test_set->perf_oa_format;
> >	uint64_t properties[] = {
> >		DRM_XE_OA_PROPERTY_OA_UNIT_ID, 0,
> > -
> > -		/* Include OA reports in samples */
> >		DRM_XE_OA_PROPERTY_SAMPLE_OA, true,
> > -
> > -		/* OA unit configuration */
> >		DRM_XE_OA_PROPERTY_OA_METRIC_SET, test_set->perf_oa_metrics_set,
> >		DRM_XE_OA_PROPERTY_OA_FORMAT, __ff(fmt),
> > -		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent,
> > +		DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, oa_exponent_default,
> >		DRM_XE_OA_PROPERTY_OA_DISABLED, true,
> >		DRM_XE_OA_PROPERTY_OA_ENGINE_INSTANCE, hwe->engine_instance,
> > +		DRM_XE_OA_PROPERTY_WAIT_NUM_REPORTS, num_reports,
> >	};
> >	struct intel_xe_oa_open_prop param = {
> >		.num_properties = ARRAY_SIZE(properties) / 2,
> >		.properties_ptr = to_user_pointer(properties),
> >	};
> > -	size_t report_size = get_oa_format(fmt).size;
> > -	int buf_size = 65536 * report_size;
> > -	uint8_t *buf = malloc(buf_size);
> > -	int n_full_oa_reports = default_oa_buffer_size / report_size;
> > -	uint64_t fill_duration = n_full_oa_reports * oa_period;
> > -	uint32_t *last_periodic_report = malloc(report_size);
> > -
> > -	load_helper_init();
> > -	load_helper_run(HIGH);
> > +	size_t format_size = get_oa_format(fmt).size;
> > +	uint8_t buf[num_reports * format_size];
> > +	struct pollfd pollfd;
> > +	int ret;
> >
> >	stream_fd = __perf_open(drm_fd, &param, true /* prevent_pm */);
> >          set_fd_flags(stream_fd, O_CLOEXEC);
>
> Doesn't make a difference to the test, but to reduce confusion, I'm
> wondering if we should change this to 'O_CLOEXEC | O_NONBLOCK' since we
> have introduced poll() here?
>
> Also, there seem to be spaces here rather than tabs.

If you fix this, just fix it up at the time of merging and make sure the
patch compiles, no need to post a new version I think.

>
> > -	for (int i = 0; i < 5; i++) {
> > -		int len;
> > -		uint32_t n_periodic_reports;
> > -		uint64_t first_timestamp = 0, last_timestamp = 0;
> > -		u32 oa_status;
> > -
> > -		/* Giving enough time for an overflow might help catch whether
> > -		 * the OA unit has been enabled even if the driver might at
> > -		 * least avoid copying reports while disabled.
> > -		 */
> > -		nanosleep(&(struct timespec){ .tv_sec = 0,
> > -					      .tv_nsec = fill_duration * 1.25 },
> > -			  NULL);
> > -
> > -		while ((len = read(stream_fd, buf, buf_size)) == -1 &&
> > -		       (errno == EINTR || errno == EIO))
> > -			;
> > -
> > -		igt_assert_eq(len, -1);
> > -		igt_assert_eq(errno, EINVAL);
> > -
> > -		do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_ENABLE, 0);
> > -
> > -		nanosleep(&(struct timespec){ .tv_sec = 0,
> > -					      .tv_nsec = fill_duration / 2 },
> > -			NULL);
> > -
> > -		n_periodic_reports = 0;
> > -
> > -		/* Because of the race condition between notification of new
> > -		 * reports and reports landing in memory, we need to rely on
> > -		 * timestamps to figure whether we've read enough of them.
> > -		 */
> > -		while (((last_timestamp - first_timestamp) * oa_period) < (fill_duration / 2)) {
> > -
> > -			while ((len = read(stream_fd, buf, buf_size)) == -1 && errno == EINTR)
> > -				;
> > -			if (errno == EIO) {
> > -				oa_status = get_stream_status(stream_fd);
> > -				igt_debug("oa_status %#x\n", oa_status);
> > -				igt_assert(!(oa_status & DRM_XE_OASTATUS_BUFFER_OVERFLOW));
> > -				continue;
> > -			}
> > -			igt_assert_neq(len, -1);
> > -
> > -			for (int offset = 0; offset < len; offset += report_size) {
> > -				uint32_t *report = (void *) (buf + offset);
> > -
> > -				if (first_timestamp == 0)
> > -					first_timestamp = oa_timestamp(report, fmt);
> > -				last_timestamp = oa_timestamp(report, fmt);
> > -
> > -				igt_debug(" > report ts=%"PRIx64""
> > -					  " ts_delta_last_periodic=%s%"PRIu64""
> > -					  " is_timer=%i ctx_id=0x%8x\n",
> > -					  oa_timestamp(report, fmt),
> > -					  oa_report_is_periodic(report) ? " " : "*",
> > -					  n_periodic_reports > 0 ?  oa_timestamp_delta(report, last_periodic_report, fmt) : 0,
> > -					  oa_report_is_periodic(report),
> > -					  oa_report_get_ctx_id(report));
> > -
> > -				if (oa_report_is_periodic(report)) {
> > -					memcpy(last_periodic_report, report, report_size);
> > -
> > -					/* We want to measure only the periodic reports,
> > -					 * ctx-switch might inflate the content of the
> > -					 * buffer and skew or measurement.
> > -					 */
> > -					n_periodic_reports++;
> > -				}
> > -			}
> > -		}
> > -
> > -		do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_DISABLE, 0);
> > -
> > -		igt_debug("first ts = %"PRIu64", last ts = %"PRIu64"\n", first_timestamp, last_timestamp);
> > -
> > -		igt_debug("%f < %zu < %f\n",
> > -			  report_size * n_full_oa_reports * 0.45,
> > -			  n_periodic_reports * report_size,
> > -			  report_size * n_full_oa_reports * 0.55);
> > -
> > -		igt_assert((n_periodic_reports * report_size) >
> > -			   (report_size * n_full_oa_reports * 0.45));
> > -		igt_assert((n_periodic_reports * report_size) <
> > -			   report_size * n_full_oa_reports * 0.55);
> > -
> > +	errno = 0;
> > +	ret = read(stream_fd, buf, sizeof(buf));
> > +	igt_assert_eq(ret, -1);
> > +	igt_assert_eq(errno, EINVAL);
> >
> > -		/* It's considered an error to read a stream while it's disabled
> > -		 * since it would block indefinitely...
> > -		 */
> > -		len = read(stream_fd, buf, buf_size);
> > +	do_ioctl(stream_fd, DRM_XE_OBSERVATION_IOCTL_ENABLE, 0);
> >
> > -		igt_assert_eq(len, -1);
> > -		igt_assert_eq(errno, EINVAL);
> > -	}
> > +	/*
> > +	 * Wait for number of reports specified in
> > +	 * DRM_XE_OA_PROPERTY_WAIT_NUM_REPORTS
> > +	 */
> > +	pollfd.fd = stream_fd;
> > +	pollfd.events = POLLIN;
> > +	poll(&pollfd, 1, -1);
> > +	igt_assert(pollfd.revents & POLLIN);
> >
> > -	free(last_periodic_report);
> > -	free(buf);
> > +	/* Ensure num_reports can be read */
> > +	while ((ret = read(stream_fd, buf, sizeof(buf))) < 0 && errno == EINTR)
> > +		;
> > +	igt_assert_eq(ret, sizeof(buf));
> >
> >	__perf_close(stream_fd);
> > -
> > -	load_helper_stop();
> > -	load_helper_fini();
> >  }
> >
> >  /**
> > --
> > 2.34.1
> >

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

* Re: [PATCH i-g-t v2 08/14] tests/intel/xe_oa: Simplify the buffer-fill test
  2025-03-04  0:28   ` Dixit, Ashutosh
@ 2025-03-04 15:11     ` Dixit, Ashutosh
  0 siblings, 0 replies; 25+ messages in thread
From: Dixit, Ashutosh @ 2025-03-04 15:11 UTC (permalink / raw)
  To: Umesh Nerlige Ramappa; +Cc: igt-dev

On Mon, 03 Mar 2025 16:28:08 -0800, Dixit, Ashutosh wrote:
>
> On Mon, 03 Mar 2025 15:14:56 -0800, Umesh Nerlige Ramappa wrote:
> >
> >  static struct intel_xe_perf_metric_set *metric_set(const struct drm_xe_engine_class_instance *hwe)
> >  {
> > @@ -1092,6 +1093,7 @@ init_sys_info(void)
> >
> >	rc_width = 1920;
> >	rc_height = 1080;
> > +	buffer_fill_size = SZ_16M;
>
> Sorry, missed this earlier. Note that there is a default_oa_buffer_size,
> just below. Can we use that or we need this new buffer_fill_size variable?
>
> The kernel will return a constant default_oa_buffer_size of 16 M (at least
> for now).
>
> We can fix this later too if needed, so not need to spin a new version for
> now for this. We can do this if we see any other reason for a new version,
> till now doesn't look like it.

Sorry, this is not an issue, buffer_fill_size is used to set an OA buffer
size. So presumably it can be reduced for slower platforms.

>
> >	oa_exponent_default = max_oa_exponent_for_period_lte(1000000);
> >
> >	default_oa_buffer_size = get_default_oa_buffer_size(drm_fd);

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

end of thread, other threads:[~2025-03-04 15:11 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-03-03 23:14 [PATCH i-g-t v2 00/14] Some refactor, rewrite and fixes for OA tests Umesh Nerlige Ramappa
2025-03-03 23:14 ` [PATCH i-g-t v2 01/14] tests/intel/xe_oa: Use static for global variables Umesh Nerlige Ramappa
2025-03-03 23:14 ` [PATCH i-g-t v2 02/14] tests/intel/xe_oa: Drop unused macro Umesh Nerlige Ramappa
2025-03-03 23:14 ` [PATCH i-g-t v2 03/14] tests/intel/xe_oa: Use period_ns in max_oa_exponent_for_period_lte Umesh Nerlige Ramappa
2025-03-03 23:38   ` Dixit, Ashutosh
2025-03-03 23:14 ` [PATCH i-g-t v2 04/14] tests/intel/xe_oa: Rename oa_exp_1_millisec to oa_exponent_default Umesh Nerlige Ramappa
2025-03-03 23:14 ` [PATCH i-g-t v2 05/14] tests/intel/xe_oa: Use default exponent for some tests Umesh Nerlige Ramappa
2025-03-03 23:14 ` [PATCH i-g-t v2 06/14] tests/intel/xe_oa: Use same render copy width and height across tests Umesh Nerlige Ramappa
2025-03-03 23:14 ` [PATCH i-g-t v2 07/14] tests/intel/xe_oa: Rewrite the polling small buf test Umesh Nerlige Ramappa
2025-03-04  0:05   ` Dixit, Ashutosh
2025-03-03 23:14 ` [PATCH i-g-t v2 08/14] tests/intel/xe_oa: Simplify the buffer-fill test Umesh Nerlige Ramappa
2025-03-04  0:17   ` Dixit, Ashutosh
2025-03-04  0:28   ` Dixit, Ashutosh
2025-03-04 15:11     ` Dixit, Ashutosh
2025-03-03 23:14 ` [PATCH i-g-t v2 09/14] tests/intel/xe_oa: Use default buffer size for non-zero reason Umesh Nerlige Ramappa
2025-03-03 23:14 ` [PATCH i-g-t v2 10/14] tests/intel/xe_oa: Test oa buffer sizes Umesh Nerlige Ramappa
2025-03-03 23:14 ` [PATCH i-g-t v2 11/14] tests/intel/xe_oa: Rewrite enable-disable test Umesh Nerlige Ramappa
2025-03-04  0:51   ` Dixit, Ashutosh
2025-03-04 15:04     ` Dixit, Ashutosh
2025-03-03 23:15 ` [PATCH i-g-t v2 12/14] tests/intel/xe_oa: Enable unprivileged-single-ctx-counters and fix it Umesh Nerlige Ramappa
2025-03-03 23:15 ` [PATCH i-g-t v2 13/14] tests/intel/xe_oa: Fix mmio_trigger_reports testing Umesh Nerlige Ramappa
2025-03-03 23:15 ` [PATCH i-g-t v2 14/14] tests/intel/xe_oa: Set boundaries for OA exponent test Umesh Nerlige Ramappa
2025-03-04  1:56 ` ✓ Xe.CI.BAT: success for Some refactor, rewrite and fixes for OA tests (rev2) Patchwork
2025-03-04  2:09 ` ✗ i915.CI.BAT: failure " Patchwork
2025-03-04  6:07 ` ✗ Xe.CI.Full: " Patchwork

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