Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 0/2] Introduce GT runtime suspend/resume
@ 2025-10-14  7:30 Raag Jadav
  2025-10-14  7:30 ` [PATCH v5 1/2] drm/xe/guc: Make xe_guc_submit_pause() available for non-VF cases Raag Jadav
                   ` (8 more replies)
  0 siblings, 9 replies; 18+ messages in thread
From: Raag Jadav @ 2025-10-14  7:30 UTC (permalink / raw)
  To: lucas.demarchi, rodrigo.vivi
  Cc: intel-xe, riana.tauro, daniele.ceraolospurio, matthew.brost,
	michal.wajdeczko, Raag Jadav

v2: Drop redundant xe_gt_sanitize() and xe_guc_ct_stop() (Daniele)
    Use runtime naming for guc helpers (Daniele)
    Split xe_guc_ct_enable() (Daniele)

v3: Drop redundant logging, add kernel doc (Michal)
    Use runtime naming for ct helpers (Michal)

v4: Split xe_guc_ct_enable() patch (Rodrigo)
    Fix tags (Rodrigo)

v5: Include host_l2_vram workaround (Daniele)
    Reuse xe_guc_submit_enable/disable() helpers (Daniele)

Raag Jadav (2):
  drm/xe/guc: Make xe_guc_submit_pause() available for non-VF cases
  drm/xe/gt: Introduce runtime suspend/resume

 drivers/gpu/drm/xe/xe_gt.c         | 60 ++++++++++++++++++++++++++++++
 drivers/gpu/drm/xe/xe_gt.h         |  2 +
 drivers/gpu/drm/xe/xe_guc.c        | 34 +++++++++++++++++
 drivers/gpu/drm/xe/xe_guc.h        |  2 +
 drivers/gpu/drm/xe/xe_guc_ct.c     | 27 ++++++++++++++
 drivers/gpu/drm/xe/xe_guc_ct.h     |  2 +
 drivers/gpu/drm/xe/xe_guc_submit.c |  2 -
 drivers/gpu/drm/xe/xe_pm.c         | 10 ++---
 drivers/gpu/drm/xe/xe_uc.c         | 28 ++++++++++++++
 drivers/gpu/drm/xe/xe_uc.h         |  2 +
 10 files changed, 162 insertions(+), 7 deletions(-)

-- 
2.34.1


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

* [PATCH v5 1/2] drm/xe/guc: Make xe_guc_submit_pause() available for non-VF cases
  2025-10-14  7:30 [PATCH v5 0/2] Introduce GT runtime suspend/resume Raag Jadav
@ 2025-10-14  7:30 ` Raag Jadav
  2025-10-14 18:09   ` Matthew Brost
  2025-10-14  7:30 ` [PATCH v5 2/2] drm/xe/gt: Introduce runtime suspend/resume Raag Jadav
                   ` (7 subsequent siblings)
  8 siblings, 1 reply; 18+ messages in thread
From: Raag Jadav @ 2025-10-14  7:30 UTC (permalink / raw)
  To: lucas.demarchi, rodrigo.vivi
  Cc: intel-xe, riana.tauro, daniele.ceraolospurio, matthew.brost,
	michal.wajdeczko, Raag Jadav

Drop xe_gt_assert() meant for VF migration and make xe_guc_submit_pause()
available for non-VF cases.

Signed-off-by: Raag Jadav <raag.jadav@intel.com>
---
 drivers/gpu/drm/xe/xe_guc_submit.c | 2 --
 1 file changed, 2 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
index 0ef67d3523a7..3cc428d45b4a 100644
--- a/drivers/gpu/drm/xe/xe_guc_submit.c
+++ b/drivers/gpu/drm/xe/xe_guc_submit.c
@@ -2170,8 +2170,6 @@ void xe_guc_submit_pause(struct xe_guc *guc)
 	struct xe_exec_queue *q;
 	unsigned long index;
 
-	xe_gt_assert(guc_to_gt(guc), vf_recovery(guc));
-
 	mutex_lock(&guc->submission_state.lock);
 	xa_for_each(&guc->submission_state.exec_queue_lookup, index, q) {
 		/* Prevent redundant attempts to stop parallel queues */
-- 
2.34.1


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

* [PATCH v5 2/2] drm/xe/gt: Introduce runtime suspend/resume
  2025-10-14  7:30 [PATCH v5 0/2] Introduce GT runtime suspend/resume Raag Jadav
  2025-10-14  7:30 ` [PATCH v5 1/2] drm/xe/guc: Make xe_guc_submit_pause() available for non-VF cases Raag Jadav
@ 2025-10-14  7:30 ` Raag Jadav
  2025-10-16 15:32   ` Daniele Ceraolo Spurio
  2025-10-14  7:42 ` ✓ CI.KUnit: success for Introduce GT runtime suspend/resume (rev2) Patchwork
                   ` (6 subsequent siblings)
  8 siblings, 1 reply; 18+ messages in thread
From: Raag Jadav @ 2025-10-14  7:30 UTC (permalink / raw)
  To: lucas.demarchi, rodrigo.vivi
  Cc: intel-xe, riana.tauro, daniele.ceraolospurio, matthew.brost,
	michal.wajdeczko, Raag Jadav

If power state is retained between suspend/resume cycle, we don't need
to perform full GT re-initialization. Introduce runtime helpers for GT
which greatly reduce suspend/resume delay.

v2: Drop redundant xe_gt_sanitize() and xe_guc_ct_stop() (Daniele)
    Use runtime naming for guc helpers (Daniele)
v3: Drop redundant logging, add kernel doc (Michal)
    Use runtime naming for ct helpers (Michal)
v4: Fix tags (Rodrigo)
v5: Include host_l2_vram workaround (Daniele)
    Reuse xe_guc_submit_enable/disable() helpers (Daniele)

Co-developed-by: Riana Tauro <riana.tauro@intel.com>
Signed-off-by: Riana Tauro <riana.tauro@intel.com>
Signed-off-by: Raag Jadav <raag.jadav@intel.com>
---
 drivers/gpu/drm/xe/xe_gt.c     | 60 ++++++++++++++++++++++++++++++++++
 drivers/gpu/drm/xe/xe_gt.h     |  2 ++
 drivers/gpu/drm/xe/xe_guc.c    | 34 +++++++++++++++++++
 drivers/gpu/drm/xe/xe_guc.h    |  2 ++
 drivers/gpu/drm/xe/xe_guc_ct.c | 27 +++++++++++++++
 drivers/gpu/drm/xe/xe_guc_ct.h |  2 ++
 drivers/gpu/drm/xe/xe_pm.c     | 10 +++---
 drivers/gpu/drm/xe/xe_uc.c     | 28 ++++++++++++++++
 drivers/gpu/drm/xe/xe_uc.h     |  2 ++
 9 files changed, 162 insertions(+), 5 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_gt.c b/drivers/gpu/drm/xe/xe_gt.c
index d8e94fb8b9bd..0eacca14ccbb 100644
--- a/drivers/gpu/drm/xe/xe_gt.c
+++ b/drivers/gpu/drm/xe/xe_gt.c
@@ -1003,6 +1003,66 @@ int xe_gt_resume(struct xe_gt *gt)
 	return err;
 }
 
+/**
+ * xe_gt_runtime_suspend() - GT runtime suspend
+ * @gt: the GT object
+ *
+ * Return: 0 on success, negative error code otherwise.
+ */
+int xe_gt_runtime_suspend(struct xe_gt *gt)
+{
+	unsigned int fw_ref;
+	int err = -ETIMEDOUT;
+
+	xe_gt_dbg(gt, "runtime suspending\n");
+
+	fw_ref = xe_force_wake_get(gt_to_fw(gt), XE_FORCEWAKE_ALL);
+	if (!xe_force_wake_ref_has_domain(fw_ref, XE_FORCEWAKE_ALL))
+		goto err_force_wake;
+
+	xe_uc_runtime_suspend(&gt->uc);
+	xe_gt_disable_host_l2_vram(gt);
+
+	xe_force_wake_put(gt_to_fw(gt), fw_ref);
+	xe_gt_dbg(gt, "runtime suspended\n");
+
+	return 0;
+
+err_force_wake:
+	xe_force_wake_put(gt_to_fw(gt), fw_ref);
+	return err;
+}
+
+/**
+ * xe_gt_runtime_resume() - GT runtime resume
+ * @gt: the GT object
+ *
+ * Return: 0 on success, negative error code otherwise.
+ */
+int xe_gt_runtime_resume(struct xe_gt *gt)
+{
+	unsigned int fw_ref;
+	int err = -ETIMEDOUT;
+
+	xe_gt_dbg(gt, "runtime resuming\n");
+
+	fw_ref = xe_force_wake_get(gt_to_fw(gt), XE_FORCEWAKE_ALL);
+	if (!xe_force_wake_ref_has_domain(fw_ref, XE_FORCEWAKE_ALL))
+		goto err_force_wake;
+
+	xe_gt_enable_host_l2_vram(gt);
+	xe_uc_runtime_resume(&gt->uc);
+
+	xe_force_wake_put(gt_to_fw(gt), fw_ref);
+	xe_gt_dbg(gt, "runtime resumed\n");
+
+	return 0;
+
+err_force_wake:
+	xe_force_wake_put(gt_to_fw(gt), fw_ref);
+	return err;
+}
+
 struct xe_hw_engine *xe_gt_hw_engine(struct xe_gt *gt,
 				     enum xe_engine_class class,
 				     u16 instance, bool logical)
diff --git a/drivers/gpu/drm/xe/xe_gt.h b/drivers/gpu/drm/xe/xe_gt.h
index 5df2ffe3ff83..ceb633ec22d0 100644
--- a/drivers/gpu/drm/xe/xe_gt.h
+++ b/drivers/gpu/drm/xe/xe_gt.h
@@ -52,6 +52,8 @@ int xe_gt_suspend(struct xe_gt *gt);
 void xe_gt_shutdown(struct xe_gt *gt);
 int xe_gt_resume(struct xe_gt *gt);
 void xe_gt_reset_async(struct xe_gt *gt);
+int xe_gt_runtime_resume(struct xe_gt *gt);
+int xe_gt_runtime_suspend(struct xe_gt *gt);
 void xe_gt_sanitize(struct xe_gt *gt);
 int xe_gt_sanitize_freq(struct xe_gt *gt);
 
diff --git a/drivers/gpu/drm/xe/xe_guc.c b/drivers/gpu/drm/xe/xe_guc.c
index d94490979adc..6262ca1c1d42 100644
--- a/drivers/gpu/drm/xe/xe_guc.c
+++ b/drivers/gpu/drm/xe/xe_guc.c
@@ -1599,6 +1599,40 @@ int xe_guc_start(struct xe_guc *guc)
 	return xe_guc_submit_start(guc);
 }
 
+/**
+ * xe_guc_runtime_suspend() - GuC runtime suspend
+ * @guc: The GuC object
+ *
+ * Stop further runs of submission tasks on given GuC and runtime suspend
+ * GuC CT.
+ */
+void xe_guc_runtime_suspend(struct xe_guc *guc)
+{
+	xe_guc_submit_pause(guc);
+	xe_guc_submit_disable(guc);
+	xe_guc_ct_runtime_suspend(&guc->ct);
+}
+
+/**
+ * xe_guc_runtime_resume() - GuC runtime resume
+ * @guc: The GuC object
+ *
+ * Runtime resume GuC CT and allow further runs of submission tasks on
+ * given GuC.
+ */
+void xe_guc_runtime_resume(struct xe_guc *guc)
+{
+	/*
+	 * Runtime PM flows are not applicable for VFs, so it's safe to
+	 * directly enable IRQ.
+	 */
+	guc_enable_irq(guc);
+
+	xe_guc_ct_runtime_resume(&guc->ct);
+	xe_guc_submit_enable(guc);
+	xe_guc_submit_unpause(guc);
+}
+
 void xe_guc_print_info(struct xe_guc *guc, struct drm_printer *p)
 {
 	struct xe_gt *gt = guc_to_gt(guc);
diff --git a/drivers/gpu/drm/xe/xe_guc.h b/drivers/gpu/drm/xe/xe_guc.h
index 1cca05967e62..0165e941a352 100644
--- a/drivers/gpu/drm/xe/xe_guc.h
+++ b/drivers/gpu/drm/xe/xe_guc.h
@@ -35,6 +35,8 @@ int xe_guc_upload(struct xe_guc *guc);
 int xe_guc_min_load_for_hwconfig(struct xe_guc *guc);
 int xe_guc_enable_communication(struct xe_guc *guc);
 int xe_guc_opt_in_features_enable(struct xe_guc *guc);
+void xe_guc_runtime_suspend(struct xe_guc *guc);
+void xe_guc_runtime_resume(struct xe_guc *guc);
 int xe_guc_suspend(struct xe_guc *guc);
 void xe_guc_notify(struct xe_guc *guc);
 int xe_guc_auth_huc(struct xe_guc *guc, u32 rsa_addr);
diff --git a/drivers/gpu/drm/xe/xe_guc_ct.c b/drivers/gpu/drm/xe/xe_guc_ct.c
index 3ae1e8db143a..2232e872dbd6 100644
--- a/drivers/gpu/drm/xe/xe_guc_ct.c
+++ b/drivers/gpu/drm/xe/xe_guc_ct.c
@@ -634,6 +634,33 @@ void xe_guc_ct_stop(struct xe_guc_ct *ct)
 	stop_g2h_handler(ct);
 }
 
+/**
+ * xe_guc_ct_runtime_suspend() - GuC CT runtime suspend
+ * @ct: the &xe_guc_ct
+ *
+ * Set GuC CT to disabled state.
+ */
+void xe_guc_ct_runtime_suspend(struct xe_guc_ct *ct)
+{
+	/*
+	 * Since we're already in runtime suspend path, we shouldn't have pending
+	 * messages. But if there happen to be any, we'd probably want them to be
+	 * thrown as errors for further investigation.
+	 */
+	xe_guc_ct_disable(ct);
+}
+
+/**
+ * xe_guc_ct_runtime_resume() - GuC CT runtime resume
+ * @ct: the &xe_guc_ct
+ *
+ * Restart GuC CT and set it to enabled state.
+ */
+void xe_guc_ct_runtime_resume(struct xe_guc_ct *ct)
+{
+	xe_guc_ct_restart(ct);
+}
+
 static bool h2g_has_room(struct xe_guc_ct *ct, u32 cmd_len)
 {
 	struct guc_ctb *h2g = &ct->ctbs.h2g;
diff --git a/drivers/gpu/drm/xe/xe_guc_ct.h b/drivers/gpu/drm/xe/xe_guc_ct.h
index ca1ce2b3c354..5599939f8fe1 100644
--- a/drivers/gpu/drm/xe/xe_guc_ct.h
+++ b/drivers/gpu/drm/xe/xe_guc_ct.h
@@ -17,6 +17,8 @@ int xe_guc_ct_init_post_hwconfig(struct xe_guc_ct *ct);
 int xe_guc_ct_enable(struct xe_guc_ct *ct);
 int xe_guc_ct_restart(struct xe_guc_ct *ct);
 void xe_guc_ct_disable(struct xe_guc_ct *ct);
+void xe_guc_ct_runtime_resume(struct xe_guc_ct *ct);
+void xe_guc_ct_runtime_suspend(struct xe_guc_ct *ct);
 void xe_guc_ct_stop(struct xe_guc_ct *ct);
 void xe_guc_ct_flush_and_stop(struct xe_guc_ct *ct);
 void xe_guc_ct_fast_path(struct xe_guc_ct *ct);
diff --git a/drivers/gpu/drm/xe/xe_pm.c b/drivers/gpu/drm/xe/xe_pm.c
index 53507e09f7bc..403a61e98ad8 100644
--- a/drivers/gpu/drm/xe/xe_pm.c
+++ b/drivers/gpu/drm/xe/xe_pm.c
@@ -591,7 +591,7 @@ int xe_pm_runtime_suspend(struct xe_device *xe)
 	}
 
 	for_each_gt(gt, xe, id) {
-		err = xe_gt_suspend(gt);
+		err = xe->d3cold.allowed ? xe_gt_suspend(gt) : xe_gt_runtime_suspend(gt);
 		if (err)
 			goto out_resume;
 	}
@@ -633,10 +633,10 @@ int xe_pm_runtime_resume(struct xe_device *xe)
 
 	xe_rpm_lockmap_acquire(xe);
 
-	for_each_gt(gt, xe, id)
-		xe_gt_idle_disable_c6(gt);
-
 	if (xe->d3cold.allowed) {
+		for_each_gt(gt, xe, id)
+			xe_gt_idle_disable_c6(gt);
+
 		err = xe_pcode_ready(xe, true);
 		if (err)
 			goto out;
@@ -657,7 +657,7 @@ int xe_pm_runtime_resume(struct xe_device *xe)
 	xe_irq_resume(xe);
 
 	for_each_gt(gt, xe, id)
-		xe_gt_resume(gt);
+		xe->d3cold.allowed ? xe_gt_resume(gt) : xe_gt_runtime_resume(gt);
 
 	xe_display_pm_runtime_resume(xe);
 
diff --git a/drivers/gpu/drm/xe/xe_uc.c b/drivers/gpu/drm/xe/xe_uc.c
index 465bda355443..6a58b33248f5 100644
--- a/drivers/gpu/drm/xe/xe_uc.c
+++ b/drivers/gpu/drm/xe/xe_uc.c
@@ -301,6 +301,34 @@ int xe_uc_suspend(struct xe_uc *uc)
 	return xe_guc_suspend(&uc->guc);
 }
 
+/**
+ * xe_uc_runtime_suspend() - UC runtime suspend
+ * @uc: the UC object
+ *
+ * Runtime suspend all UCs.
+ */
+void xe_uc_runtime_suspend(struct xe_uc *uc)
+{
+	if (!xe_device_uc_enabled(uc_to_xe(uc)))
+		return;
+
+	xe_guc_runtime_suspend(&uc->guc);
+}
+
+/**
+ * xe_uc_runtime_resume() - UC runtime resume
+ * @uc: the UC object
+ *
+ * Runtime resume all UCs.
+ */
+void xe_uc_runtime_resume(struct xe_uc *uc)
+{
+	if (!xe_device_uc_enabled(uc_to_xe(uc)))
+		return;
+
+	xe_guc_runtime_resume(&uc->guc);
+}
+
 /**
  * xe_uc_declare_wedged() - Declare UC wedged
  * @uc: the UC object
diff --git a/drivers/gpu/drm/xe/xe_uc.h b/drivers/gpu/drm/xe/xe_uc.h
index 21c9306098cf..5398da1a8097 100644
--- a/drivers/gpu/drm/xe/xe_uc.h
+++ b/drivers/gpu/drm/xe/xe_uc.h
@@ -14,6 +14,8 @@ int xe_uc_init_post_hwconfig(struct xe_uc *uc);
 int xe_uc_load_hw(struct xe_uc *uc);
 void xe_uc_gucrc_disable(struct xe_uc *uc);
 int xe_uc_reset_prepare(struct xe_uc *uc);
+void xe_uc_runtime_resume(struct xe_uc *uc);
+void xe_uc_runtime_suspend(struct xe_uc *uc);
 void xe_uc_stop_prepare(struct xe_uc *uc);
 void xe_uc_stop(struct xe_uc *uc);
 int xe_uc_start(struct xe_uc *uc);
-- 
2.34.1


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

* ✓ CI.KUnit: success for Introduce GT runtime suspend/resume (rev2)
  2025-10-14  7:30 [PATCH v5 0/2] Introduce GT runtime suspend/resume Raag Jadav
  2025-10-14  7:30 ` [PATCH v5 1/2] drm/xe/guc: Make xe_guc_submit_pause() available for non-VF cases Raag Jadav
  2025-10-14  7:30 ` [PATCH v5 2/2] drm/xe/gt: Introduce runtime suspend/resume Raag Jadav
@ 2025-10-14  7:42 ` Patchwork
  2025-10-14  8:19 ` ✓ Xe.CI.BAT: " Patchwork
                   ` (5 subsequent siblings)
  8 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2025-10-14  7:42 UTC (permalink / raw)
  To: Raag Jadav; +Cc: intel-xe

== Series Details ==

Series: Introduce GT runtime suspend/resume (rev2)
URL   : https://patchwork.freedesktop.org/series/154017/
State : success

== Summary ==

+ trap cleanup EXIT
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/xe/.kunitconfig
[07:40:58] Configuring KUnit Kernel ...
Generating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[07:41:02] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[07:41:33] Starting KUnit Kernel (1/1)...
[07:41:33] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[07:41:34] ================== guc_buf (11 subtests) ===================
[07:41:34] [PASSED] test_smallest
[07:41:34] [PASSED] test_largest
[07:41:34] [PASSED] test_granular
[07:41:34] [PASSED] test_unique
[07:41:34] [PASSED] test_overlap
[07:41:34] [PASSED] test_reusable
[07:41:34] [PASSED] test_too_big
[07:41:34] [PASSED] test_flush
[07:41:34] [PASSED] test_lookup
[07:41:34] [PASSED] test_data
[07:41:34] [PASSED] test_class
[07:41:34] ===================== [PASSED] guc_buf =====================
[07:41:34] =================== guc_dbm (7 subtests) ===================
[07:41:34] [PASSED] test_empty
[07:41:34] [PASSED] test_default
[07:41:34] ======================== test_size  ========================
[07:41:34] [PASSED] 4
[07:41:34] [PASSED] 8
[07:41:34] [PASSED] 32
[07:41:34] [PASSED] 256
[07:41:34] ==================== [PASSED] test_size ====================
[07:41:34] ======================= test_reuse  ========================
[07:41:34] [PASSED] 4
[07:41:34] [PASSED] 8
[07:41:34] [PASSED] 32
[07:41:34] [PASSED] 256
[07:41:34] =================== [PASSED] test_reuse ====================
[07:41:34] =================== test_range_overlap  ====================
[07:41:34] [PASSED] 4
[07:41:34] [PASSED] 8
[07:41:34] [PASSED] 32
[07:41:34] [PASSED] 256
[07:41:34] =============== [PASSED] test_range_overlap ================
[07:41:34] =================== test_range_compact  ====================
[07:41:34] [PASSED] 4
[07:41:34] [PASSED] 8
[07:41:34] [PASSED] 32
[07:41:34] [PASSED] 256
[07:41:34] =============== [PASSED] test_range_compact ================
[07:41:34] ==================== test_range_spare  =====================
[07:41:34] [PASSED] 4
[07:41:34] [PASSED] 8
[07:41:34] [PASSED] 32
[07:41:34] [PASSED] 256
[07:41:34] ================ [PASSED] test_range_spare =================
[07:41:34] ===================== [PASSED] guc_dbm =====================
[07:41:34] =================== guc_idm (6 subtests) ===================
[07:41:34] [PASSED] bad_init
[07:41:34] [PASSED] no_init
[07:41:34] [PASSED] init_fini
[07:41:34] [PASSED] check_used
[07:41:34] [PASSED] check_quota
[07:41:34] [PASSED] check_all
[07:41:34] ===================== [PASSED] guc_idm =====================
[07:41:34] ================== no_relay (3 subtests) ===================
[07:41:34] [PASSED] xe_drops_guc2pf_if_not_ready
[07:41:34] [PASSED] xe_drops_guc2vf_if_not_ready
[07:41:34] [PASSED] xe_rejects_send_if_not_ready
[07:41:34] ==================== [PASSED] no_relay =====================
[07:41:34] ================== pf_relay (14 subtests) ==================
[07:41:34] [PASSED] pf_rejects_guc2pf_too_short
[07:41:34] [PASSED] pf_rejects_guc2pf_too_long
[07:41:34] [PASSED] pf_rejects_guc2pf_no_payload
[07:41:34] [PASSED] pf_fails_no_payload
[07:41:34] [PASSED] pf_fails_bad_origin
[07:41:34] [PASSED] pf_fails_bad_type
[07:41:34] [PASSED] pf_txn_reports_error
[07:41:34] [PASSED] pf_txn_sends_pf2guc
[07:41:34] [PASSED] pf_sends_pf2guc
[07:41:34] [SKIPPED] pf_loopback_nop
[07:41:34] [SKIPPED] pf_loopback_echo
[07:41:34] [SKIPPED] pf_loopback_fail
[07:41:34] [SKIPPED] pf_loopback_busy
[07:41:34] [SKIPPED] pf_loopback_retry
[07:41:34] ==================== [PASSED] pf_relay =====================
[07:41:34] ================== vf_relay (3 subtests) ===================
[07:41:34] [PASSED] vf_rejects_guc2vf_too_short
[07:41:34] [PASSED] vf_rejects_guc2vf_too_long
[07:41:34] [PASSED] vf_rejects_guc2vf_no_payload
[07:41:34] ==================== [PASSED] vf_relay =====================
[07:41:34] ===================== lmtt (1 subtest) =====================
[07:41:34] ======================== test_ops  =========================
[07:41:34] [PASSED] 2-level
[07:41:34] [PASSED] multi-level
[07:41:34] ==================== [PASSED] test_ops =====================
[07:41:34] ====================== [PASSED] lmtt =======================
[07:41:34] ================= pf_service (11 subtests) =================
[07:41:34] [PASSED] pf_negotiate_any
[07:41:34] [PASSED] pf_negotiate_base_match
[07:41:34] [PASSED] pf_negotiate_base_newer
[07:41:34] [PASSED] pf_negotiate_base_next
[07:41:34] [SKIPPED] pf_negotiate_base_older
[07:41:34] [PASSED] pf_negotiate_base_prev
[07:41:34] [PASSED] pf_negotiate_latest_match
[07:41:34] [PASSED] pf_negotiate_latest_newer
[07:41:34] [PASSED] pf_negotiate_latest_next
[07:41:34] [SKIPPED] pf_negotiate_latest_older
[07:41:34] [SKIPPED] pf_negotiate_latest_prev
[07:41:34] =================== [PASSED] pf_service ====================
[07:41:34] ================= xe_guc_g2g (2 subtests) ==================
[07:41:34] ============== xe_live_guc_g2g_kunit_default  ==============
[07:41:34] ========= [SKIPPED] xe_live_guc_g2g_kunit_default ==========
[07:41:34] ============== xe_live_guc_g2g_kunit_allmem  ===============
[07:41:34] ========== [SKIPPED] xe_live_guc_g2g_kunit_allmem ==========
[07:41:34] =================== [SKIPPED] xe_guc_g2g ===================
[07:41:34] =================== xe_mocs (2 subtests) ===================
[07:41:34] ================ xe_live_mocs_kernel_kunit  ================
[07:41:34] =========== [SKIPPED] xe_live_mocs_kernel_kunit ============
[07:41:34] ================ xe_live_mocs_reset_kunit  =================
[07:41:34] ============ [SKIPPED] xe_live_mocs_reset_kunit ============
[07:41:34] ==================== [SKIPPED] xe_mocs =====================
[07:41:34] ================= xe_migrate (2 subtests) ==================
[07:41:34] ================= xe_migrate_sanity_kunit  =================
[07:41:34] ============ [SKIPPED] xe_migrate_sanity_kunit =============
[07:41:34] ================== xe_validate_ccs_kunit  ==================
[07:41:34] ============= [SKIPPED] xe_validate_ccs_kunit ==============
[07:41:34] =================== [SKIPPED] xe_migrate ===================
[07:41:34] ================== xe_dma_buf (1 subtest) ==================
[07:41:34] ==================== xe_dma_buf_kunit  =====================
[07:41:34] ================ [SKIPPED] xe_dma_buf_kunit ================
[07:41:34] =================== [SKIPPED] xe_dma_buf ===================
[07:41:34] ================= xe_bo_shrink (1 subtest) =================
[07:41:34] =================== xe_bo_shrink_kunit  ====================
[07:41:34] =============== [SKIPPED] xe_bo_shrink_kunit ===============
[07:41:34] ================== [SKIPPED] xe_bo_shrink ==================
[07:41:34] ==================== xe_bo (2 subtests) ====================
[07:41:34] ================== xe_ccs_migrate_kunit  ===================
[07:41:34] ============== [SKIPPED] xe_ccs_migrate_kunit ==============
[07:41:34] ==================== xe_bo_evict_kunit  ====================
[07:41:34] =============== [SKIPPED] xe_bo_evict_kunit ================
[07:41:34] ===================== [SKIPPED] xe_bo ======================
[07:41:34] ==================== args (11 subtests) ====================
[07:41:34] [PASSED] count_args_test
[07:41:34] [PASSED] call_args_example
[07:41:34] [PASSED] call_args_test
[07:41:34] [PASSED] drop_first_arg_example
[07:41:34] [PASSED] drop_first_arg_test
[07:41:34] [PASSED] first_arg_example
[07:41:34] [PASSED] first_arg_test
[07:41:34] [PASSED] last_arg_example
[07:41:34] [PASSED] last_arg_test
[07:41:34] [PASSED] pick_arg_example
[07:41:34] [PASSED] sep_comma_example
[07:41:34] ====================== [PASSED] args =======================
[07:41:34] =================== xe_pci (3 subtests) ====================
[07:41:34] ==================== check_graphics_ip  ====================
[07:41:34] [PASSED] 12.00 Xe_LP
[07:41:34] [PASSED] 12.10 Xe_LP+
[07:41:34] [PASSED] 12.55 Xe_HPG
[07:41:34] [PASSED] 12.60 Xe_HPC
[07:41:34] [PASSED] 12.70 Xe_LPG
[07:41:34] [PASSED] 12.71 Xe_LPG
[07:41:34] [PASSED] 12.74 Xe_LPG+
[07:41:34] [PASSED] 20.01 Xe2_HPG
[07:41:34] [PASSED] 20.02 Xe2_HPG
[07:41:34] [PASSED] 20.04 Xe2_LPG
[07:41:34] [PASSED] 30.00 Xe3_LPG
[07:41:34] [PASSED] 30.01 Xe3_LPG
[07:41:34] [PASSED] 30.03 Xe3_LPG
[07:41:34] ================ [PASSED] check_graphics_ip ================
[07:41:34] ===================== check_media_ip  ======================
[07:41:34] [PASSED] 12.00 Xe_M
[07:41:34] [PASSED] 12.55 Xe_HPM
[07:41:34] [PASSED] 13.00 Xe_LPM+
[07:41:34] [PASSED] 13.01 Xe2_HPM
[07:41:34] [PASSED] 20.00 Xe2_LPM
[07:41:34] [PASSED] 30.00 Xe3_LPM
[07:41:34] [PASSED] 30.02 Xe3_LPM
[07:41:34] ================= [PASSED] check_media_ip ==================
[07:41:34] ================= check_platform_gt_count  =================
[07:41:34] [PASSED] 0x9A60 (TIGERLAKE)
[07:41:34] [PASSED] 0x9A68 (TIGERLAKE)
[07:41:34] [PASSED] 0x9A70 (TIGERLAKE)
[07:41:34] [PASSED] 0x9A40 (TIGERLAKE)
[07:41:34] [PASSED] 0x9A49 (TIGERLAKE)
[07:41:34] [PASSED] 0x9A59 (TIGERLAKE)
[07:41:34] [PASSED] 0x9A78 (TIGERLAKE)
[07:41:34] [PASSED] 0x9AC0 (TIGERLAKE)
[07:41:34] [PASSED] 0x9AC9 (TIGERLAKE)
[07:41:34] [PASSED] 0x9AD9 (TIGERLAKE)
[07:41:34] [PASSED] 0x9AF8 (TIGERLAKE)
[07:41:34] [PASSED] 0x4C80 (ROCKETLAKE)
[07:41:34] [PASSED] 0x4C8A (ROCKETLAKE)
[07:41:34] [PASSED] 0x4C8B (ROCKETLAKE)
[07:41:34] [PASSED] 0x4C8C (ROCKETLAKE)
[07:41:34] [PASSED] 0x4C90 (ROCKETLAKE)
[07:41:34] [PASSED] 0x4C9A (ROCKETLAKE)
[07:41:34] [PASSED] 0x4680 (ALDERLAKE_S)
[07:41:34] [PASSED] 0x4682 (ALDERLAKE_S)
[07:41:34] [PASSED] 0x4688 (ALDERLAKE_S)
[07:41:34] [PASSED] 0x468A (ALDERLAKE_S)
[07:41:34] [PASSED] 0x468B (ALDERLAKE_S)
[07:41:34] [PASSED] 0x4690 (ALDERLAKE_S)
[07:41:34] [PASSED] 0x4692 (ALDERLAKE_S)
[07:41:34] [PASSED] 0x4693 (ALDERLAKE_S)
[07:41:34] [PASSED] 0x46A0 (ALDERLAKE_P)
[07:41:34] [PASSED] 0x46A1 (ALDERLAKE_P)
[07:41:34] [PASSED] 0x46A2 (ALDERLAKE_P)
[07:41:34] [PASSED] 0x46A3 (ALDERLAKE_P)
[07:41:34] [PASSED] 0x46A6 (ALDERLAKE_P)
[07:41:34] [PASSED] 0x46A8 (ALDERLAKE_P)
[07:41:34] [PASSED] 0x46AA (ALDERLAKE_P)
[07:41:34] [PASSED] 0x462A (ALDERLAKE_P)
[07:41:34] [PASSED] 0x4626 (ALDERLAKE_P)
[07:41:34] [PASSED] 0x4628 (ALDERLAKE_P)
[07:41:34] [PASSED] 0x46B0 (ALDERLAKE_P)
[07:41:34] [PASSED] 0x46B1 (ALDERLAKE_P)
[07:41:34] [PASSED] 0x46B2 (ALDERLAKE_P)
[07:41:34] [PASSED] 0x46B3 (ALDERLAKE_P)
[07:41:34] [PASSED] 0x46C0 (ALDERLAKE_P)
[07:41:34] [PASSED] 0x46C1 (ALDERLAKE_P)
[07:41:34] [PASSED] 0x46C2 (ALDERLAKE_P)
[07:41:34] [PASSED] 0x46C3 (ALDERLAKE_P)
[07:41:34] [PASSED] 0x46D0 (ALDERLAKE_N)
[07:41:34] [PASSED] 0x46D1 (ALDERLAKE_N)
[07:41:34] [PASSED] 0x46D2 (ALDERLAKE_N)
[07:41:34] [PASSED] 0x46D3 (ALDERLAKE_N)
[07:41:34] [PASSED] 0x46D4 (ALDERLAKE_N)
[07:41:34] [PASSED] 0xA721 (ALDERLAKE_P)
[07:41:34] [PASSED] 0xA7A1 (ALDERLAKE_P)
[07:41:34] [PASSED] 0xA7A9 (ALDERLAKE_P)
[07:41:34] [PASSED] 0xA7AC (ALDERLAKE_P)
[07:41:34] [PASSED] 0xA7AD (ALDERLAKE_P)
[07:41:34] [PASSED] 0xA720 (ALDERLAKE_P)
[07:41:34] [PASSED] 0xA7A0 (ALDERLAKE_P)
[07:41:34] [PASSED] 0xA7A8 (ALDERLAKE_P)
[07:41:34] [PASSED] 0xA7AA (ALDERLAKE_P)
[07:41:34] [PASSED] 0xA7AB (ALDERLAKE_P)
[07:41:34] [PASSED] 0xA780 (ALDERLAKE_S)
[07:41:34] [PASSED] 0xA781 (ALDERLAKE_S)
[07:41:34] [PASSED] 0xA782 (ALDERLAKE_S)
[07:41:34] [PASSED] 0xA783 (ALDERLAKE_S)
[07:41:34] [PASSED] 0xA788 (ALDERLAKE_S)
[07:41:34] [PASSED] 0xA789 (ALDERLAKE_S)
[07:41:34] [PASSED] 0xA78A (ALDERLAKE_S)
[07:41:34] [PASSED] 0xA78B (ALDERLAKE_S)
[07:41:34] [PASSED] 0x4905 (DG1)
[07:41:34] [PASSED] 0x4906 (DG1)
[07:41:34] [PASSED] 0x4907 (DG1)
[07:41:34] [PASSED] 0x4908 (DG1)
[07:41:34] [PASSED] 0x4909 (DG1)
[07:41:34] [PASSED] 0x56C0 (DG2)
[07:41:34] [PASSED] 0x56C2 (DG2)
[07:41:34] [PASSED] 0x56C1 (DG2)
[07:41:34] [PASSED] 0x7D51 (METEORLAKE)
[07:41:34] [PASSED] 0x7DD1 (METEORLAKE)
[07:41:34] [PASSED] 0x7D41 (METEORLAKE)
[07:41:34] [PASSED] 0x7D67 (METEORLAKE)
[07:41:34] [PASSED] 0xB640 (METEORLAKE)
[07:41:34] [PASSED] 0x56A0 (DG2)
[07:41:34] [PASSED] 0x56A1 (DG2)
[07:41:34] [PASSED] 0x56A2 (DG2)
[07:41:34] [PASSED] 0x56BE (DG2)
[07:41:34] [PASSED] 0x56BF (DG2)
[07:41:34] [PASSED] 0x5690 (DG2)
[07:41:34] [PASSED] 0x5691 (DG2)
[07:41:34] [PASSED] 0x5692 (DG2)
[07:41:34] [PASSED] 0x56A5 (DG2)
[07:41:34] [PASSED] 0x56A6 (DG2)
[07:41:34] [PASSED] 0x56B0 (DG2)
[07:41:34] [PASSED] 0x56B1 (DG2)
[07:41:34] [PASSED] 0x56BA (DG2)
[07:41:34] [PASSED] 0x56BB (DG2)
[07:41:34] [PASSED] 0x56BC (DG2)
[07:41:34] [PASSED] 0x56BD (DG2)
[07:41:34] [PASSED] 0x5693 (DG2)
[07:41:34] [PASSED] 0x5694 (DG2)
[07:41:34] [PASSED] 0x5695 (DG2)
[07:41:34] [PASSED] 0x56A3 (DG2)
[07:41:34] [PASSED] 0x56A4 (DG2)
[07:41:34] [PASSED] 0x56B2 (DG2)
[07:41:34] [PASSED] 0x56B3 (DG2)
[07:41:34] [PASSED] 0x5696 (DG2)
[07:41:34] [PASSED] 0x5697 (DG2)
[07:41:34] [PASSED] 0xB69 (PVC)
[07:41:34] [PASSED] 0xB6E (PVC)
[07:41:34] [PASSED] 0xBD4 (PVC)
[07:41:34] [PASSED] 0xBD5 (PVC)
[07:41:34] [PASSED] 0xBD6 (PVC)
[07:41:34] [PASSED] 0xBD7 (PVC)
[07:41:34] [PASSED] 0xBD8 (PVC)
[07:41:34] [PASSED] 0xBD9 (PVC)
[07:41:34] [PASSED] 0xBDA (PVC)
[07:41:34] [PASSED] 0xBDB (PVC)
[07:41:34] [PASSED] 0xBE0 (PVC)
[07:41:34] [PASSED] 0xBE1 (PVC)
[07:41:34] [PASSED] 0xBE5 (PVC)
[07:41:34] [PASSED] 0x7D40 (METEORLAKE)
[07:41:34] [PASSED] 0x7D45 (METEORLAKE)
[07:41:34] [PASSED] 0x7D55 (METEORLAKE)
[07:41:34] [PASSED] 0x7D60 (METEORLAKE)
[07:41:34] [PASSED] 0x7DD5 (METEORLAKE)
[07:41:34] [PASSED] 0x6420 (LUNARLAKE)
[07:41:34] [PASSED] 0x64A0 (LUNARLAKE)
[07:41:34] [PASSED] 0x64B0 (LUNARLAKE)
[07:41:34] [PASSED] 0xE202 (BATTLEMAGE)
[07:41:34] [PASSED] 0xE209 (BATTLEMAGE)
[07:41:34] [PASSED] 0xE20B (BATTLEMAGE)
[07:41:34] [PASSED] 0xE20C (BATTLEMAGE)
[07:41:34] [PASSED] 0xE20D (BATTLEMAGE)
[07:41:34] [PASSED] 0xE210 (BATTLEMAGE)
[07:41:34] [PASSED] 0xE211 (BATTLEMAGE)
[07:41:34] [PASSED] 0xE212 (BATTLEMAGE)
[07:41:34] [PASSED] 0xE216 (BATTLEMAGE)
[07:41:34] [PASSED] 0xE220 (BATTLEMAGE)
[07:41:34] [PASSED] 0xE221 (BATTLEMAGE)
[07:41:34] [PASSED] 0xE222 (BATTLEMAGE)
[07:41:34] [PASSED] 0xE223 (BATTLEMAGE)
[07:41:34] [PASSED] 0xB080 (PANTHERLAKE)
[07:41:34] [PASSED] 0xB081 (PANTHERLAKE)
[07:41:34] [PASSED] 0xB082 (PANTHERLAKE)
[07:41:34] [PASSED] 0xB083 (PANTHERLAKE)
[07:41:34] [PASSED] 0xB084 (PANTHERLAKE)
[07:41:34] [PASSED] 0xB085 (PANTHERLAKE)
[07:41:34] [PASSED] 0xB086 (PANTHERLAKE)
[07:41:34] [PASSED] 0xB087 (PANTHERLAKE)
[07:41:34] [PASSED] 0xB08F (PANTHERLAKE)
[07:41:34] [PASSED] 0xB090 (PANTHERLAKE)
[07:41:34] [PASSED] 0xB0A0 (PANTHERLAKE)
[07:41:34] [PASSED] 0xB0B0 (PANTHERLAKE)
[07:41:34] [PASSED] 0xFD80 (PANTHERLAKE)
[07:41:34] [PASSED] 0xFD81 (PANTHERLAKE)
[07:41:34] ============= [PASSED] check_platform_gt_count =============
[07:41:34] ===================== [PASSED] xe_pci ======================
[07:41:34] =================== xe_rtp (2 subtests) ====================
[07:41:34] =============== xe_rtp_process_to_sr_tests  ================
[07:41:34] [PASSED] coalesce-same-reg
[07:41:34] [PASSED] no-match-no-add
[07:41:34] [PASSED] match-or
[07:41:34] [PASSED] match-or-xfail
[07:41:34] [PASSED] no-match-no-add-multiple-rules
[07:41:34] [PASSED] two-regs-two-entries
[07:41:34] [PASSED] clr-one-set-other
[07:41:34] [PASSED] set-field
[07:41:34] [PASSED] conflict-duplicate
[07:41:34] [PASSED] conflict-not-disjoint
[07:41:34] [PASSED] conflict-reg-type
[07:41:34] =========== [PASSED] xe_rtp_process_to_sr_tests ============
[07:41:34] ================== xe_rtp_process_tests  ===================
[07:41:34] [PASSED] active1
[07:41:34] [PASSED] active2
[07:41:34] [PASSED] active-inactive
[07:41:34] [PASSED] inactive-active
[07:41:34] [PASSED] inactive-1st_or_active-inactive
[07:41:34] [PASSED] inactive-2nd_or_active-inactive
[07:41:34] [PASSED] inactive-last_or_active-inactive
[07:41:34] [PASSED] inactive-no_or_active-inactive
[07:41:34] ============== [PASSED] xe_rtp_process_tests ===============
[07:41:34] ===================== [PASSED] xe_rtp ======================
[07:41:34] ==================== xe_wa (1 subtest) =====================
[07:41:34] ======================== xe_wa_gt  =========================
[07:41:34] [PASSED] TIGERLAKE B0
[07:41:34] [PASSED] DG1 A0
[07:41:34] [PASSED] DG1 B0
[07:41:34] [PASSED] ALDERLAKE_S A0
[07:41:34] [PASSED] ALDERLAKE_S B0
stty: 'standard input': Inappropriate ioctl for device
[07:41:34] [PASSED] ALDERLAKE_S C0
[07:41:34] [PASSED] ALDERLAKE_S D0
[07:41:34] [PASSED] ALDERLAKE_P A0
[07:41:34] [PASSED] ALDERLAKE_P B0
[07:41:34] [PASSED] ALDERLAKE_P C0
[07:41:34] [PASSED] ALDERLAKE_S RPLS D0
[07:41:34] [PASSED] ALDERLAKE_P RPLU E0
[07:41:34] [PASSED] DG2 G10 C0
[07:41:34] [PASSED] DG2 G11 B1
[07:41:34] [PASSED] DG2 G12 A1
[07:41:34] [PASSED] METEORLAKE 12.70(Xe_LPG) A0 13.00(Xe_LPM+) A0
[07:41:34] [PASSED] METEORLAKE 12.71(Xe_LPG) A0 13.00(Xe_LPM+) A0
[07:41:34] [PASSED] METEORLAKE 12.74(Xe_LPG+) A0 13.00(Xe_LPM+) A0
[07:41:34] [PASSED] LUNARLAKE 20.04(Xe2_LPG) A0 20.00(Xe2_LPM) A0
[07:41:34] [PASSED] LUNARLAKE 20.04(Xe2_LPG) B0 20.00(Xe2_LPM) A0
[07:41:34] [PASSED] BATTLEMAGE 20.01(Xe2_HPG) A0 13.01(Xe2_HPM) A1
[07:41:34] [PASSED] PANTHERLAKE 30.00(Xe3_LPG) A0 30.00(Xe3_LPM) A0
[07:41:34] ==================== [PASSED] xe_wa_gt =====================
[07:41:34] ====================== [PASSED] xe_wa ======================
[07:41:34] ============================================================
[07:41:34] Testing complete. Ran 306 tests: passed: 288, skipped: 18
[07:41:34] Elapsed time: 35.793s total, 4.217s configuring, 31.210s building, 0.323s running

+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/tests/.kunitconfig
[07:41:34] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[07:41:35] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[07:42:04] Starting KUnit Kernel (1/1)...
[07:42:04] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[07:42:04] ============ drm_test_pick_cmdline (2 subtests) ============
[07:42:04] [PASSED] drm_test_pick_cmdline_res_1920_1080_60
[07:42:04] =============== drm_test_pick_cmdline_named  ===============
[07:42:04] [PASSED] NTSC
[07:42:04] [PASSED] NTSC-J
[07:42:04] [PASSED] PAL
[07:42:04] [PASSED] PAL-M
[07:42:04] =========== [PASSED] drm_test_pick_cmdline_named ===========
[07:42:04] ============== [PASSED] drm_test_pick_cmdline ==============
[07:42:04] == drm_test_atomic_get_connector_for_encoder (1 subtest) ===
[07:42:04] [PASSED] drm_test_drm_atomic_get_connector_for_encoder
[07:42:04] ==== [PASSED] drm_test_atomic_get_connector_for_encoder ====
[07:42:04] =========== drm_validate_clone_mode (2 subtests) ===========
[07:42:04] ============== drm_test_check_in_clone_mode  ===============
[07:42:04] [PASSED] in_clone_mode
[07:42:04] [PASSED] not_in_clone_mode
[07:42:04] ========== [PASSED] drm_test_check_in_clone_mode ===========
[07:42:04] =============== drm_test_check_valid_clones  ===============
[07:42:04] [PASSED] not_in_clone_mode
[07:42:04] [PASSED] valid_clone
[07:42:04] [PASSED] invalid_clone
[07:42:04] =========== [PASSED] drm_test_check_valid_clones ===========
[07:42:04] ============= [PASSED] drm_validate_clone_mode =============
[07:42:04] ============= drm_validate_modeset (1 subtest) =============
[07:42:04] [PASSED] drm_test_check_connector_changed_modeset
[07:42:04] ============== [PASSED] drm_validate_modeset ===============
[07:42:04] ====== drm_test_bridge_get_current_state (2 subtests) ======
[07:42:04] [PASSED] drm_test_drm_bridge_get_current_state_atomic
[07:42:04] [PASSED] drm_test_drm_bridge_get_current_state_legacy
[07:42:04] ======== [PASSED] drm_test_bridge_get_current_state ========
[07:42:04] ====== drm_test_bridge_helper_reset_crtc (3 subtests) ======
[07:42:04] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic
[07:42:04] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic_disabled
[07:42:04] [PASSED] drm_test_drm_bridge_helper_reset_crtc_legacy
[07:42:04] ======== [PASSED] drm_test_bridge_helper_reset_crtc ========
[07:42:04] ============== drm_bridge_alloc (2 subtests) ===============
[07:42:04] [PASSED] drm_test_drm_bridge_alloc_basic
[07:42:04] [PASSED] drm_test_drm_bridge_alloc_get_put
[07:42:04] ================ [PASSED] drm_bridge_alloc =================
[07:42:04] ================== drm_buddy (8 subtests) ==================
[07:42:04] [PASSED] drm_test_buddy_alloc_limit
[07:42:04] [PASSED] drm_test_buddy_alloc_optimistic
[07:42:04] [PASSED] drm_test_buddy_alloc_pessimistic
[07:42:04] [PASSED] drm_test_buddy_alloc_pathological
[07:42:04] [PASSED] drm_test_buddy_alloc_contiguous
[07:42:04] [PASSED] drm_test_buddy_alloc_clear
[07:42:04] [PASSED] drm_test_buddy_alloc_range_bias
[07:42:04] [PASSED] drm_test_buddy_fragmentation_performance
[07:42:04] ==================== [PASSED] drm_buddy ====================
[07:42:04] ============= drm_cmdline_parser (40 subtests) =============
[07:42:04] [PASSED] drm_test_cmdline_force_d_only
[07:42:04] [PASSED] drm_test_cmdline_force_D_only_dvi
[07:42:04] [PASSED] drm_test_cmdline_force_D_only_hdmi
[07:42:04] [PASSED] drm_test_cmdline_force_D_only_not_digital
[07:42:04] [PASSED] drm_test_cmdline_force_e_only
[07:42:04] [PASSED] drm_test_cmdline_res
[07:42:04] [PASSED] drm_test_cmdline_res_vesa
[07:42:04] [PASSED] drm_test_cmdline_res_vesa_rblank
[07:42:04] [PASSED] drm_test_cmdline_res_rblank
[07:42:04] [PASSED] drm_test_cmdline_res_bpp
[07:42:04] [PASSED] drm_test_cmdline_res_refresh
[07:42:04] [PASSED] drm_test_cmdline_res_bpp_refresh
[07:42:04] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced
[07:42:04] [PASSED] drm_test_cmdline_res_bpp_refresh_margins
[07:42:04] [PASSED] drm_test_cmdline_res_bpp_refresh_force_off
[07:42:04] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on
[07:42:04] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_analog
[07:42:04] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_digital
[07:42:04] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced_margins_force_on
[07:42:04] [PASSED] drm_test_cmdline_res_margins_force_on
[07:42:04] [PASSED] drm_test_cmdline_res_vesa_margins
[07:42:04] [PASSED] drm_test_cmdline_name
[07:42:04] [PASSED] drm_test_cmdline_name_bpp
[07:42:04] [PASSED] drm_test_cmdline_name_option
[07:42:04] [PASSED] drm_test_cmdline_name_bpp_option
[07:42:04] [PASSED] drm_test_cmdline_rotate_0
[07:42:04] [PASSED] drm_test_cmdline_rotate_90
[07:42:04] [PASSED] drm_test_cmdline_rotate_180
[07:42:04] [PASSED] drm_test_cmdline_rotate_270
[07:42:04] [PASSED] drm_test_cmdline_hmirror
[07:42:04] [PASSED] drm_test_cmdline_vmirror
[07:42:04] [PASSED] drm_test_cmdline_margin_options
[07:42:04] [PASSED] drm_test_cmdline_multiple_options
[07:42:04] [PASSED] drm_test_cmdline_bpp_extra_and_option
[07:42:04] [PASSED] drm_test_cmdline_extra_and_option
[07:42:04] [PASSED] drm_test_cmdline_freestanding_options
[07:42:04] [PASSED] drm_test_cmdline_freestanding_force_e_and_options
[07:42:04] [PASSED] drm_test_cmdline_panel_orientation
[07:42:04] ================ drm_test_cmdline_invalid  =================
[07:42:04] [PASSED] margin_only
[07:42:04] [PASSED] interlace_only
[07:42:04] [PASSED] res_missing_x
[07:42:04] [PASSED] res_missing_y
[07:42:04] [PASSED] res_bad_y
[07:42:04] [PASSED] res_missing_y_bpp
[07:42:04] [PASSED] res_bad_bpp
[07:42:04] [PASSED] res_bad_refresh
[07:42:04] [PASSED] res_bpp_refresh_force_on_off
[07:42:04] [PASSED] res_invalid_mode
[07:42:04] [PASSED] res_bpp_wrong_place_mode
[07:42:04] [PASSED] name_bpp_refresh
[07:42:04] [PASSED] name_refresh
[07:42:04] [PASSED] name_refresh_wrong_mode
[07:42:04] [PASSED] name_refresh_invalid_mode
[07:42:04] [PASSED] rotate_multiple
[07:42:04] [PASSED] rotate_invalid_val
[07:42:04] [PASSED] rotate_truncated
[07:42:04] [PASSED] invalid_option
[07:42:04] [PASSED] invalid_tv_option
[07:42:04] [PASSED] truncated_tv_option
[07:42:04] ============ [PASSED] drm_test_cmdline_invalid =============
[07:42:04] =============== drm_test_cmdline_tv_options  ===============
[07:42:04] [PASSED] NTSC
[07:42:04] [PASSED] NTSC_443
[07:42:04] [PASSED] NTSC_J
[07:42:04] [PASSED] PAL
[07:42:04] [PASSED] PAL_M
[07:42:04] [PASSED] PAL_N
[07:42:04] [PASSED] SECAM
[07:42:04] [PASSED] MONO_525
[07:42:04] [PASSED] MONO_625
[07:42:04] =========== [PASSED] drm_test_cmdline_tv_options ===========
[07:42:04] =============== [PASSED] drm_cmdline_parser ================
[07:42:04] ========== drmm_connector_hdmi_init (20 subtests) ==========
[07:42:04] [PASSED] drm_test_connector_hdmi_init_valid
[07:42:04] [PASSED] drm_test_connector_hdmi_init_bpc_8
[07:42:04] [PASSED] drm_test_connector_hdmi_init_bpc_10
[07:42:04] [PASSED] drm_test_connector_hdmi_init_bpc_12
[07:42:04] [PASSED] drm_test_connector_hdmi_init_bpc_invalid
[07:42:04] [PASSED] drm_test_connector_hdmi_init_bpc_null
[07:42:04] [PASSED] drm_test_connector_hdmi_init_formats_empty
[07:42:04] [PASSED] drm_test_connector_hdmi_init_formats_no_rgb
[07:42:04] === drm_test_connector_hdmi_init_formats_yuv420_allowed  ===
[07:42:04] [PASSED] supported_formats=0x9 yuv420_allowed=1
[07:42:04] [PASSED] supported_formats=0x9 yuv420_allowed=0
[07:42:04] [PASSED] supported_formats=0x3 yuv420_allowed=1
[07:42:04] [PASSED] supported_formats=0x3 yuv420_allowed=0
[07:42:04] === [PASSED] drm_test_connector_hdmi_init_formats_yuv420_allowed ===
[07:42:04] [PASSED] drm_test_connector_hdmi_init_null_ddc
[07:42:04] [PASSED] drm_test_connector_hdmi_init_null_product
[07:42:04] [PASSED] drm_test_connector_hdmi_init_null_vendor
[07:42:04] [PASSED] drm_test_connector_hdmi_init_product_length_exact
[07:42:04] [PASSED] drm_test_connector_hdmi_init_product_length_too_long
[07:42:04] [PASSED] drm_test_connector_hdmi_init_product_valid
[07:42:04] [PASSED] drm_test_connector_hdmi_init_vendor_length_exact
[07:42:04] [PASSED] drm_test_connector_hdmi_init_vendor_length_too_long
[07:42:04] [PASSED] drm_test_connector_hdmi_init_vendor_valid
[07:42:04] ========= drm_test_connector_hdmi_init_type_valid  =========
[07:42:04] [PASSED] HDMI-A
[07:42:04] [PASSED] HDMI-B
[07:42:04] ===== [PASSED] drm_test_connector_hdmi_init_type_valid =====
[07:42:04] ======== drm_test_connector_hdmi_init_type_invalid  ========
[07:42:04] [PASSED] Unknown
[07:42:04] [PASSED] VGA
[07:42:04] [PASSED] DVI-I
[07:42:04] [PASSED] DVI-D
[07:42:04] [PASSED] DVI-A
[07:42:04] [PASSED] Composite
[07:42:04] [PASSED] SVIDEO
[07:42:04] [PASSED] LVDS
[07:42:04] [PASSED] Component
[07:42:04] [PASSED] DIN
[07:42:04] [PASSED] DP
[07:42:04] [PASSED] TV
[07:42:04] [PASSED] eDP
[07:42:04] [PASSED] Virtual
[07:42:04] [PASSED] DSI
[07:42:04] [PASSED] DPI
[07:42:04] [PASSED] Writeback
[07:42:04] [PASSED] SPI
[07:42:04] [PASSED] USB
[07:42:04] ==== [PASSED] drm_test_connector_hdmi_init_type_invalid ====
[07:42:04] ============ [PASSED] drmm_connector_hdmi_init =============
[07:42:04] ============= drmm_connector_init (3 subtests) =============
[07:42:04] [PASSED] drm_test_drmm_connector_init
[07:42:04] [PASSED] drm_test_drmm_connector_init_null_ddc
[07:42:04] ========= drm_test_drmm_connector_init_type_valid  =========
[07:42:04] [PASSED] Unknown
[07:42:04] [PASSED] VGA
[07:42:04] [PASSED] DVI-I
[07:42:04] [PASSED] DVI-D
[07:42:04] [PASSED] DVI-A
[07:42:04] [PASSED] Composite
[07:42:04] [PASSED] SVIDEO
[07:42:04] [PASSED] LVDS
[07:42:04] [PASSED] Component
[07:42:04] [PASSED] DIN
[07:42:04] [PASSED] DP
[07:42:04] [PASSED] HDMI-A
[07:42:04] [PASSED] HDMI-B
[07:42:04] [PASSED] TV
[07:42:04] [PASSED] eDP
[07:42:04] [PASSED] Virtual
[07:42:04] [PASSED] DSI
[07:42:04] [PASSED] DPI
[07:42:04] [PASSED] Writeback
[07:42:04] [PASSED] SPI
[07:42:04] [PASSED] USB
[07:42:04] ===== [PASSED] drm_test_drmm_connector_init_type_valid =====
[07:42:04] =============== [PASSED] drmm_connector_init ===============
[07:42:04] ========= drm_connector_dynamic_init (6 subtests) ==========
[07:42:04] [PASSED] drm_test_drm_connector_dynamic_init
[07:42:04] [PASSED] drm_test_drm_connector_dynamic_init_null_ddc
[07:42:04] [PASSED] drm_test_drm_connector_dynamic_init_not_added
[07:42:04] [PASSED] drm_test_drm_connector_dynamic_init_properties
[07:42:04] ===== drm_test_drm_connector_dynamic_init_type_valid  ======
[07:42:04] [PASSED] Unknown
[07:42:04] [PASSED] VGA
[07:42:04] [PASSED] DVI-I
[07:42:04] [PASSED] DVI-D
[07:42:04] [PASSED] DVI-A
[07:42:04] [PASSED] Composite
[07:42:04] [PASSED] SVIDEO
[07:42:04] [PASSED] LVDS
[07:42:04] [PASSED] Component
[07:42:04] [PASSED] DIN
[07:42:04] [PASSED] DP
[07:42:04] [PASSED] HDMI-A
[07:42:04] [PASSED] HDMI-B
[07:42:04] [PASSED] TV
[07:42:04] [PASSED] eDP
[07:42:04] [PASSED] Virtual
[07:42:04] [PASSED] DSI
[07:42:04] [PASSED] DPI
[07:42:04] [PASSED] Writeback
[07:42:04] [PASSED] SPI
[07:42:04] [PASSED] USB
[07:42:04] = [PASSED] drm_test_drm_connector_dynamic_init_type_valid ==
[07:42:04] ======== drm_test_drm_connector_dynamic_init_name  =========
[07:42:04] [PASSED] Unknown
[07:42:04] [PASSED] VGA
[07:42:04] [PASSED] DVI-I
[07:42:04] [PASSED] DVI-D
[07:42:04] [PASSED] DVI-A
[07:42:04] [PASSED] Composite
[07:42:04] [PASSED] SVIDEO
[07:42:04] [PASSED] LVDS
[07:42:04] [PASSED] Component
[07:42:04] [PASSED] DIN
[07:42:04] [PASSED] DP
[07:42:04] [PASSED] HDMI-A
[07:42:04] [PASSED] HDMI-B
[07:42:04] [PASSED] TV
[07:42:04] [PASSED] eDP
[07:42:04] [PASSED] Virtual
[07:42:04] [PASSED] DSI
[07:42:04] [PASSED] DPI
[07:42:04] [PASSED] Writeback
[07:42:04] [PASSED] SPI
[07:42:04] [PASSED] USB
[07:42:04] ==== [PASSED] drm_test_drm_connector_dynamic_init_name =====
[07:42:04] =========== [PASSED] drm_connector_dynamic_init ============
[07:42:04] ==== drm_connector_dynamic_register_early (4 subtests) =====
[07:42:04] [PASSED] drm_test_drm_connector_dynamic_register_early_on_list
[07:42:04] [PASSED] drm_test_drm_connector_dynamic_register_early_defer
[07:42:04] [PASSED] drm_test_drm_connector_dynamic_register_early_no_init
[07:42:04] [PASSED] drm_test_drm_connector_dynamic_register_early_no_mode_object
[07:42:04] ====== [PASSED] drm_connector_dynamic_register_early =======
[07:42:04] ======= drm_connector_dynamic_register (7 subtests) ========
[07:42:04] [PASSED] drm_test_drm_connector_dynamic_register_on_list
[07:42:04] [PASSED] drm_test_drm_connector_dynamic_register_no_defer
[07:42:04] [PASSED] drm_test_drm_connector_dynamic_register_no_init
[07:42:04] [PASSED] drm_test_drm_connector_dynamic_register_mode_object
[07:42:04] [PASSED] drm_test_drm_connector_dynamic_register_sysfs
[07:42:04] [PASSED] drm_test_drm_connector_dynamic_register_sysfs_name
[07:42:04] [PASSED] drm_test_drm_connector_dynamic_register_debugfs
[07:42:04] ========= [PASSED] drm_connector_dynamic_register ==========
[07:42:04] = drm_connector_attach_broadcast_rgb_property (2 subtests) =
[07:42:04] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property
[07:42:04] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property_hdmi_connector
[07:42:04] === [PASSED] drm_connector_attach_broadcast_rgb_property ===
[07:42:04] ========== drm_get_tv_mode_from_name (2 subtests) ==========
[07:42:04] ========== drm_test_get_tv_mode_from_name_valid  ===========
[07:42:04] [PASSED] NTSC
[07:42:04] [PASSED] NTSC-443
[07:42:04] [PASSED] NTSC-J
[07:42:04] [PASSED] PAL
[07:42:04] [PASSED] PAL-M
[07:42:04] [PASSED] PAL-N
[07:42:04] [PASSED] SECAM
[07:42:04] [PASSED] Mono
[07:42:04] ====== [PASSED] drm_test_get_tv_mode_from_name_valid =======
[07:42:04] [PASSED] drm_test_get_tv_mode_from_name_truncated
[07:42:04] ============ [PASSED] drm_get_tv_mode_from_name ============
[07:42:04] = drm_test_connector_hdmi_compute_mode_clock (12 subtests) =
[07:42:04] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb
[07:42:04] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc
[07:42:04] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc_vic_1
[07:42:04] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc
[07:42:04] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc_vic_1
[07:42:04] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_double
[07:42:04] = drm_test_connector_hdmi_compute_mode_clock_yuv420_valid  =
[07:42:04] [PASSED] VIC 96
[07:42:04] [PASSED] VIC 97
[07:42:04] [PASSED] VIC 101
[07:42:04] [PASSED] VIC 102
[07:42:04] [PASSED] VIC 106
[07:42:04] [PASSED] VIC 107
[07:42:04] === [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_valid ===
[07:42:04] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_10_bpc
[07:42:04] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_12_bpc
[07:42:04] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_8_bpc
[07:42:04] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_10_bpc
[07:42:04] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_12_bpc
[07:42:04] === [PASSED] drm_test_connector_hdmi_compute_mode_clock ====
[07:42:04] == drm_hdmi_connector_get_broadcast_rgb_name (2 subtests) ==
[07:42:04] === drm_test_drm_hdmi_connector_get_broadcast_rgb_name  ====
[07:42:04] [PASSED] Automatic
[07:42:04] [PASSED] Full
[07:42:04] [PASSED] Limited 16:235
[07:42:04] === [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name ===
[07:42:04] [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name_invalid
[07:42:04] ==== [PASSED] drm_hdmi_connector_get_broadcast_rgb_name ====
[07:42:04] == drm_hdmi_connector_get_output_format_name (2 subtests) ==
[07:42:04] === drm_test_drm_hdmi_connector_get_output_format_name  ====
[07:42:04] [PASSED] RGB
[07:42:04] [PASSED] YUV 4:2:0
[07:42:04] [PASSED] YUV 4:2:2
[07:42:04] [PASSED] YUV 4:4:4
[07:42:04] === [PASSED] drm_test_drm_hdmi_connector_get_output_format_name ===
[07:42:04] [PASSED] drm_test_drm_hdmi_connector_get_output_format_name_invalid
[07:42:04] ==== [PASSED] drm_hdmi_connector_get_output_format_name ====
[07:42:04] ============= drm_damage_helper (21 subtests) ==============
[07:42:04] [PASSED] drm_test_damage_iter_no_damage
[07:42:04] [PASSED] drm_test_damage_iter_no_damage_fractional_src
[07:42:04] [PASSED] drm_test_damage_iter_no_damage_src_moved
[07:42:04] [PASSED] drm_test_damage_iter_no_damage_fractional_src_moved
[07:42:04] [PASSED] drm_test_damage_iter_no_damage_not_visible
[07:42:04] [PASSED] drm_test_damage_iter_no_damage_no_crtc
[07:42:04] [PASSED] drm_test_damage_iter_no_damage_no_fb
[07:42:04] [PASSED] drm_test_damage_iter_simple_damage
[07:42:04] [PASSED] drm_test_damage_iter_single_damage
[07:42:04] [PASSED] drm_test_damage_iter_single_damage_intersect_src
[07:42:04] [PASSED] drm_test_damage_iter_single_damage_outside_src
[07:42:04] [PASSED] drm_test_damage_iter_single_damage_fractional_src
[07:42:04] [PASSED] drm_test_damage_iter_single_damage_intersect_fractional_src
[07:42:04] [PASSED] drm_test_damage_iter_single_damage_outside_fractional_src
[07:42:04] [PASSED] drm_test_damage_iter_single_damage_src_moved
[07:42:04] [PASSED] drm_test_damage_iter_single_damage_fractional_src_moved
[07:42:04] [PASSED] drm_test_damage_iter_damage
[07:42:04] [PASSED] drm_test_damage_iter_damage_one_intersect
[07:42:04] [PASSED] drm_test_damage_iter_damage_one_outside
[07:42:04] [PASSED] drm_test_damage_iter_damage_src_moved
[07:42:04] [PASSED] drm_test_damage_iter_damage_not_visible
[07:42:04] ================ [PASSED] drm_damage_helper ================
[07:42:04] ============== drm_dp_mst_helper (3 subtests) ==============
[07:42:04] ============== drm_test_dp_mst_calc_pbn_mode  ==============
[07:42:04] [PASSED] Clock 154000 BPP 30 DSC disabled
[07:42:04] [PASSED] Clock 234000 BPP 30 DSC disabled
[07:42:04] [PASSED] Clock 297000 BPP 24 DSC disabled
[07:42:04] [PASSED] Clock 332880 BPP 24 DSC enabled
[07:42:04] [PASSED] Clock 324540 BPP 24 DSC enabled
[07:42:04] ========== [PASSED] drm_test_dp_mst_calc_pbn_mode ==========
[07:42:04] ============== drm_test_dp_mst_calc_pbn_div  ===============
[07:42:04] [PASSED] Link rate 2000000 lane count 4
[07:42:04] [PASSED] Link rate 2000000 lane count 2
[07:42:04] [PASSED] Link rate 2000000 lane count 1
[07:42:04] [PASSED] Link rate 1350000 lane count 4
[07:42:04] [PASSED] Link rate 1350000 lane count 2
[07:42:04] [PASSED] Link rate 1350000 lane count 1
[07:42:04] [PASSED] Link rate 1000000 lane count 4
[07:42:04] [PASSED] Link rate 1000000 lane count 2
[07:42:04] [PASSED] Link rate 1000000 lane count 1
[07:42:04] [PASSED] Link rate 810000 lane count 4
[07:42:04] [PASSED] Link rate 810000 lane count 2
[07:42:04] [PASSED] Link rate 810000 lane count 1
[07:42:04] [PASSED] Link rate 540000 lane count 4
[07:42:04] [PASSED] Link rate 540000 lane count 2
[07:42:04] [PASSED] Link rate 540000 lane count 1
[07:42:04] [PASSED] Link rate 270000 lane count 4
[07:42:04] [PASSED] Link rate 270000 lane count 2
[07:42:04] [PASSED] Link rate 270000 lane count 1
[07:42:04] [PASSED] Link rate 162000 lane count 4
[07:42:04] [PASSED] Link rate 162000 lane count 2
[07:42:04] [PASSED] Link rate 162000 lane count 1
[07:42:04] ========== [PASSED] drm_test_dp_mst_calc_pbn_div ===========
[07:42:04] ========= drm_test_dp_mst_sideband_msg_req_decode  =========
[07:42:04] [PASSED] DP_ENUM_PATH_RESOURCES with port number
[07:42:04] [PASSED] DP_POWER_UP_PHY with port number
[07:42:04] [PASSED] DP_POWER_DOWN_PHY with port number
[07:42:04] [PASSED] DP_ALLOCATE_PAYLOAD with SDP stream sinks
[07:42:04] [PASSED] DP_ALLOCATE_PAYLOAD with port number
[07:42:04] [PASSED] DP_ALLOCATE_PAYLOAD with VCPI
[07:42:04] [PASSED] DP_ALLOCATE_PAYLOAD with PBN
[07:42:04] [PASSED] DP_QUERY_PAYLOAD with port number
[07:42:04] [PASSED] DP_QUERY_PAYLOAD with VCPI
[07:42:04] [PASSED] DP_REMOTE_DPCD_READ with port number
[07:42:04] [PASSED] DP_REMOTE_DPCD_READ with DPCD address
[07:42:04] [PASSED] DP_REMOTE_DPCD_READ with max number of bytes
[07:42:04] [PASSED] DP_REMOTE_DPCD_WRITE with port number
[07:42:04] [PASSED] DP_REMOTE_DPCD_WRITE with DPCD address
[07:42:04] [PASSED] DP_REMOTE_DPCD_WRITE with data array
[07:42:04] [PASSED] DP_REMOTE_I2C_READ with port number
[07:42:04] [PASSED] DP_REMOTE_I2C_READ with I2C device ID
[07:42:04] [PASSED] DP_REMOTE_I2C_READ with transactions array
[07:42:04] [PASSED] DP_REMOTE_I2C_WRITE with port number
[07:42:04] [PASSED] DP_REMOTE_I2C_WRITE with I2C device ID
[07:42:04] [PASSED] DP_REMOTE_I2C_WRITE with data array
[07:42:04] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream ID
[07:42:04] [PASSED] DP_QUERY_STREAM_ENC_STATUS with client ID
[07:42:04] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream event
[07:42:04] [PASSED] DP_QUERY_STREAM_ENC_STATUS with valid stream event
[07:42:04] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream behavior
[07:42:04] [PASSED] DP_QUERY_STREAM_ENC_STATUS with a valid stream behavior
[07:42:04] ===== [PASSED] drm_test_dp_mst_sideband_msg_req_decode =====
[07:42:04] ================ [PASSED] drm_dp_mst_helper ================
[07:42:04] ================== drm_exec (7 subtests) ===================
[07:42:04] [PASSED] sanitycheck
[07:42:04] [PASSED] test_lock
[07:42:04] [PASSED] test_lock_unlock
[07:42:04] [PASSED] test_duplicates
[07:42:04] [PASSED] test_prepare
[07:42:04] [PASSED] test_prepare_array
[07:42:04] [PASSED] test_multiple_loops
[07:42:04] ==================== [PASSED] drm_exec =====================
[07:42:04] =========== drm_format_helper_test (17 subtests) ===========
[07:42:04] ============== drm_test_fb_xrgb8888_to_gray8  ==============
[07:42:04] [PASSED] single_pixel_source_buffer
[07:42:04] [PASSED] single_pixel_clip_rectangle
[07:42:04] [PASSED] well_known_colors
[07:42:04] [PASSED] destination_pitch
[07:42:04] ========== [PASSED] drm_test_fb_xrgb8888_to_gray8 ==========
[07:42:04] ============= drm_test_fb_xrgb8888_to_rgb332  ==============
[07:42:04] [PASSED] single_pixel_source_buffer
[07:42:04] [PASSED] single_pixel_clip_rectangle
[07:42:04] [PASSED] well_known_colors
[07:42:04] [PASSED] destination_pitch
[07:42:04] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb332 ==========
[07:42:04] ============= drm_test_fb_xrgb8888_to_rgb565  ==============
[07:42:04] [PASSED] single_pixel_source_buffer
[07:42:04] [PASSED] single_pixel_clip_rectangle
[07:42:04] [PASSED] well_known_colors
[07:42:04] [PASSED] destination_pitch
[07:42:04] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb565 ==========
[07:42:04] ============ drm_test_fb_xrgb8888_to_xrgb1555  =============
[07:42:04] [PASSED] single_pixel_source_buffer
[07:42:04] [PASSED] single_pixel_clip_rectangle
[07:42:04] [PASSED] well_known_colors
[07:42:04] [PASSED] destination_pitch
[07:42:04] ======== [PASSED] drm_test_fb_xrgb8888_to_xrgb1555 =========
[07:42:04] ============ drm_test_fb_xrgb8888_to_argb1555  =============
[07:42:04] [PASSED] single_pixel_source_buffer
[07:42:04] [PASSED] single_pixel_clip_rectangle
[07:42:04] [PASSED] well_known_colors
[07:42:04] [PASSED] destination_pitch
[07:42:04] ======== [PASSED] drm_test_fb_xrgb8888_to_argb1555 =========
[07:42:04] ============ drm_test_fb_xrgb8888_to_rgba5551  =============
[07:42:04] [PASSED] single_pixel_source_buffer
[07:42:04] [PASSED] single_pixel_clip_rectangle
[07:42:04] [PASSED] well_known_colors
[07:42:04] [PASSED] destination_pitch
[07:42:04] ======== [PASSED] drm_test_fb_xrgb8888_to_rgba5551 =========
[07:42:04] ============= drm_test_fb_xrgb8888_to_rgb888  ==============
[07:42:04] [PASSED] single_pixel_source_buffer
[07:42:04] [PASSED] single_pixel_clip_rectangle
[07:42:04] [PASSED] well_known_colors
[07:42:04] [PASSED] destination_pitch
[07:42:04] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb888 ==========
[07:42:04] ============= drm_test_fb_xrgb8888_to_bgr888  ==============
[07:42:04] [PASSED] single_pixel_source_buffer
[07:42:04] [PASSED] single_pixel_clip_rectangle
[07:42:04] [PASSED] well_known_colors
[07:42:04] [PASSED] destination_pitch
[07:42:04] ========= [PASSED] drm_test_fb_xrgb8888_to_bgr888 ==========
[07:42:04] ============ drm_test_fb_xrgb8888_to_argb8888  =============
[07:42:04] [PASSED] single_pixel_source_buffer
[07:42:04] [PASSED] single_pixel_clip_rectangle
[07:42:04] [PASSED] well_known_colors
[07:42:04] [PASSED] destination_pitch
[07:42:04] ======== [PASSED] drm_test_fb_xrgb8888_to_argb8888 =========
[07:42:04] =========== drm_test_fb_xrgb8888_to_xrgb2101010  ===========
[07:42:04] [PASSED] single_pixel_source_buffer
[07:42:04] [PASSED] single_pixel_clip_rectangle
[07:42:04] [PASSED] well_known_colors
[07:42:04] [PASSED] destination_pitch
[07:42:04] ======= [PASSED] drm_test_fb_xrgb8888_to_xrgb2101010 =======
[07:42:04] =========== drm_test_fb_xrgb8888_to_argb2101010  ===========
[07:42:04] [PASSED] single_pixel_source_buffer
[07:42:04] [PASSED] single_pixel_clip_rectangle
[07:42:04] [PASSED] well_known_colors
[07:42:04] [PASSED] destination_pitch
[07:42:04] ======= [PASSED] drm_test_fb_xrgb8888_to_argb2101010 =======
[07:42:04] ============== drm_test_fb_xrgb8888_to_mono  ===============
[07:42:04] [PASSED] single_pixel_source_buffer
[07:42:04] [PASSED] single_pixel_clip_rectangle
[07:42:04] [PASSED] well_known_colors
[07:42:04] [PASSED] destination_pitch
[07:42:04] ========== [PASSED] drm_test_fb_xrgb8888_to_mono ===========
[07:42:04] ==================== drm_test_fb_swab  =====================
[07:42:04] [PASSED] single_pixel_source_buffer
[07:42:04] [PASSED] single_pixel_clip_rectangle
[07:42:04] [PASSED] well_known_colors
[07:42:04] [PASSED] destination_pitch
[07:42:04] ================ [PASSED] drm_test_fb_swab =================
[07:42:04] ============ drm_test_fb_xrgb8888_to_xbgr8888  =============
[07:42:04] [PASSED] single_pixel_source_buffer
[07:42:04] [PASSED] single_pixel_clip_rectangle
[07:42:04] [PASSED] well_known_colors
[07:42:04] [PASSED] destination_pitch
[07:42:04] ======== [PASSED] drm_test_fb_xrgb8888_to_xbgr8888 =========
[07:42:04] ============ drm_test_fb_xrgb8888_to_abgr8888  =============
[07:42:04] [PASSED] single_pixel_source_buffer
[07:42:04] [PASSED] single_pixel_clip_rectangle
[07:42:04] [PASSED] well_known_colors
[07:42:04] [PASSED] destination_pitch
[07:42:04] ======== [PASSED] drm_test_fb_xrgb8888_to_abgr8888 =========
[07:42:04] ================= drm_test_fb_clip_offset  =================
[07:42:04] [PASSED] pass through
[07:42:04] [PASSED] horizontal offset
[07:42:04] [PASSED] vertical offset
[07:42:04] [PASSED] horizontal and vertical offset
[07:42:04] [PASSED] horizontal offset (custom pitch)
[07:42:04] [PASSED] vertical offset (custom pitch)
[07:42:04] [PASSED] horizontal and vertical offset (custom pitch)
[07:42:04] ============= [PASSED] drm_test_fb_clip_offset =============
[07:42:04] =================== drm_test_fb_memcpy  ====================
[07:42:04] [PASSED] single_pixel_source_buffer: XR24 little-endian (0x34325258)
[07:42:04] [PASSED] single_pixel_source_buffer: XRA8 little-endian (0x38415258)
[07:42:04] [PASSED] single_pixel_source_buffer: YU24 little-endian (0x34325559)
[07:42:04] [PASSED] single_pixel_clip_rectangle: XB24 little-endian (0x34324258)
[07:42:04] [PASSED] single_pixel_clip_rectangle: XRA8 little-endian (0x38415258)
[07:42:04] [PASSED] single_pixel_clip_rectangle: YU24 little-endian (0x34325559)
[07:42:04] [PASSED] well_known_colors: XB24 little-endian (0x34324258)
[07:42:04] [PASSED] well_known_colors: XRA8 little-endian (0x38415258)
[07:42:04] [PASSED] well_known_colors: YU24 little-endian (0x34325559)
[07:42:04] [PASSED] destination_pitch: XB24 little-endian (0x34324258)
[07:42:04] [PASSED] destination_pitch: XRA8 little-endian (0x38415258)
[07:42:04] [PASSED] destination_pitch: YU24 little-endian (0x34325559)
[07:42:04] =============== [PASSED] drm_test_fb_memcpy ================
[07:42:04] ============= [PASSED] drm_format_helper_test ==============
[07:42:04] ================= drm_format (18 subtests) =================
[07:42:04] [PASSED] drm_test_format_block_width_invalid
[07:42:04] [PASSED] drm_test_format_block_width_one_plane
[07:42:04] [PASSED] drm_test_format_block_width_two_plane
[07:42:04] [PASSED] drm_test_format_block_width_three_plane
[07:42:04] [PASSED] drm_test_format_block_width_tiled
[07:42:04] [PASSED] drm_test_format_block_height_invalid
[07:42:04] [PASSED] drm_test_format_block_height_one_plane
[07:42:04] [PASSED] drm_test_format_block_height_two_plane
[07:42:04] [PASSED] drm_test_format_block_height_three_plane
[07:42:04] [PASSED] drm_test_format_block_height_tiled
[07:42:04] [PASSED] drm_test_format_min_pitch_invalid
[07:42:04] [PASSED] drm_test_format_min_pitch_one_plane_8bpp
[07:42:04] [PASSED] drm_test_format_min_pitch_one_plane_16bpp
[07:42:04] [PASSED] drm_test_format_min_pitch_one_plane_24bpp
[07:42:04] [PASSED] drm_test_format_min_pitch_one_plane_32bpp
[07:42:04] [PASSED] drm_test_format_min_pitch_two_plane
[07:42:04] [PASSED] drm_test_format_min_pitch_three_plane_8bpp
[07:42:04] [PASSED] drm_test_format_min_pitch_tiled
[07:42:04] =================== [PASSED] drm_format ====================
[07:42:04] ============== drm_framebuffer (10 subtests) ===============
[07:42:04] ========== drm_test_framebuffer_check_src_coords  ==========
[07:42:04] [PASSED] Success: source fits into fb
[07:42:04] [PASSED] Fail: overflowing fb with x-axis coordinate
[07:42:04] [PASSED] Fail: overflowing fb with y-axis coordinate
[07:42:04] [PASSED] Fail: overflowing fb with source width
[07:42:04] [PASSED] Fail: overflowing fb with source height
[07:42:04] ====== [PASSED] drm_test_framebuffer_check_src_coords ======
[07:42:04] [PASSED] drm_test_framebuffer_cleanup
[07:42:04] =============== drm_test_framebuffer_create  ===============
[07:42:04] [PASSED] ABGR8888 normal sizes
[07:42:04] [PASSED] ABGR8888 max sizes
[07:42:04] [PASSED] ABGR8888 pitch greater than min required
[07:42:04] [PASSED] ABGR8888 pitch less than min required
[07:42:04] [PASSED] ABGR8888 Invalid width
[07:42:04] [PASSED] ABGR8888 Invalid buffer handle
[07:42:04] [PASSED] No pixel format
[07:42:04] [PASSED] ABGR8888 Width 0
[07:42:04] [PASSED] ABGR8888 Height 0
[07:42:04] [PASSED] ABGR8888 Out of bound height * pitch combination
[07:42:04] [PASSED] ABGR8888 Large buffer offset
[07:42:04] [PASSED] ABGR8888 Buffer offset for inexistent plane
[07:42:04] [PASSED] ABGR8888 Invalid flag
[07:42:04] [PASSED] ABGR8888 Set DRM_MODE_FB_MODIFIERS without modifiers
[07:42:04] [PASSED] ABGR8888 Valid buffer modifier
[07:42:04] [PASSED] ABGR8888 Invalid buffer modifier(DRM_FORMAT_MOD_SAMSUNG_64_32_TILE)
[07:42:04] [PASSED] ABGR8888 Extra pitches without DRM_MODE_FB_MODIFIERS
[07:42:04] [PASSED] ABGR8888 Extra pitches with DRM_MODE_FB_MODIFIERS
[07:42:04] [PASSED] NV12 Normal sizes
[07:42:04] [PASSED] NV12 Max sizes
[07:42:04] [PASSED] NV12 Invalid pitch
[07:42:04] [PASSED] NV12 Invalid modifier/missing DRM_MODE_FB_MODIFIERS flag
[07:42:04] [PASSED] NV12 different  modifier per-plane
[07:42:04] [PASSED] NV12 with DRM_FORMAT_MOD_SAMSUNG_64_32_TILE
[07:42:04] [PASSED] NV12 Valid modifiers without DRM_MODE_FB_MODIFIERS
[07:42:04] [PASSED] NV12 Modifier for inexistent plane
[07:42:04] [PASSED] NV12 Handle for inexistent plane
[07:42:04] [PASSED] NV12 Handle for inexistent plane without DRM_MODE_FB_MODIFIERS
[07:42:04] [PASSED] YVU420 DRM_MODE_FB_MODIFIERS set without modifier
[07:42:04] [PASSED] YVU420 Normal sizes
[07:42:04] [PASSED] YVU420 Max sizes
[07:42:04] [PASSED] YVU420 Invalid pitch
[07:42:04] [PASSED] YVU420 Different pitches
[07:42:04] [PASSED] YVU420 Different buffer offsets/pitches
[07:42:04] [PASSED] YVU420 Modifier set just for plane 0, without DRM_MODE_FB_MODIFIERS
[07:42:04] [PASSED] YVU420 Modifier set just for planes 0, 1, without DRM_MODE_FB_MODIFIERS
[07:42:04] [PASSED] YVU420 Modifier set just for plane 0, 1, with DRM_MODE_FB_MODIFIERS
[07:42:04] [PASSED] YVU420 Valid modifier
[07:42:04] [PASSED] YVU420 Different modifiers per plane
[07:42:04] [PASSED] YVU420 Modifier for inexistent plane
[07:42:04] [PASSED] YUV420_10BIT Invalid modifier(DRM_FORMAT_MOD_LINEAR)
[07:42:04] [PASSED] X0L2 Normal sizes
[07:42:04] [PASSED] X0L2 Max sizes
[07:42:04] [PASSED] X0L2 Invalid pitch
[07:42:04] [PASSED] X0L2 Pitch greater than minimum required
[07:42:04] [PASSED] X0L2 Handle for inexistent plane
[07:42:04] [PASSED] X0L2 Offset for inexistent plane, without DRM_MODE_FB_MODIFIERS set
[07:42:04] [PASSED] X0L2 Modifier without DRM_MODE_FB_MODIFIERS set
[07:42:04] [PASSED] X0L2 Valid modifier
[07:42:04] [PASSED] X0L2 Modifier for inexistent plane
[07:42:04] =========== [PASSED] drm_test_framebuffer_create ===========
[07:42:04] [PASSED] drm_test_framebuffer_free
[07:42:04] [PASSED] drm_test_framebuffer_init
[07:42:04] [PASSED] drm_test_framebuffer_init_bad_format
[07:42:04] [PASSED] drm_test_framebuffer_init_dev_mismatch
[07:42:04] [PASSED] drm_test_framebuffer_lookup
[07:42:04] [PASSED] drm_test_framebuffer_lookup_inexistent
[07:42:04] [PASSED] drm_test_framebuffer_modifiers_not_supported
[07:42:04] ================= [PASSED] drm_framebuffer =================
[07:42:04] ================ drm_gem_shmem (8 subtests) ================
[07:42:04] [PASSED] drm_gem_shmem_test_obj_create
[07:42:04] [PASSED] drm_gem_shmem_test_obj_create_private
[07:42:04] [PASSED] drm_gem_shmem_test_pin_pages
[07:42:04] [PASSED] drm_gem_shmem_test_vmap
[07:42:04] [PASSED] drm_gem_shmem_test_get_pages_sgt
[07:42:04] [PASSED] drm_gem_shmem_test_get_sg_table
[07:42:04] [PASSED] drm_gem_shmem_test_madvise
[07:42:04] [PASSED] drm_gem_shmem_test_purge
[07:42:04] ================== [PASSED] drm_gem_shmem ==================
[07:42:04] === drm_atomic_helper_connector_hdmi_check (27 subtests) ===
[07:42:04] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode
[07:42:04] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode_vic_1
[07:42:04] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode
[07:42:04] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode_vic_1
[07:42:04] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode
[07:42:04] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode_vic_1
[07:42:04] ====== drm_test_check_broadcast_rgb_cea_mode_yuv420  =======
[07:42:04] [PASSED] Automatic
[07:42:04] [PASSED] Full
[07:42:04] [PASSED] Limited 16:235
[07:42:04] == [PASSED] drm_test_check_broadcast_rgb_cea_mode_yuv420 ===
[07:42:04] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_changed
[07:42:04] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_not_changed
[07:42:04] [PASSED] drm_test_check_disable_connector
[07:42:04] [PASSED] drm_test_check_hdmi_funcs_reject_rate
[07:42:04] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_rgb
[07:42:04] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_yuv420
[07:42:04] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv422
[07:42:04] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv420
[07:42:04] [PASSED] drm_test_check_driver_unsupported_fallback_yuv420
[07:42:04] [PASSED] drm_test_check_output_bpc_crtc_mode_changed
[07:42:04] [PASSED] drm_test_check_output_bpc_crtc_mode_not_changed
[07:42:04] [PASSED] drm_test_check_output_bpc_dvi
[07:42:04] [PASSED] drm_test_check_output_bpc_format_vic_1
[07:42:04] [PASSED] drm_test_check_output_bpc_format_display_8bpc_only
[07:42:04] [PASSED] drm_test_check_output_bpc_format_display_rgb_only
[07:42:04] [PASSED] drm_test_check_output_bpc_format_driver_8bpc_only
[07:42:04] [PASSED] drm_test_check_output_bpc_format_driver_rgb_only
[07:42:04] [PASSED] drm_test_check_tmds_char_rate_rgb_8bpc
[07:42:04] [PASSED] drm_test_check_tmds_char_rate_rgb_10bpc
[07:42:04] [PASSED] drm_test_check_tmds_char_rate_rgb_12bpc
[07:42:04] ===== [PASSED] drm_atomic_helper_connector_hdmi_check ======
[07:42:04] === drm_atomic_helper_connector_hdmi_reset (6 subtests) ====
[07:42:04] [PASSED] drm_test_check_broadcast_rgb_value
[07:42:04] [PASSED] drm_test_check_bpc_8_value
[07:42:04] [PASSED] drm_test_check_bpc_10_value
[07:42:04] [PASSED] drm_test_check_bpc_12_value
[07:42:04] [PASSED] drm_test_check_format_value
[07:42:04] [PASSED] drm_test_check_tmds_char_value
[07:42:04] ===== [PASSED] drm_atomic_helper_connector_hdmi_reset ======
[07:42:04] = drm_atomic_helper_connector_hdmi_mode_valid (4 subtests) =
[07:42:04] [PASSED] drm_test_check_mode_valid
[07:42:04] [PASSED] drm_test_check_mode_valid_reject
[07:42:04] [PASSED] drm_test_check_mode_valid_reject_rate
[07:42:04] [PASSED] drm_test_check_mode_valid_reject_max_clock
[07:42:04] === [PASSED] drm_atomic_helper_connector_hdmi_mode_valid ===
[07:42:04] ================= drm_managed (2 subtests) =================
[07:42:04] [PASSED] drm_test_managed_release_action
[07:42:04] [PASSED] drm_test_managed_run_action
[07:42:04] =================== [PASSED] drm_managed ===================
[07:42:04] =================== drm_mm (6 subtests) ====================
[07:42:04] [PASSED] drm_test_mm_init
[07:42:04] [PASSED] drm_test_mm_debug
[07:42:04] [PASSED] drm_test_mm_align32
[07:42:04] [PASSED] drm_test_mm_align64
[07:42:04] [PASSED] drm_test_mm_lowest
[07:42:04] [PASSED] drm_test_mm_highest
[07:42:04] ===================== [PASSED] drm_mm ======================
[07:42:04] ============= drm_modes_analog_tv (5 subtests) =============
[07:42:04] [PASSED] drm_test_modes_analog_tv_mono_576i
[07:42:04] [PASSED] drm_test_modes_analog_tv_ntsc_480i
[07:42:04] [PASSED] drm_test_modes_analog_tv_ntsc_480i_inlined
[07:42:04] [PASSED] drm_test_modes_analog_tv_pal_576i
[07:42:04] [PASSED] drm_test_modes_analog_tv_pal_576i_inlined
[07:42:04] =============== [PASSED] drm_modes_analog_tv ===============
[07:42:04] ============== drm_plane_helper (2 subtests) ===============
[07:42:04] =============== drm_test_check_plane_state  ================
[07:42:04] [PASSED] clipping_simple
[07:42:04] [PASSED] clipping_rotate_reflect
[07:42:04] [PASSED] positioning_simple
[07:42:04] [PASSED] upscaling
[07:42:04] [PASSED] downscaling
[07:42:04] [PASSED] rounding1
[07:42:04] [PASSED] rounding2
[07:42:04] [PASSED] rounding3
[07:42:04] [PASSED] rounding4
[07:42:04] =========== [PASSED] drm_test_check_plane_state ============
[07:42:04] =========== drm_test_check_invalid_plane_state  ============
[07:42:04] [PASSED] positioning_invalid
[07:42:04] [PASSED] upscaling_invalid
[07:42:04] [PASSED] downscaling_invalid
[07:42:04] ======= [PASSED] drm_test_check_invalid_plane_state ========
[07:42:04] ================ [PASSED] drm_plane_helper =================
[07:42:04] ====== drm_connector_helper_tv_get_modes (1 subtest) =======
[07:42:04] ====== drm_test_connector_helper_tv_get_modes_check  =======
[07:42:04] [PASSED] None
[07:42:04] [PASSED] PAL
[07:42:04] [PASSED] NTSC
[07:42:04] [PASSED] Both, NTSC Default
[07:42:04] [PASSED] Both, PAL Default
[07:42:04] [PASSED] Both, NTSC Default, with PAL on command-line
[07:42:04] [PASSED] Both, PAL Default, with NTSC on command-line
[07:42:04] == [PASSED] drm_test_connector_helper_tv_get_modes_check ===
[07:42:04] ======== [PASSED] drm_connector_helper_tv_get_modes ========
[07:42:04] ================== drm_rect (9 subtests) ===================
[07:42:04] [PASSED] drm_test_rect_clip_scaled_div_by_zero
[07:42:04] [PASSED] drm_test_rect_clip_scaled_not_clipped
[07:42:04] [PASSED] drm_test_rect_clip_scaled_clipped
[07:42:04] [PASSED] drm_test_rect_clip_scaled_signed_vs_unsigned
[07:42:04] ================= drm_test_rect_intersect  =================
[07:42:04] [PASSED] top-left x bottom-right: 2x2+1+1 x 2x2+0+0
[07:42:04] [PASSED] top-right x bottom-left: 2x2+0+0 x 2x2+1-1
[07:42:04] [PASSED] bottom-left x top-right: 2x2+1-1 x 2x2+0+0
[07:42:04] [PASSED] bottom-right x top-left: 2x2+0+0 x 2x2+1+1
[07:42:04] [PASSED] right x left: 2x1+0+0 x 3x1+1+0
[07:42:04] [PASSED] left x right: 3x1+1+0 x 2x1+0+0
[07:42:04] [PASSED] up x bottom: 1x2+0+0 x 1x3+0-1
[07:42:04] [PASSED] bottom x up: 1x3+0-1 x 1x2+0+0
[07:42:04] [PASSED] touching corner: 1x1+0+0 x 2x2+1+1
[07:42:04] [PASSED] touching side: 1x1+0+0 x 1x1+1+0
[07:42:04] [PASSED] equal rects: 2x2+0+0 x 2x2+0+0
[07:42:04] [PASSED] inside another: 2x2+0+0 x 1x1+1+1
[07:42:04] [PASSED] far away: 1x1+0+0 x 1x1+3+6
[07:42:04] [PASSED] points intersecting: 0x0+5+10 x 0x0+5+10
[07:42:04] [PASSED] points not intersecting: 0x0+0+0 x 0x0+5+10
[07:42:04] ============= [PASSED] drm_test_rect_intersect =============
[07:42:04] ================ drm_test_rect_calc_hscale  ================
[07:42:04] [PASSED] normal use
[07:42:04] [PASSED] out of max range
[07:42:04] [PASSED] out of min range
[07:42:04] [PASSED] zero dst
[07:42:04] [PASSED] negative src
[07:42:04] [PASSED] negative dst
[07:42:04] ============ [PASSED] drm_test_rect_calc_hscale ============
[07:42:04] ================ drm_test_rect_calc_vscale  ================
[07:42:04] [PASSED] normal use
stty: 'standard input': Inappropriate ioctl for device
[07:42:04] [PASSED] out of max range
[07:42:04] [PASSED] out of min range
[07:42:04] [PASSED] zero dst
[07:42:04] [PASSED] negative src
[07:42:04] [PASSED] negative dst
[07:42:04] ============ [PASSED] drm_test_rect_calc_vscale ============
[07:42:04] ================== drm_test_rect_rotate  ===================
[07:42:04] [PASSED] reflect-x
[07:42:04] [PASSED] reflect-y
[07:42:04] [PASSED] rotate-0
[07:42:04] [PASSED] rotate-90
[07:42:04] [PASSED] rotate-180
[07:42:04] [PASSED] rotate-270
[07:42:04] ============== [PASSED] drm_test_rect_rotate ===============
[07:42:04] ================ drm_test_rect_rotate_inv  =================
[07:42:04] [PASSED] reflect-x
[07:42:04] [PASSED] reflect-y
[07:42:04] [PASSED] rotate-0
[07:42:04] [PASSED] rotate-90
[07:42:04] [PASSED] rotate-180
[07:42:04] [PASSED] rotate-270
[07:42:04] ============ [PASSED] drm_test_rect_rotate_inv =============
[07:42:04] ==================== [PASSED] drm_rect =====================
[07:42:04] ============ drm_sysfb_modeset_test (1 subtest) ============
[07:42:04] ============ drm_test_sysfb_build_fourcc_list  =============
[07:42:04] [PASSED] no native formats
[07:42:04] [PASSED] XRGB8888 as native format
[07:42:04] [PASSED] remove duplicates
[07:42:04] [PASSED] convert alpha formats
[07:42:04] [PASSED] random formats
[07:42:04] ======== [PASSED] drm_test_sysfb_build_fourcc_list =========
[07:42:04] ============= [PASSED] drm_sysfb_modeset_test ==============
[07:42:04] ============================================================
[07:42:04] Testing complete. Ran 622 tests: passed: 622
[07:42:04] Elapsed time: 30.140s total, 1.616s configuring, 28.103s building, 0.392s running

+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/ttm/tests/.kunitconfig
[07:42:04] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[07:42:06] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[07:42:15] Starting KUnit Kernel (1/1)...
[07:42:15] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[07:42:16] ================= ttm_device (5 subtests) ==================
[07:42:16] [PASSED] ttm_device_init_basic
[07:42:16] [PASSED] ttm_device_init_multiple
[07:42:16] [PASSED] ttm_device_fini_basic
[07:42:16] [PASSED] ttm_device_init_no_vma_man
[07:42:16] ================== ttm_device_init_pools  ==================
[07:42:16] [PASSED] No DMA allocations, no DMA32 required
[07:42:16] [PASSED] DMA allocations, DMA32 required
[07:42:16] [PASSED] No DMA allocations, DMA32 required
[07:42:16] [PASSED] DMA allocations, no DMA32 required
[07:42:16] ============== [PASSED] ttm_device_init_pools ==============
[07:42:16] =================== [PASSED] ttm_device ====================
[07:42:16] ================== ttm_pool (8 subtests) ===================
[07:42:16] ================== ttm_pool_alloc_basic  ===================
[07:42:16] [PASSED] One page
[07:42:16] [PASSED] More than one page
[07:42:16] [PASSED] Above the allocation limit
[07:42:16] [PASSED] One page, with coherent DMA mappings enabled
[07:42:16] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[07:42:16] ============== [PASSED] ttm_pool_alloc_basic ===============
[07:42:16] ============== ttm_pool_alloc_basic_dma_addr  ==============
[07:42:16] [PASSED] One page
[07:42:16] [PASSED] More than one page
[07:42:16] [PASSED] Above the allocation limit
[07:42:16] [PASSED] One page, with coherent DMA mappings enabled
[07:42:16] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[07:42:16] ========== [PASSED] ttm_pool_alloc_basic_dma_addr ==========
[07:42:16] [PASSED] ttm_pool_alloc_order_caching_match
[07:42:16] [PASSED] ttm_pool_alloc_caching_mismatch
[07:42:16] [PASSED] ttm_pool_alloc_order_mismatch
[07:42:16] [PASSED] ttm_pool_free_dma_alloc
[07:42:16] [PASSED] ttm_pool_free_no_dma_alloc
[07:42:16] [PASSED] ttm_pool_fini_basic
[07:42:16] ==================== [PASSED] ttm_pool =====================
[07:42:16] ================ ttm_resource (8 subtests) =================
[07:42:16] ================= ttm_resource_init_basic  =================
[07:42:16] [PASSED] Init resource in TTM_PL_SYSTEM
[07:42:16] [PASSED] Init resource in TTM_PL_VRAM
[07:42:16] [PASSED] Init resource in a private placement
[07:42:16] [PASSED] Init resource in TTM_PL_SYSTEM, set placement flags
[07:42:16] ============= [PASSED] ttm_resource_init_basic =============
[07:42:16] [PASSED] ttm_resource_init_pinned
[07:42:16] [PASSED] ttm_resource_fini_basic
[07:42:16] [PASSED] ttm_resource_manager_init_basic
[07:42:16] [PASSED] ttm_resource_manager_usage_basic
[07:42:16] [PASSED] ttm_resource_manager_set_used_basic
[07:42:16] [PASSED] ttm_sys_man_alloc_basic
[07:42:16] [PASSED] ttm_sys_man_free_basic
[07:42:16] ================== [PASSED] ttm_resource ===================
[07:42:16] =================== ttm_tt (15 subtests) ===================
[07:42:16] ==================== ttm_tt_init_basic  ====================
[07:42:16] [PASSED] Page-aligned size
[07:42:16] [PASSED] Extra pages requested
[07:42:16] ================ [PASSED] ttm_tt_init_basic ================
[07:42:16] [PASSED] ttm_tt_init_misaligned
[07:42:16] [PASSED] ttm_tt_fini_basic
[07:42:16] [PASSED] ttm_tt_fini_sg
[07:42:16] [PASSED] ttm_tt_fini_shmem
[07:42:16] [PASSED] ttm_tt_create_basic
[07:42:16] [PASSED] ttm_tt_create_invalid_bo_type
[07:42:16] [PASSED] ttm_tt_create_ttm_exists
[07:42:16] [PASSED] ttm_tt_create_failed
[07:42:16] [PASSED] ttm_tt_destroy_basic
[07:42:16] [PASSED] ttm_tt_populate_null_ttm
[07:42:16] [PASSED] ttm_tt_populate_populated_ttm
[07:42:16] [PASSED] ttm_tt_unpopulate_basic
[07:42:16] [PASSED] ttm_tt_unpopulate_empty_ttm
[07:42:16] [PASSED] ttm_tt_swapin_basic
[07:42:16] ===================== [PASSED] ttm_tt ======================
[07:42:16] =================== ttm_bo (14 subtests) ===================
[07:42:16] =========== ttm_bo_reserve_optimistic_no_ticket  ===========
[07:42:16] [PASSED] Cannot be interrupted and sleeps
[07:42:16] [PASSED] Cannot be interrupted, locks straight away
[07:42:16] [PASSED] Can be interrupted, sleeps
[07:42:16] ======= [PASSED] ttm_bo_reserve_optimistic_no_ticket =======
[07:42:16] [PASSED] ttm_bo_reserve_locked_no_sleep
[07:42:16] [PASSED] ttm_bo_reserve_no_wait_ticket
[07:42:16] [PASSED] ttm_bo_reserve_double_resv
[07:42:16] [PASSED] ttm_bo_reserve_interrupted
[07:42:16] [PASSED] ttm_bo_reserve_deadlock
[07:42:16] [PASSED] ttm_bo_unreserve_basic
[07:42:16] [PASSED] ttm_bo_unreserve_pinned
[07:42:16] [PASSED] ttm_bo_unreserve_bulk
[07:42:16] [PASSED] ttm_bo_fini_basic
[07:42:16] [PASSED] ttm_bo_fini_shared_resv
[07:42:16] [PASSED] ttm_bo_pin_basic
[07:42:16] [PASSED] ttm_bo_pin_unpin_resource
[07:42:16] [PASSED] ttm_bo_multiple_pin_one_unpin
[07:42:16] ===================== [PASSED] ttm_bo ======================
[07:42:16] ============== ttm_bo_validate (21 subtests) ===============
[07:42:16] ============== ttm_bo_init_reserved_sys_man  ===============
[07:42:16] [PASSED] Buffer object for userspace
[07:42:16] [PASSED] Kernel buffer object
[07:42:16] [PASSED] Shared buffer object
[07:42:16] ========== [PASSED] ttm_bo_init_reserved_sys_man ===========
[07:42:16] ============== ttm_bo_init_reserved_mock_man  ==============
[07:42:16] [PASSED] Buffer object for userspace
[07:42:16] [PASSED] Kernel buffer object
[07:42:16] [PASSED] Shared buffer object
[07:42:16] ========== [PASSED] ttm_bo_init_reserved_mock_man ==========
[07:42:16] [PASSED] ttm_bo_init_reserved_resv
[07:42:16] ================== ttm_bo_validate_basic  ==================
[07:42:16] [PASSED] Buffer object for userspace
[07:42:16] [PASSED] Kernel buffer object
[07:42:16] [PASSED] Shared buffer object
[07:42:16] ============== [PASSED] ttm_bo_validate_basic ==============
[07:42:16] [PASSED] ttm_bo_validate_invalid_placement
[07:42:16] ============= ttm_bo_validate_same_placement  ==============
[07:42:16] [PASSED] System manager
[07:42:16] [PASSED] VRAM manager
[07:42:16] ========= [PASSED] ttm_bo_validate_same_placement ==========
[07:42:16] [PASSED] ttm_bo_validate_failed_alloc
[07:42:16] [PASSED] ttm_bo_validate_pinned
[07:42:16] [PASSED] ttm_bo_validate_busy_placement
[07:42:16] ================ ttm_bo_validate_multihop  =================
[07:42:16] [PASSED] Buffer object for userspace
[07:42:16] [PASSED] Kernel buffer object
[07:42:16] [PASSED] Shared buffer object
[07:42:16] ============ [PASSED] ttm_bo_validate_multihop =============
[07:42:16] ========== ttm_bo_validate_no_placement_signaled  ==========
[07:42:16] [PASSED] Buffer object in system domain, no page vector
[07:42:16] [PASSED] Buffer object in system domain with an existing page vector
[07:42:16] ====== [PASSED] ttm_bo_validate_no_placement_signaled ======
[07:42:16] ======== ttm_bo_validate_no_placement_not_signaled  ========
[07:42:16] [PASSED] Buffer object for userspace
[07:42:16] [PASSED] Kernel buffer object
[07:42:16] [PASSED] Shared buffer object
[07:42:16] ==== [PASSED] ttm_bo_validate_no_placement_not_signaled ====
[07:42:16] [PASSED] ttm_bo_validate_move_fence_signaled
[07:42:16] ========= ttm_bo_validate_move_fence_not_signaled  =========
[07:42:16] [PASSED] Waits for GPU
[07:42:16] [PASSED] Tries to lock straight away
[07:42:16] ===== [PASSED] ttm_bo_validate_move_fence_not_signaled =====
[07:42:16] [PASSED] ttm_bo_validate_happy_evict
[07:42:16] [PASSED] ttm_bo_validate_all_pinned_evict
[07:42:16] [PASSED] ttm_bo_validate_allowed_only_evict
[07:42:16] [PASSED] ttm_bo_validate_deleted_evict
[07:42:16] [PASSED] ttm_bo_validate_busy_domain_evict
[07:42:16] [PASSED] ttm_bo_validate_evict_gutting
[07:42:16] [PASSED] ttm_bo_validate_recrusive_evict
stty: 'standard input': Inappropriate ioctl for device
[07:42:16] ================= [PASSED] ttm_bo_validate =================
[07:42:16] ============================================================
[07:42:16] Testing complete. Ran 101 tests: passed: 101
[07:42:16] Elapsed time: 11.558s total, 1.714s configuring, 9.627s building, 0.185s running

+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel



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

* ✓ Xe.CI.BAT: success for Introduce GT runtime suspend/resume (rev2)
  2025-10-14  7:30 [PATCH v5 0/2] Introduce GT runtime suspend/resume Raag Jadav
                   ` (2 preceding siblings ...)
  2025-10-14  7:42 ` ✓ CI.KUnit: success for Introduce GT runtime suspend/resume (rev2) Patchwork
@ 2025-10-14  8:19 ` Patchwork
  2025-10-14 15:40 ` ✗ Xe.CI.Full: failure " Patchwork
                   ` (4 subsequent siblings)
  8 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2025-10-14  8:19 UTC (permalink / raw)
  To: Raag Jadav; +Cc: intel-xe

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

== Series Details ==

Series: Introduce GT runtime suspend/resume (rev2)
URL   : https://patchwork.freedesktop.org/series/154017/
State : success

== Summary ==

CI Bug Log - changes from xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada_BAT -> xe-pw-154017v2_BAT
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Participating hosts (11 -> 10)
------------------------------

  Missing    (1): bat-dg2-oem2 


Changes
-------

  No changes found


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

  * Linux: xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada -> xe-pw-154017v2

  IGT_8582: 8582
  xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada: c917f7d11493984be9f381ca0a7667bd3e587ada
  xe-pw-154017v2: 154017v2

== Logs ==

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

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

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

* ✗ Xe.CI.Full: failure for Introduce GT runtime suspend/resume (rev2)
  2025-10-14  7:30 [PATCH v5 0/2] Introduce GT runtime suspend/resume Raag Jadav
                   ` (3 preceding siblings ...)
  2025-10-14  8:19 ` ✓ Xe.CI.BAT: " Patchwork
@ 2025-10-14 15:40 ` Patchwork
  2025-10-16 13:03 ` ✗ CI.checkpatch: warning for Introduce GT runtime suspend/resume (rev3) Patchwork
                   ` (3 subsequent siblings)
  8 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2025-10-14 15:40 UTC (permalink / raw)
  To: Raag Jadav; +Cc: intel-xe

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

== Series Details ==

Series: Introduce GT runtime suspend/resume (rev2)
URL   : https://patchwork.freedesktop.org/series/154017/
State : failure

== Summary ==

CI Bug Log - changes from xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada_FULL -> xe-pw-154017v2_FULL
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with xe-pw-154017v2_FULL absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in xe-pw-154017v2_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 xe-pw-154017v2_FULL:

### IGT changes ###

#### Possible regressions ####

  * igt@kms_setmode@basic:
    - shard-adlp:         [PASS][1] -> [FAIL][2] +2 other tests fail
   [1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-adlp-8/igt@kms_setmode@basic.html
   [2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_setmode@basic.html

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

  Here are the changes found in xe-pw-154017v2_FULL that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@kms_async_flips@crc-atomic@pipe-d-hdmi-a-1:
    - shard-adlp:         NOTRUN -> [FAIL][3] ([Intel XE#3884]) +1 other test fail
   [3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_async_flips@crc-atomic@pipe-d-hdmi-a-1.html

  * igt@kms_big_fb@4-tiled-32bpp-rotate-270:
    - shard-dg2-set2:     NOTRUN -> [SKIP][4] ([Intel XE#316])
   [4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-466/igt@kms_big_fb@4-tiled-32bpp-rotate-270.html

  * igt@kms_big_fb@4-tiled-addfb-size-overflow:
    - shard-adlp:         NOTRUN -> [SKIP][5] ([Intel XE#610])
   [5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-6/igt@kms_big_fb@4-tiled-addfb-size-overflow.html

  * igt@kms_big_fb@linear-16bpp-rotate-270:
    - shard-lnl:          NOTRUN -> [SKIP][6] ([Intel XE#1407]) +2 other tests skip
   [6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_big_fb@linear-16bpp-rotate-270.html

  * igt@kms_big_fb@linear-32bpp-rotate-90:
    - shard-adlp:         NOTRUN -> [SKIP][7] ([Intel XE#316]) +1 other test skip
   [7]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_big_fb@linear-32bpp-rotate-90.html

  * igt@kms_big_fb@y-tiled-addfb-size-offset-overflow:
    - shard-lnl:          NOTRUN -> [SKIP][8] ([Intel XE#1477])
   [8]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_big_fb@y-tiled-addfb-size-offset-overflow.html

  * igt@kms_big_fb@yf-tiled-8bpp-rotate-270:
    - shard-lnl:          NOTRUN -> [SKIP][9] ([Intel XE#1124]) +1 other test skip
   [9]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_big_fb@yf-tiled-8bpp-rotate-270.html

  * igt@kms_big_fb@yf-tiled-addfb-size-offset-overflow:
    - shard-adlp:         NOTRUN -> [SKIP][10] ([Intel XE#607])
   [10]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-6/igt@kms_big_fb@yf-tiled-addfb-size-offset-overflow.html

  * igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180:
    - shard-adlp:         NOTRUN -> [SKIP][11] ([Intel XE#1124]) +4 other tests skip
   [11]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180.html

  * igt@kms_bw@connected-linear-tiling-2-displays-1920x1080p:
    - shard-bmg:          [PASS][12] -> [SKIP][13] ([Intel XE#2314] / [Intel XE#2894]) +1 other test skip
   [12]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-3/igt@kms_bw@connected-linear-tiling-2-displays-1920x1080p.html
   [13]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-6/igt@kms_bw@connected-linear-tiling-2-displays-1920x1080p.html

  * igt@kms_bw@linear-tiling-2-displays-1920x1080p:
    - shard-adlp:         NOTRUN -> [SKIP][14] ([Intel XE#367]) +1 other test skip
   [14]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-6/igt@kms_bw@linear-tiling-2-displays-1920x1080p.html

  * igt@kms_bw@linear-tiling-3-displays-2160x1440p:
    - shard-lnl:          NOTRUN -> [SKIP][15] ([Intel XE#367])
   [15]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_bw@linear-tiling-3-displays-2160x1440p.html

  * igt@kms_ccs@bad-aux-stride-4-tiled-mtl-rc-ccs-cc:
    - shard-adlp:         NOTRUN -> [SKIP][16] ([Intel XE#455] / [Intel XE#787]) +15 other tests skip
   [16]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-6/igt@kms_ccs@bad-aux-stride-4-tiled-mtl-rc-ccs-cc.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][17] ([Intel XE#455] / [Intel XE#787]) +7 other tests skip
   [17]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-434/igt@kms_ccs@bad-aux-stride-4-tiled-mtl-rc-ccs-cc.html

  * igt@kms_ccs@bad-rotation-90-4-tiled-lnl-ccs@pipe-c-dp-2:
    - shard-bmg:          NOTRUN -> [SKIP][18] ([Intel XE#2652] / [Intel XE#787]) +3 other tests skip
   [18]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-2/igt@kms_ccs@bad-rotation-90-4-tiled-lnl-ccs@pipe-c-dp-2.html

  * igt@kms_ccs@bad-rotation-90-4-tiled-mtl-rc-ccs@pipe-a-hdmi-a-1:
    - shard-adlp:         NOTRUN -> [SKIP][19] ([Intel XE#787]) +23 other tests skip
   [19]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-6/igt@kms_ccs@bad-rotation-90-4-tiled-mtl-rc-ccs@pipe-a-hdmi-a-1.html

  * igt@kms_ccs@ccs-on-another-bo-4-tiled-mtl-rc-ccs-cc:
    - shard-lnl:          NOTRUN -> [SKIP][20] ([Intel XE#2887]) +2 other tests skip
   [20]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_ccs@ccs-on-another-bo-4-tiled-mtl-rc-ccs-cc.html

  * igt@kms_ccs@crc-primary-rotation-180-4-tiled-bmg-ccs:
    - shard-adlp:         NOTRUN -> [SKIP][21] ([Intel XE#2907])
   [21]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_ccs@crc-primary-rotation-180-4-tiled-bmg-ccs.html

  * igt@kms_ccs@crc-primary-rotation-180-4-tiled-bmg-ccs@pipe-b-edp-1:
    - shard-lnl:          NOTRUN -> [SKIP][22] ([Intel XE#2669]) +3 other tests skip
   [22]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_ccs@crc-primary-rotation-180-4-tiled-bmg-ccs@pipe-b-edp-1.html

  * igt@kms_ccs@crc-primary-rotation-180-y-tiled-gen12-rc-ccs-cc@pipe-d-hdmi-a-6:
    - shard-dg2-set2:     NOTRUN -> [SKIP][23] ([Intel XE#787]) +27 other tests skip
   [23]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-466/igt@kms_ccs@crc-primary-rotation-180-y-tiled-gen12-rc-ccs-cc@pipe-d-hdmi-a-6.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs@pipe-d-dp-4:
    - shard-dg2-set2:     [PASS][24] -> [INCOMPLETE][25] ([Intel XE#3862]) +1 other test incomplete
   [24]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-dg2-464/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs@pipe-d-dp-4.html
   [25]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-433/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs@pipe-d-dp-4.html

  * igt@kms_chamelium_color@ctm-negative:
    - shard-lnl:          NOTRUN -> [SKIP][26] ([Intel XE#306]) +1 other test skip
   [26]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_chamelium_color@ctm-negative.html
    - shard-adlp:         NOTRUN -> [SKIP][27] ([Intel XE#306]) +1 other test skip
   [27]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_chamelium_color@ctm-negative.html

  * igt@kms_chamelium_hpd@hdmi-hpd:
    - shard-lnl:          NOTRUN -> [SKIP][28] ([Intel XE#373])
   [28]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_chamelium_hpd@hdmi-hpd.html

  * igt@kms_chamelium_hpd@hdmi-hpd-after-hibernate:
    - shard-adlp:         NOTRUN -> [SKIP][29] ([Intel XE#373]) +2 other tests skip
   [29]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-6/igt@kms_chamelium_hpd@hdmi-hpd-after-hibernate.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][30] ([Intel XE#373])
   [30]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-434/igt@kms_chamelium_hpd@hdmi-hpd-after-hibernate.html

  * igt@kms_content_protection@atomic-dpms@pipe-a-dp-2:
    - shard-bmg:          NOTRUN -> [FAIL][31] ([Intel XE#1178])
   [31]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-2/igt@kms_content_protection@atomic-dpms@pipe-a-dp-2.html

  * igt@kms_content_protection@mei-interface:
    - shard-lnl:          NOTRUN -> [SKIP][32] ([Intel XE#1468])
   [32]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_content_protection@mei-interface.html

  * igt@kms_cursor_crc@cursor-offscreen-512x512:
    - shard-adlp:         NOTRUN -> [SKIP][33] ([Intel XE#308])
   [33]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-6/igt@kms_cursor_crc@cursor-offscreen-512x512.html

  * igt@kms_cursor_crc@cursor-random-32x32:
    - shard-lnl:          NOTRUN -> [SKIP][34] ([Intel XE#1424]) +1 other test skip
   [34]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_cursor_crc@cursor-random-32x32.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size:
    - shard-adlp:         NOTRUN -> [SKIP][35] ([Intel XE#309]) +1 other test skip
   [35]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size.html
    - shard-lnl:          NOTRUN -> [SKIP][36] ([Intel XE#309])
   [36]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa-legacy:
    - shard-bmg:          [PASS][37] -> [SKIP][38] ([Intel XE#2291]) +4 other tests skip
   [37]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-2/igt@kms_cursor_legacy@cursorb-vs-flipa-legacy.html
   [38]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-6/igt@kms_cursor_legacy@cursorb-vs-flipa-legacy.html

  * igt@kms_cursor_legacy@flip-vs-cursor-legacy:
    - shard-bmg:          [PASS][39] -> [FAIL][40] ([Intel XE#5299])
   [39]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-6/igt@kms_cursor_legacy@flip-vs-cursor-legacy.html
   [40]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-2/igt@kms_cursor_legacy@flip-vs-cursor-legacy.html

  * igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle:
    - shard-dg2-set2:     NOTRUN -> [SKIP][41] ([Intel XE#323])
   [41]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-434/igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle.html
    - shard-adlp:         NOTRUN -> [SKIP][42] ([Intel XE#323])
   [42]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-6/igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle.html

  * igt@kms_display_modes@extended-mode-basic:
    - shard-bmg:          [PASS][43] -> [SKIP][44] ([Intel XE#4302])
   [43]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-1/igt@kms_display_modes@extended-mode-basic.html
   [44]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-4/igt@kms_display_modes@extended-mode-basic.html

  * igt@kms_dp_link_training@uhbr-mst:
    - shard-lnl:          NOTRUN -> [SKIP][45] ([Intel XE#4354])
   [45]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_dp_link_training@uhbr-mst.html
    - shard-adlp:         NOTRUN -> [SKIP][46] ([Intel XE#4356])
   [46]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_dp_link_training@uhbr-mst.html

  * igt@kms_dp_linktrain_fallback@dp-fallback:
    - shard-adlp:         NOTRUN -> [SKIP][47] ([Intel XE#4331])
   [47]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-6/igt@kms_dp_linktrain_fallback@dp-fallback.html

  * igt@kms_feature_discovery@chamelium:
    - shard-dg2-set2:     NOTRUN -> [SKIP][48] ([Intel XE#701])
   [48]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-466/igt@kms_feature_discovery@chamelium.html

  * igt@kms_feature_discovery@psr1:
    - shard-adlp:         NOTRUN -> [SKIP][49] ([Intel XE#1135])
   [49]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_feature_discovery@psr1.html

  * igt@kms_flip@2x-flip-vs-absolute-wf_vblank-interruptible:
    - shard-adlp:         NOTRUN -> [SKIP][50] ([Intel XE#310]) +1 other test skip
   [50]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_flip@2x-flip-vs-absolute-wf_vblank-interruptible.html
    - shard-lnl:          NOTRUN -> [SKIP][51] ([Intel XE#1421]) +1 other test skip
   [51]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_flip@2x-flip-vs-absolute-wf_vblank-interruptible.html

  * igt@kms_flip@2x-flip-vs-suspend-interruptible@ad-hdmi-a6-dp4:
    - shard-dg2-set2:     [PASS][52] -> [INCOMPLETE][53] ([Intel XE#2049] / [Intel XE#2597]) +1 other test incomplete
   [52]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-dg2-463/igt@kms_flip@2x-flip-vs-suspend-interruptible@ad-hdmi-a6-dp4.html
   [53]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-432/igt@kms_flip@2x-flip-vs-suspend-interruptible@ad-hdmi-a6-dp4.html

  * igt@kms_flip@2x-nonexisting-fb:
    - shard-bmg:          [PASS][54] -> [SKIP][55] ([Intel XE#2316]) +9 other tests skip
   [54]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-1/igt@kms_flip@2x-nonexisting-fb.html
   [55]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-4/igt@kms_flip@2x-nonexisting-fb.html

  * igt@kms_flip@flip-vs-expired-vblank:
    - shard-dg2-set2:     [PASS][56] -> [FAIL][57] ([Intel XE#301])
   [56]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-dg2-466/igt@kms_flip@flip-vs-expired-vblank.html
   [57]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-434/igt@kms_flip@flip-vs-expired-vblank.html

  * igt@kms_flip@flip-vs-expired-vblank@b-dp4:
    - shard-dg2-set2:     [PASS][58] -> [FAIL][59] ([Intel XE#301] / [Intel XE#3321]) +1 other test fail
   [58]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-dg2-466/igt@kms_flip@flip-vs-expired-vblank@b-dp4.html
   [59]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-434/igt@kms_flip@flip-vs-expired-vblank@b-dp4.html

  * igt@kms_flip@flip-vs-expired-vblank@b-hdmi-a1:
    - shard-adlp:         [PASS][60] -> [DMESG-WARN][61] ([Intel XE#4543]) +2 other tests dmesg-warn
   [60]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-adlp-2/igt@kms_flip@flip-vs-expired-vblank@b-hdmi-a1.html
   [61]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-1/igt@kms_flip@flip-vs-expired-vblank@b-hdmi-a1.html

  * igt@kms_flip@flip-vs-panning-vs-hang@d-hdmi-a1:
    - shard-adlp:         NOTRUN -> [DMESG-WARN][62] ([Intel XE#4543]) +1 other test dmesg-warn
   [62]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_flip@flip-vs-panning-vs-hang@d-hdmi-a1.html

  * igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling:
    - shard-adlp:         NOTRUN -> [SKIP][63] ([Intel XE#455]) +6 other tests skip
   [63]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling.html
    - shard-lnl:          NOTRUN -> [SKIP][64] ([Intel XE#1401] / [Intel XE#1745]) +1 other test skip
   [64]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling.html

  * igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling@pipe-a-default-mode:
    - shard-lnl:          NOTRUN -> [SKIP][65] ([Intel XE#1401]) +1 other test skip
   [65]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_flip_scaled_crc@flip-32bpp-yftileccs-to-64bpp-yftile-upscaling@pipe-a-default-mode.html

  * igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling@pipe-a-valid-mode:
    - shard-adlp:         NOTRUN -> [DMESG-FAIL][66] ([Intel XE#4543] / [Intel XE#4921]) +3 other tests dmesg-fail
   [66]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling@pipe-a-valid-mode.html

  * igt@kms_flip_tiling@flip-change-tiling@pipe-b-hdmi-a-1-x-to-y:
    - shard-adlp:         [PASS][67] -> [DMESG-FAIL][68] ([Intel XE#4543])
   [67]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-adlp-8/igt@kms_flip_tiling@flip-change-tiling@pipe-b-hdmi-a-1-x-to-y.html
   [68]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_flip_tiling@flip-change-tiling@pipe-b-hdmi-a-1-x-to-y.html

  * igt@kms_flip_tiling@flip-change-tiling@pipe-d-hdmi-a-1-x-to-x:
    - shard-adlp:         [PASS][69] -> [FAIL][70] ([Intel XE#1874]) +1 other test fail
   [69]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-adlp-8/igt@kms_flip_tiling@flip-change-tiling@pipe-d-hdmi-a-1-x-to-x.html
   [70]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_flip_tiling@flip-change-tiling@pipe-d-hdmi-a-1-x-to-x.html

  * igt@kms_frontbuffer_tracking@drrs-1p-primscrn-cur-indfb-draw-blt:
    - shard-adlp:         NOTRUN -> [SKIP][71] ([Intel XE#651]) +6 other tests skip
   [71]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-6/igt@kms_frontbuffer_tracking@drrs-1p-primscrn-cur-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@drrs-suspend:
    - shard-lnl:          NOTRUN -> [SKIP][72] ([Intel XE#651]) +3 other tests skip
   [72]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_frontbuffer_tracking@drrs-suspend.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-render:
    - shard-adlp:         NOTRUN -> [DMESG-FAIL][73] ([Intel XE#4543]) +5 other tests dmesg-fail
   [73]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-render:
    - shard-adlp:         NOTRUN -> [SKIP][74] ([Intel XE#656]) +17 other tests skip
   [74]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-6/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-indfb-plflip-blt:
    - shard-dg2-set2:     NOTRUN -> [SKIP][75] ([Intel XE#651]) +2 other tests skip
   [75]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-466/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-indfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-move:
    - shard-adlp:         NOTRUN -> [SKIP][76] ([Intel XE#653]) +4 other tests skip
   [76]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-cur-indfb-move.html

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

  * igt@kms_frontbuffer_tracking@psr-shrfb-scaledprimary:
    - shard-dg2-set2:     NOTRUN -> [SKIP][78] ([Intel XE#653]) +4 other tests skip
   [78]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-466/igt@kms_frontbuffer_tracking@psr-shrfb-scaledprimary.html

  * igt@kms_hdr@brightness-with-hdr:
    - shard-lnl:          NOTRUN -> [SKIP][79] ([Intel XE#3374] / [Intel XE#3544])
   [79]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_hdr@brightness-with-hdr.html

  * igt@kms_hdr@static-swap:
    - shard-bmg:          [PASS][80] -> [SKIP][81] ([Intel XE#1503]) +3 other tests skip
   [80]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-3/igt@kms_hdr@static-swap.html
   [81]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-6/igt@kms_hdr@static-swap.html

  * igt@kms_joiner@basic-force-big-joiner:
    - shard-bmg:          [PASS][82] -> [SKIP][83] ([Intel XE#3012])
   [82]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-3/igt@kms_joiner@basic-force-big-joiner.html
   [83]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-6/igt@kms_joiner@basic-force-big-joiner.html

  * igt@kms_pipe_stress@stress-xrgb8888-ytiled:
    - shard-lnl:          NOTRUN -> [SKIP][84] ([Intel XE#4329])
   [84]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_pipe_stress@stress-xrgb8888-ytiled.html

  * igt@kms_plane_multiple@2x-tiling-x:
    - shard-bmg:          [PASS][85] -> [SKIP][86] ([Intel XE#4596])
   [85]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-1/igt@kms_plane_multiple@2x-tiling-x.html
   [86]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-4/igt@kms_plane_multiple@2x-tiling-x.html

  * igt@kms_pm_backlight@fade-with-suspend:
    - shard-adlp:         NOTRUN -> [SKIP][87] ([Intel XE#870])
   [87]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_pm_backlight@fade-with-suspend.html

  * igt@kms_pm_rpm@modeset-non-lpsp-stress:
    - shard-adlp:         NOTRUN -> [SKIP][88] ([Intel XE#836])
   [88]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-6/igt@kms_pm_rpm@modeset-non-lpsp-stress.html

  * igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-exceed-sf:
    - shard-adlp:         NOTRUN -> [SKIP][89] ([Intel XE#1406] / [Intel XE#1489]) +3 other tests skip
   [89]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-exceed-sf.html
    - shard-lnl:          NOTRUN -> [SKIP][90] ([Intel XE#1406] / [Intel XE#2893] / [Intel XE#4608])
   [90]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-exceed-sf.html

  * igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-exceed-sf@pipe-b-edp-1:
    - shard-lnl:          NOTRUN -> [SKIP][91] ([Intel XE#1406] / [Intel XE#4608]) +1 other test skip
   [91]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-exceed-sf@pipe-b-edp-1.html

  * igt@kms_psr2_sf@fbc-psr2-primary-plane-update-sf-dmg-area:
    - shard-dg2-set2:     NOTRUN -> [SKIP][92] ([Intel XE#1406] / [Intel XE#1489])
   [92]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-434/igt@kms_psr2_sf@fbc-psr2-primary-plane-update-sf-dmg-area.html

  * igt@kms_psr2_sf@pr-overlay-primary-update-sf-dmg-area:
    - shard-lnl:          NOTRUN -> [SKIP][93] ([Intel XE#1406] / [Intel XE#2893])
   [93]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_psr2_sf@pr-overlay-primary-update-sf-dmg-area.html

  * igt@kms_psr@fbc-pr-cursor-plane-move:
    - shard-lnl:          NOTRUN -> [SKIP][94] ([Intel XE#1406]) +1 other test skip
   [94]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_psr@fbc-pr-cursor-plane-move.html

  * igt@kms_psr@psr-sprite-plane-onoff:
    - shard-adlp:         NOTRUN -> [SKIP][95] ([Intel XE#1406] / [Intel XE#2850] / [Intel XE#929]) +7 other tests skip
   [95]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-6/igt@kms_psr@psr-sprite-plane-onoff.html

  * igt@kms_setmode@invalid-clone-single-crtc:
    - shard-bmg:          [PASS][96] -> [SKIP][97] ([Intel XE#1435])
   [96]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-2/igt@kms_setmode@invalid-clone-single-crtc.html
   [97]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-6/igt@kms_setmode@invalid-clone-single-crtc.html

  * igt@kms_tv_load_detect@load-detect:
    - shard-lnl:          NOTRUN -> [SKIP][98] ([Intel XE#330])
   [98]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@kms_tv_load_detect@load-detect.html
    - shard-adlp:         NOTRUN -> [SKIP][99] ([Intel XE#330])
   [99]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_tv_load_detect@load-detect.html

  * igt@kms_vrr@negative-basic:
    - shard-bmg:          [PASS][100] -> [SKIP][101] ([Intel XE#1499])
   [100]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-8/igt@kms_vrr@negative-basic.html
   [101]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-6/igt@kms_vrr@negative-basic.html

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

  * igt@xe_copy_basic@mem-copy-linear-0xfd:
    - shard-adlp:         NOTRUN -> [SKIP][103] ([Intel XE#1123])
   [103]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@xe_copy_basic@mem-copy-linear-0xfd.html

  * igt@xe_eu_stall@unprivileged-access:
    - shard-dg2-set2:     NOTRUN -> [SKIP][104] ([Intel XE#5626])
   [104]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-466/igt@xe_eu_stall@unprivileged-access.html

  * igt@xe_eudebug@basic-read-event:
    - shard-adlp:         NOTRUN -> [SKIP][105] ([Intel XE#4837] / [Intel XE#5565]) +4 other tests skip
   [105]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@xe_eudebug@basic-read-event.html

  * igt@xe_eudebug@sysfs-toggle:
    - shard-lnl:          NOTRUN -> [SKIP][106] ([Intel XE#4837]) +3 other tests skip
   [106]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@xe_eudebug@sysfs-toggle.html

  * igt@xe_eudebug_online@interrupt-other-debuggable:
    - shard-dg2-set2:     NOTRUN -> [SKIP][107] ([Intel XE#4837]) +1 other test skip
   [107]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-466/igt@xe_eudebug_online@interrupt-other-debuggable.html

  * igt@xe_evict@evict-beng-large-multi-vm:
    - shard-adlp:         NOTRUN -> [SKIP][108] ([Intel XE#261] / [Intel XE#5564]) +1 other test skip
   [108]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@xe_evict@evict-beng-large-multi-vm.html

  * igt@xe_evict@evict-mixed-many-threads-small:
    - shard-adlp:         NOTRUN -> [SKIP][109] ([Intel XE#261])
   [109]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@xe_evict@evict-mixed-many-threads-small.html
    - shard-lnl:          NOTRUN -> [SKIP][110] ([Intel XE#688]) +1 other test skip
   [110]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@xe_evict@evict-mixed-many-threads-small.html

  * igt@xe_evict_ccs@evict-overcommit-standalone-nofree-reopen:
    - shard-adlp:         NOTRUN -> [SKIP][111] ([Intel XE#688])
   [111]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-6/igt@xe_evict_ccs@evict-overcommit-standalone-nofree-reopen.html

  * igt@xe_exec_basic@multigpu-no-exec-basic-defer-bind:
    - shard-adlp:         NOTRUN -> [SKIP][112] ([Intel XE#1392] / [Intel XE#5575]) +3 other tests skip
   [112]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@xe_exec_basic@multigpu-no-exec-basic-defer-bind.html
    - shard-lnl:          NOTRUN -> [SKIP][113] ([Intel XE#1392]) +1 other test skip
   [113]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@xe_exec_basic@multigpu-no-exec-basic-defer-bind.html

  * igt@xe_exec_fault_mode@many-execqueues-basic:
    - shard-dg2-set2:     NOTRUN -> [SKIP][114] ([Intel XE#288])
   [114]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-434/igt@xe_exec_fault_mode@many-execqueues-basic.html

  * igt@xe_exec_fault_mode@many-execqueues-rebind:
    - shard-adlp:         NOTRUN -> [SKIP][115] ([Intel XE#288] / [Intel XE#5561]) +11 other tests skip
   [115]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@xe_exec_fault_mode@many-execqueues-rebind.html

  * igt@xe_exec_system_allocator@many-large-mmap-file-mlock:
    - shard-adlp:         NOTRUN -> [SKIP][116] ([Intel XE#4915]) +98 other tests skip
   [116]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@xe_exec_system_allocator@many-large-mmap-file-mlock.html

  * igt@xe_exec_system_allocator@threads-many-large-mmap-huge:
    - shard-lnl:          NOTRUN -> [SKIP][117] ([Intel XE#4943]) +5 other tests skip
   [117]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@xe_exec_system_allocator@threads-many-large-mmap-huge.html

  * igt@xe_exec_system_allocator@threads-shared-vm-many-stride-new-race-nomemset:
    - shard-dg2-set2:     NOTRUN -> [SKIP][118] ([Intel XE#4915]) +21 other tests skip
   [118]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-466/igt@xe_exec_system_allocator@threads-shared-vm-many-stride-new-race-nomemset.html

  * igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv:
    - shard-dg2-set2:     NOTRUN -> [ABORT][119] ([Intel XE#5466])
   [119]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-434/igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv.html
    - shard-adlp:         NOTRUN -> [ABORT][120] ([Intel XE#5530])
   [120]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-6/igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv.html

  * igt@xe_mmap@pci-membarrier:
    - shard-lnl:          NOTRUN -> [SKIP][121] ([Intel XE#5100])
   [121]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@xe_mmap@pci-membarrier.html
    - shard-adlp:         NOTRUN -> [SKIP][122] ([Intel XE#5100])
   [122]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@xe_mmap@pci-membarrier.html

  * igt@xe_oa@rc6-disable:
    - shard-adlp:         NOTRUN -> [SKIP][123] ([Intel XE#3573]) +1 other test skip
   [123]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-6/igt@xe_oa@rc6-disable.html

  * igt@xe_pat@display-vs-wb-transient:
    - shard-adlp:         NOTRUN -> [SKIP][124] ([Intel XE#1337] / [Intel XE#5572])
   [124]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-6/igt@xe_pat@display-vs-wb-transient.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][125] ([Intel XE#1337])
   [125]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-434/igt@xe_pat@display-vs-wb-transient.html

  * igt@xe_pat@pat-index-xe2:
    - shard-adlp:         NOTRUN -> [SKIP][126] ([Intel XE#977])
   [126]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@xe_pat@pat-index-xe2.html

  * igt@xe_pm@d3cold-mmap-vram:
    - shard-lnl:          NOTRUN -> [SKIP][127] ([Intel XE#2284] / [Intel XE#366]) +1 other test skip
   [127]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@xe_pm@d3cold-mmap-vram.html

  * igt@xe_pm@s3-d3cold-basic-exec:
    - shard-adlp:         NOTRUN -> [SKIP][128] ([Intel XE#2284] / [Intel XE#366]) +1 other test skip
   [128]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@xe_pm@s3-d3cold-basic-exec.html

  * igt@xe_pmu@fn-engine-activity-load:
    - shard-dg2-set2:     NOTRUN -> [SKIP][129] ([Intel XE#4650]) +1 other test skip
   [129]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-434/igt@xe_pmu@fn-engine-activity-load.html

  * igt@xe_pxp@display-pxp-fb:
    - shard-dg2-set2:     NOTRUN -> [SKIP][130] ([Intel XE#4733])
   [130]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-466/igt@xe_pxp@display-pxp-fb.html

  * igt@xe_pxp@pxp-stale-queue-post-suspend:
    - shard-adlp:         NOTRUN -> [SKIP][131] ([Intel XE#4733] / [Intel XE#5594]) +1 other test skip
   [131]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@xe_pxp@pxp-stale-queue-post-suspend.html

  * igt@xe_query@multigpu-query-config:
    - shard-adlp:         NOTRUN -> [SKIP][132] ([Intel XE#944])
   [132]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@xe_query@multigpu-query-config.html
    - shard-lnl:          NOTRUN -> [SKIP][133] ([Intel XE#944])
   [133]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@xe_query@multigpu-query-config.html

  * igt@xe_render_copy@render-stress-0-copies:
    - shard-adlp:         NOTRUN -> [SKIP][134] ([Intel XE#4814] / [Intel XE#5614])
   [134]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@xe_render_copy@render-stress-0-copies.html

  * igt@xe_sriov_scheduling@equal-throughput:
    - shard-adlp:         NOTRUN -> [DMESG-FAIL][135] ([Intel XE#3868] / [Intel XE#5213] / [Intel XE#5545]) +1 other test dmesg-fail
   [135]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@xe_sriov_scheduling@equal-throughput.html
    - shard-lnl:          NOTRUN -> [SKIP][136] ([Intel XE#4351])
   [136]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-lnl-3/igt@xe_sriov_scheduling@equal-throughput.html

  * igt@xe_sriov_scheduling@nonpreempt-engine-resets@numvfs-random:
    - shard-adlp:         [PASS][137] -> [ABORT][138] ([Intel XE#4917]) +1 other test abort
   [137]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-adlp-8/igt@xe_sriov_scheduling@nonpreempt-engine-resets@numvfs-random.html
   [138]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-8/igt@xe_sriov_scheduling@nonpreempt-engine-resets@numvfs-random.html

  
#### Possible fixes ####

  * igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs:
    - shard-dg2-set2:     [INCOMPLETE][139] ([Intel XE#1727] / [Intel XE#3113] / [Intel XE#4345] / [Intel XE#6168]) -> [PASS][140] +1 other test pass
   [139]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-dg2-433/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs.html
   [140]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-466/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs.html

  * igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-d-hdmi-a-6:
    - shard-dg2-set2:     [INCOMPLETE][141] ([Intel XE#1727] / [Intel XE#3113] / [Intel XE#6168]) -> [PASS][142] +1 other test pass
   [141]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-dg2-433/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-d-hdmi-a-6.html
   [142]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-dg2-466/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-d-hdmi-a-6.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size:
    - shard-bmg:          [SKIP][143] ([Intel XE#2291]) -> [PASS][144] +4 other tests pass
   [143]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-4/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size.html
   [144]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-7/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size.html

  * igt@kms_dp_link_training@non-uhbr-sst:
    - shard-bmg:          [SKIP][145] ([Intel XE#4354]) -> [PASS][146]
   [145]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-6/igt@kms_dp_link_training@non-uhbr-sst.html
   [146]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-2/igt@kms_dp_link_training@non-uhbr-sst.html

  * igt@kms_flip@2x-flip-vs-dpms-on-nop-interruptible:
    - shard-bmg:          [SKIP][147] ([Intel XE#2316]) -> [PASS][148] +7 other tests pass
   [147]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-6/igt@kms_flip@2x-flip-vs-dpms-on-nop-interruptible.html
   [148]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-2/igt@kms_flip@2x-flip-vs-dpms-on-nop-interruptible.html

  * igt@kms_flip@flip-vs-rmfb:
    - shard-adlp:         [DMESG-WARN][149] ([Intel XE#4543] / [Intel XE#5208]) -> [PASS][150]
   [149]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-adlp-8/igt@kms_flip@flip-vs-rmfb.html
   [150]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_flip@flip-vs-rmfb.html

  * igt@kms_flip@flip-vs-rmfb@b-hdmi-a1:
    - shard-adlp:         [DMESG-WARN][151] ([Intel XE#4543]) -> [PASS][152] +5 other tests pass
   [151]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-adlp-8/igt@kms_flip@flip-vs-rmfb@b-hdmi-a1.html
   [152]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_flip@flip-vs-rmfb@b-hdmi-a1.html

  * igt@kms_flip@flip-vs-suspend-interruptible:
    - shard-bmg:          [INCOMPLETE][153] ([Intel XE#2049] / [Intel XE#2597]) -> [PASS][154] +1 other test pass
   [153]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-3/igt@kms_flip@flip-vs-suspend-interruptible.html
   [154]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-5/igt@kms_flip@flip-vs-suspend-interruptible.html

  * igt@kms_flip_tiling@flip-change-tiling@pipe-d-hdmi-a-1-y-to-y:
    - shard-adlp:         [DMESG-FAIL][155] ([Intel XE#4543]) -> [PASS][156]
   [155]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-adlp-8/igt@kms_flip_tiling@flip-change-tiling@pipe-d-hdmi-a-1-y-to-y.html
   [156]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-adlp-9/igt@kms_flip_tiling@flip-change-tiling@pipe-d-hdmi-a-1-y-to-y.html

  * igt@kms_hdr@invalid-metadata-sizes:
    - shard-bmg:          [SKIP][157] ([Intel XE#1503]) -> [PASS][158]
   [157]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-6/igt@kms_hdr@invalid-metadata-sizes.html
   [158]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-1/igt@kms_hdr@invalid-metadata-sizes.html

  * igt@kms_plane_multiple@2x-tiling-4:
    - shard-bmg:          [SKIP][159] ([Intel XE#4596]) -> [PASS][160]
   [159]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-6/igt@kms_plane_multiple@2x-tiling-4.html
   [160]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-1/igt@kms_plane_multiple@2x-tiling-4.html

  * igt@kms_setmode@invalid-clone-single-crtc-stealing:
    - shard-bmg:          [SKIP][161] ([Intel XE#1435]) -> [PASS][162]
   [161]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-6/igt@kms_setmode@invalid-clone-single-crtc-stealing.html
   [162]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-2/igt@kms_setmode@invalid-clone-single-crtc-stealing.html

  
#### Warnings ####

  * igt@kms_content_protection@atomic-dpms:
    - shard-bmg:          [SKIP][163] ([Intel XE#2341]) -> [FAIL][164] ([Intel XE#1178])
   [163]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-4/igt@kms_content_protection@atomic-dpms.html
   [164]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-2/igt@kms_content_protection@atomic-dpms.html

  * igt@kms_content_protection@lic-type-0:
    - shard-bmg:          [FAIL][165] ([Intel XE#1178]) -> [SKIP][166] ([Intel XE#2341])
   [165]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-1/igt@kms_content_protection@lic-type-0.html
   [166]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-6/igt@kms_content_protection@lic-type-0.html

  * igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-render:
    - shard-bmg:          [SKIP][167] ([Intel XE#2311]) -> [SKIP][168] ([Intel XE#2312]) +20 other tests skip
   [167]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-1/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-render.html
   [168]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-6/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-msflip-blt:
    - shard-bmg:          [SKIP][169] ([Intel XE#2312]) -> [SKIP][170] ([Intel XE#5390]) +4 other tests skip
   [169]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-4/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-msflip-blt.html
   [170]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-2/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-indfb-msflip-blt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc:
    - shard-bmg:          [SKIP][171] ([Intel XE#5390]) -> [SKIP][172] ([Intel XE#2312]) +6 other tests skip
   [171]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-1/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc.html
   [172]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-6/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-mmap-wc:
    - shard-bmg:          [SKIP][173] ([Intel XE#2312]) -> [SKIP][174] ([Intel XE#2311]) +14 other tests skip
   [173]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-4/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-mmap-wc.html
   [174]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-7/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-cur-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-blt:
    - shard-bmg:          [SKIP][175] ([Intel XE#2312]) -> [SKIP][176] ([Intel XE#2313]) +12 other tests skip
   [175]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-4/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-blt.html
   [176]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-2/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-fullscreen:
    - shard-bmg:          [SKIP][177] ([Intel XE#2313]) -> [SKIP][178] ([Intel XE#2312]) +19 other tests skip
   [177]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-1/igt@kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-fullscreen.html
   [178]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-4/igt@kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-fullscreen.html

  * igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv:
    - shard-bmg:          [ABORT][179] ([Intel XE#5466] / [Intel XE#5530]) -> [ABORT][180] ([Intel XE#4917] / [Intel XE#5466] / [Intel XE#5530])
   [179]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada/shard-bmg-2/igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv.html
   [180]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v2/shard-bmg-8/igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv.html

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

  [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#1135]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1135
  [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#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#1421]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1421
  [Intel XE#1424]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1424
  [Intel XE#1435]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1435
  [Intel XE#1468]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1468
  [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#1727]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1727
  [Intel XE#1745]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1745
  [Intel XE#1874]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1874
  [Intel XE#2049]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2049
  [Intel XE#2284]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2284
  [Intel XE#2291]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2291
  [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#2341]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2341
  [Intel XE#2597]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2597
  [Intel XE#261]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/261
  [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#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850
  [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#2907]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2907
  [Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301
  [Intel XE#3012]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3012
  [Intel XE#306]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/306
  [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#316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/316
  [Intel XE#323]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/323
  [Intel XE#330]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/330
  [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#3544]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3544
  [Intel XE#3573]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3573
  [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#373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/373
  [Intel XE#3862]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3862
  [Intel XE#3868]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3868
  [Intel XE#3884]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3884
  [Intel XE#4302]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4302
  [Intel XE#4329]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4329
  [Intel XE#4331]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4331
  [Intel XE#4345]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4345
  [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#4356]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4356
  [Intel XE#4543]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4543
  [Intel XE#455]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/455
  [Intel XE#4596]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4596
  [Intel XE#4608]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4608
  [Intel XE#4650]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4650
  [Intel XE#4733]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4733
  [Intel XE#4814]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4814
  [Intel XE#4837]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4837
  [Intel XE#4915]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4915
  [Intel XE#4917]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4917
  [Intel XE#4921]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4921
  [Intel XE#4943]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4943
  [Intel XE#5100]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5100
  [Intel XE#5208]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5208
  [Intel XE#5213]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5213
  [Intel XE#5299]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5299
  [Intel XE#5390]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5390
  [Intel XE#5466]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5466
  [Intel XE#5530]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5530
  [Intel XE#5545]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5545
  [Intel XE#5561]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5561
  [Intel XE#5564]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5564
  [Intel XE#5565]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5565
  [Intel XE#5572]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5572
  [Intel XE#5575]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5575
  [Intel XE#5594]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5594
  [Intel XE#5614]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5614
  [Intel XE#5626]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5626
  [Intel XE#6011]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6011
  [Intel XE#607]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/607
  [Intel XE#610]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/610
  [Intel XE#6168]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6168
  [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#688]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/688
  [Intel XE#701]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/701
  [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#929]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/929
  [Intel XE#944]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/944
  [Intel XE#977]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/977


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

  * Linux: xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada -> xe-pw-154017v2

  IGT_8582: 8582
  xe-3911-c917f7d11493984be9f381ca0a7667bd3e587ada: c917f7d11493984be9f381ca0a7667bd3e587ada
  xe-pw-154017v2: 154017v2

== Logs ==

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

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

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

* Re: [PATCH v5 1/2] drm/xe/guc: Make xe_guc_submit_pause() available for non-VF cases
  2025-10-14  7:30 ` [PATCH v5 1/2] drm/xe/guc: Make xe_guc_submit_pause() available for non-VF cases Raag Jadav
@ 2025-10-14 18:09   ` Matthew Brost
  2025-10-15  7:04     ` Raag Jadav
  0 siblings, 1 reply; 18+ messages in thread
From: Matthew Brost @ 2025-10-14 18:09 UTC (permalink / raw)
  To: Raag Jadav
  Cc: lucas.demarchi, rodrigo.vivi, intel-xe, riana.tauro,
	daniele.ceraolospurio, michal.wajdeczko

On Tue, Oct 14, 2025 at 01:00:35PM +0530, Raag Jadav wrote:
> Drop xe_gt_assert() meant for VF migration and make xe_guc_submit_pause()
> available for non-VF cases.
> 
> Signed-off-by: Raag Jadav <raag.jadav@intel.com>
> ---
>  drivers/gpu/drm/xe/xe_guc_submit.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
> index 0ef67d3523a7..3cc428d45b4a 100644
> --- a/drivers/gpu/drm/xe/xe_guc_submit.c
> +++ b/drivers/gpu/drm/xe/xe_guc_submit.c
> @@ -2170,8 +2170,6 @@ void xe_guc_submit_pause(struct xe_guc *guc)
>  	struct xe_exec_queue *q;
>  	unsigned long index;
>  
> -	xe_gt_assert(guc_to_gt(guc), vf_recovery(guc));
> -

This function does a lot of things specific to VF recovery, it should
not be called in runtime PM flows. Same goes for xe_guc_submit_unpause.

Matt  

>  	mutex_lock(&guc->submission_state.lock);
>  	xa_for_each(&guc->submission_state.exec_queue_lookup, index, q) {
>  		/* Prevent redundant attempts to stop parallel queues */
> -- 
> 2.34.1
> 

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

* Re: [PATCH v5 1/2] drm/xe/guc: Make xe_guc_submit_pause() available for non-VF cases
  2025-10-14 18:09   ` Matthew Brost
@ 2025-10-15  7:04     ` Raag Jadav
  2025-10-16 12:21       ` Raag Jadav
  0 siblings, 1 reply; 18+ messages in thread
From: Raag Jadav @ 2025-10-15  7:04 UTC (permalink / raw)
  To: Matthew Brost
  Cc: lucas.demarchi, rodrigo.vivi, intel-xe, riana.tauro,
	daniele.ceraolospurio, michal.wajdeczko

On Tue, Oct 14, 2025 at 11:09:19AM -0700, Matthew Brost wrote:
> On Tue, Oct 14, 2025 at 01:00:35PM +0530, Raag Jadav wrote:
> > Drop xe_gt_assert() meant for VF migration and make xe_guc_submit_pause()
> > available for non-VF cases.
> > 
> > Signed-off-by: Raag Jadav <raag.jadav@intel.com>
> > ---
> >  drivers/gpu/drm/xe/xe_guc_submit.c | 2 --
> >  1 file changed, 2 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
> > index 0ef67d3523a7..3cc428d45b4a 100644
> > --- a/drivers/gpu/drm/xe/xe_guc_submit.c
> > +++ b/drivers/gpu/drm/xe/xe_guc_submit.c
> > @@ -2170,8 +2170,6 @@ void xe_guc_submit_pause(struct xe_guc *guc)
> >  	struct xe_exec_queue *q;
> >  	unsigned long index;
> >  
> > -	xe_gt_assert(guc_to_gt(guc), vf_recovery(guc));
> > -
> 
> This function does a lot of things specific to VF recovery, it should
> not be called in runtime PM flows. Same goes for xe_guc_submit_unpause.

Can we branch them out inside pause/unpause()? Or is there a better
alternative?

Considering we'd still like to achieve the original pause/unpause()
behaviour here (stop/start submission on a scheduler without loosing
GuC state), do you suspect any side-effects?

Raag

> >  	mutex_lock(&guc->submission_state.lock);
> >  	xa_for_each(&guc->submission_state.exec_queue_lookup, index, q) {
> >  		/* Prevent redundant attempts to stop parallel queues */
> > -- 
> > 2.34.1
> > 

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

* Re: [PATCH v5 1/2] drm/xe/guc: Make xe_guc_submit_pause() available for non-VF cases
  2025-10-15  7:04     ` Raag Jadav
@ 2025-10-16 12:21       ` Raag Jadav
  2025-10-16 19:01         ` Matthew Brost
  0 siblings, 1 reply; 18+ messages in thread
From: Raag Jadav @ 2025-10-16 12:21 UTC (permalink / raw)
  To: Matthew Brost
  Cc: lucas.demarchi, rodrigo.vivi, intel-xe, riana.tauro,
	daniele.ceraolospurio, michal.wajdeczko

On Wed, Oct 15, 2025 at 09:04:18AM +0200, Raag Jadav wrote:
> On Tue, Oct 14, 2025 at 11:09:19AM -0700, Matthew Brost wrote:
> > On Tue, Oct 14, 2025 at 01:00:35PM +0530, Raag Jadav wrote:
> > > Drop xe_gt_assert() meant for VF migration and make xe_guc_submit_pause()
> > > available for non-VF cases.
> > > 
> > > Signed-off-by: Raag Jadav <raag.jadav@intel.com>
> > > ---
> > >  drivers/gpu/drm/xe/xe_guc_submit.c | 2 --
> > >  1 file changed, 2 deletions(-)
> > > 
> > > diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
> > > index 0ef67d3523a7..3cc428d45b4a 100644
> > > --- a/drivers/gpu/drm/xe/xe_guc_submit.c
> > > +++ b/drivers/gpu/drm/xe/xe_guc_submit.c
> > > @@ -2170,8 +2170,6 @@ void xe_guc_submit_pause(struct xe_guc *guc)
> > >  	struct xe_exec_queue *q;
> > >  	unsigned long index;
> > >  
> > > -	xe_gt_assert(guc_to_gt(guc), vf_recovery(guc));
> > > -
> > 
> > This function does a lot of things specific to VF recovery, it should
> > not be called in runtime PM flows. Same goes for xe_guc_submit_unpause.
> 
> Can we branch them out inside pause/unpause()? Or is there a better
> alternative?
> 
> Considering we'd still like to achieve the original pause/unpause()
> behaviour here (stop/start submission on a scheduler without loosing
> GuC state), do you suspect any side-effects?

I came up with something like this, but not sure if this is correct way
to do this. Let me know what you think.

diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
index 0ef67d3523a7..8ee6069abe99 100644
--- a/drivers/gpu/drm/xe/xe_guc_submit.c
+++ b/drivers/gpu/drm/xe/xe_guc_submit.c
@@ -2127,6 +2127,11 @@ static void guc_exec_queue_pause(struct xe_guc *guc, struct xe_exec_queue *q)
 
 	/* Stop scheduling + flush any DRM scheduler operations */
 	xe_sched_submission_stop(sched);
+
+	/* Non-VF cases don't need migration */
+	if (!IS_SRIOV_VF(guc_to_xe(guc)))
+		return;
+
 	if (xe_exec_queue_is_lr(q))
 		cancel_work_sync(&q->guc->lr_tdr);
 	else
@@ -2170,8 +2175,6 @@ void xe_guc_submit_pause(struct xe_guc *guc)
 	struct xe_exec_queue *q;
 	unsigned long index;
 
-	xe_gt_assert(guc_to_gt(guc), vf_recovery(guc));
-
 	mutex_lock(&guc->submission_state.lock);
 	xa_for_each(&guc->submission_state.exec_queue_lookup, index, q) {
 		/* Prevent redundant attempts to stop parallel queues */
@@ -2325,6 +2328,12 @@ static void guc_exec_queue_unpause(struct xe_guc *guc, struct xe_exec_queue *q)
 
 	lockdep_assert_held(&guc->submission_state.lock);
 
+	/* Non-VF cases don't need migration */
+	if (!IS_SRIOV_VF(guc_to_xe(guc))) {
+		xe_sched_submission_start(sched);
+		return;
+	}
+
 	xe_sched_resubmit_jobs(sched);
 	guc_exec_queue_replay_pending_state_change(q);
 	xe_sched_submission_start(sched);

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

* ✗ CI.checkpatch: warning for Introduce GT runtime suspend/resume (rev3)
  2025-10-14  7:30 [PATCH v5 0/2] Introduce GT runtime suspend/resume Raag Jadav
                   ` (4 preceding siblings ...)
  2025-10-14 15:40 ` ✗ Xe.CI.Full: failure " Patchwork
@ 2025-10-16 13:03 ` Patchwork
  2025-10-16 13:04 ` ✓ CI.KUnit: success " Patchwork
                   ` (2 subsequent siblings)
  8 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2025-10-16 13:03 UTC (permalink / raw)
  To: Raag Jadav; +Cc: intel-xe

== Series Details ==

Series: Introduce GT runtime suspend/resume (rev3)
URL   : https://patchwork.freedesktop.org/series/154017/
State : warning

== Summary ==

+ KERNEL=/kernel
+ git clone https://gitlab.freedesktop.org/drm/maintainer-tools mt
Cloning into 'mt'...
warning: redirecting to https://gitlab.freedesktop.org/drm/maintainer-tools.git/
+ git -C mt rev-list -n1 origin/master
fbd08a78c3a3bb17964db2a326514c69c1dca660
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ git log -n1
commit 29f4b6eab54d27b93c0bee7aa1d9ea29e09635cb
Author: Raag Jadav <raag.jadav@intel.com>
Date:   Tue Oct 14 13:00:36 2025 +0530

    drm/xe/gt: Introduce runtime suspend/resume
    
    If power state is retained between suspend/resume cycle, we don't need
    to perform full GT re-initialization. Introduce runtime helpers for GT
    which greatly reduce suspend/resume delay.
    
    v2: Drop redundant xe_gt_sanitize() and xe_guc_ct_stop() (Daniele)
        Use runtime naming for guc helpers (Daniele)
    v3: Drop redundant logging, add kernel doc (Michal)
        Use runtime naming for ct helpers (Michal)
    v4: Fix tags (Rodrigo)
    v5: Include host_l2_vram workaround (Daniele)
        Reuse xe_guc_submit_enable/disable() helpers (Daniele)
    
    Co-developed-by: Riana Tauro <riana.tauro@intel.com>
    Signed-off-by: Riana Tauro <riana.tauro@intel.com>
    Signed-off-by: Raag Jadav <raag.jadav@intel.com>
+ /mt/dim checkpatch c381038b8c345fb0313a67c6eef0a596e5e91070 drm-intel
24509b763b23 drm/xe/guc: Make xe_guc_submit_pause() available for non-VF cases
-:10: WARNING:COMMIT_LOG_LONG_LINE: Prefer a maximum 75 chars per line (possible unwrapped commit description?)
#10: 
> > > Drop xe_gt_assert() meant for VF migration and make xe_guc_submit_pause()

-:36: WARNING:TYPO_SPELLING: 'loosing' may be misspelled - perhaps 'losing'?
#36: 
> behaviour here (stop/start submission on a scheduler without loosing
                                                               ^^^^^^^

-:79: ERROR:MISSING_SIGN_OFF: Missing Signed-off-by: line(s)

total: 1 errors, 2 warnings, 0 checks, 31 lines checked
29f4b6eab54d drm/xe/gt: Introduce runtime suspend/resume



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

* ✓ CI.KUnit: success for Introduce GT runtime suspend/resume (rev3)
  2025-10-14  7:30 [PATCH v5 0/2] Introduce GT runtime suspend/resume Raag Jadav
                   ` (5 preceding siblings ...)
  2025-10-16 13:03 ` ✗ CI.checkpatch: warning for Introduce GT runtime suspend/resume (rev3) Patchwork
@ 2025-10-16 13:04 ` Patchwork
  2025-10-16 14:08 ` ✓ Xe.CI.BAT: " Patchwork
  2025-10-17  9:43 ` ✓ Xe.CI.Full: " Patchwork
  8 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2025-10-16 13:04 UTC (permalink / raw)
  To: Raag Jadav; +Cc: intel-xe

== Series Details ==

Series: Introduce GT runtime suspend/resume (rev3)
URL   : https://patchwork.freedesktop.org/series/154017/
State : success

== Summary ==

+ trap cleanup EXIT
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/xe/.kunitconfig
[13:03:29] Configuring KUnit Kernel ...
Generating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[13:03:33] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[13:04:04] Starting KUnit Kernel (1/1)...
[13:04:04] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[13:04:04] ================== guc_buf (11 subtests) ===================
[13:04:04] [PASSED] test_smallest
[13:04:04] [PASSED] test_largest
[13:04:04] [PASSED] test_granular
[13:04:04] [PASSED] test_unique
[13:04:04] [PASSED] test_overlap
[13:04:04] [PASSED] test_reusable
[13:04:04] [PASSED] test_too_big
[13:04:04] [PASSED] test_flush
[13:04:04] [PASSED] test_lookup
[13:04:04] [PASSED] test_data
[13:04:04] [PASSED] test_class
[13:04:04] ===================== [PASSED] guc_buf =====================
[13:04:04] =================== guc_dbm (7 subtests) ===================
[13:04:04] [PASSED] test_empty
[13:04:04] [PASSED] test_default
[13:04:04] ======================== test_size  ========================
[13:04:04] [PASSED] 4
[13:04:04] [PASSED] 8
[13:04:04] [PASSED] 32
[13:04:04] [PASSED] 256
[13:04:04] ==================== [PASSED] test_size ====================
[13:04:04] ======================= test_reuse  ========================
[13:04:04] [PASSED] 4
[13:04:04] [PASSED] 8
[13:04:04] [PASSED] 32
[13:04:04] [PASSED] 256
[13:04:04] =================== [PASSED] test_reuse ====================
[13:04:04] =================== test_range_overlap  ====================
[13:04:04] [PASSED] 4
[13:04:04] [PASSED] 8
[13:04:04] [PASSED] 32
[13:04:04] [PASSED] 256
[13:04:04] =============== [PASSED] test_range_overlap ================
[13:04:04] =================== test_range_compact  ====================
[13:04:04] [PASSED] 4
[13:04:04] [PASSED] 8
[13:04:04] [PASSED] 32
[13:04:04] [PASSED] 256
[13:04:04] =============== [PASSED] test_range_compact ================
[13:04:04] ==================== test_range_spare  =====================
[13:04:04] [PASSED] 4
[13:04:04] [PASSED] 8
[13:04:04] [PASSED] 32
[13:04:04] [PASSED] 256
[13:04:04] ================ [PASSED] test_range_spare =================
[13:04:04] ===================== [PASSED] guc_dbm =====================
[13:04:04] =================== guc_idm (6 subtests) ===================
[13:04:04] [PASSED] bad_init
[13:04:04] [PASSED] no_init
[13:04:04] [PASSED] init_fini
[13:04:04] [PASSED] check_used
[13:04:04] [PASSED] check_quota
[13:04:04] [PASSED] check_all
[13:04:04] ===================== [PASSED] guc_idm =====================
[13:04:04] ================== no_relay (3 subtests) ===================
[13:04:04] [PASSED] xe_drops_guc2pf_if_not_ready
[13:04:04] [PASSED] xe_drops_guc2vf_if_not_ready
[13:04:04] [PASSED] xe_rejects_send_if_not_ready
[13:04:04] ==================== [PASSED] no_relay =====================
[13:04:04] ================== pf_relay (14 subtests) ==================
[13:04:04] [PASSED] pf_rejects_guc2pf_too_short
[13:04:04] [PASSED] pf_rejects_guc2pf_too_long
[13:04:04] [PASSED] pf_rejects_guc2pf_no_payload
[13:04:04] [PASSED] pf_fails_no_payload
[13:04:04] [PASSED] pf_fails_bad_origin
[13:04:04] [PASSED] pf_fails_bad_type
[13:04:04] [PASSED] pf_txn_reports_error
[13:04:04] [PASSED] pf_txn_sends_pf2guc
[13:04:04] [PASSED] pf_sends_pf2guc
[13:04:04] [SKIPPED] pf_loopback_nop
[13:04:04] [SKIPPED] pf_loopback_echo
[13:04:04] [SKIPPED] pf_loopback_fail
[13:04:04] [SKIPPED] pf_loopback_busy
[13:04:04] [SKIPPED] pf_loopback_retry
[13:04:04] ==================== [PASSED] pf_relay =====================
[13:04:04] ================== vf_relay (3 subtests) ===================
[13:04:04] [PASSED] vf_rejects_guc2vf_too_short
[13:04:04] [PASSED] vf_rejects_guc2vf_too_long
[13:04:04] [PASSED] vf_rejects_guc2vf_no_payload
[13:04:04] ==================== [PASSED] vf_relay =====================
[13:04:04] ===================== lmtt (1 subtest) =====================
[13:04:04] ======================== test_ops  =========================
[13:04:04] [PASSED] 2-level
[13:04:04] [PASSED] multi-level
[13:04:04] ==================== [PASSED] test_ops =====================
[13:04:04] ====================== [PASSED] lmtt =======================
[13:04:04] ================= pf_service (11 subtests) =================
[13:04:04] [PASSED] pf_negotiate_any
[13:04:04] [PASSED] pf_negotiate_base_match
[13:04:04] [PASSED] pf_negotiate_base_newer
[13:04:04] [PASSED] pf_negotiate_base_next
[13:04:04] [SKIPPED] pf_negotiate_base_older
[13:04:04] [PASSED] pf_negotiate_base_prev
[13:04:04] [PASSED] pf_negotiate_latest_match
[13:04:04] [PASSED] pf_negotiate_latest_newer
[13:04:04] [PASSED] pf_negotiate_latest_next
[13:04:04] [SKIPPED] pf_negotiate_latest_older
[13:04:04] [SKIPPED] pf_negotiate_latest_prev
[13:04:04] =================== [PASSED] pf_service ====================
[13:04:04] ================= xe_guc_g2g (2 subtests) ==================
[13:04:04] ============== xe_live_guc_g2g_kunit_default  ==============
[13:04:04] ========= [SKIPPED] xe_live_guc_g2g_kunit_default ==========
[13:04:04] ============== xe_live_guc_g2g_kunit_allmem  ===============
[13:04:04] ========== [SKIPPED] xe_live_guc_g2g_kunit_allmem ==========
[13:04:04] =================== [SKIPPED] xe_guc_g2g ===================
[13:04:04] =================== xe_mocs (2 subtests) ===================
[13:04:04] ================ xe_live_mocs_kernel_kunit  ================
[13:04:04] =========== [SKIPPED] xe_live_mocs_kernel_kunit ============
[13:04:04] ================ xe_live_mocs_reset_kunit  =================
[13:04:04] ============ [SKIPPED] xe_live_mocs_reset_kunit ============
[13:04:04] ==================== [SKIPPED] xe_mocs =====================
[13:04:04] ================= xe_migrate (2 subtests) ==================
[13:04:04] ================= xe_migrate_sanity_kunit  =================
[13:04:04] ============ [SKIPPED] xe_migrate_sanity_kunit =============
[13:04:04] ================== xe_validate_ccs_kunit  ==================
[13:04:04] ============= [SKIPPED] xe_validate_ccs_kunit ==============
[13:04:04] =================== [SKIPPED] xe_migrate ===================
[13:04:04] ================== xe_dma_buf (1 subtest) ==================
[13:04:04] ==================== xe_dma_buf_kunit  =====================
[13:04:04] ================ [SKIPPED] xe_dma_buf_kunit ================
[13:04:04] =================== [SKIPPED] xe_dma_buf ===================
[13:04:04] ================= xe_bo_shrink (1 subtest) =================
[13:04:04] =================== xe_bo_shrink_kunit  ====================
[13:04:04] =============== [SKIPPED] xe_bo_shrink_kunit ===============
[13:04:04] ================== [SKIPPED] xe_bo_shrink ==================
[13:04:04] ==================== xe_bo (2 subtests) ====================
[13:04:04] ================== xe_ccs_migrate_kunit  ===================
[13:04:04] ============== [SKIPPED] xe_ccs_migrate_kunit ==============
[13:04:04] ==================== xe_bo_evict_kunit  ====================
[13:04:04] =============== [SKIPPED] xe_bo_evict_kunit ================
[13:04:04] ===================== [SKIPPED] xe_bo ======================
[13:04:04] ==================== args (11 subtests) ====================
[13:04:04] [PASSED] count_args_test
[13:04:04] [PASSED] call_args_example
[13:04:04] [PASSED] call_args_test
[13:04:04] [PASSED] drop_first_arg_example
[13:04:04] [PASSED] drop_first_arg_test
[13:04:04] [PASSED] first_arg_example
[13:04:04] [PASSED] first_arg_test
[13:04:04] [PASSED] last_arg_example
[13:04:04] [PASSED] last_arg_test
[13:04:04] [PASSED] pick_arg_example
[13:04:04] [PASSED] sep_comma_example
[13:04:04] ====================== [PASSED] args =======================
[13:04:04] =================== xe_pci (3 subtests) ====================
[13:04:04] ==================== check_graphics_ip  ====================
[13:04:04] [PASSED] 12.00 Xe_LP
[13:04:04] [PASSED] 12.10 Xe_LP+
[13:04:04] [PASSED] 12.55 Xe_HPG
[13:04:04] [PASSED] 12.60 Xe_HPC
[13:04:04] [PASSED] 12.70 Xe_LPG
[13:04:04] [PASSED] 12.71 Xe_LPG
[13:04:04] [PASSED] 12.74 Xe_LPG+
[13:04:04] [PASSED] 20.01 Xe2_HPG
[13:04:04] [PASSED] 20.02 Xe2_HPG
[13:04:04] [PASSED] 20.04 Xe2_LPG
[13:04:04] [PASSED] 30.00 Xe3_LPG
[13:04:04] [PASSED] 30.01 Xe3_LPG
[13:04:04] [PASSED] 30.03 Xe3_LPG
[13:04:04] ================ [PASSED] check_graphics_ip ================
[13:04:04] ===================== check_media_ip  ======================
[13:04:04] [PASSED] 12.00 Xe_M
[13:04:04] [PASSED] 12.55 Xe_HPM
[13:04:04] [PASSED] 13.00 Xe_LPM+
[13:04:04] [PASSED] 13.01 Xe2_HPM
[13:04:04] [PASSED] 20.00 Xe2_LPM
[13:04:04] [PASSED] 30.00 Xe3_LPM
[13:04:04] [PASSED] 30.02 Xe3_LPM
[13:04:04] ================= [PASSED] check_media_ip ==================
[13:04:04] ================= check_platform_gt_count  =================
[13:04:04] [PASSED] 0x9A60 (TIGERLAKE)
[13:04:04] [PASSED] 0x9A68 (TIGERLAKE)
[13:04:04] [PASSED] 0x9A70 (TIGERLAKE)
[13:04:04] [PASSED] 0x9A40 (TIGERLAKE)
[13:04:04] [PASSED] 0x9A49 (TIGERLAKE)
[13:04:04] [PASSED] 0x9A59 (TIGERLAKE)
[13:04:04] [PASSED] 0x9A78 (TIGERLAKE)
[13:04:04] [PASSED] 0x9AC0 (TIGERLAKE)
[13:04:04] [PASSED] 0x9AC9 (TIGERLAKE)
[13:04:04] [PASSED] 0x9AD9 (TIGERLAKE)
[13:04:04] [PASSED] 0x9AF8 (TIGERLAKE)
[13:04:04] [PASSED] 0x4C80 (ROCKETLAKE)
[13:04:04] [PASSED] 0x4C8A (ROCKETLAKE)
[13:04:04] [PASSED] 0x4C8B (ROCKETLAKE)
[13:04:04] [PASSED] 0x4C8C (ROCKETLAKE)
[13:04:04] [PASSED] 0x4C90 (ROCKETLAKE)
[13:04:04] [PASSED] 0x4C9A (ROCKETLAKE)
[13:04:04] [PASSED] 0x4680 (ALDERLAKE_S)
[13:04:04] [PASSED] 0x4682 (ALDERLAKE_S)
[13:04:04] [PASSED] 0x4688 (ALDERLAKE_S)
[13:04:04] [PASSED] 0x468A (ALDERLAKE_S)
[13:04:04] [PASSED] 0x468B (ALDERLAKE_S)
[13:04:04] [PASSED] 0x4690 (ALDERLAKE_S)
[13:04:04] [PASSED] 0x4692 (ALDERLAKE_S)
[13:04:04] [PASSED] 0x4693 (ALDERLAKE_S)
[13:04:04] [PASSED] 0x46A0 (ALDERLAKE_P)
[13:04:04] [PASSED] 0x46A1 (ALDERLAKE_P)
[13:04:04] [PASSED] 0x46A2 (ALDERLAKE_P)
[13:04:04] [PASSED] 0x46A3 (ALDERLAKE_P)
[13:04:04] [PASSED] 0x46A6 (ALDERLAKE_P)
[13:04:04] [PASSED] 0x46A8 (ALDERLAKE_P)
[13:04:04] [PASSED] 0x46AA (ALDERLAKE_P)
[13:04:04] [PASSED] 0x462A (ALDERLAKE_P)
[13:04:04] [PASSED] 0x4626 (ALDERLAKE_P)
[13:04:04] [PASSED] 0x4628 (ALDERLAKE_P)
[13:04:04] [PASSED] 0x46B0 (ALDERLAKE_P)
[13:04:04] [PASSED] 0x46B1 (ALDERLAKE_P)
[13:04:04] [PASSED] 0x46B2 (ALDERLAKE_P)
[13:04:04] [PASSED] 0x46B3 (ALDERLAKE_P)
[13:04:04] [PASSED] 0x46C0 (ALDERLAKE_P)
[13:04:04] [PASSED] 0x46C1 (ALDERLAKE_P)
[13:04:04] [PASSED] 0x46C2 (ALDERLAKE_P)
[13:04:04] [PASSED] 0x46C3 (ALDERLAKE_P)
[13:04:04] [PASSED] 0x46D0 (ALDERLAKE_N)
[13:04:04] [PASSED] 0x46D1 (ALDERLAKE_N)
[13:04:04] [PASSED] 0x46D2 (ALDERLAKE_N)
[13:04:04] [PASSED] 0x46D3 (ALDERLAKE_N)
[13:04:04] [PASSED] 0x46D4 (ALDERLAKE_N)
[13:04:04] [PASSED] 0xA721 (ALDERLAKE_P)
[13:04:04] [PASSED] 0xA7A1 (ALDERLAKE_P)
[13:04:04] [PASSED] 0xA7A9 (ALDERLAKE_P)
[13:04:04] [PASSED] 0xA7AC (ALDERLAKE_P)
[13:04:04] [PASSED] 0xA7AD (ALDERLAKE_P)
[13:04:04] [PASSED] 0xA720 (ALDERLAKE_P)
[13:04:04] [PASSED] 0xA7A0 (ALDERLAKE_P)
[13:04:04] [PASSED] 0xA7A8 (ALDERLAKE_P)
[13:04:04] [PASSED] 0xA7AA (ALDERLAKE_P)
[13:04:04] [PASSED] 0xA7AB (ALDERLAKE_P)
[13:04:04] [PASSED] 0xA780 (ALDERLAKE_S)
[13:04:04] [PASSED] 0xA781 (ALDERLAKE_S)
[13:04:04] [PASSED] 0xA782 (ALDERLAKE_S)
[13:04:04] [PASSED] 0xA783 (ALDERLAKE_S)
[13:04:04] [PASSED] 0xA788 (ALDERLAKE_S)
[13:04:04] [PASSED] 0xA789 (ALDERLAKE_S)
[13:04:04] [PASSED] 0xA78A (ALDERLAKE_S)
[13:04:04] [PASSED] 0xA78B (ALDERLAKE_S)
[13:04:04] [PASSED] 0x4905 (DG1)
[13:04:04] [PASSED] 0x4906 (DG1)
[13:04:04] [PASSED] 0x4907 (DG1)
[13:04:04] [PASSED] 0x4908 (DG1)
[13:04:04] [PASSED] 0x4909 (DG1)
[13:04:04] [PASSED] 0x56C0 (DG2)
[13:04:04] [PASSED] 0x56C2 (DG2)
[13:04:04] [PASSED] 0x56C1 (DG2)
[13:04:04] [PASSED] 0x7D51 (METEORLAKE)
[13:04:04] [PASSED] 0x7DD1 (METEORLAKE)
[13:04:04] [PASSED] 0x7D41 (METEORLAKE)
[13:04:04] [PASSED] 0x7D67 (METEORLAKE)
[13:04:04] [PASSED] 0xB640 (METEORLAKE)
[13:04:04] [PASSED] 0x56A0 (DG2)
[13:04:04] [PASSED] 0x56A1 (DG2)
[13:04:04] [PASSED] 0x56A2 (DG2)
[13:04:04] [PASSED] 0x56BE (DG2)
[13:04:04] [PASSED] 0x56BF (DG2)
[13:04:04] [PASSED] 0x5690 (DG2)
[13:04:04] [PASSED] 0x5691 (DG2)
[13:04:04] [PASSED] 0x5692 (DG2)
[13:04:04] [PASSED] 0x56A5 (DG2)
[13:04:04] [PASSED] 0x56A6 (DG2)
[13:04:04] [PASSED] 0x56B0 (DG2)
[13:04:04] [PASSED] 0x56B1 (DG2)
[13:04:04] [PASSED] 0x56BA (DG2)
[13:04:04] [PASSED] 0x56BB (DG2)
[13:04:04] [PASSED] 0x56BC (DG2)
[13:04:04] [PASSED] 0x56BD (DG2)
[13:04:04] [PASSED] 0x5693 (DG2)
[13:04:04] [PASSED] 0x5694 (DG2)
[13:04:04] [PASSED] 0x5695 (DG2)
[13:04:04] [PASSED] 0x56A3 (DG2)
[13:04:04] [PASSED] 0x56A4 (DG2)
[13:04:04] [PASSED] 0x56B2 (DG2)
[13:04:04] [PASSED] 0x56B3 (DG2)
[13:04:04] [PASSED] 0x5696 (DG2)
[13:04:04] [PASSED] 0x5697 (DG2)
[13:04:04] [PASSED] 0xB69 (PVC)
[13:04:04] [PASSED] 0xB6E (PVC)
[13:04:04] [PASSED] 0xBD4 (PVC)
[13:04:04] [PASSED] 0xBD5 (PVC)
[13:04:04] [PASSED] 0xBD6 (PVC)
[13:04:04] [PASSED] 0xBD7 (PVC)
[13:04:04] [PASSED] 0xBD8 (PVC)
[13:04:04] [PASSED] 0xBD9 (PVC)
[13:04:04] [PASSED] 0xBDA (PVC)
[13:04:04] [PASSED] 0xBDB (PVC)
[13:04:04] [PASSED] 0xBE0 (PVC)
[13:04:04] [PASSED] 0xBE1 (PVC)
[13:04:04] [PASSED] 0xBE5 (PVC)
[13:04:04] [PASSED] 0x7D40 (METEORLAKE)
[13:04:04] [PASSED] 0x7D45 (METEORLAKE)
[13:04:04] [PASSED] 0x7D55 (METEORLAKE)
[13:04:04] [PASSED] 0x7D60 (METEORLAKE)
[13:04:04] [PASSED] 0x7DD5 (METEORLAKE)
[13:04:04] [PASSED] 0x6420 (LUNARLAKE)
[13:04:04] [PASSED] 0x64A0 (LUNARLAKE)
[13:04:04] [PASSED] 0x64B0 (LUNARLAKE)
[13:04:04] [PASSED] 0xE202 (BATTLEMAGE)
[13:04:04] [PASSED] 0xE209 (BATTLEMAGE)
[13:04:04] [PASSED] 0xE20B (BATTLEMAGE)
[13:04:04] [PASSED] 0xE20C (BATTLEMAGE)
[13:04:04] [PASSED] 0xE20D (BATTLEMAGE)
[13:04:04] [PASSED] 0xE210 (BATTLEMAGE)
[13:04:04] [PASSED] 0xE211 (BATTLEMAGE)
[13:04:04] [PASSED] 0xE212 (BATTLEMAGE)
[13:04:04] [PASSED] 0xE216 (BATTLEMAGE)
[13:04:04] [PASSED] 0xE220 (BATTLEMAGE)
[13:04:04] [PASSED] 0xE221 (BATTLEMAGE)
[13:04:04] [PASSED] 0xE222 (BATTLEMAGE)
[13:04:04] [PASSED] 0xE223 (BATTLEMAGE)
[13:04:04] [PASSED] 0xB080 (PANTHERLAKE)
[13:04:04] [PASSED] 0xB081 (PANTHERLAKE)
[13:04:04] [PASSED] 0xB082 (PANTHERLAKE)
[13:04:04] [PASSED] 0xB083 (PANTHERLAKE)
[13:04:04] [PASSED] 0xB084 (PANTHERLAKE)
[13:04:04] [PASSED] 0xB085 (PANTHERLAKE)
[13:04:04] [PASSED] 0xB086 (PANTHERLAKE)
[13:04:04] [PASSED] 0xB087 (PANTHERLAKE)
[13:04:04] [PASSED] 0xB08F (PANTHERLAKE)
[13:04:04] [PASSED] 0xB090 (PANTHERLAKE)
[13:04:04] [PASSED] 0xB0A0 (PANTHERLAKE)
[13:04:04] [PASSED] 0xB0B0 (PANTHERLAKE)
[13:04:04] [PASSED] 0xFD80 (PANTHERLAKE)
[13:04:04] [PASSED] 0xFD81 (PANTHERLAKE)
[13:04:04] ============= [PASSED] check_platform_gt_count =============
[13:04:04] ===================== [PASSED] xe_pci ======================
[13:04:04] =================== xe_rtp (2 subtests) ====================
[13:04:04] =============== xe_rtp_process_to_sr_tests  ================
[13:04:04] [PASSED] coalesce-same-reg
[13:04:04] [PASSED] no-match-no-add
[13:04:04] [PASSED] match-or
[13:04:04] [PASSED] match-or-xfail
[13:04:04] [PASSED] no-match-no-add-multiple-rules
[13:04:04] [PASSED] two-regs-two-entries
[13:04:04] [PASSED] clr-one-set-other
[13:04:04] [PASSED] set-field
[13:04:04] [PASSED] conflict-duplicate
[13:04:04] [PASSED] conflict-not-disjoint
[13:04:04] [PASSED] conflict-reg-type
[13:04:04] =========== [PASSED] xe_rtp_process_to_sr_tests ============
[13:04:04] ================== xe_rtp_process_tests  ===================
[13:04:04] [PASSED] active1
[13:04:04] [PASSED] active2
[13:04:04] [PASSED] active-inactive
[13:04:04] [PASSED] inactive-active
[13:04:04] [PASSED] inactive-1st_or_active-inactive
[13:04:04] [PASSED] inactive-2nd_or_active-inactive
[13:04:04] [PASSED] inactive-last_or_active-inactive
[13:04:04] [PASSED] inactive-no_or_active-inactive
[13:04:04] ============== [PASSED] xe_rtp_process_tests ===============
[13:04:04] ===================== [PASSED] xe_rtp ======================
[13:04:04] ==================== xe_wa (1 subtest) =====================
[13:04:04] ======================== xe_wa_gt  =========================
[13:04:04] [PASSED] TIGERLAKE B0
[13:04:04] [PASSED] DG1 A0
[13:04:04] [PASSED] DG1 B0
[13:04:04] [PASSED] ALDERLAKE_S A0
[13:04:04] [PASSED] ALDERLAKE_S B0
stty: 'standard input': Inappropriate ioctl for device
[13:04:04] [PASSED] ALDERLAKE_S C0
[13:04:04] [PASSED] ALDERLAKE_S D0
[13:04:04] [PASSED] ALDERLAKE_P A0
[13:04:04] [PASSED] ALDERLAKE_P B0
[13:04:04] [PASSED] ALDERLAKE_P C0
[13:04:04] [PASSED] ALDERLAKE_S RPLS D0
[13:04:04] [PASSED] ALDERLAKE_P RPLU E0
[13:04:04] [PASSED] DG2 G10 C0
[13:04:04] [PASSED] DG2 G11 B1
[13:04:04] [PASSED] DG2 G12 A1
[13:04:04] [PASSED] METEORLAKE 12.70(Xe_LPG) A0 13.00(Xe_LPM+) A0
[13:04:04] [PASSED] METEORLAKE 12.71(Xe_LPG) A0 13.00(Xe_LPM+) A0
[13:04:04] [PASSED] METEORLAKE 12.74(Xe_LPG+) A0 13.00(Xe_LPM+) A0
[13:04:04] [PASSED] LUNARLAKE 20.04(Xe2_LPG) A0 20.00(Xe2_LPM) A0
[13:04:04] [PASSED] LUNARLAKE 20.04(Xe2_LPG) B0 20.00(Xe2_LPM) A0
[13:04:04] [PASSED] BATTLEMAGE 20.01(Xe2_HPG) A0 13.01(Xe2_HPM) A1
[13:04:04] [PASSED] PANTHERLAKE 30.00(Xe3_LPG) A0 30.00(Xe3_LPM) A0
[13:04:04] ==================== [PASSED] xe_wa_gt =====================
[13:04:04] ====================== [PASSED] xe_wa ======================
[13:04:04] ============================================================
[13:04:04] Testing complete. Ran 306 tests: passed: 288, skipped: 18
[13:04:04] Elapsed time: 35.213s total, 4.266s configuring, 30.580s building, 0.334s running

+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/tests/.kunitconfig
[13:04:04] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[13:04:06] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[13:04:31] Starting KUnit Kernel (1/1)...
[13:04:31] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[13:04:31] ============ drm_test_pick_cmdline (2 subtests) ============
[13:04:31] [PASSED] drm_test_pick_cmdline_res_1920_1080_60
[13:04:31] =============== drm_test_pick_cmdline_named  ===============
[13:04:31] [PASSED] NTSC
[13:04:31] [PASSED] NTSC-J
[13:04:31] [PASSED] PAL
[13:04:31] [PASSED] PAL-M
[13:04:31] =========== [PASSED] drm_test_pick_cmdline_named ===========
[13:04:31] ============== [PASSED] drm_test_pick_cmdline ==============
[13:04:31] == drm_test_atomic_get_connector_for_encoder (1 subtest) ===
[13:04:31] [PASSED] drm_test_drm_atomic_get_connector_for_encoder
[13:04:31] ==== [PASSED] drm_test_atomic_get_connector_for_encoder ====
[13:04:31] =========== drm_validate_clone_mode (2 subtests) ===========
[13:04:31] ============== drm_test_check_in_clone_mode  ===============
[13:04:31] [PASSED] in_clone_mode
[13:04:31] [PASSED] not_in_clone_mode
[13:04:31] ========== [PASSED] drm_test_check_in_clone_mode ===========
[13:04:31] =============== drm_test_check_valid_clones  ===============
[13:04:31] [PASSED] not_in_clone_mode
[13:04:31] [PASSED] valid_clone
[13:04:31] [PASSED] invalid_clone
[13:04:31] =========== [PASSED] drm_test_check_valid_clones ===========
[13:04:31] ============= [PASSED] drm_validate_clone_mode =============
[13:04:31] ============= drm_validate_modeset (1 subtest) =============
[13:04:31] [PASSED] drm_test_check_connector_changed_modeset
[13:04:31] ============== [PASSED] drm_validate_modeset ===============
[13:04:31] ====== drm_test_bridge_get_current_state (2 subtests) ======
[13:04:31] [PASSED] drm_test_drm_bridge_get_current_state_atomic
[13:04:31] [PASSED] drm_test_drm_bridge_get_current_state_legacy
[13:04:31] ======== [PASSED] drm_test_bridge_get_current_state ========
[13:04:31] ====== drm_test_bridge_helper_reset_crtc (3 subtests) ======
[13:04:31] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic
[13:04:31] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic_disabled
[13:04:31] [PASSED] drm_test_drm_bridge_helper_reset_crtc_legacy
[13:04:31] ======== [PASSED] drm_test_bridge_helper_reset_crtc ========
[13:04:31] ============== drm_bridge_alloc (2 subtests) ===============
[13:04:31] [PASSED] drm_test_drm_bridge_alloc_basic
[13:04:31] [PASSED] drm_test_drm_bridge_alloc_get_put
[13:04:31] ================ [PASSED] drm_bridge_alloc =================
[13:04:31] ================== drm_buddy (8 subtests) ==================
[13:04:31] [PASSED] drm_test_buddy_alloc_limit
[13:04:31] [PASSED] drm_test_buddy_alloc_optimistic
[13:04:31] [PASSED] drm_test_buddy_alloc_pessimistic
[13:04:31] [PASSED] drm_test_buddy_alloc_pathological
[13:04:31] [PASSED] drm_test_buddy_alloc_contiguous
[13:04:31] [PASSED] drm_test_buddy_alloc_clear
[13:04:31] [PASSED] drm_test_buddy_alloc_range_bias
[13:04:31] [PASSED] drm_test_buddy_fragmentation_performance
[13:04:31] ==================== [PASSED] drm_buddy ====================
[13:04:31] ============= drm_cmdline_parser (40 subtests) =============
[13:04:31] [PASSED] drm_test_cmdline_force_d_only
[13:04:31] [PASSED] drm_test_cmdline_force_D_only_dvi
[13:04:31] [PASSED] drm_test_cmdline_force_D_only_hdmi
[13:04:31] [PASSED] drm_test_cmdline_force_D_only_not_digital
[13:04:31] [PASSED] drm_test_cmdline_force_e_only
[13:04:31] [PASSED] drm_test_cmdline_res
[13:04:31] [PASSED] drm_test_cmdline_res_vesa
[13:04:31] [PASSED] drm_test_cmdline_res_vesa_rblank
[13:04:31] [PASSED] drm_test_cmdline_res_rblank
[13:04:31] [PASSED] drm_test_cmdline_res_bpp
[13:04:31] [PASSED] drm_test_cmdline_res_refresh
[13:04:31] [PASSED] drm_test_cmdline_res_bpp_refresh
[13:04:31] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced
[13:04:31] [PASSED] drm_test_cmdline_res_bpp_refresh_margins
[13:04:31] [PASSED] drm_test_cmdline_res_bpp_refresh_force_off
[13:04:31] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on
[13:04:31] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_analog
[13:04:31] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_digital
[13:04:31] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced_margins_force_on
[13:04:31] [PASSED] drm_test_cmdline_res_margins_force_on
[13:04:31] [PASSED] drm_test_cmdline_res_vesa_margins
[13:04:31] [PASSED] drm_test_cmdline_name
[13:04:31] [PASSED] drm_test_cmdline_name_bpp
[13:04:31] [PASSED] drm_test_cmdline_name_option
[13:04:31] [PASSED] drm_test_cmdline_name_bpp_option
[13:04:31] [PASSED] drm_test_cmdline_rotate_0
[13:04:31] [PASSED] drm_test_cmdline_rotate_90
[13:04:31] [PASSED] drm_test_cmdline_rotate_180
[13:04:31] [PASSED] drm_test_cmdline_rotate_270
[13:04:31] [PASSED] drm_test_cmdline_hmirror
[13:04:31] [PASSED] drm_test_cmdline_vmirror
[13:04:31] [PASSED] drm_test_cmdline_margin_options
[13:04:31] [PASSED] drm_test_cmdline_multiple_options
[13:04:31] [PASSED] drm_test_cmdline_bpp_extra_and_option
[13:04:31] [PASSED] drm_test_cmdline_extra_and_option
[13:04:31] [PASSED] drm_test_cmdline_freestanding_options
[13:04:31] [PASSED] drm_test_cmdline_freestanding_force_e_and_options
[13:04:31] [PASSED] drm_test_cmdline_panel_orientation
[13:04:31] ================ drm_test_cmdline_invalid  =================
[13:04:31] [PASSED] margin_only
[13:04:31] [PASSED] interlace_only
[13:04:31] [PASSED] res_missing_x
[13:04:31] [PASSED] res_missing_y
[13:04:31] [PASSED] res_bad_y
[13:04:31] [PASSED] res_missing_y_bpp
[13:04:31] [PASSED] res_bad_bpp
[13:04:31] [PASSED] res_bad_refresh
[13:04:31] [PASSED] res_bpp_refresh_force_on_off
[13:04:31] [PASSED] res_invalid_mode
[13:04:31] [PASSED] res_bpp_wrong_place_mode
[13:04:31] [PASSED] name_bpp_refresh
[13:04:31] [PASSED] name_refresh
[13:04:31] [PASSED] name_refresh_wrong_mode
[13:04:31] [PASSED] name_refresh_invalid_mode
[13:04:31] [PASSED] rotate_multiple
[13:04:31] [PASSED] rotate_invalid_val
[13:04:31] [PASSED] rotate_truncated
[13:04:31] [PASSED] invalid_option
[13:04:31] [PASSED] invalid_tv_option
[13:04:31] [PASSED] truncated_tv_option
[13:04:31] ============ [PASSED] drm_test_cmdline_invalid =============
[13:04:31] =============== drm_test_cmdline_tv_options  ===============
[13:04:31] [PASSED] NTSC
[13:04:31] [PASSED] NTSC_443
[13:04:31] [PASSED] NTSC_J
[13:04:31] [PASSED] PAL
[13:04:31] [PASSED] PAL_M
[13:04:31] [PASSED] PAL_N
[13:04:31] [PASSED] SECAM
[13:04:31] [PASSED] MONO_525
[13:04:31] [PASSED] MONO_625
[13:04:31] =========== [PASSED] drm_test_cmdline_tv_options ===========
[13:04:31] =============== [PASSED] drm_cmdline_parser ================
[13:04:31] ========== drmm_connector_hdmi_init (20 subtests) ==========
[13:04:31] [PASSED] drm_test_connector_hdmi_init_valid
[13:04:31] [PASSED] drm_test_connector_hdmi_init_bpc_8
[13:04:31] [PASSED] drm_test_connector_hdmi_init_bpc_10
[13:04:31] [PASSED] drm_test_connector_hdmi_init_bpc_12
[13:04:31] [PASSED] drm_test_connector_hdmi_init_bpc_invalid
[13:04:31] [PASSED] drm_test_connector_hdmi_init_bpc_null
[13:04:31] [PASSED] drm_test_connector_hdmi_init_formats_empty
[13:04:31] [PASSED] drm_test_connector_hdmi_init_formats_no_rgb
[13:04:31] === drm_test_connector_hdmi_init_formats_yuv420_allowed  ===
[13:04:31] [PASSED] supported_formats=0x9 yuv420_allowed=1
[13:04:31] [PASSED] supported_formats=0x9 yuv420_allowed=0
[13:04:31] [PASSED] supported_formats=0x3 yuv420_allowed=1
[13:04:31] [PASSED] supported_formats=0x3 yuv420_allowed=0
[13:04:31] === [PASSED] drm_test_connector_hdmi_init_formats_yuv420_allowed ===
[13:04:31] [PASSED] drm_test_connector_hdmi_init_null_ddc
[13:04:31] [PASSED] drm_test_connector_hdmi_init_null_product
[13:04:31] [PASSED] drm_test_connector_hdmi_init_null_vendor
[13:04:31] [PASSED] drm_test_connector_hdmi_init_product_length_exact
[13:04:31] [PASSED] drm_test_connector_hdmi_init_product_length_too_long
[13:04:31] [PASSED] drm_test_connector_hdmi_init_product_valid
[13:04:31] [PASSED] drm_test_connector_hdmi_init_vendor_length_exact
[13:04:31] [PASSED] drm_test_connector_hdmi_init_vendor_length_too_long
[13:04:31] [PASSED] drm_test_connector_hdmi_init_vendor_valid
[13:04:31] ========= drm_test_connector_hdmi_init_type_valid  =========
[13:04:31] [PASSED] HDMI-A
[13:04:31] [PASSED] HDMI-B
[13:04:31] ===== [PASSED] drm_test_connector_hdmi_init_type_valid =====
[13:04:31] ======== drm_test_connector_hdmi_init_type_invalid  ========
[13:04:31] [PASSED] Unknown
[13:04:31] [PASSED] VGA
[13:04:31] [PASSED] DVI-I
[13:04:31] [PASSED] DVI-D
[13:04:31] [PASSED] DVI-A
[13:04:31] [PASSED] Composite
[13:04:31] [PASSED] SVIDEO
[13:04:31] [PASSED] LVDS
[13:04:31] [PASSED] Component
[13:04:31] [PASSED] DIN
[13:04:31] [PASSED] DP
[13:04:31] [PASSED] TV
[13:04:31] [PASSED] eDP
[13:04:31] [PASSED] Virtual
[13:04:31] [PASSED] DSI
[13:04:31] [PASSED] DPI
[13:04:31] [PASSED] Writeback
[13:04:31] [PASSED] SPI
[13:04:31] [PASSED] USB
[13:04:31] ==== [PASSED] drm_test_connector_hdmi_init_type_invalid ====
[13:04:31] ============ [PASSED] drmm_connector_hdmi_init =============
[13:04:31] ============= drmm_connector_init (3 subtests) =============
[13:04:31] [PASSED] drm_test_drmm_connector_init
[13:04:31] [PASSED] drm_test_drmm_connector_init_null_ddc
[13:04:31] ========= drm_test_drmm_connector_init_type_valid  =========
[13:04:31] [PASSED] Unknown
[13:04:31] [PASSED] VGA
[13:04:31] [PASSED] DVI-I
[13:04:31] [PASSED] DVI-D
[13:04:31] [PASSED] DVI-A
[13:04:31] [PASSED] Composite
[13:04:31] [PASSED] SVIDEO
[13:04:31] [PASSED] LVDS
[13:04:31] [PASSED] Component
[13:04:31] [PASSED] DIN
[13:04:31] [PASSED] DP
[13:04:31] [PASSED] HDMI-A
[13:04:31] [PASSED] HDMI-B
[13:04:31] [PASSED] TV
[13:04:31] [PASSED] eDP
[13:04:31] [PASSED] Virtual
[13:04:31] [PASSED] DSI
[13:04:31] [PASSED] DPI
[13:04:31] [PASSED] Writeback
[13:04:31] [PASSED] SPI
[13:04:31] [PASSED] USB
[13:04:31] ===== [PASSED] drm_test_drmm_connector_init_type_valid =====
[13:04:31] =============== [PASSED] drmm_connector_init ===============
[13:04:31] ========= drm_connector_dynamic_init (6 subtests) ==========
[13:04:31] [PASSED] drm_test_drm_connector_dynamic_init
[13:04:31] [PASSED] drm_test_drm_connector_dynamic_init_null_ddc
[13:04:31] [PASSED] drm_test_drm_connector_dynamic_init_not_added
[13:04:31] [PASSED] drm_test_drm_connector_dynamic_init_properties
[13:04:31] ===== drm_test_drm_connector_dynamic_init_type_valid  ======
[13:04:31] [PASSED] Unknown
[13:04:31] [PASSED] VGA
[13:04:31] [PASSED] DVI-I
[13:04:31] [PASSED] DVI-D
[13:04:31] [PASSED] DVI-A
[13:04:31] [PASSED] Composite
[13:04:31] [PASSED] SVIDEO
[13:04:31] [PASSED] LVDS
[13:04:31] [PASSED] Component
[13:04:31] [PASSED] DIN
[13:04:31] [PASSED] DP
[13:04:31] [PASSED] HDMI-A
[13:04:31] [PASSED] HDMI-B
[13:04:31] [PASSED] TV
[13:04:31] [PASSED] eDP
[13:04:31] [PASSED] Virtual
[13:04:31] [PASSED] DSI
[13:04:31] [PASSED] DPI
[13:04:31] [PASSED] Writeback
[13:04:31] [PASSED] SPI
[13:04:31] [PASSED] USB
[13:04:31] = [PASSED] drm_test_drm_connector_dynamic_init_type_valid ==
[13:04:31] ======== drm_test_drm_connector_dynamic_init_name  =========
[13:04:31] [PASSED] Unknown
[13:04:31] [PASSED] VGA
[13:04:31] [PASSED] DVI-I
[13:04:31] [PASSED] DVI-D
[13:04:31] [PASSED] DVI-A
[13:04:31] [PASSED] Composite
[13:04:31] [PASSED] SVIDEO
[13:04:31] [PASSED] LVDS
[13:04:31] [PASSED] Component
[13:04:31] [PASSED] DIN
[13:04:31] [PASSED] DP
[13:04:31] [PASSED] HDMI-A
[13:04:31] [PASSED] HDMI-B
[13:04:31] [PASSED] TV
[13:04:31] [PASSED] eDP
[13:04:31] [PASSED] Virtual
[13:04:31] [PASSED] DSI
[13:04:31] [PASSED] DPI
[13:04:31] [PASSED] Writeback
[13:04:31] [PASSED] SPI
[13:04:31] [PASSED] USB
[13:04:31] ==== [PASSED] drm_test_drm_connector_dynamic_init_name =====
[13:04:31] =========== [PASSED] drm_connector_dynamic_init ============
[13:04:31] ==== drm_connector_dynamic_register_early (4 subtests) =====
[13:04:31] [PASSED] drm_test_drm_connector_dynamic_register_early_on_list
[13:04:31] [PASSED] drm_test_drm_connector_dynamic_register_early_defer
[13:04:31] [PASSED] drm_test_drm_connector_dynamic_register_early_no_init
[13:04:31] [PASSED] drm_test_drm_connector_dynamic_register_early_no_mode_object
[13:04:31] ====== [PASSED] drm_connector_dynamic_register_early =======
[13:04:31] ======= drm_connector_dynamic_register (7 subtests) ========
[13:04:31] [PASSED] drm_test_drm_connector_dynamic_register_on_list
[13:04:31] [PASSED] drm_test_drm_connector_dynamic_register_no_defer
[13:04:31] [PASSED] drm_test_drm_connector_dynamic_register_no_init
[13:04:31] [PASSED] drm_test_drm_connector_dynamic_register_mode_object
[13:04:31] [PASSED] drm_test_drm_connector_dynamic_register_sysfs
[13:04:31] [PASSED] drm_test_drm_connector_dynamic_register_sysfs_name
[13:04:31] [PASSED] drm_test_drm_connector_dynamic_register_debugfs
[13:04:31] ========= [PASSED] drm_connector_dynamic_register ==========
[13:04:31] = drm_connector_attach_broadcast_rgb_property (2 subtests) =
[13:04:31] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property
[13:04:31] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property_hdmi_connector
[13:04:31] === [PASSED] drm_connector_attach_broadcast_rgb_property ===
[13:04:31] ========== drm_get_tv_mode_from_name (2 subtests) ==========
[13:04:31] ========== drm_test_get_tv_mode_from_name_valid  ===========
[13:04:31] [PASSED] NTSC
[13:04:31] [PASSED] NTSC-443
[13:04:31] [PASSED] NTSC-J
[13:04:31] [PASSED] PAL
[13:04:31] [PASSED] PAL-M
[13:04:31] [PASSED] PAL-N
[13:04:31] [PASSED] SECAM
[13:04:31] [PASSED] Mono
[13:04:31] ====== [PASSED] drm_test_get_tv_mode_from_name_valid =======
[13:04:31] [PASSED] drm_test_get_tv_mode_from_name_truncated
[13:04:31] ============ [PASSED] drm_get_tv_mode_from_name ============
[13:04:31] = drm_test_connector_hdmi_compute_mode_clock (12 subtests) =
[13:04:31] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb
[13:04:31] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc
[13:04:31] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc_vic_1
[13:04:31] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc
[13:04:31] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc_vic_1
[13:04:31] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_double
[13:04:31] = drm_test_connector_hdmi_compute_mode_clock_yuv420_valid  =
[13:04:31] [PASSED] VIC 96
[13:04:31] [PASSED] VIC 97
[13:04:31] [PASSED] VIC 101
[13:04:31] [PASSED] VIC 102
[13:04:31] [PASSED] VIC 106
[13:04:31] [PASSED] VIC 107
[13:04:31] === [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_valid ===
[13:04:31] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_10_bpc
[13:04:31] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_12_bpc
[13:04:31] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_8_bpc
[13:04:31] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_10_bpc
[13:04:31] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_12_bpc
[13:04:31] === [PASSED] drm_test_connector_hdmi_compute_mode_clock ====
[13:04:31] == drm_hdmi_connector_get_broadcast_rgb_name (2 subtests) ==
[13:04:31] === drm_test_drm_hdmi_connector_get_broadcast_rgb_name  ====
[13:04:31] [PASSED] Automatic
[13:04:31] [PASSED] Full
[13:04:31] [PASSED] Limited 16:235
[13:04:31] === [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name ===
[13:04:31] [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name_invalid
[13:04:31] ==== [PASSED] drm_hdmi_connector_get_broadcast_rgb_name ====
[13:04:31] == drm_hdmi_connector_get_output_format_name (2 subtests) ==
[13:04:31] === drm_test_drm_hdmi_connector_get_output_format_name  ====
[13:04:31] [PASSED] RGB
[13:04:31] [PASSED] YUV 4:2:0
[13:04:31] [PASSED] YUV 4:2:2
[13:04:31] [PASSED] YUV 4:4:4
[13:04:31] === [PASSED] drm_test_drm_hdmi_connector_get_output_format_name ===
[13:04:31] [PASSED] drm_test_drm_hdmi_connector_get_output_format_name_invalid
[13:04:31] ==== [PASSED] drm_hdmi_connector_get_output_format_name ====
[13:04:31] ============= drm_damage_helper (21 subtests) ==============
[13:04:31] [PASSED] drm_test_damage_iter_no_damage
[13:04:31] [PASSED] drm_test_damage_iter_no_damage_fractional_src
[13:04:31] [PASSED] drm_test_damage_iter_no_damage_src_moved
[13:04:31] [PASSED] drm_test_damage_iter_no_damage_fractional_src_moved
[13:04:31] [PASSED] drm_test_damage_iter_no_damage_not_visible
[13:04:31] [PASSED] drm_test_damage_iter_no_damage_no_crtc
[13:04:31] [PASSED] drm_test_damage_iter_no_damage_no_fb
[13:04:31] [PASSED] drm_test_damage_iter_simple_damage
[13:04:31] [PASSED] drm_test_damage_iter_single_damage
[13:04:31] [PASSED] drm_test_damage_iter_single_damage_intersect_src
[13:04:31] [PASSED] drm_test_damage_iter_single_damage_outside_src
[13:04:31] [PASSED] drm_test_damage_iter_single_damage_fractional_src
[13:04:31] [PASSED] drm_test_damage_iter_single_damage_intersect_fractional_src
[13:04:31] [PASSED] drm_test_damage_iter_single_damage_outside_fractional_src
[13:04:31] [PASSED] drm_test_damage_iter_single_damage_src_moved
[13:04:31] [PASSED] drm_test_damage_iter_single_damage_fractional_src_moved
[13:04:31] [PASSED] drm_test_damage_iter_damage
[13:04:31] [PASSED] drm_test_damage_iter_damage_one_intersect
[13:04:31] [PASSED] drm_test_damage_iter_damage_one_outside
[13:04:31] [PASSED] drm_test_damage_iter_damage_src_moved
[13:04:31] [PASSED] drm_test_damage_iter_damage_not_visible
[13:04:31] ================ [PASSED] drm_damage_helper ================
[13:04:31] ============== drm_dp_mst_helper (3 subtests) ==============
[13:04:31] ============== drm_test_dp_mst_calc_pbn_mode  ==============
[13:04:31] [PASSED] Clock 154000 BPP 30 DSC disabled
[13:04:31] [PASSED] Clock 234000 BPP 30 DSC disabled
[13:04:31] [PASSED] Clock 297000 BPP 24 DSC disabled
[13:04:31] [PASSED] Clock 332880 BPP 24 DSC enabled
[13:04:31] [PASSED] Clock 324540 BPP 24 DSC enabled
[13:04:31] ========== [PASSED] drm_test_dp_mst_calc_pbn_mode ==========
[13:04:31] ============== drm_test_dp_mst_calc_pbn_div  ===============
[13:04:31] [PASSED] Link rate 2000000 lane count 4
[13:04:31] [PASSED] Link rate 2000000 lane count 2
[13:04:31] [PASSED] Link rate 2000000 lane count 1
[13:04:31] [PASSED] Link rate 1350000 lane count 4
[13:04:31] [PASSED] Link rate 1350000 lane count 2
[13:04:31] [PASSED] Link rate 1350000 lane count 1
[13:04:31] [PASSED] Link rate 1000000 lane count 4
[13:04:31] [PASSED] Link rate 1000000 lane count 2
[13:04:31] [PASSED] Link rate 1000000 lane count 1
[13:04:31] [PASSED] Link rate 810000 lane count 4
[13:04:31] [PASSED] Link rate 810000 lane count 2
[13:04:31] [PASSED] Link rate 810000 lane count 1
[13:04:31] [PASSED] Link rate 540000 lane count 4
[13:04:31] [PASSED] Link rate 540000 lane count 2
[13:04:31] [PASSED] Link rate 540000 lane count 1
[13:04:31] [PASSED] Link rate 270000 lane count 4
[13:04:31] [PASSED] Link rate 270000 lane count 2
[13:04:31] [PASSED] Link rate 270000 lane count 1
[13:04:31] [PASSED] Link rate 162000 lane count 4
[13:04:31] [PASSED] Link rate 162000 lane count 2
[13:04:31] [PASSED] Link rate 162000 lane count 1
[13:04:31] ========== [PASSED] drm_test_dp_mst_calc_pbn_div ===========
[13:04:31] ========= drm_test_dp_mst_sideband_msg_req_decode  =========
[13:04:31] [PASSED] DP_ENUM_PATH_RESOURCES with port number
[13:04:31] [PASSED] DP_POWER_UP_PHY with port number
[13:04:31] [PASSED] DP_POWER_DOWN_PHY with port number
[13:04:31] [PASSED] DP_ALLOCATE_PAYLOAD with SDP stream sinks
[13:04:31] [PASSED] DP_ALLOCATE_PAYLOAD with port number
[13:04:31] [PASSED] DP_ALLOCATE_PAYLOAD with VCPI
[13:04:31] [PASSED] DP_ALLOCATE_PAYLOAD with PBN
[13:04:31] [PASSED] DP_QUERY_PAYLOAD with port number
[13:04:31] [PASSED] DP_QUERY_PAYLOAD with VCPI
[13:04:31] [PASSED] DP_REMOTE_DPCD_READ with port number
[13:04:31] [PASSED] DP_REMOTE_DPCD_READ with DPCD address
[13:04:31] [PASSED] DP_REMOTE_DPCD_READ with max number of bytes
[13:04:31] [PASSED] DP_REMOTE_DPCD_WRITE with port number
[13:04:31] [PASSED] DP_REMOTE_DPCD_WRITE with DPCD address
[13:04:31] [PASSED] DP_REMOTE_DPCD_WRITE with data array
[13:04:31] [PASSED] DP_REMOTE_I2C_READ with port number
[13:04:31] [PASSED] DP_REMOTE_I2C_READ with I2C device ID
[13:04:31] [PASSED] DP_REMOTE_I2C_READ with transactions array
[13:04:31] [PASSED] DP_REMOTE_I2C_WRITE with port number
[13:04:31] [PASSED] DP_REMOTE_I2C_WRITE with I2C device ID
[13:04:31] [PASSED] DP_REMOTE_I2C_WRITE with data array
[13:04:31] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream ID
[13:04:31] [PASSED] DP_QUERY_STREAM_ENC_STATUS with client ID
[13:04:31] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream event
[13:04:31] [PASSED] DP_QUERY_STREAM_ENC_STATUS with valid stream event
[13:04:31] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream behavior
[13:04:31] [PASSED] DP_QUERY_STREAM_ENC_STATUS with a valid stream behavior
[13:04:31] ===== [PASSED] drm_test_dp_mst_sideband_msg_req_decode =====
[13:04:31] ================ [PASSED] drm_dp_mst_helper ================
[13:04:31] ================== drm_exec (7 subtests) ===================
[13:04:31] [PASSED] sanitycheck
[13:04:31] [PASSED] test_lock
[13:04:31] [PASSED] test_lock_unlock
[13:04:31] [PASSED] test_duplicates
[13:04:31] [PASSED] test_prepare
[13:04:31] [PASSED] test_prepare_array
[13:04:31] [PASSED] test_multiple_loops
[13:04:31] ==================== [PASSED] drm_exec =====================
[13:04:31] =========== drm_format_helper_test (17 subtests) ===========
[13:04:31] ============== drm_test_fb_xrgb8888_to_gray8  ==============
[13:04:31] [PASSED] single_pixel_source_buffer
[13:04:31] [PASSED] single_pixel_clip_rectangle
[13:04:31] [PASSED] well_known_colors
[13:04:31] [PASSED] destination_pitch
[13:04:31] ========== [PASSED] drm_test_fb_xrgb8888_to_gray8 ==========
[13:04:31] ============= drm_test_fb_xrgb8888_to_rgb332  ==============
[13:04:31] [PASSED] single_pixel_source_buffer
[13:04:31] [PASSED] single_pixel_clip_rectangle
[13:04:31] [PASSED] well_known_colors
[13:04:31] [PASSED] destination_pitch
[13:04:31] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb332 ==========
[13:04:31] ============= drm_test_fb_xrgb8888_to_rgb565  ==============
[13:04:31] [PASSED] single_pixel_source_buffer
[13:04:31] [PASSED] single_pixel_clip_rectangle
[13:04:31] [PASSED] well_known_colors
[13:04:31] [PASSED] destination_pitch
[13:04:31] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb565 ==========
[13:04:31] ============ drm_test_fb_xrgb8888_to_xrgb1555  =============
[13:04:31] [PASSED] single_pixel_source_buffer
[13:04:31] [PASSED] single_pixel_clip_rectangle
[13:04:31] [PASSED] well_known_colors
[13:04:31] [PASSED] destination_pitch
[13:04:31] ======== [PASSED] drm_test_fb_xrgb8888_to_xrgb1555 =========
[13:04:31] ============ drm_test_fb_xrgb8888_to_argb1555  =============
[13:04:31] [PASSED] single_pixel_source_buffer
[13:04:31] [PASSED] single_pixel_clip_rectangle
[13:04:31] [PASSED] well_known_colors
[13:04:31] [PASSED] destination_pitch
[13:04:31] ======== [PASSED] drm_test_fb_xrgb8888_to_argb1555 =========
[13:04:31] ============ drm_test_fb_xrgb8888_to_rgba5551  =============
[13:04:31] [PASSED] single_pixel_source_buffer
[13:04:31] [PASSED] single_pixel_clip_rectangle
[13:04:31] [PASSED] well_known_colors
[13:04:31] [PASSED] destination_pitch
[13:04:31] ======== [PASSED] drm_test_fb_xrgb8888_to_rgba5551 =========
[13:04:31] ============= drm_test_fb_xrgb8888_to_rgb888  ==============
[13:04:31] [PASSED] single_pixel_source_buffer
[13:04:31] [PASSED] single_pixel_clip_rectangle
[13:04:31] [PASSED] well_known_colors
[13:04:31] [PASSED] destination_pitch
[13:04:31] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb888 ==========
[13:04:31] ============= drm_test_fb_xrgb8888_to_bgr888  ==============
[13:04:31] [PASSED] single_pixel_source_buffer
[13:04:31] [PASSED] single_pixel_clip_rectangle
[13:04:31] [PASSED] well_known_colors
[13:04:31] [PASSED] destination_pitch
[13:04:31] ========= [PASSED] drm_test_fb_xrgb8888_to_bgr888 ==========
[13:04:31] ============ drm_test_fb_xrgb8888_to_argb8888  =============
[13:04:31] [PASSED] single_pixel_source_buffer
[13:04:31] [PASSED] single_pixel_clip_rectangle
[13:04:31] [PASSED] well_known_colors
[13:04:31] [PASSED] destination_pitch
[13:04:31] ======== [PASSED] drm_test_fb_xrgb8888_to_argb8888 =========
[13:04:31] =========== drm_test_fb_xrgb8888_to_xrgb2101010  ===========
[13:04:31] [PASSED] single_pixel_source_buffer
[13:04:31] [PASSED] single_pixel_clip_rectangle
[13:04:31] [PASSED] well_known_colors
[13:04:31] [PASSED] destination_pitch
[13:04:31] ======= [PASSED] drm_test_fb_xrgb8888_to_xrgb2101010 =======
[13:04:31] =========== drm_test_fb_xrgb8888_to_argb2101010  ===========
[13:04:31] [PASSED] single_pixel_source_buffer
[13:04:31] [PASSED] single_pixel_clip_rectangle
[13:04:31] [PASSED] well_known_colors
[13:04:31] [PASSED] destination_pitch
[13:04:31] ======= [PASSED] drm_test_fb_xrgb8888_to_argb2101010 =======
[13:04:31] ============== drm_test_fb_xrgb8888_to_mono  ===============
[13:04:31] [PASSED] single_pixel_source_buffer
[13:04:31] [PASSED] single_pixel_clip_rectangle
[13:04:31] [PASSED] well_known_colors
[13:04:31] [PASSED] destination_pitch
[13:04:31] ========== [PASSED] drm_test_fb_xrgb8888_to_mono ===========
[13:04:31] ==================== drm_test_fb_swab  =====================
[13:04:31] [PASSED] single_pixel_source_buffer
[13:04:31] [PASSED] single_pixel_clip_rectangle
[13:04:31] [PASSED] well_known_colors
[13:04:31] [PASSED] destination_pitch
[13:04:31] ================ [PASSED] drm_test_fb_swab =================
[13:04:31] ============ drm_test_fb_xrgb8888_to_xbgr8888  =============
[13:04:31] [PASSED] single_pixel_source_buffer
[13:04:31] [PASSED] single_pixel_clip_rectangle
[13:04:31] [PASSED] well_known_colors
[13:04:31] [PASSED] destination_pitch
[13:04:31] ======== [PASSED] drm_test_fb_xrgb8888_to_xbgr8888 =========
[13:04:31] ============ drm_test_fb_xrgb8888_to_abgr8888  =============
[13:04:31] [PASSED] single_pixel_source_buffer
[13:04:31] [PASSED] single_pixel_clip_rectangle
[13:04:31] [PASSED] well_known_colors
[13:04:31] [PASSED] destination_pitch
[13:04:31] ======== [PASSED] drm_test_fb_xrgb8888_to_abgr8888 =========
[13:04:31] ================= drm_test_fb_clip_offset  =================
[13:04:31] [PASSED] pass through
[13:04:31] [PASSED] horizontal offset
[13:04:31] [PASSED] vertical offset
[13:04:31] [PASSED] horizontal and vertical offset
[13:04:31] [PASSED] horizontal offset (custom pitch)
[13:04:31] [PASSED] vertical offset (custom pitch)
[13:04:31] [PASSED] horizontal and vertical offset (custom pitch)
[13:04:31] ============= [PASSED] drm_test_fb_clip_offset =============
[13:04:31] =================== drm_test_fb_memcpy  ====================
[13:04:31] [PASSED] single_pixel_source_buffer: XR24 little-endian (0x34325258)
[13:04:31] [PASSED] single_pixel_source_buffer: XRA8 little-endian (0x38415258)
[13:04:31] [PASSED] single_pixel_source_buffer: YU24 little-endian (0x34325559)
[13:04:31] [PASSED] single_pixel_clip_rectangle: XB24 little-endian (0x34324258)
[13:04:31] [PASSED] single_pixel_clip_rectangle: XRA8 little-endian (0x38415258)
[13:04:31] [PASSED] single_pixel_clip_rectangle: YU24 little-endian (0x34325559)
[13:04:31] [PASSED] well_known_colors: XB24 little-endian (0x34324258)
[13:04:31] [PASSED] well_known_colors: XRA8 little-endian (0x38415258)
[13:04:31] [PASSED] well_known_colors: YU24 little-endian (0x34325559)
[13:04:31] [PASSED] destination_pitch: XB24 little-endian (0x34324258)
[13:04:31] [PASSED] destination_pitch: XRA8 little-endian (0x38415258)
[13:04:31] [PASSED] destination_pitch: YU24 little-endian (0x34325559)
[13:04:31] =============== [PASSED] drm_test_fb_memcpy ================
[13:04:31] ============= [PASSED] drm_format_helper_test ==============
[13:04:31] ================= drm_format (18 subtests) =================
[13:04:31] [PASSED] drm_test_format_block_width_invalid
[13:04:31] [PASSED] drm_test_format_block_width_one_plane
[13:04:31] [PASSED] drm_test_format_block_width_two_plane
[13:04:31] [PASSED] drm_test_format_block_width_three_plane
[13:04:31] [PASSED] drm_test_format_block_width_tiled
[13:04:31] [PASSED] drm_test_format_block_height_invalid
[13:04:31] [PASSED] drm_test_format_block_height_one_plane
[13:04:31] [PASSED] drm_test_format_block_height_two_plane
[13:04:31] [PASSED] drm_test_format_block_height_three_plane
[13:04:31] [PASSED] drm_test_format_block_height_tiled
[13:04:31] [PASSED] drm_test_format_min_pitch_invalid
[13:04:31] [PASSED] drm_test_format_min_pitch_one_plane_8bpp
[13:04:31] [PASSED] drm_test_format_min_pitch_one_plane_16bpp
[13:04:31] [PASSED] drm_test_format_min_pitch_one_plane_24bpp
[13:04:31] [PASSED] drm_test_format_min_pitch_one_plane_32bpp
[13:04:31] [PASSED] drm_test_format_min_pitch_two_plane
[13:04:31] [PASSED] drm_test_format_min_pitch_three_plane_8bpp
[13:04:31] [PASSED] drm_test_format_min_pitch_tiled
[13:04:31] =================== [PASSED] drm_format ====================
[13:04:31] ============== drm_framebuffer (10 subtests) ===============
[13:04:31] ========== drm_test_framebuffer_check_src_coords  ==========
[13:04:31] [PASSED] Success: source fits into fb
[13:04:31] [PASSED] Fail: overflowing fb with x-axis coordinate
[13:04:31] [PASSED] Fail: overflowing fb with y-axis coordinate
[13:04:31] [PASSED] Fail: overflowing fb with source width
[13:04:31] [PASSED] Fail: overflowing fb with source height
[13:04:31] ====== [PASSED] drm_test_framebuffer_check_src_coords ======
[13:04:31] [PASSED] drm_test_framebuffer_cleanup
[13:04:31] =============== drm_test_framebuffer_create  ===============
[13:04:31] [PASSED] ABGR8888 normal sizes
[13:04:31] [PASSED] ABGR8888 max sizes
[13:04:31] [PASSED] ABGR8888 pitch greater than min required
[13:04:31] [PASSED] ABGR8888 pitch less than min required
[13:04:31] [PASSED] ABGR8888 Invalid width
[13:04:31] [PASSED] ABGR8888 Invalid buffer handle
[13:04:31] [PASSED] No pixel format
[13:04:31] [PASSED] ABGR8888 Width 0
[13:04:31] [PASSED] ABGR8888 Height 0
[13:04:31] [PASSED] ABGR8888 Out of bound height * pitch combination
[13:04:31] [PASSED] ABGR8888 Large buffer offset
[13:04:31] [PASSED] ABGR8888 Buffer offset for inexistent plane
[13:04:31] [PASSED] ABGR8888 Invalid flag
[13:04:31] [PASSED] ABGR8888 Set DRM_MODE_FB_MODIFIERS without modifiers
[13:04:31] [PASSED] ABGR8888 Valid buffer modifier
[13:04:31] [PASSED] ABGR8888 Invalid buffer modifier(DRM_FORMAT_MOD_SAMSUNG_64_32_TILE)
[13:04:31] [PASSED] ABGR8888 Extra pitches without DRM_MODE_FB_MODIFIERS
[13:04:31] [PASSED] ABGR8888 Extra pitches with DRM_MODE_FB_MODIFIERS
[13:04:31] [PASSED] NV12 Normal sizes
[13:04:31] [PASSED] NV12 Max sizes
[13:04:31] [PASSED] NV12 Invalid pitch
[13:04:31] [PASSED] NV12 Invalid modifier/missing DRM_MODE_FB_MODIFIERS flag
[13:04:31] [PASSED] NV12 different  modifier per-plane
[13:04:31] [PASSED] NV12 with DRM_FORMAT_MOD_SAMSUNG_64_32_TILE
[13:04:31] [PASSED] NV12 Valid modifiers without DRM_MODE_FB_MODIFIERS
[13:04:31] [PASSED] NV12 Modifier for inexistent plane
[13:04:31] [PASSED] NV12 Handle for inexistent plane
[13:04:31] [PASSED] NV12 Handle for inexistent plane without DRM_MODE_FB_MODIFIERS
[13:04:31] [PASSED] YVU420 DRM_MODE_FB_MODIFIERS set without modifier
[13:04:31] [PASSED] YVU420 Normal sizes
[13:04:31] [PASSED] YVU420 Max sizes
[13:04:31] [PASSED] YVU420 Invalid pitch
[13:04:31] [PASSED] YVU420 Different pitches
[13:04:31] [PASSED] YVU420 Different buffer offsets/pitches
[13:04:31] [PASSED] YVU420 Modifier set just for plane 0, without DRM_MODE_FB_MODIFIERS
[13:04:31] [PASSED] YVU420 Modifier set just for planes 0, 1, without DRM_MODE_FB_MODIFIERS
[13:04:31] [PASSED] YVU420 Modifier set just for plane 0, 1, with DRM_MODE_FB_MODIFIERS
[13:04:31] [PASSED] YVU420 Valid modifier
[13:04:31] [PASSED] YVU420 Different modifiers per plane
[13:04:31] [PASSED] YVU420 Modifier for inexistent plane
[13:04:31] [PASSED] YUV420_10BIT Invalid modifier(DRM_FORMAT_MOD_LINEAR)
[13:04:31] [PASSED] X0L2 Normal sizes
[13:04:31] [PASSED] X0L2 Max sizes
[13:04:31] [PASSED] X0L2 Invalid pitch
[13:04:31] [PASSED] X0L2 Pitch greater than minimum required
[13:04:31] [PASSED] X0L2 Handle for inexistent plane
[13:04:31] [PASSED] X0L2 Offset for inexistent plane, without DRM_MODE_FB_MODIFIERS set
[13:04:31] [PASSED] X0L2 Modifier without DRM_MODE_FB_MODIFIERS set
[13:04:31] [PASSED] X0L2 Valid modifier
[13:04:31] [PASSED] X0L2 Modifier for inexistent plane
[13:04:31] =========== [PASSED] drm_test_framebuffer_create ===========
[13:04:31] [PASSED] drm_test_framebuffer_free
[13:04:31] [PASSED] drm_test_framebuffer_init
[13:04:31] [PASSED] drm_test_framebuffer_init_bad_format
[13:04:31] [PASSED] drm_test_framebuffer_init_dev_mismatch
[13:04:31] [PASSED] drm_test_framebuffer_lookup
[13:04:31] [PASSED] drm_test_framebuffer_lookup_inexistent
[13:04:31] [PASSED] drm_test_framebuffer_modifiers_not_supported
[13:04:31] ================= [PASSED] drm_framebuffer =================
[13:04:31] ================ drm_gem_shmem (8 subtests) ================
[13:04:31] [PASSED] drm_gem_shmem_test_obj_create
[13:04:31] [PASSED] drm_gem_shmem_test_obj_create_private
[13:04:31] [PASSED] drm_gem_shmem_test_pin_pages
[13:04:31] [PASSED] drm_gem_shmem_test_vmap
[13:04:31] [PASSED] drm_gem_shmem_test_get_pages_sgt
[13:04:31] [PASSED] drm_gem_shmem_test_get_sg_table
[13:04:31] [PASSED] drm_gem_shmem_test_madvise
[13:04:31] [PASSED] drm_gem_shmem_test_purge
[13:04:31] ================== [PASSED] drm_gem_shmem ==================
[13:04:31] === drm_atomic_helper_connector_hdmi_check (27 subtests) ===
[13:04:31] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode
[13:04:31] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode_vic_1
[13:04:31] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode
[13:04:31] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode_vic_1
[13:04:31] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode
[13:04:31] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode_vic_1
[13:04:31] ====== drm_test_check_broadcast_rgb_cea_mode_yuv420  =======
[13:04:31] [PASSED] Automatic
[13:04:31] [PASSED] Full
[13:04:31] [PASSED] Limited 16:235
[13:04:31] == [PASSED] drm_test_check_broadcast_rgb_cea_mode_yuv420 ===
[13:04:31] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_changed
[13:04:31] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_not_changed
[13:04:31] [PASSED] drm_test_check_disable_connector
[13:04:31] [PASSED] drm_test_check_hdmi_funcs_reject_rate
[13:04:31] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_rgb
[13:04:31] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_yuv420
[13:04:31] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv422
[13:04:31] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv420
[13:04:31] [PASSED] drm_test_check_driver_unsupported_fallback_yuv420
[13:04:31] [PASSED] drm_test_check_output_bpc_crtc_mode_changed
[13:04:31] [PASSED] drm_test_check_output_bpc_crtc_mode_not_changed
[13:04:31] [PASSED] drm_test_check_output_bpc_dvi
[13:04:31] [PASSED] drm_test_check_output_bpc_format_vic_1
[13:04:31] [PASSED] drm_test_check_output_bpc_format_display_8bpc_only
[13:04:31] [PASSED] drm_test_check_output_bpc_format_display_rgb_only
[13:04:31] [PASSED] drm_test_check_output_bpc_format_driver_8bpc_only
[13:04:31] [PASSED] drm_test_check_output_bpc_format_driver_rgb_only
[13:04:31] [PASSED] drm_test_check_tmds_char_rate_rgb_8bpc
[13:04:31] [PASSED] drm_test_check_tmds_char_rate_rgb_10bpc
[13:04:31] [PASSED] drm_test_check_tmds_char_rate_rgb_12bpc
[13:04:31] ===== [PASSED] drm_atomic_helper_connector_hdmi_check ======
[13:04:31] === drm_atomic_helper_connector_hdmi_reset (6 subtests) ====
[13:04:31] [PASSED] drm_test_check_broadcast_rgb_value
[13:04:31] [PASSED] drm_test_check_bpc_8_value
[13:04:31] [PASSED] drm_test_check_bpc_10_value
[13:04:31] [PASSED] drm_test_check_bpc_12_value
[13:04:31] [PASSED] drm_test_check_format_value
[13:04:31] [PASSED] drm_test_check_tmds_char_value
[13:04:31] ===== [PASSED] drm_atomic_helper_connector_hdmi_reset ======
[13:04:31] = drm_atomic_helper_connector_hdmi_mode_valid (4 subtests) =
[13:04:31] [PASSED] drm_test_check_mode_valid
[13:04:31] [PASSED] drm_test_check_mode_valid_reject
[13:04:31] [PASSED] drm_test_check_mode_valid_reject_rate
[13:04:31] [PASSED] drm_test_check_mode_valid_reject_max_clock
[13:04:31] === [PASSED] drm_atomic_helper_connector_hdmi_mode_valid ===
[13:04:31] ================= drm_managed (2 subtests) =================
[13:04:31] [PASSED] drm_test_managed_release_action
[13:04:31] [PASSED] drm_test_managed_run_action
[13:04:31] =================== [PASSED] drm_managed ===================
[13:04:31] =================== drm_mm (6 subtests) ====================
[13:04:31] [PASSED] drm_test_mm_init
[13:04:31] [PASSED] drm_test_mm_debug
[13:04:31] [PASSED] drm_test_mm_align32
[13:04:31] [PASSED] drm_test_mm_align64
[13:04:31] [PASSED] drm_test_mm_lowest
[13:04:31] [PASSED] drm_test_mm_highest
[13:04:31] ===================== [PASSED] drm_mm ======================
[13:04:31] ============= drm_modes_analog_tv (5 subtests) =============
[13:04:31] [PASSED] drm_test_modes_analog_tv_mono_576i
[13:04:31] [PASSED] drm_test_modes_analog_tv_ntsc_480i
[13:04:31] [PASSED] drm_test_modes_analog_tv_ntsc_480i_inlined
[13:04:31] [PASSED] drm_test_modes_analog_tv_pal_576i
[13:04:31] [PASSED] drm_test_modes_analog_tv_pal_576i_inlined
[13:04:31] =============== [PASSED] drm_modes_analog_tv ===============
[13:04:31] ============== drm_plane_helper (2 subtests) ===============
[13:04:31] =============== drm_test_check_plane_state  ================
[13:04:31] [PASSED] clipping_simple
[13:04:31] [PASSED] clipping_rotate_reflect
[13:04:31] [PASSED] positioning_simple
[13:04:31] [PASSED] upscaling
[13:04:31] [PASSED] downscaling
[13:04:31] [PASSED] rounding1
[13:04:31] [PASSED] rounding2
[13:04:31] [PASSED] rounding3
[13:04:31] [PASSED] rounding4
[13:04:31] =========== [PASSED] drm_test_check_plane_state ============
[13:04:31] =========== drm_test_check_invalid_plane_state  ============
[13:04:31] [PASSED] positioning_invalid
[13:04:31] [PASSED] upscaling_invalid
[13:04:31] [PASSED] downscaling_invalid
[13:04:31] ======= [PASSED] drm_test_check_invalid_plane_state ========
[13:04:31] ================ [PASSED] drm_plane_helper =================
[13:04:31] ====== drm_connector_helper_tv_get_modes (1 subtest) =======
[13:04:31] ====== drm_test_connector_helper_tv_get_modes_check  =======
[13:04:31] [PASSED] None
[13:04:31] [PASSED] PAL
[13:04:31] [PASSED] NTSC
[13:04:31] [PASSED] Both, NTSC Default
[13:04:31] [PASSED] Both, PAL Default
[13:04:31] [PASSED] Both, NTSC Default, with PAL on command-line
[13:04:31] [PASSED] Both, PAL Default, with NTSC on command-line
[13:04:31] == [PASSED] drm_test_connector_helper_tv_get_modes_check ===
[13:04:31] ======== [PASSED] drm_connector_helper_tv_get_modes ========
[13:04:31] ================== drm_rect (9 subtests) ===================
[13:04:31] [PASSED] drm_test_rect_clip_scaled_div_by_zero
[13:04:31] [PASSED] drm_test_rect_clip_scaled_not_clipped
[13:04:31] [PASSED] drm_test_rect_clip_scaled_clipped
[13:04:31] [PASSED] drm_test_rect_clip_scaled_signed_vs_unsigned
[13:04:31] ================= drm_test_rect_intersect  =================
[13:04:31] [PASSED] top-left x bottom-right: 2x2+1+1 x 2x2+0+0
[13:04:31] [PASSED] top-right x bottom-left: 2x2+0+0 x 2x2+1-1
[13:04:31] [PASSED] bottom-left x top-right: 2x2+1-1 x 2x2+0+0
[13:04:31] [PASSED] bottom-right x top-left: 2x2+0+0 x 2x2+1+1
[13:04:31] [PASSED] right x left: 2x1+0+0 x 3x1+1+0
[13:04:31] [PASSED] left x right: 3x1+1+0 x 2x1+0+0
[13:04:31] [PASSED] up x bottom: 1x2+0+0 x 1x3+0-1
[13:04:31] [PASSED] bottom x up: 1x3+0-1 x 1x2+0+0
[13:04:31] [PASSED] touching corner: 1x1+0+0 x 2x2+1+1
[13:04:31] [PASSED] touching side: 1x1+0+0 x 1x1+1+0
[13:04:31] [PASSED] equal rects: 2x2+0+0 x 2x2+0+0
[13:04:31] [PASSED] inside another: 2x2+0+0 x 1x1+1+1
[13:04:31] [PASSED] far away: 1x1+0+0 x 1x1+3+6
[13:04:31] [PASSED] points intersecting: 0x0+5+10 x 0x0+5+10
[13:04:31] [PASSED] points not intersecting: 0x0+0+0 x 0x0+5+10
[13:04:31] ============= [PASSED] drm_test_rect_intersect =============
[13:04:31] ================ drm_test_rect_calc_hscale  ================
[13:04:31] [PASSED] normal use
[13:04:31] [PASSED] out of max range
[13:04:31] [PASSED] out of min range
[13:04:31] [PASSED] zero dst
[13:04:31] [PASSED] negative src
[13:04:31] [PASSED] negative dst
[13:04:31] ============ [PASSED] drm_test_rect_calc_hscale ============
[13:04:31] ================ drm_test_rect_calc_vscale  ================
[13:04:31] [PASSED] normal use
stty: 'standard input': Inappropriate ioctl for device
[13:04:31] [PASSED] out of max range
[13:04:31] [PASSED] out of min range
[13:04:31] [PASSED] zero dst
[13:04:31] [PASSED] negative src
[13:04:31] [PASSED] negative dst
[13:04:31] ============ [PASSED] drm_test_rect_calc_vscale ============
[13:04:31] ================== drm_test_rect_rotate  ===================
[13:04:31] [PASSED] reflect-x
[13:04:31] [PASSED] reflect-y
[13:04:31] [PASSED] rotate-0
[13:04:31] [PASSED] rotate-90
[13:04:31] [PASSED] rotate-180
[13:04:31] [PASSED] rotate-270
[13:04:31] ============== [PASSED] drm_test_rect_rotate ===============
[13:04:31] ================ drm_test_rect_rotate_inv  =================
[13:04:31] [PASSED] reflect-x
[13:04:31] [PASSED] reflect-y
[13:04:31] [PASSED] rotate-0
[13:04:31] [PASSED] rotate-90
[13:04:31] [PASSED] rotate-180
[13:04:31] [PASSED] rotate-270
[13:04:31] ============ [PASSED] drm_test_rect_rotate_inv =============
[13:04:31] ==================== [PASSED] drm_rect =====================
[13:04:31] ============ drm_sysfb_modeset_test (1 subtest) ============
[13:04:31] ============ drm_test_sysfb_build_fourcc_list  =============
[13:04:31] [PASSED] no native formats
[13:04:31] [PASSED] XRGB8888 as native format
[13:04:31] [PASSED] remove duplicates
[13:04:31] [PASSED] convert alpha formats
[13:04:31] [PASSED] random formats
[13:04:31] ======== [PASSED] drm_test_sysfb_build_fourcc_list =========
[13:04:31] ============= [PASSED] drm_sysfb_modeset_test ==============
[13:04:31] ============================================================
[13:04:31] Testing complete. Ran 622 tests: passed: 622
[13:04:31] Elapsed time: 26.739s total, 1.726s configuring, 24.597s building, 0.395s running

+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/ttm/tests/.kunitconfig
[13:04:31] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[13:04:33] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make all compile_commands.json scripts_gdb ARCH=um O=.kunit --jobs=48
[13:04:43] Starting KUnit Kernel (1/1)...
[13:04:43] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[13:04:43] ================= ttm_device (5 subtests) ==================
[13:04:43] [PASSED] ttm_device_init_basic
[13:04:43] [PASSED] ttm_device_init_multiple
[13:04:43] [PASSED] ttm_device_fini_basic
[13:04:43] [PASSED] ttm_device_init_no_vma_man
[13:04:43] ================== ttm_device_init_pools  ==================
[13:04:43] [PASSED] No DMA allocations, no DMA32 required
[13:04:43] [PASSED] DMA allocations, DMA32 required
[13:04:43] [PASSED] No DMA allocations, DMA32 required
[13:04:43] [PASSED] DMA allocations, no DMA32 required
[13:04:43] ============== [PASSED] ttm_device_init_pools ==============
[13:04:43] =================== [PASSED] ttm_device ====================
[13:04:43] ================== ttm_pool (8 subtests) ===================
[13:04:43] ================== ttm_pool_alloc_basic  ===================
[13:04:43] [PASSED] One page
[13:04:43] [PASSED] More than one page
[13:04:43] [PASSED] Above the allocation limit
[13:04:43] [PASSED] One page, with coherent DMA mappings enabled
[13:04:43] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[13:04:43] ============== [PASSED] ttm_pool_alloc_basic ===============
[13:04:43] ============== ttm_pool_alloc_basic_dma_addr  ==============
[13:04:43] [PASSED] One page
[13:04:43] [PASSED] More than one page
[13:04:43] [PASSED] Above the allocation limit
[13:04:43] [PASSED] One page, with coherent DMA mappings enabled
[13:04:43] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[13:04:43] ========== [PASSED] ttm_pool_alloc_basic_dma_addr ==========
[13:04:43] [PASSED] ttm_pool_alloc_order_caching_match
[13:04:43] [PASSED] ttm_pool_alloc_caching_mismatch
[13:04:43] [PASSED] ttm_pool_alloc_order_mismatch
[13:04:43] [PASSED] ttm_pool_free_dma_alloc
[13:04:43] [PASSED] ttm_pool_free_no_dma_alloc
[13:04:43] [PASSED] ttm_pool_fini_basic
[13:04:43] ==================== [PASSED] ttm_pool =====================
[13:04:43] ================ ttm_resource (8 subtests) =================
[13:04:43] ================= ttm_resource_init_basic  =================
[13:04:43] [PASSED] Init resource in TTM_PL_SYSTEM
[13:04:43] [PASSED] Init resource in TTM_PL_VRAM
[13:04:43] [PASSED] Init resource in a private placement
[13:04:43] [PASSED] Init resource in TTM_PL_SYSTEM, set placement flags
[13:04:43] ============= [PASSED] ttm_resource_init_basic =============
[13:04:43] [PASSED] ttm_resource_init_pinned
[13:04:43] [PASSED] ttm_resource_fini_basic
[13:04:43] [PASSED] ttm_resource_manager_init_basic
[13:04:43] [PASSED] ttm_resource_manager_usage_basic
[13:04:43] [PASSED] ttm_resource_manager_set_used_basic
[13:04:43] [PASSED] ttm_sys_man_alloc_basic
[13:04:43] [PASSED] ttm_sys_man_free_basic
[13:04:43] ================== [PASSED] ttm_resource ===================
[13:04:43] =================== ttm_tt (15 subtests) ===================
[13:04:43] ==================== ttm_tt_init_basic  ====================
[13:04:43] [PASSED] Page-aligned size
[13:04:43] [PASSED] Extra pages requested
[13:04:43] ================ [PASSED] ttm_tt_init_basic ================
[13:04:43] [PASSED] ttm_tt_init_misaligned
[13:04:43] [PASSED] ttm_tt_fini_basic
[13:04:43] [PASSED] ttm_tt_fini_sg
[13:04:43] [PASSED] ttm_tt_fini_shmem
[13:04:43] [PASSED] ttm_tt_create_basic
[13:04:43] [PASSED] ttm_tt_create_invalid_bo_type
[13:04:43] [PASSED] ttm_tt_create_ttm_exists
[13:04:43] [PASSED] ttm_tt_create_failed
[13:04:43] [PASSED] ttm_tt_destroy_basic
[13:04:43] [PASSED] ttm_tt_populate_null_ttm
[13:04:43] [PASSED] ttm_tt_populate_populated_ttm
[13:04:43] [PASSED] ttm_tt_unpopulate_basic
[13:04:43] [PASSED] ttm_tt_unpopulate_empty_ttm
[13:04:43] [PASSED] ttm_tt_swapin_basic
[13:04:43] ===================== [PASSED] ttm_tt ======================
[13:04:43] =================== ttm_bo (14 subtests) ===================
[13:04:43] =========== ttm_bo_reserve_optimistic_no_ticket  ===========
[13:04:43] [PASSED] Cannot be interrupted and sleeps
[13:04:43] [PASSED] Cannot be interrupted, locks straight away
[13:04:43] [PASSED] Can be interrupted, sleeps
[13:04:43] ======= [PASSED] ttm_bo_reserve_optimistic_no_ticket =======
[13:04:43] [PASSED] ttm_bo_reserve_locked_no_sleep
[13:04:43] [PASSED] ttm_bo_reserve_no_wait_ticket
[13:04:43] [PASSED] ttm_bo_reserve_double_resv
[13:04:43] [PASSED] ttm_bo_reserve_interrupted
[13:04:43] [PASSED] ttm_bo_reserve_deadlock
[13:04:43] [PASSED] ttm_bo_unreserve_basic
[13:04:43] [PASSED] ttm_bo_unreserve_pinned
[13:04:43] [PASSED] ttm_bo_unreserve_bulk
[13:04:43] [PASSED] ttm_bo_fini_basic
[13:04:43] [PASSED] ttm_bo_fini_shared_resv
[13:04:43] [PASSED] ttm_bo_pin_basic
[13:04:43] [PASSED] ttm_bo_pin_unpin_resource
[13:04:43] [PASSED] ttm_bo_multiple_pin_one_unpin
[13:04:43] ===================== [PASSED] ttm_bo ======================
[13:04:43] ============== ttm_bo_validate (21 subtests) ===============
[13:04:43] ============== ttm_bo_init_reserved_sys_man  ===============
[13:04:43] [PASSED] Buffer object for userspace
[13:04:43] [PASSED] Kernel buffer object
[13:04:43] [PASSED] Shared buffer object
[13:04:43] ========== [PASSED] ttm_bo_init_reserved_sys_man ===========
[13:04:43] ============== ttm_bo_init_reserved_mock_man  ==============
[13:04:43] [PASSED] Buffer object for userspace
[13:04:43] [PASSED] Kernel buffer object
[13:04:43] [PASSED] Shared buffer object
[13:04:43] ========== [PASSED] ttm_bo_init_reserved_mock_man ==========
[13:04:43] [PASSED] ttm_bo_init_reserved_resv
[13:04:43] ================== ttm_bo_validate_basic  ==================
[13:04:43] [PASSED] Buffer object for userspace
[13:04:43] [PASSED] Kernel buffer object
[13:04:43] [PASSED] Shared buffer object
[13:04:43] ============== [PASSED] ttm_bo_validate_basic ==============
[13:04:43] [PASSED] ttm_bo_validate_invalid_placement
[13:04:43] ============= ttm_bo_validate_same_placement  ==============
[13:04:43] [PASSED] System manager
[13:04:43] [PASSED] VRAM manager
[13:04:43] ========= [PASSED] ttm_bo_validate_same_placement ==========
[13:04:43] [PASSED] ttm_bo_validate_failed_alloc
[13:04:43] [PASSED] ttm_bo_validate_pinned
[13:04:43] [PASSED] ttm_bo_validate_busy_placement
[13:04:43] ================ ttm_bo_validate_multihop  =================
[13:04:43] [PASSED] Buffer object for userspace
[13:04:43] [PASSED] Kernel buffer object
[13:04:43] [PASSED] Shared buffer object
[13:04:43] ============ [PASSED] ttm_bo_validate_multihop =============
[13:04:43] ========== ttm_bo_validate_no_placement_signaled  ==========
[13:04:43] [PASSED] Buffer object in system domain, no page vector
[13:04:43] [PASSED] Buffer object in system domain with an existing page vector
[13:04:43] ====== [PASSED] ttm_bo_validate_no_placement_signaled ======
[13:04:43] ======== ttm_bo_validate_no_placement_not_signaled  ========
[13:04:43] [PASSED] Buffer object for userspace
[13:04:43] [PASSED] Kernel buffer object
[13:04:43] [PASSED] Shared buffer object
[13:04:43] ==== [PASSED] ttm_bo_validate_no_placement_not_signaled ====
[13:04:43] [PASSED] ttm_bo_validate_move_fence_signaled
[13:04:43] ========= ttm_bo_validate_move_fence_not_signaled  =========
[13:04:43] [PASSED] Waits for GPU
[13:04:43] [PASSED] Tries to lock straight away
[13:04:43] ===== [PASSED] ttm_bo_validate_move_fence_not_signaled =====
[13:04:43] [PASSED] ttm_bo_validate_happy_evict
[13:04:43] [PASSED] ttm_bo_validate_all_pinned_evict
[13:04:43] [PASSED] ttm_bo_validate_allowed_only_evict
[13:04:43] [PASSED] ttm_bo_validate_deleted_evict
[13:04:43] [PASSED] ttm_bo_validate_busy_domain_evict
[13:04:43] [PASSED] ttm_bo_validate_evict_gutting
[13:04:43] [PASSED] ttm_bo_validate_recrusive_evict
stty: 'standard input': Inappropriate ioctl for device
[13:04:43] ================= [PASSED] ttm_bo_validate =================
[13:04:43] ============================================================
[13:04:43] Testing complete. Ran 101 tests: passed: 101
[13:04:43] Elapsed time: 11.471s total, 1.748s configuring, 9.506s building, 0.182s running

+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel



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

* ✓ Xe.CI.BAT: success for Introduce GT runtime suspend/resume (rev3)
  2025-10-14  7:30 [PATCH v5 0/2] Introduce GT runtime suspend/resume Raag Jadav
                   ` (6 preceding siblings ...)
  2025-10-16 13:04 ` ✓ CI.KUnit: success " Patchwork
@ 2025-10-16 14:08 ` Patchwork
  2025-10-17  9:43 ` ✓ Xe.CI.Full: " Patchwork
  8 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2025-10-16 14:08 UTC (permalink / raw)
  To: Raag Jadav; +Cc: intel-xe

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

== Series Details ==

Series: Introduce GT runtime suspend/resume (rev3)
URL   : https://patchwork.freedesktop.org/series/154017/
State : success

== Summary ==

CI Bug Log - changes from xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed_BAT -> xe-pw-154017v3_BAT
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

Participating hosts (11 -> 11)
------------------------------

  No changes in participating hosts


Changes
-------

  No changes found


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

  * IGT: IGT_8587 -> IGT_8588
  * Linux: xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed -> xe-pw-154017v3

  IGT_8587: 8587
  IGT_8588: 8588
  xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed: aaaff197c9186f4959c2bcb18035725188b950ed
  xe-pw-154017v3: 154017v3

== Logs ==

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

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

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

* Re: [PATCH v5 2/2] drm/xe/gt: Introduce runtime suspend/resume
  2025-10-14  7:30 ` [PATCH v5 2/2] drm/xe/gt: Introduce runtime suspend/resume Raag Jadav
@ 2025-10-16 15:32   ` Daniele Ceraolo Spurio
  2025-10-16 18:38     ` Matthew Brost
  0 siblings, 1 reply; 18+ messages in thread
From: Daniele Ceraolo Spurio @ 2025-10-16 15:32 UTC (permalink / raw)
  To: Raag Jadav, lucas.demarchi, rodrigo.vivi
  Cc: intel-xe, riana.tauro, matthew.brost, michal.wajdeczko



On 10/14/2025 12:30 AM, Raag Jadav wrote:
> If power state is retained between suspend/resume cycle, we don't need
> to perform full GT re-initialization. Introduce runtime helpers for GT
> which greatly reduce suspend/resume delay.
>
> v2: Drop redundant xe_gt_sanitize() and xe_guc_ct_stop() (Daniele)
>      Use runtime naming for guc helpers (Daniele)
> v3: Drop redundant logging, add kernel doc (Michal)
>      Use runtime naming for ct helpers (Michal)
> v4: Fix tags (Rodrigo)
> v5: Include host_l2_vram workaround (Daniele)
>      Reuse xe_guc_submit_enable/disable() helpers (Daniele)

Based on the reply about VF behavior in the previous rev, I am thinking 
this is not the correct approach to this.
If on a VF the runtime_suspend/resume functions are not called at all 
like you said, it means that the VF driver needs to be able to cope with 
the fact that the HW can lose power without it being directly notified 
if its rpm refcount is 0. This in turn means that on a VF the driver 
can't rely on what you do in xe_uc_runtime_suspend/resume() to idle the 
state and must instead guarantee that the state is already idled when 
the last rpm ref is released and that a new rpm ref is taken before 
restarting anything (which might already be true). AFAIK there are no 
difference in the SW state management of queues and CTBs between PF and 
VF, so if we achieve that on a VF we'll also have it on PF/Native, which 
means that there will be no need to pause/unpause CTBs and exec_queues. 
The only thing that the PF would need to do in the rpm flow is program 
the HW (e.g. the host_l2_vram stuff and the irq re-enabling).

tl;dr, if we guarantee that:
1 - if the rpm refcount is 0 then there is no activity on HW, so nothing 
that needs to be paused (which might already be true)
2 - an rpm ref is taken before any activity is started (which might also 
already be true)

Then we're guaranteeing that there is nothing to pause/unpause at 
runtime suspend/resume time, so we're safe skipping those calls entirely 
on VF while on native/PF we can just focus on the HW re-programming.

BTW, any idea how this is working with the current code? Given that 
we're re-loading the GuC on runtime resume, are the VFs getting 
disconnected and having to detect that and re-connect? Or are we just 
disabling rpm if a VF is enabled? Because if our approach is that rpm is 
just not supported if VFs are in use then we can keep your current 
approach and add an assert to make sure we're not runtime suspending if 
the vf count is > 0.

Daniele

>
> Co-developed-by: Riana Tauro <riana.tauro@intel.com>
> Signed-off-by: Riana Tauro <riana.tauro@intel.com>
> Signed-off-by: Raag Jadav <raag.jadav@intel.com>
> ---
>   drivers/gpu/drm/xe/xe_gt.c     | 60 ++++++++++++++++++++++++++++++++++
>   drivers/gpu/drm/xe/xe_gt.h     |  2 ++
>   drivers/gpu/drm/xe/xe_guc.c    | 34 +++++++++++++++++++
>   drivers/gpu/drm/xe/xe_guc.h    |  2 ++
>   drivers/gpu/drm/xe/xe_guc_ct.c | 27 +++++++++++++++
>   drivers/gpu/drm/xe/xe_guc_ct.h |  2 ++
>   drivers/gpu/drm/xe/xe_pm.c     | 10 +++---
>   drivers/gpu/drm/xe/xe_uc.c     | 28 ++++++++++++++++
>   drivers/gpu/drm/xe/xe_uc.h     |  2 ++
>   9 files changed, 162 insertions(+), 5 deletions(-)
>
> diff --git a/drivers/gpu/drm/xe/xe_gt.c b/drivers/gpu/drm/xe/xe_gt.c
> index d8e94fb8b9bd..0eacca14ccbb 100644
> --- a/drivers/gpu/drm/xe/xe_gt.c
> +++ b/drivers/gpu/drm/xe/xe_gt.c
> @@ -1003,6 +1003,66 @@ int xe_gt_resume(struct xe_gt *gt)
>   	return err;
>   }
>   
> +/**
> + * xe_gt_runtime_suspend() - GT runtime suspend
> + * @gt: the GT object
> + *
> + * Return: 0 on success, negative error code otherwise.
> + */
> +int xe_gt_runtime_suspend(struct xe_gt *gt)
> +{
> +	unsigned int fw_ref;
> +	int err = -ETIMEDOUT;
> +
> +	xe_gt_dbg(gt, "runtime suspending\n");
> +
> +	fw_ref = xe_force_wake_get(gt_to_fw(gt), XE_FORCEWAKE_ALL);
> +	if (!xe_force_wake_ref_has_domain(fw_ref, XE_FORCEWAKE_ALL))
> +		goto err_force_wake;
> +
> +	xe_uc_runtime_suspend(&gt->uc);
> +	xe_gt_disable_host_l2_vram(gt);
> +
> +	xe_force_wake_put(gt_to_fw(gt), fw_ref);
> +	xe_gt_dbg(gt, "runtime suspended\n");
> +
> +	return 0;
> +
> +err_force_wake:
> +	xe_force_wake_put(gt_to_fw(gt), fw_ref);
> +	return err;
> +}
> +
> +/**
> + * xe_gt_runtime_resume() - GT runtime resume
> + * @gt: the GT object
> + *
> + * Return: 0 on success, negative error code otherwise.
> + */
> +int xe_gt_runtime_resume(struct xe_gt *gt)
> +{
> +	unsigned int fw_ref;
> +	int err = -ETIMEDOUT;
> +
> +	xe_gt_dbg(gt, "runtime resuming\n");
> +
> +	fw_ref = xe_force_wake_get(gt_to_fw(gt), XE_FORCEWAKE_ALL);
> +	if (!xe_force_wake_ref_has_domain(fw_ref, XE_FORCEWAKE_ALL))
> +		goto err_force_wake;
> +
> +	xe_gt_enable_host_l2_vram(gt);
> +	xe_uc_runtime_resume(&gt->uc);
> +
> +	xe_force_wake_put(gt_to_fw(gt), fw_ref);
> +	xe_gt_dbg(gt, "runtime resumed\n");
> +
> +	return 0;
> +
> +err_force_wake:
> +	xe_force_wake_put(gt_to_fw(gt), fw_ref);
> +	return err;
> +}
> +
>   struct xe_hw_engine *xe_gt_hw_engine(struct xe_gt *gt,
>   				     enum xe_engine_class class,
>   				     u16 instance, bool logical)
> diff --git a/drivers/gpu/drm/xe/xe_gt.h b/drivers/gpu/drm/xe/xe_gt.h
> index 5df2ffe3ff83..ceb633ec22d0 100644
> --- a/drivers/gpu/drm/xe/xe_gt.h
> +++ b/drivers/gpu/drm/xe/xe_gt.h
> @@ -52,6 +52,8 @@ int xe_gt_suspend(struct xe_gt *gt);
>   void xe_gt_shutdown(struct xe_gt *gt);
>   int xe_gt_resume(struct xe_gt *gt);
>   void xe_gt_reset_async(struct xe_gt *gt);
> +int xe_gt_runtime_resume(struct xe_gt *gt);
> +int xe_gt_runtime_suspend(struct xe_gt *gt);
>   void xe_gt_sanitize(struct xe_gt *gt);
>   int xe_gt_sanitize_freq(struct xe_gt *gt);
>   
> diff --git a/drivers/gpu/drm/xe/xe_guc.c b/drivers/gpu/drm/xe/xe_guc.c
> index d94490979adc..6262ca1c1d42 100644
> --- a/drivers/gpu/drm/xe/xe_guc.c
> +++ b/drivers/gpu/drm/xe/xe_guc.c
> @@ -1599,6 +1599,40 @@ int xe_guc_start(struct xe_guc *guc)
>   	return xe_guc_submit_start(guc);
>   }
>   
> +/**
> + * xe_guc_runtime_suspend() - GuC runtime suspend
> + * @guc: The GuC object
> + *
> + * Stop further runs of submission tasks on given GuC and runtime suspend
> + * GuC CT.
> + */
> +void xe_guc_runtime_suspend(struct xe_guc *guc)
> +{
> +	xe_guc_submit_pause(guc);
> +	xe_guc_submit_disable(guc);
> +	xe_guc_ct_runtime_suspend(&guc->ct);
> +}
> +
> +/**
> + * xe_guc_runtime_resume() - GuC runtime resume
> + * @guc: The GuC object
> + *
> + * Runtime resume GuC CT and allow further runs of submission tasks on
> + * given GuC.
> + */
> +void xe_guc_runtime_resume(struct xe_guc *guc)
> +{
> +	/*
> +	 * Runtime PM flows are not applicable for VFs, so it's safe to
> +	 * directly enable IRQ.
> +	 */
> +	guc_enable_irq(guc);
> +
> +	xe_guc_ct_runtime_resume(&guc->ct);
> +	xe_guc_submit_enable(guc);
> +	xe_guc_submit_unpause(guc);
> +}
> +
>   void xe_guc_print_info(struct xe_guc *guc, struct drm_printer *p)
>   {
>   	struct xe_gt *gt = guc_to_gt(guc);
> diff --git a/drivers/gpu/drm/xe/xe_guc.h b/drivers/gpu/drm/xe/xe_guc.h
> index 1cca05967e62..0165e941a352 100644
> --- a/drivers/gpu/drm/xe/xe_guc.h
> +++ b/drivers/gpu/drm/xe/xe_guc.h
> @@ -35,6 +35,8 @@ int xe_guc_upload(struct xe_guc *guc);
>   int xe_guc_min_load_for_hwconfig(struct xe_guc *guc);
>   int xe_guc_enable_communication(struct xe_guc *guc);
>   int xe_guc_opt_in_features_enable(struct xe_guc *guc);
> +void xe_guc_runtime_suspend(struct xe_guc *guc);
> +void xe_guc_runtime_resume(struct xe_guc *guc);
>   int xe_guc_suspend(struct xe_guc *guc);
>   void xe_guc_notify(struct xe_guc *guc);
>   int xe_guc_auth_huc(struct xe_guc *guc, u32 rsa_addr);
> diff --git a/drivers/gpu/drm/xe/xe_guc_ct.c b/drivers/gpu/drm/xe/xe_guc_ct.c
> index 3ae1e8db143a..2232e872dbd6 100644
> --- a/drivers/gpu/drm/xe/xe_guc_ct.c
> +++ b/drivers/gpu/drm/xe/xe_guc_ct.c
> @@ -634,6 +634,33 @@ void xe_guc_ct_stop(struct xe_guc_ct *ct)
>   	stop_g2h_handler(ct);
>   }
>   
> +/**
> + * xe_guc_ct_runtime_suspend() - GuC CT runtime suspend
> + * @ct: the &xe_guc_ct
> + *
> + * Set GuC CT to disabled state.
> + */
> +void xe_guc_ct_runtime_suspend(struct xe_guc_ct *ct)
> +{
> +	/*
> +	 * Since we're already in runtime suspend path, we shouldn't have pending
> +	 * messages. But if there happen to be any, we'd probably want them to be
> +	 * thrown as errors for further investigation.
> +	 */
> +	xe_guc_ct_disable(ct);
> +}
> +
> +/**
> + * xe_guc_ct_runtime_resume() - GuC CT runtime resume
> + * @ct: the &xe_guc_ct
> + *
> + * Restart GuC CT and set it to enabled state.
> + */
> +void xe_guc_ct_runtime_resume(struct xe_guc_ct *ct)
> +{
> +	xe_guc_ct_restart(ct);
> +}
> +
>   static bool h2g_has_room(struct xe_guc_ct *ct, u32 cmd_len)
>   {
>   	struct guc_ctb *h2g = &ct->ctbs.h2g;
> diff --git a/drivers/gpu/drm/xe/xe_guc_ct.h b/drivers/gpu/drm/xe/xe_guc_ct.h
> index ca1ce2b3c354..5599939f8fe1 100644
> --- a/drivers/gpu/drm/xe/xe_guc_ct.h
> +++ b/drivers/gpu/drm/xe/xe_guc_ct.h
> @@ -17,6 +17,8 @@ int xe_guc_ct_init_post_hwconfig(struct xe_guc_ct *ct);
>   int xe_guc_ct_enable(struct xe_guc_ct *ct);
>   int xe_guc_ct_restart(struct xe_guc_ct *ct);
>   void xe_guc_ct_disable(struct xe_guc_ct *ct);
> +void xe_guc_ct_runtime_resume(struct xe_guc_ct *ct);
> +void xe_guc_ct_runtime_suspend(struct xe_guc_ct *ct);
>   void xe_guc_ct_stop(struct xe_guc_ct *ct);
>   void xe_guc_ct_flush_and_stop(struct xe_guc_ct *ct);
>   void xe_guc_ct_fast_path(struct xe_guc_ct *ct);
> diff --git a/drivers/gpu/drm/xe/xe_pm.c b/drivers/gpu/drm/xe/xe_pm.c
> index 53507e09f7bc..403a61e98ad8 100644
> --- a/drivers/gpu/drm/xe/xe_pm.c
> +++ b/drivers/gpu/drm/xe/xe_pm.c
> @@ -591,7 +591,7 @@ int xe_pm_runtime_suspend(struct xe_device *xe)
>   	}
>   
>   	for_each_gt(gt, xe, id) {
> -		err = xe_gt_suspend(gt);
> +		err = xe->d3cold.allowed ? xe_gt_suspend(gt) : xe_gt_runtime_suspend(gt);
>   		if (err)
>   			goto out_resume;
>   	}
> @@ -633,10 +633,10 @@ int xe_pm_runtime_resume(struct xe_device *xe)
>   
>   	xe_rpm_lockmap_acquire(xe);
>   
> -	for_each_gt(gt, xe, id)
> -		xe_gt_idle_disable_c6(gt);
> -
>   	if (xe->d3cold.allowed) {
> +		for_each_gt(gt, xe, id)
> +			xe_gt_idle_disable_c6(gt);
> +
>   		err = xe_pcode_ready(xe, true);
>   		if (err)
>   			goto out;
> @@ -657,7 +657,7 @@ int xe_pm_runtime_resume(struct xe_device *xe)
>   	xe_irq_resume(xe);
>   
>   	for_each_gt(gt, xe, id)
> -		xe_gt_resume(gt);
> +		xe->d3cold.allowed ? xe_gt_resume(gt) : xe_gt_runtime_resume(gt);
>   
>   	xe_display_pm_runtime_resume(xe);
>   
> diff --git a/drivers/gpu/drm/xe/xe_uc.c b/drivers/gpu/drm/xe/xe_uc.c
> index 465bda355443..6a58b33248f5 100644
> --- a/drivers/gpu/drm/xe/xe_uc.c
> +++ b/drivers/gpu/drm/xe/xe_uc.c
> @@ -301,6 +301,34 @@ int xe_uc_suspend(struct xe_uc *uc)
>   	return xe_guc_suspend(&uc->guc);
>   }
>   
> +/**
> + * xe_uc_runtime_suspend() - UC runtime suspend
> + * @uc: the UC object
> + *
> + * Runtime suspend all UCs.
> + */
> +void xe_uc_runtime_suspend(struct xe_uc *uc)
> +{
> +	if (!xe_device_uc_enabled(uc_to_xe(uc)))
> +		return;
> +
> +	xe_guc_runtime_suspend(&uc->guc);
> +}
> +
> +/**
> + * xe_uc_runtime_resume() - UC runtime resume
> + * @uc: the UC object
> + *
> + * Runtime resume all UCs.
> + */
> +void xe_uc_runtime_resume(struct xe_uc *uc)
> +{
> +	if (!xe_device_uc_enabled(uc_to_xe(uc)))
> +		return;
> +
> +	xe_guc_runtime_resume(&uc->guc);
> +}
> +
>   /**
>    * xe_uc_declare_wedged() - Declare UC wedged
>    * @uc: the UC object
> diff --git a/drivers/gpu/drm/xe/xe_uc.h b/drivers/gpu/drm/xe/xe_uc.h
> index 21c9306098cf..5398da1a8097 100644
> --- a/drivers/gpu/drm/xe/xe_uc.h
> +++ b/drivers/gpu/drm/xe/xe_uc.h
> @@ -14,6 +14,8 @@ int xe_uc_init_post_hwconfig(struct xe_uc *uc);
>   int xe_uc_load_hw(struct xe_uc *uc);
>   void xe_uc_gucrc_disable(struct xe_uc *uc);
>   int xe_uc_reset_prepare(struct xe_uc *uc);
> +void xe_uc_runtime_resume(struct xe_uc *uc);
> +void xe_uc_runtime_suspend(struct xe_uc *uc);
>   void xe_uc_stop_prepare(struct xe_uc *uc);
>   void xe_uc_stop(struct xe_uc *uc);
>   int xe_uc_start(struct xe_uc *uc);


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

* Re: [PATCH v5 2/2] drm/xe/gt: Introduce runtime suspend/resume
  2025-10-16 15:32   ` Daniele Ceraolo Spurio
@ 2025-10-16 18:38     ` Matthew Brost
  2025-10-16 18:47       ` Daniele Ceraolo Spurio
  0 siblings, 1 reply; 18+ messages in thread
From: Matthew Brost @ 2025-10-16 18:38 UTC (permalink / raw)
  To: Daniele Ceraolo Spurio
  Cc: Raag Jadav, lucas.demarchi, rodrigo.vivi, intel-xe, riana.tauro,
	michal.wajdeczko

On Thu, Oct 16, 2025 at 08:32:23AM -0700, Daniele Ceraolo Spurio wrote:
> 
> 
> On 10/14/2025 12:30 AM, Raag Jadav wrote:
> > If power state is retained between suspend/resume cycle, we don't need
> > to perform full GT re-initialization. Introduce runtime helpers for GT
> > which greatly reduce suspend/resume delay.
> > 
> > v2: Drop redundant xe_gt_sanitize() and xe_guc_ct_stop() (Daniele)
> >      Use runtime naming for guc helpers (Daniele)
> > v3: Drop redundant logging, add kernel doc (Michal)
> >      Use runtime naming for ct helpers (Michal)
> > v4: Fix tags (Rodrigo)
> > v5: Include host_l2_vram workaround (Daniele)
> >      Reuse xe_guc_submit_enable/disable() helpers (Daniele)
> 
> Based on the reply about VF behavior in the previous rev, I am thinking this
> is not the correct approach to this.
> If on a VF the runtime_suspend/resume functions are not called at all like
> you said, it means that the VF driver needs to be able to cope with the fact
> that the HW can lose power without it being directly notified if its rpm
> refcount is 0. This in turn means that on a VF the driver can't rely on what
> you do in xe_uc_runtime_suspend/resume() to idle the state and must instead
> guarantee that the state is already idled when the last rpm ref is released
> and that a new rpm ref is taken before restarting anything (which might
> already be true). AFAIK there are no difference in the SW state management
> of queues and CTBs between PF and VF, so if we achieve that on a VF we'll
> also have it on PF/Native, which means that there will be no need to
> pause/unpause CTBs and exec_queues. The only thing that the PF would need to
> do in the rpm flow is program the HW (e.g. the host_l2_vram stuff and the
> irq re-enabling).
> 
> tl;dr, if we guarantee that:
> 1 - if the rpm refcount is 0 then there is no activity on HW, so nothing
> that needs to be paused (which might already be true)
> 2 - an rpm ref is taken before any activity is started (which might also
> already be true)
> 
> Then we're guaranteeing that there is nothing to pause/unpause at runtime
> suspend/resume time, so we're safe skipping those calls entirely on VF while
> on native/PF we can just focus on the HW re-programming.
> 
> BTW, any idea how this is working with the current code? Given that we're
> re-loading the GuC on runtime resume, are the VFs getting disconnected and

VFs hold a RPM ref. See pf_enable_vfs in xe_pci_sriov.c.

Matt

> having to detect that and re-connect? Or are we just disabling rpm if a VF
> is enabled? Because if our approach is that rpm is just not supported if VFs
> are in use then we can keep your current approach and add an assert to make
> sure we're not runtime suspending if the vf count is > 0.
> 
> Daniele
> 
> > 
> > Co-developed-by: Riana Tauro <riana.tauro@intel.com>
> > Signed-off-by: Riana Tauro <riana.tauro@intel.com>
> > Signed-off-by: Raag Jadav <raag.jadav@intel.com>
> > ---
> >   drivers/gpu/drm/xe/xe_gt.c     | 60 ++++++++++++++++++++++++++++++++++
> >   drivers/gpu/drm/xe/xe_gt.h     |  2 ++
> >   drivers/gpu/drm/xe/xe_guc.c    | 34 +++++++++++++++++++
> >   drivers/gpu/drm/xe/xe_guc.h    |  2 ++
> >   drivers/gpu/drm/xe/xe_guc_ct.c | 27 +++++++++++++++
> >   drivers/gpu/drm/xe/xe_guc_ct.h |  2 ++
> >   drivers/gpu/drm/xe/xe_pm.c     | 10 +++---
> >   drivers/gpu/drm/xe/xe_uc.c     | 28 ++++++++++++++++
> >   drivers/gpu/drm/xe/xe_uc.h     |  2 ++
> >   9 files changed, 162 insertions(+), 5 deletions(-)
> > 
> > diff --git a/drivers/gpu/drm/xe/xe_gt.c b/drivers/gpu/drm/xe/xe_gt.c
> > index d8e94fb8b9bd..0eacca14ccbb 100644
> > --- a/drivers/gpu/drm/xe/xe_gt.c
> > +++ b/drivers/gpu/drm/xe/xe_gt.c
> > @@ -1003,6 +1003,66 @@ int xe_gt_resume(struct xe_gt *gt)
> >   	return err;
> >   }
> > +/**
> > + * xe_gt_runtime_suspend() - GT runtime suspend
> > + * @gt: the GT object
> > + *
> > + * Return: 0 on success, negative error code otherwise.
> > + */
> > +int xe_gt_runtime_suspend(struct xe_gt *gt)
> > +{
> > +	unsigned int fw_ref;
> > +	int err = -ETIMEDOUT;
> > +
> > +	xe_gt_dbg(gt, "runtime suspending\n");
> > +
> > +	fw_ref = xe_force_wake_get(gt_to_fw(gt), XE_FORCEWAKE_ALL);
> > +	if (!xe_force_wake_ref_has_domain(fw_ref, XE_FORCEWAKE_ALL))
> > +		goto err_force_wake;
> > +
> > +	xe_uc_runtime_suspend(&gt->uc);
> > +	xe_gt_disable_host_l2_vram(gt);
> > +
> > +	xe_force_wake_put(gt_to_fw(gt), fw_ref);
> > +	xe_gt_dbg(gt, "runtime suspended\n");
> > +
> > +	return 0;
> > +
> > +err_force_wake:
> > +	xe_force_wake_put(gt_to_fw(gt), fw_ref);
> > +	return err;
> > +}
> > +
> > +/**
> > + * xe_gt_runtime_resume() - GT runtime resume
> > + * @gt: the GT object
> > + *
> > + * Return: 0 on success, negative error code otherwise.
> > + */
> > +int xe_gt_runtime_resume(struct xe_gt *gt)
> > +{
> > +	unsigned int fw_ref;
> > +	int err = -ETIMEDOUT;
> > +
> > +	xe_gt_dbg(gt, "runtime resuming\n");
> > +
> > +	fw_ref = xe_force_wake_get(gt_to_fw(gt), XE_FORCEWAKE_ALL);
> > +	if (!xe_force_wake_ref_has_domain(fw_ref, XE_FORCEWAKE_ALL))
> > +		goto err_force_wake;
> > +
> > +	xe_gt_enable_host_l2_vram(gt);
> > +	xe_uc_runtime_resume(&gt->uc);
> > +
> > +	xe_force_wake_put(gt_to_fw(gt), fw_ref);
> > +	xe_gt_dbg(gt, "runtime resumed\n");
> > +
> > +	return 0;
> > +
> > +err_force_wake:
> > +	xe_force_wake_put(gt_to_fw(gt), fw_ref);
> > +	return err;
> > +}
> > +
> >   struct xe_hw_engine *xe_gt_hw_engine(struct xe_gt *gt,
> >   				     enum xe_engine_class class,
> >   				     u16 instance, bool logical)
> > diff --git a/drivers/gpu/drm/xe/xe_gt.h b/drivers/gpu/drm/xe/xe_gt.h
> > index 5df2ffe3ff83..ceb633ec22d0 100644
> > --- a/drivers/gpu/drm/xe/xe_gt.h
> > +++ b/drivers/gpu/drm/xe/xe_gt.h
> > @@ -52,6 +52,8 @@ int xe_gt_suspend(struct xe_gt *gt);
> >   void xe_gt_shutdown(struct xe_gt *gt);
> >   int xe_gt_resume(struct xe_gt *gt);
> >   void xe_gt_reset_async(struct xe_gt *gt);
> > +int xe_gt_runtime_resume(struct xe_gt *gt);
> > +int xe_gt_runtime_suspend(struct xe_gt *gt);
> >   void xe_gt_sanitize(struct xe_gt *gt);
> >   int xe_gt_sanitize_freq(struct xe_gt *gt);
> > diff --git a/drivers/gpu/drm/xe/xe_guc.c b/drivers/gpu/drm/xe/xe_guc.c
> > index d94490979adc..6262ca1c1d42 100644
> > --- a/drivers/gpu/drm/xe/xe_guc.c
> > +++ b/drivers/gpu/drm/xe/xe_guc.c
> > @@ -1599,6 +1599,40 @@ int xe_guc_start(struct xe_guc *guc)
> >   	return xe_guc_submit_start(guc);
> >   }
> > +/**
> > + * xe_guc_runtime_suspend() - GuC runtime suspend
> > + * @guc: The GuC object
> > + *
> > + * Stop further runs of submission tasks on given GuC and runtime suspend
> > + * GuC CT.
> > + */
> > +void xe_guc_runtime_suspend(struct xe_guc *guc)
> > +{
> > +	xe_guc_submit_pause(guc);
> > +	xe_guc_submit_disable(guc);
> > +	xe_guc_ct_runtime_suspend(&guc->ct);
> > +}
> > +
> > +/**
> > + * xe_guc_runtime_resume() - GuC runtime resume
> > + * @guc: The GuC object
> > + *
> > + * Runtime resume GuC CT and allow further runs of submission tasks on
> > + * given GuC.
> > + */
> > +void xe_guc_runtime_resume(struct xe_guc *guc)
> > +{
> > +	/*
> > +	 * Runtime PM flows are not applicable for VFs, so it's safe to
> > +	 * directly enable IRQ.
> > +	 */
> > +	guc_enable_irq(guc);
> > +
> > +	xe_guc_ct_runtime_resume(&guc->ct);
> > +	xe_guc_submit_enable(guc);
> > +	xe_guc_submit_unpause(guc);
> > +}
> > +
> >   void xe_guc_print_info(struct xe_guc *guc, struct drm_printer *p)
> >   {
> >   	struct xe_gt *gt = guc_to_gt(guc);
> > diff --git a/drivers/gpu/drm/xe/xe_guc.h b/drivers/gpu/drm/xe/xe_guc.h
> > index 1cca05967e62..0165e941a352 100644
> > --- a/drivers/gpu/drm/xe/xe_guc.h
> > +++ b/drivers/gpu/drm/xe/xe_guc.h
> > @@ -35,6 +35,8 @@ int xe_guc_upload(struct xe_guc *guc);
> >   int xe_guc_min_load_for_hwconfig(struct xe_guc *guc);
> >   int xe_guc_enable_communication(struct xe_guc *guc);
> >   int xe_guc_opt_in_features_enable(struct xe_guc *guc);
> > +void xe_guc_runtime_suspend(struct xe_guc *guc);
> > +void xe_guc_runtime_resume(struct xe_guc *guc);
> >   int xe_guc_suspend(struct xe_guc *guc);
> >   void xe_guc_notify(struct xe_guc *guc);
> >   int xe_guc_auth_huc(struct xe_guc *guc, u32 rsa_addr);
> > diff --git a/drivers/gpu/drm/xe/xe_guc_ct.c b/drivers/gpu/drm/xe/xe_guc_ct.c
> > index 3ae1e8db143a..2232e872dbd6 100644
> > --- a/drivers/gpu/drm/xe/xe_guc_ct.c
> > +++ b/drivers/gpu/drm/xe/xe_guc_ct.c
> > @@ -634,6 +634,33 @@ void xe_guc_ct_stop(struct xe_guc_ct *ct)
> >   	stop_g2h_handler(ct);
> >   }
> > +/**
> > + * xe_guc_ct_runtime_suspend() - GuC CT runtime suspend
> > + * @ct: the &xe_guc_ct
> > + *
> > + * Set GuC CT to disabled state.
> > + */
> > +void xe_guc_ct_runtime_suspend(struct xe_guc_ct *ct)
> > +{
> > +	/*
> > +	 * Since we're already in runtime suspend path, we shouldn't have pending
> > +	 * messages. But if there happen to be any, we'd probably want them to be
> > +	 * thrown as errors for further investigation.
> > +	 */
> > +	xe_guc_ct_disable(ct);
> > +}
> > +
> > +/**
> > + * xe_guc_ct_runtime_resume() - GuC CT runtime resume
> > + * @ct: the &xe_guc_ct
> > + *
> > + * Restart GuC CT and set it to enabled state.
> > + */
> > +void xe_guc_ct_runtime_resume(struct xe_guc_ct *ct)
> > +{
> > +	xe_guc_ct_restart(ct);
> > +}
> > +
> >   static bool h2g_has_room(struct xe_guc_ct *ct, u32 cmd_len)
> >   {
> >   	struct guc_ctb *h2g = &ct->ctbs.h2g;
> > diff --git a/drivers/gpu/drm/xe/xe_guc_ct.h b/drivers/gpu/drm/xe/xe_guc_ct.h
> > index ca1ce2b3c354..5599939f8fe1 100644
> > --- a/drivers/gpu/drm/xe/xe_guc_ct.h
> > +++ b/drivers/gpu/drm/xe/xe_guc_ct.h
> > @@ -17,6 +17,8 @@ int xe_guc_ct_init_post_hwconfig(struct xe_guc_ct *ct);
> >   int xe_guc_ct_enable(struct xe_guc_ct *ct);
> >   int xe_guc_ct_restart(struct xe_guc_ct *ct);
> >   void xe_guc_ct_disable(struct xe_guc_ct *ct);
> > +void xe_guc_ct_runtime_resume(struct xe_guc_ct *ct);
> > +void xe_guc_ct_runtime_suspend(struct xe_guc_ct *ct);
> >   void xe_guc_ct_stop(struct xe_guc_ct *ct);
> >   void xe_guc_ct_flush_and_stop(struct xe_guc_ct *ct);
> >   void xe_guc_ct_fast_path(struct xe_guc_ct *ct);
> > diff --git a/drivers/gpu/drm/xe/xe_pm.c b/drivers/gpu/drm/xe/xe_pm.c
> > index 53507e09f7bc..403a61e98ad8 100644
> > --- a/drivers/gpu/drm/xe/xe_pm.c
> > +++ b/drivers/gpu/drm/xe/xe_pm.c
> > @@ -591,7 +591,7 @@ int xe_pm_runtime_suspend(struct xe_device *xe)
> >   	}
> >   	for_each_gt(gt, xe, id) {
> > -		err = xe_gt_suspend(gt);
> > +		err = xe->d3cold.allowed ? xe_gt_suspend(gt) : xe_gt_runtime_suspend(gt);
> >   		if (err)
> >   			goto out_resume;
> >   	}
> > @@ -633,10 +633,10 @@ int xe_pm_runtime_resume(struct xe_device *xe)
> >   	xe_rpm_lockmap_acquire(xe);
> > -	for_each_gt(gt, xe, id)
> > -		xe_gt_idle_disable_c6(gt);
> > -
> >   	if (xe->d3cold.allowed) {
> > +		for_each_gt(gt, xe, id)
> > +			xe_gt_idle_disable_c6(gt);
> > +
> >   		err = xe_pcode_ready(xe, true);
> >   		if (err)
> >   			goto out;
> > @@ -657,7 +657,7 @@ int xe_pm_runtime_resume(struct xe_device *xe)
> >   	xe_irq_resume(xe);
> >   	for_each_gt(gt, xe, id)
> > -		xe_gt_resume(gt);
> > +		xe->d3cold.allowed ? xe_gt_resume(gt) : xe_gt_runtime_resume(gt);
> >   	xe_display_pm_runtime_resume(xe);
> > diff --git a/drivers/gpu/drm/xe/xe_uc.c b/drivers/gpu/drm/xe/xe_uc.c
> > index 465bda355443..6a58b33248f5 100644
> > --- a/drivers/gpu/drm/xe/xe_uc.c
> > +++ b/drivers/gpu/drm/xe/xe_uc.c
> > @@ -301,6 +301,34 @@ int xe_uc_suspend(struct xe_uc *uc)
> >   	return xe_guc_suspend(&uc->guc);
> >   }
> > +/**
> > + * xe_uc_runtime_suspend() - UC runtime suspend
> > + * @uc: the UC object
> > + *
> > + * Runtime suspend all UCs.
> > + */
> > +void xe_uc_runtime_suspend(struct xe_uc *uc)
> > +{
> > +	if (!xe_device_uc_enabled(uc_to_xe(uc)))
> > +		return;
> > +
> > +	xe_guc_runtime_suspend(&uc->guc);
> > +}
> > +
> > +/**
> > + * xe_uc_runtime_resume() - UC runtime resume
> > + * @uc: the UC object
> > + *
> > + * Runtime resume all UCs.
> > + */
> > +void xe_uc_runtime_resume(struct xe_uc *uc)
> > +{
> > +	if (!xe_device_uc_enabled(uc_to_xe(uc)))
> > +		return;
> > +
> > +	xe_guc_runtime_resume(&uc->guc);
> > +}
> > +
> >   /**
> >    * xe_uc_declare_wedged() - Declare UC wedged
> >    * @uc: the UC object
> > diff --git a/drivers/gpu/drm/xe/xe_uc.h b/drivers/gpu/drm/xe/xe_uc.h
> > index 21c9306098cf..5398da1a8097 100644
> > --- a/drivers/gpu/drm/xe/xe_uc.h
> > +++ b/drivers/gpu/drm/xe/xe_uc.h
> > @@ -14,6 +14,8 @@ int xe_uc_init_post_hwconfig(struct xe_uc *uc);
> >   int xe_uc_load_hw(struct xe_uc *uc);
> >   void xe_uc_gucrc_disable(struct xe_uc *uc);
> >   int xe_uc_reset_prepare(struct xe_uc *uc);
> > +void xe_uc_runtime_resume(struct xe_uc *uc);
> > +void xe_uc_runtime_suspend(struct xe_uc *uc);
> >   void xe_uc_stop_prepare(struct xe_uc *uc);
> >   void xe_uc_stop(struct xe_uc *uc);
> >   int xe_uc_start(struct xe_uc *uc);
> 

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

* Re: [PATCH v5 2/2] drm/xe/gt: Introduce runtime suspend/resume
  2025-10-16 18:38     ` Matthew Brost
@ 2025-10-16 18:47       ` Daniele Ceraolo Spurio
  2025-10-20 11:48         ` Raag Jadav
  0 siblings, 1 reply; 18+ messages in thread
From: Daniele Ceraolo Spurio @ 2025-10-16 18:47 UTC (permalink / raw)
  To: Matthew Brost
  Cc: Raag Jadav, lucas.demarchi, rodrigo.vivi, intel-xe, riana.tauro,
	michal.wajdeczko



On 10/16/2025 11:38 AM, Matthew Brost wrote:
> On Thu, Oct 16, 2025 at 08:32:23AM -0700, Daniele Ceraolo Spurio wrote:
>>
>> On 10/14/2025 12:30 AM, Raag Jadav wrote:
>>> If power state is retained between suspend/resume cycle, we don't need
>>> to perform full GT re-initialization. Introduce runtime helpers for GT
>>> which greatly reduce suspend/resume delay.
>>>
>>> v2: Drop redundant xe_gt_sanitize() and xe_guc_ct_stop() (Daniele)
>>>       Use runtime naming for guc helpers (Daniele)
>>> v3: Drop redundant logging, add kernel doc (Michal)
>>>       Use runtime naming for ct helpers (Michal)
>>> v4: Fix tags (Rodrigo)
>>> v5: Include host_l2_vram workaround (Daniele)
>>>       Reuse xe_guc_submit_enable/disable() helpers (Daniele)
>> Based on the reply about VF behavior in the previous rev, I am thinking this
>> is not the correct approach to this.
>> If on a VF the runtime_suspend/resume functions are not called at all like
>> you said, it means that the VF driver needs to be able to cope with the fact
>> that the HW can lose power without it being directly notified if its rpm
>> refcount is 0. This in turn means that on a VF the driver can't rely on what
>> you do in xe_uc_runtime_suspend/resume() to idle the state and must instead
>> guarantee that the state is already idled when the last rpm ref is released
>> and that a new rpm ref is taken before restarting anything (which might
>> already be true). AFAIK there are no difference in the SW state management
>> of queues and CTBs between PF and VF, so if we achieve that on a VF we'll
>> also have it on PF/Native, which means that there will be no need to
>> pause/unpause CTBs and exec_queues. The only thing that the PF would need to
>> do in the rpm flow is program the HW (e.g. the host_l2_vram stuff and the
>> irq re-enabling).
>>
>> tl;dr, if we guarantee that:
>> 1 - if the rpm refcount is 0 then there is no activity on HW, so nothing
>> that needs to be paused (which might already be true)
>> 2 - an rpm ref is taken before any activity is started (which might also
>> already be true)
>>
>> Then we're guaranteeing that there is nothing to pause/unpause at runtime
>> suspend/resume time, so we're safe skipping those calls entirely on VF while
>> on native/PF we can just focus on the HW re-programming.
>>
>> BTW, any idea how this is working with the current code? Given that we're
>> re-loading the GuC on runtime resume, are the VFs getting disconnected and
> VFs hold a RPM ref. See pf_enable_vfs in xe_pci_sriov.c.

Ok, so we just can never do runtime pm if there are VFs active and my 
concerns about VF rpm behavior are void. Thanks for clarifying. It might 
be worth adding an assert to the runtime suspend/resume functions to 
make sure this is documented there as well and not just in the SRIOV code.

I think that we should still investigate if we actually do need to call 
pause/unpause on runtime suspend or if we're already covered by the rpm 
refs, because we might end up being able to actually turn on rpm for 
VFs, but we can do that as a follow up step and go ahead with the 
approach in this patch first.

Daniele

>
> Matt
>
>> having to detect that and re-connect? Or are we just disabling rpm if a VF
>> is enabled? Because if our approach is that rpm is just not supported if VFs
>> are in use then we can keep your current approach and add an assert to make
>> sure we're not runtime suspending if the vf count is > 0.
>>
>> Daniele
>>
>>> Co-developed-by: Riana Tauro <riana.tauro@intel.com>
>>> Signed-off-by: Riana Tauro <riana.tauro@intel.com>
>>> Signed-off-by: Raag Jadav <raag.jadav@intel.com>
>>> ---
>>>    drivers/gpu/drm/xe/xe_gt.c     | 60 ++++++++++++++++++++++++++++++++++
>>>    drivers/gpu/drm/xe/xe_gt.h     |  2 ++
>>>    drivers/gpu/drm/xe/xe_guc.c    | 34 +++++++++++++++++++
>>>    drivers/gpu/drm/xe/xe_guc.h    |  2 ++
>>>    drivers/gpu/drm/xe/xe_guc_ct.c | 27 +++++++++++++++
>>>    drivers/gpu/drm/xe/xe_guc_ct.h |  2 ++
>>>    drivers/gpu/drm/xe/xe_pm.c     | 10 +++---
>>>    drivers/gpu/drm/xe/xe_uc.c     | 28 ++++++++++++++++
>>>    drivers/gpu/drm/xe/xe_uc.h     |  2 ++
>>>    9 files changed, 162 insertions(+), 5 deletions(-)
>>>
>>> diff --git a/drivers/gpu/drm/xe/xe_gt.c b/drivers/gpu/drm/xe/xe_gt.c
>>> index d8e94fb8b9bd..0eacca14ccbb 100644
>>> --- a/drivers/gpu/drm/xe/xe_gt.c
>>> +++ b/drivers/gpu/drm/xe/xe_gt.c
>>> @@ -1003,6 +1003,66 @@ int xe_gt_resume(struct xe_gt *gt)
>>>    	return err;
>>>    }
>>> +/**
>>> + * xe_gt_runtime_suspend() - GT runtime suspend
>>> + * @gt: the GT object
>>> + *
>>> + * Return: 0 on success, negative error code otherwise.
>>> + */
>>> +int xe_gt_runtime_suspend(struct xe_gt *gt)
>>> +{
>>> +	unsigned int fw_ref;
>>> +	int err = -ETIMEDOUT;
>>> +
>>> +	xe_gt_dbg(gt, "runtime suspending\n");
>>> +
>>> +	fw_ref = xe_force_wake_get(gt_to_fw(gt), XE_FORCEWAKE_ALL);
>>> +	if (!xe_force_wake_ref_has_domain(fw_ref, XE_FORCEWAKE_ALL))
>>> +		goto err_force_wake;
>>> +
>>> +	xe_uc_runtime_suspend(&gt->uc);
>>> +	xe_gt_disable_host_l2_vram(gt);
>>> +
>>> +	xe_force_wake_put(gt_to_fw(gt), fw_ref);
>>> +	xe_gt_dbg(gt, "runtime suspended\n");
>>> +
>>> +	return 0;
>>> +
>>> +err_force_wake:
>>> +	xe_force_wake_put(gt_to_fw(gt), fw_ref);
>>> +	return err;
>>> +}
>>> +
>>> +/**
>>> + * xe_gt_runtime_resume() - GT runtime resume
>>> + * @gt: the GT object
>>> + *
>>> + * Return: 0 on success, negative error code otherwise.
>>> + */
>>> +int xe_gt_runtime_resume(struct xe_gt *gt)
>>> +{
>>> +	unsigned int fw_ref;
>>> +	int err = -ETIMEDOUT;
>>> +
>>> +	xe_gt_dbg(gt, "runtime resuming\n");
>>> +
>>> +	fw_ref = xe_force_wake_get(gt_to_fw(gt), XE_FORCEWAKE_ALL);
>>> +	if (!xe_force_wake_ref_has_domain(fw_ref, XE_FORCEWAKE_ALL))
>>> +		goto err_force_wake;
>>> +
>>> +	xe_gt_enable_host_l2_vram(gt);
>>> +	xe_uc_runtime_resume(&gt->uc);
>>> +
>>> +	xe_force_wake_put(gt_to_fw(gt), fw_ref);
>>> +	xe_gt_dbg(gt, "runtime resumed\n");
>>> +
>>> +	return 0;
>>> +
>>> +err_force_wake:
>>> +	xe_force_wake_put(gt_to_fw(gt), fw_ref);
>>> +	return err;
>>> +}
>>> +
>>>    struct xe_hw_engine *xe_gt_hw_engine(struct xe_gt *gt,
>>>    				     enum xe_engine_class class,
>>>    				     u16 instance, bool logical)
>>> diff --git a/drivers/gpu/drm/xe/xe_gt.h b/drivers/gpu/drm/xe/xe_gt.h
>>> index 5df2ffe3ff83..ceb633ec22d0 100644
>>> --- a/drivers/gpu/drm/xe/xe_gt.h
>>> +++ b/drivers/gpu/drm/xe/xe_gt.h
>>> @@ -52,6 +52,8 @@ int xe_gt_suspend(struct xe_gt *gt);
>>>    void xe_gt_shutdown(struct xe_gt *gt);
>>>    int xe_gt_resume(struct xe_gt *gt);
>>>    void xe_gt_reset_async(struct xe_gt *gt);
>>> +int xe_gt_runtime_resume(struct xe_gt *gt);
>>> +int xe_gt_runtime_suspend(struct xe_gt *gt);
>>>    void xe_gt_sanitize(struct xe_gt *gt);
>>>    int xe_gt_sanitize_freq(struct xe_gt *gt);
>>> diff --git a/drivers/gpu/drm/xe/xe_guc.c b/drivers/gpu/drm/xe/xe_guc.c
>>> index d94490979adc..6262ca1c1d42 100644
>>> --- a/drivers/gpu/drm/xe/xe_guc.c
>>> +++ b/drivers/gpu/drm/xe/xe_guc.c
>>> @@ -1599,6 +1599,40 @@ int xe_guc_start(struct xe_guc *guc)
>>>    	return xe_guc_submit_start(guc);
>>>    }
>>> +/**
>>> + * xe_guc_runtime_suspend() - GuC runtime suspend
>>> + * @guc: The GuC object
>>> + *
>>> + * Stop further runs of submission tasks on given GuC and runtime suspend
>>> + * GuC CT.
>>> + */
>>> +void xe_guc_runtime_suspend(struct xe_guc *guc)
>>> +{
>>> +	xe_guc_submit_pause(guc);
>>> +	xe_guc_submit_disable(guc);
>>> +	xe_guc_ct_runtime_suspend(&guc->ct);
>>> +}
>>> +
>>> +/**
>>> + * xe_guc_runtime_resume() - GuC runtime resume
>>> + * @guc: The GuC object
>>> + *
>>> + * Runtime resume GuC CT and allow further runs of submission tasks on
>>> + * given GuC.
>>> + */
>>> +void xe_guc_runtime_resume(struct xe_guc *guc)
>>> +{
>>> +	/*
>>> +	 * Runtime PM flows are not applicable for VFs, so it's safe to
>>> +	 * directly enable IRQ.
>>> +	 */
>>> +	guc_enable_irq(guc);
>>> +
>>> +	xe_guc_ct_runtime_resume(&guc->ct);
>>> +	xe_guc_submit_enable(guc);
>>> +	xe_guc_submit_unpause(guc);
>>> +}
>>> +
>>>    void xe_guc_print_info(struct xe_guc *guc, struct drm_printer *p)
>>>    {
>>>    	struct xe_gt *gt = guc_to_gt(guc);
>>> diff --git a/drivers/gpu/drm/xe/xe_guc.h b/drivers/gpu/drm/xe/xe_guc.h
>>> index 1cca05967e62..0165e941a352 100644
>>> --- a/drivers/gpu/drm/xe/xe_guc.h
>>> +++ b/drivers/gpu/drm/xe/xe_guc.h
>>> @@ -35,6 +35,8 @@ int xe_guc_upload(struct xe_guc *guc);
>>>    int xe_guc_min_load_for_hwconfig(struct xe_guc *guc);
>>>    int xe_guc_enable_communication(struct xe_guc *guc);
>>>    int xe_guc_opt_in_features_enable(struct xe_guc *guc);
>>> +void xe_guc_runtime_suspend(struct xe_guc *guc);
>>> +void xe_guc_runtime_resume(struct xe_guc *guc);
>>>    int xe_guc_suspend(struct xe_guc *guc);
>>>    void xe_guc_notify(struct xe_guc *guc);
>>>    int xe_guc_auth_huc(struct xe_guc *guc, u32 rsa_addr);
>>> diff --git a/drivers/gpu/drm/xe/xe_guc_ct.c b/drivers/gpu/drm/xe/xe_guc_ct.c
>>> index 3ae1e8db143a..2232e872dbd6 100644
>>> --- a/drivers/gpu/drm/xe/xe_guc_ct.c
>>> +++ b/drivers/gpu/drm/xe/xe_guc_ct.c
>>> @@ -634,6 +634,33 @@ void xe_guc_ct_stop(struct xe_guc_ct *ct)
>>>    	stop_g2h_handler(ct);
>>>    }
>>> +/**
>>> + * xe_guc_ct_runtime_suspend() - GuC CT runtime suspend
>>> + * @ct: the &xe_guc_ct
>>> + *
>>> + * Set GuC CT to disabled state.
>>> + */
>>> +void xe_guc_ct_runtime_suspend(struct xe_guc_ct *ct)
>>> +{
>>> +	/*
>>> +	 * Since we're already in runtime suspend path, we shouldn't have pending
>>> +	 * messages. But if there happen to be any, we'd probably want them to be
>>> +	 * thrown as errors for further investigation.
>>> +	 */
>>> +	xe_guc_ct_disable(ct);
>>> +}
>>> +
>>> +/**
>>> + * xe_guc_ct_runtime_resume() - GuC CT runtime resume
>>> + * @ct: the &xe_guc_ct
>>> + *
>>> + * Restart GuC CT and set it to enabled state.
>>> + */
>>> +void xe_guc_ct_runtime_resume(struct xe_guc_ct *ct)
>>> +{
>>> +	xe_guc_ct_restart(ct);
>>> +}
>>> +
>>>    static bool h2g_has_room(struct xe_guc_ct *ct, u32 cmd_len)
>>>    {
>>>    	struct guc_ctb *h2g = &ct->ctbs.h2g;
>>> diff --git a/drivers/gpu/drm/xe/xe_guc_ct.h b/drivers/gpu/drm/xe/xe_guc_ct.h
>>> index ca1ce2b3c354..5599939f8fe1 100644
>>> --- a/drivers/gpu/drm/xe/xe_guc_ct.h
>>> +++ b/drivers/gpu/drm/xe/xe_guc_ct.h
>>> @@ -17,6 +17,8 @@ int xe_guc_ct_init_post_hwconfig(struct xe_guc_ct *ct);
>>>    int xe_guc_ct_enable(struct xe_guc_ct *ct);
>>>    int xe_guc_ct_restart(struct xe_guc_ct *ct);
>>>    void xe_guc_ct_disable(struct xe_guc_ct *ct);
>>> +void xe_guc_ct_runtime_resume(struct xe_guc_ct *ct);
>>> +void xe_guc_ct_runtime_suspend(struct xe_guc_ct *ct);
>>>    void xe_guc_ct_stop(struct xe_guc_ct *ct);
>>>    void xe_guc_ct_flush_and_stop(struct xe_guc_ct *ct);
>>>    void xe_guc_ct_fast_path(struct xe_guc_ct *ct);
>>> diff --git a/drivers/gpu/drm/xe/xe_pm.c b/drivers/gpu/drm/xe/xe_pm.c
>>> index 53507e09f7bc..403a61e98ad8 100644
>>> --- a/drivers/gpu/drm/xe/xe_pm.c
>>> +++ b/drivers/gpu/drm/xe/xe_pm.c
>>> @@ -591,7 +591,7 @@ int xe_pm_runtime_suspend(struct xe_device *xe)
>>>    	}
>>>    	for_each_gt(gt, xe, id) {
>>> -		err = xe_gt_suspend(gt);
>>> +		err = xe->d3cold.allowed ? xe_gt_suspend(gt) : xe_gt_runtime_suspend(gt);
>>>    		if (err)
>>>    			goto out_resume;
>>>    	}
>>> @@ -633,10 +633,10 @@ int xe_pm_runtime_resume(struct xe_device *xe)
>>>    	xe_rpm_lockmap_acquire(xe);
>>> -	for_each_gt(gt, xe, id)
>>> -		xe_gt_idle_disable_c6(gt);
>>> -
>>>    	if (xe->d3cold.allowed) {
>>> +		for_each_gt(gt, xe, id)
>>> +			xe_gt_idle_disable_c6(gt);
>>> +
>>>    		err = xe_pcode_ready(xe, true);
>>>    		if (err)
>>>    			goto out;
>>> @@ -657,7 +657,7 @@ int xe_pm_runtime_resume(struct xe_device *xe)
>>>    	xe_irq_resume(xe);
>>>    	for_each_gt(gt, xe, id)
>>> -		xe_gt_resume(gt);
>>> +		xe->d3cold.allowed ? xe_gt_resume(gt) : xe_gt_runtime_resume(gt);
>>>    	xe_display_pm_runtime_resume(xe);
>>> diff --git a/drivers/gpu/drm/xe/xe_uc.c b/drivers/gpu/drm/xe/xe_uc.c
>>> index 465bda355443..6a58b33248f5 100644
>>> --- a/drivers/gpu/drm/xe/xe_uc.c
>>> +++ b/drivers/gpu/drm/xe/xe_uc.c
>>> @@ -301,6 +301,34 @@ int xe_uc_suspend(struct xe_uc *uc)
>>>    	return xe_guc_suspend(&uc->guc);
>>>    }
>>> +/**
>>> + * xe_uc_runtime_suspend() - UC runtime suspend
>>> + * @uc: the UC object
>>> + *
>>> + * Runtime suspend all UCs.
>>> + */
>>> +void xe_uc_runtime_suspend(struct xe_uc *uc)
>>> +{
>>> +	if (!xe_device_uc_enabled(uc_to_xe(uc)))
>>> +		return;
>>> +
>>> +	xe_guc_runtime_suspend(&uc->guc);
>>> +}
>>> +
>>> +/**
>>> + * xe_uc_runtime_resume() - UC runtime resume
>>> + * @uc: the UC object
>>> + *
>>> + * Runtime resume all UCs.
>>> + */
>>> +void xe_uc_runtime_resume(struct xe_uc *uc)
>>> +{
>>> +	if (!xe_device_uc_enabled(uc_to_xe(uc)))
>>> +		return;
>>> +
>>> +	xe_guc_runtime_resume(&uc->guc);
>>> +}
>>> +
>>>    /**
>>>     * xe_uc_declare_wedged() - Declare UC wedged
>>>     * @uc: the UC object
>>> diff --git a/drivers/gpu/drm/xe/xe_uc.h b/drivers/gpu/drm/xe/xe_uc.h
>>> index 21c9306098cf..5398da1a8097 100644
>>> --- a/drivers/gpu/drm/xe/xe_uc.h
>>> +++ b/drivers/gpu/drm/xe/xe_uc.h
>>> @@ -14,6 +14,8 @@ int xe_uc_init_post_hwconfig(struct xe_uc *uc);
>>>    int xe_uc_load_hw(struct xe_uc *uc);
>>>    void xe_uc_gucrc_disable(struct xe_uc *uc);
>>>    int xe_uc_reset_prepare(struct xe_uc *uc);
>>> +void xe_uc_runtime_resume(struct xe_uc *uc);
>>> +void xe_uc_runtime_suspend(struct xe_uc *uc);
>>>    void xe_uc_stop_prepare(struct xe_uc *uc);
>>>    void xe_uc_stop(struct xe_uc *uc);
>>>    int xe_uc_start(struct xe_uc *uc);


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

* Re: [PATCH v5 1/2] drm/xe/guc: Make xe_guc_submit_pause() available for non-VF cases
  2025-10-16 12:21       ` Raag Jadav
@ 2025-10-16 19:01         ` Matthew Brost
  0 siblings, 0 replies; 18+ messages in thread
From: Matthew Brost @ 2025-10-16 19:01 UTC (permalink / raw)
  To: Raag Jadav
  Cc: lucas.demarchi, rodrigo.vivi, intel-xe, riana.tauro,
	daniele.ceraolospurio, michal.wajdeczko

On Thu, Oct 16, 2025 at 02:21:09PM +0200, Raag Jadav wrote:
> On Wed, Oct 15, 2025 at 09:04:18AM +0200, Raag Jadav wrote:
> > On Tue, Oct 14, 2025 at 11:09:19AM -0700, Matthew Brost wrote:
> > > On Tue, Oct 14, 2025 at 01:00:35PM +0530, Raag Jadav wrote:
> > > > Drop xe_gt_assert() meant for VF migration and make xe_guc_submit_pause()
> > > > available for non-VF cases.
> > > > 
> > > > Signed-off-by: Raag Jadav <raag.jadav@intel.com>
> > > > ---
> > > >  drivers/gpu/drm/xe/xe_guc_submit.c | 2 --
> > > >  1 file changed, 2 deletions(-)
> > > > 
> > > > diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
> > > > index 0ef67d3523a7..3cc428d45b4a 100644
> > > > --- a/drivers/gpu/drm/xe/xe_guc_submit.c
> > > > +++ b/drivers/gpu/drm/xe/xe_guc_submit.c
> > > > @@ -2170,8 +2170,6 @@ void xe_guc_submit_pause(struct xe_guc *guc)
> > > >  	struct xe_exec_queue *q;
> > > >  	unsigned long index;
> > > >  
> > > > -	xe_gt_assert(guc_to_gt(guc), vf_recovery(guc));
> > > > -
> > > 
> > > This function does a lot of things specific to VF recovery, it should
> > > not be called in runtime PM flows. Same goes for xe_guc_submit_unpause.
> > 
> > Can we branch them out inside pause/unpause()? Or is there a better
> > alternative?
> > 
> > Considering we'd still like to achieve the original pause/unpause()
> > behaviour here (stop/start submission on a scheduler without loosing
> > GuC state), do you suspect any side-effects?
> 
> I came up with something like this, but not sure if this is correct way
> to do this. Let me know what you think.
> 
> diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
> index 0ef67d3523a7..8ee6069abe99 100644
> --- a/drivers/gpu/drm/xe/xe_guc_submit.c
> +++ b/drivers/gpu/drm/xe/xe_guc_submit.c
> @@ -2127,6 +2127,11 @@ static void guc_exec_queue_pause(struct xe_guc *guc, struct xe_exec_queue *q)
>  
>  	/* Stop scheduling + flush any DRM scheduler operations */
>  	xe_sched_submission_stop(sched);
> +
> +	/* Non-VF cases don't need migration */
> +	if (!IS_SRIOV_VF(guc_to_xe(guc)))
> +		return;
> +

This is roughly right, all you need to do is stop / start the DRM
schedulers. I think it might be best to just add function that does
this (xe_guc_submit_rpm_pause?) and perhap
s/xe_guc_submit_pause/xe_guc_submit_vf_pause ?

Matt

>  	if (xe_exec_queue_is_lr(q))
>  		cancel_work_sync(&q->guc->lr_tdr);
>  	else
> @@ -2170,8 +2175,6 @@ void xe_guc_submit_pause(struct xe_guc *guc)
>  	struct xe_exec_queue *q;
>  	unsigned long index;
>  
> -	xe_gt_assert(guc_to_gt(guc), vf_recovery(guc));
> -
>  	mutex_lock(&guc->submission_state.lock);
>  	xa_for_each(&guc->submission_state.exec_queue_lookup, index, q) {
>  		/* Prevent redundant attempts to stop parallel queues */
> @@ -2325,6 +2328,12 @@ static void guc_exec_queue_unpause(struct xe_guc *guc, struct xe_exec_queue *q)
>  
>  	lockdep_assert_held(&guc->submission_state.lock);
>  
> +	/* Non-VF cases don't need migration */
> +	if (!IS_SRIOV_VF(guc_to_xe(guc))) {
> +		xe_sched_submission_start(sched);
> +		return;
> +	}
> +
>  	xe_sched_resubmit_jobs(sched);
>  	guc_exec_queue_replay_pending_state_change(q);
>  	xe_sched_submission_start(sched);

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

* ✓ Xe.CI.Full: success for Introduce GT runtime suspend/resume (rev3)
  2025-10-14  7:30 [PATCH v5 0/2] Introduce GT runtime suspend/resume Raag Jadav
                   ` (7 preceding siblings ...)
  2025-10-16 14:08 ` ✓ Xe.CI.BAT: " Patchwork
@ 2025-10-17  9:43 ` Patchwork
  8 siblings, 0 replies; 18+ messages in thread
From: Patchwork @ 2025-10-17  9:43 UTC (permalink / raw)
  To: Raag Jadav; +Cc: intel-xe

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

== Series Details ==

Series: Introduce GT runtime suspend/resume (rev3)
URL   : https://patchwork.freedesktop.org/series/154017/
State : success

== Summary ==

CI Bug Log - changes from xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed_FULL -> xe-pw-154017v3_FULL
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

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

  No changes in participating hosts

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

  Here are the changes found in xe-pw-154017v3_FULL that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@intel_hwmon@hwmon-write:
    - shard-adlp:         NOTRUN -> [SKIP][1] ([Intel XE#1125] / [Intel XE#5574])
   [1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-8/igt@intel_hwmon@hwmon-write.html

  * igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels:
    - shard-bmg:          NOTRUN -> [SKIP][2] ([Intel XE#2370])
   [2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-5/igt@kms_atomic_transition@plane-all-modeset-transition-internal-panels.html

  * igt@kms_big_fb@4-tiled-addfb-size-offset-overflow:
    - shard-adlp:         NOTRUN -> [SKIP][3] ([Intel XE#607])
   [3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@kms_big_fb@4-tiled-addfb-size-offset-overflow.html

  * igt@kms_big_fb@4-tiled-addfb-size-overflow:
    - shard-adlp:         NOTRUN -> [SKIP][4] ([Intel XE#610])
   [4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@kms_big_fb@4-tiled-addfb-size-overflow.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip:
    - shard-adlp:         NOTRUN -> [SKIP][5] ([Intel XE#1124]) +13 other tests skip
   [5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@kms_big_fb@4-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html

  * igt@kms_big_fb@linear-8bpp-rotate-270:
    - shard-dg2-set2:     NOTRUN -> [SKIP][6] ([Intel XE#316]) +1 other test skip
   [6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-432/igt@kms_big_fb@linear-8bpp-rotate-270.html

  * igt@kms_big_fb@x-tiled-32bpp-rotate-90:
    - shard-adlp:         NOTRUN -> [SKIP][7] ([Intel XE#316]) +8 other tests skip
   [7]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-2/igt@kms_big_fb@x-tiled-32bpp-rotate-90.html

  * igt@kms_big_fb@x-tiled-64bpp-rotate-180:
    - shard-adlp:         NOTRUN -> [DMESG-FAIL][8] ([Intel XE#4543]) +8 other tests dmesg-fail
   [8]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-2/igt@kms_big_fb@x-tiled-64bpp-rotate-180.html

  * igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip:
    - shard-lnl:          NOTRUN -> [SKIP][9] ([Intel XE#1124]) +1 other test skip
   [9]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-2/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip.html

  * igt@kms_big_fb@yf-tiled-16bpp-rotate-0:
    - shard-dg2-set2:     NOTRUN -> [SKIP][10] ([Intel XE#1124]) +3 other tests skip
   [10]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-463/igt@kms_big_fb@yf-tiled-16bpp-rotate-0.html

  * igt@kms_big_fb@yf-tiled-16bpp-rotate-180:
    - shard-bmg:          NOTRUN -> [SKIP][11] ([Intel XE#1124]) +4 other tests skip
   [11]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-5/igt@kms_big_fb@yf-tiled-16bpp-rotate-180.html

  * igt@kms_big_fb@yf-tiled-addfb-size-offset-overflow:
    - shard-bmg:          NOTRUN -> [SKIP][12] ([Intel XE#607])
   [12]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-5/igt@kms_big_fb@yf-tiled-addfb-size-offset-overflow.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][13] ([Intel XE#607])
   [13]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-464/igt@kms_big_fb@yf-tiled-addfb-size-offset-overflow.html
    - shard-lnl:          NOTRUN -> [SKIP][14] ([Intel XE#1477])
   [14]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-7/igt@kms_big_fb@yf-tiled-addfb-size-offset-overflow.html

  * igt@kms_bw@connected-linear-tiling-1-displays-3840x2160p:
    - shard-adlp:         NOTRUN -> [SKIP][15] ([Intel XE#367]) +6 other tests skip
   [15]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-2/igt@kms_bw@connected-linear-tiling-1-displays-3840x2160p.html

  * igt@kms_bw@connected-linear-tiling-4-displays-2560x1440p:
    - shard-adlp:         NOTRUN -> [SKIP][16] ([Intel XE#2191]) +3 other tests skip
   [16]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-2/igt@kms_bw@connected-linear-tiling-4-displays-2560x1440p.html

  * igt@kms_bw@linear-tiling-2-displays-1920x1080p:
    - shard-dg2-set2:     NOTRUN -> [SKIP][17] ([Intel XE#367]) +1 other test skip
   [17]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-466/igt@kms_bw@linear-tiling-2-displays-1920x1080p.html

  * igt@kms_bw@linear-tiling-3-displays-1920x1080p:
    - shard-lnl:          NOTRUN -> [SKIP][18] ([Intel XE#367])
   [18]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-1/igt@kms_bw@linear-tiling-3-displays-1920x1080p.html

  * igt@kms_bw@linear-tiling-4-displays-2160x1440p:
    - shard-bmg:          NOTRUN -> [SKIP][19] ([Intel XE#367]) +1 other test skip
   [19]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-5/igt@kms_bw@linear-tiling-4-displays-2160x1440p.html

  * igt@kms_ccs@bad-pixel-format-4-tiled-dg2-mc-ccs:
    - shard-adlp:         NOTRUN -> [SKIP][20] ([Intel XE#455] / [Intel XE#787]) +59 other tests skip
   [20]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@kms_ccs@bad-pixel-format-4-tiled-dg2-mc-ccs.html
    - shard-bmg:          NOTRUN -> [SKIP][21] ([Intel XE#2887]) +5 other tests skip
   [21]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-5/igt@kms_ccs@bad-pixel-format-4-tiled-dg2-mc-ccs.html

  * igt@kms_ccs@bad-rotation-90-y-tiled-gen12-mc-ccs:
    - shard-lnl:          NOTRUN -> [SKIP][22] ([Intel XE#2887]) +2 other tests skip
   [22]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-2/igt@kms_ccs@bad-rotation-90-y-tiled-gen12-mc-ccs.html

  * igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs:
    - shard-dg2-set2:     NOTRUN -> [SKIP][23] ([Intel XE#2907])
   [23]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-436/igt@kms_ccs@crc-primary-basic-4-tiled-bmg-ccs.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs:
    - shard-adlp:         NOTRUN -> [SKIP][24] ([Intel XE#3442])
   [24]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs@pipe-c-dp-4:
    - shard-dg2-set2:     [PASS][25] -> [INCOMPLETE][26] ([Intel XE#3862])
   [25]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-dg2-466/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs@pipe-c-dp-4.html
   [26]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-463/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-mc-ccs@pipe-c-dp-4.html

  * igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs-cc@pipe-b-hdmi-a-1:
    - shard-adlp:         NOTRUN -> [SKIP][27] ([Intel XE#787]) +89 other tests skip
   [27]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-9/igt@kms_ccs@crc-primary-suspend-y-tiled-gen12-rc-ccs-cc@pipe-b-hdmi-a-1.html

  * igt@kms_ccs@crc-sprite-planes-basic-y-tiled-gen12-mc-ccs:
    - shard-dg2-set2:     NOTRUN -> [SKIP][28] ([Intel XE#455] / [Intel XE#787]) +13 other tests skip
   [28]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-434/igt@kms_ccs@crc-sprite-planes-basic-y-tiled-gen12-mc-ccs.html

  * igt@kms_ccs@crc-sprite-planes-basic-y-tiled-gen12-mc-ccs@pipe-b-hdmi-a-6:
    - shard-dg2-set2:     NOTRUN -> [SKIP][29] ([Intel XE#787]) +41 other tests skip
   [29]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-434/igt@kms_ccs@crc-sprite-planes-basic-y-tiled-gen12-mc-ccs@pipe-b-hdmi-a-6.html

  * igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc@pipe-d-dp-4:
    - shard-dg2-set2:     NOTRUN -> [INCOMPLETE][30] ([Intel XE#6168] / [i915#14968])
   [30]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-466/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-cc@pipe-d-hdmi-a-6:
    - shard-dg2-set2:     NOTRUN -> [DMESG-WARN][31] ([Intel XE#1727] / [Intel XE#3113])
   [31]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-466/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc@pipe-d-hdmi-a-6.html

  * igt@kms_chamelium_audio@dp-audio:
    - shard-dg2-set2:     NOTRUN -> [SKIP][32] ([Intel XE#373]) +9 other tests skip
   [32]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-434/igt@kms_chamelium_audio@dp-audio.html

  * igt@kms_chamelium_color@ctm-0-50:
    - shard-adlp:         NOTRUN -> [SKIP][33] ([Intel XE#306]) +2 other tests skip
   [33]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-9/igt@kms_chamelium_color@ctm-0-50.html

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

  * igt@kms_chamelium_hpd@common-hpd-after-suspend:
    - shard-bmg:          NOTRUN -> [SKIP][35] ([Intel XE#2252]) +6 other tests skip
   [35]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@kms_chamelium_hpd@common-hpd-after-suspend.html

  * igt@kms_chamelium_hpd@dp-hpd-fast:
    - shard-lnl:          NOTRUN -> [SKIP][36] ([Intel XE#373]) +3 other tests skip
   [36]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-5/igt@kms_chamelium_hpd@dp-hpd-fast.html

  * igt@kms_chamelium_hpd@hdmi-hpd-storm-disable:
    - shard-adlp:         NOTRUN -> [SKIP][37] ([Intel XE#373]) +17 other tests skip
   [37]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@kms_chamelium_hpd@hdmi-hpd-storm-disable.html

  * igt@kms_content_protection@dp-mst-type-0:
    - shard-bmg:          NOTRUN -> [SKIP][38] ([Intel XE#2390])
   [38]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-5/igt@kms_content_protection@dp-mst-type-0.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][39] ([Intel XE#307])
   [39]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-463/igt@kms_content_protection@dp-mst-type-0.html
    - shard-lnl:          NOTRUN -> [SKIP][40] ([Intel XE#307])
   [40]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-8/igt@kms_content_protection@dp-mst-type-0.html

  * igt@kms_content_protection@dp-mst-type-1:
    - shard-adlp:         NOTRUN -> [SKIP][41] ([Intel XE#307]) +2 other tests skip
   [41]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-8/igt@kms_content_protection@dp-mst-type-1.html

  * igt@kms_cursor_crc@cursor-sliding-512x170:
    - shard-adlp:         NOTRUN -> [SKIP][42] ([Intel XE#308])
   [42]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@kms_cursor_crc@cursor-sliding-512x170.html

  * igt@kms_cursor_crc@cursor-sliding-max-size:
    - shard-lnl:          NOTRUN -> [SKIP][43] ([Intel XE#1424]) +2 other tests skip
   [43]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-1/igt@kms_cursor_crc@cursor-sliding-max-size.html
    - shard-bmg:          NOTRUN -> [SKIP][44] ([Intel XE#2320]) +3 other tests skip
   [44]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@kms_cursor_crc@cursor-sliding-max-size.html

  * igt@kms_cursor_legacy@cursora-vs-flipb-legacy:
    - shard-dg2-set2:     [PASS][45] -> [INCOMPLETE][46] ([Intel XE#3226])
   [45]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-dg2-433/igt@kms_cursor_legacy@cursora-vs-flipb-legacy.html
   [46]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-435/igt@kms_cursor_legacy@cursora-vs-flipb-legacy.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions:
    - shard-lnl:          NOTRUN -> [SKIP][47] ([Intel XE#309]) +1 other test skip
   [47]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-1/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions.html
    - shard-bmg:          NOTRUN -> [SKIP][48] ([Intel XE#2291])
   [48]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa-legacy:
    - shard-bmg:          [PASS][49] -> [SKIP][50] ([Intel XE#2291]) +4 other tests skip
   [49]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-7/igt@kms_cursor_legacy@cursorb-vs-flipa-legacy.html
   [50]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@kms_cursor_legacy@cursorb-vs-flipa-legacy.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa-varying-size:
    - shard-bmg:          [PASS][51] -> [DMESG-WARN][52] ([Intel XE#5354]) +1 other test dmesg-warn
   [51]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-4/igt@kms_cursor_legacy@cursorb-vs-flipa-varying-size.html
   [52]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-8/igt@kms_cursor_legacy@cursorb-vs-flipa-varying-size.html

  * igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions-varying-size:
    - shard-adlp:         NOTRUN -> [SKIP][53] ([Intel XE#309]) +5 other tests skip
   [53]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@kms_cursor_legacy@cursorb-vs-flipb-atomic-transitions-varying-size.html

  * igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size:
    - shard-adlp:         NOTRUN -> [SKIP][54] ([Intel XE#323])
   [54]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions-varying-size.html

  * igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle:
    - shard-bmg:          NOTRUN -> [SKIP][55] ([Intel XE#2286])
   [55]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-3/igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle.html

  * igt@kms_dirtyfb@drrs-dirtyfb-ioctl:
    - shard-bmg:          NOTRUN -> [SKIP][56] ([Intel XE#1508])
   [56]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-7/igt@kms_dirtyfb@drrs-dirtyfb-ioctl.html
    - shard-lnl:          NOTRUN -> [SKIP][57] ([Intel XE#1508])
   [57]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-2/igt@kms_dirtyfb@drrs-dirtyfb-ioctl.html

  * igt@kms_display_modes@extended-mode-basic:
    - shard-adlp:         NOTRUN -> [SKIP][58] ([Intel XE#4302])
   [58]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@kms_display_modes@extended-mode-basic.html

  * igt@kms_dp_aux_dev:
    - shard-bmg:          [PASS][59] -> [SKIP][60] ([Intel XE#3009])
   [59]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-7/igt@kms_dp_aux_dev.html
   [60]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@kms_dp_aux_dev.html

  * igt@kms_dp_link_training@non-uhbr-mst:
    - shard-bmg:          NOTRUN -> [SKIP][61] ([Intel XE#4354])
   [61]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-8/igt@kms_dp_link_training@non-uhbr-mst.html

  * igt@kms_dp_linktrain_fallback@dp-fallback:
    - shard-adlp:         NOTRUN -> [SKIP][62] ([Intel XE#4331])
   [62]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-2/igt@kms_dp_linktrain_fallback@dp-fallback.html

  * igt@kms_dsc@dsc-with-output-formats:
    - shard-bmg:          NOTRUN -> [SKIP][63] ([Intel XE#2244])
   [63]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-4/igt@kms_dsc@dsc-with-output-formats.html
    - shard-lnl:          NOTRUN -> [SKIP][64] ([Intel XE#2244])
   [64]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-5/igt@kms_dsc@dsc-with-output-formats.html

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

  * igt@kms_feature_discovery@display-4x:
    - shard-adlp:         NOTRUN -> [SKIP][66] ([Intel XE#1138])
   [66]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@kms_feature_discovery@display-4x.html

  * igt@kms_flip@2x-flip-vs-rmfb:
    - shard-lnl:          NOTRUN -> [SKIP][67] ([Intel XE#1421]) +1 other test skip
   [67]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-8/igt@kms_flip@2x-flip-vs-rmfb.html

  * igt@kms_flip@2x-nonexisting-fb:
    - shard-bmg:          [PASS][68] -> [SKIP][69] ([Intel XE#2316]) +2 other tests skip
   [68]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-1/igt@kms_flip@2x-nonexisting-fb.html
   [69]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@kms_flip@2x-nonexisting-fb.html

  * igt@kms_flip@2x-nonexisting-fb-interruptible:
    - shard-adlp:         NOTRUN -> [SKIP][70] ([Intel XE#310]) +12 other tests skip
   [70]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-2/igt@kms_flip@2x-nonexisting-fb-interruptible.html

  * igt@kms_flip@2x-plain-flip-interruptible:
    - shard-bmg:          NOTRUN -> [SKIP][71] ([Intel XE#2316]) +1 other test skip
   [71]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@kms_flip@2x-plain-flip-interruptible.html

  * igt@kms_flip@basic-flip-vs-dpms@c-hdmi-a1:
    - shard-adlp:         NOTRUN -> [DMESG-WARN][72] ([Intel XE#4543]) +16 other tests dmesg-warn
   [72]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-9/igt@kms_flip@basic-flip-vs-dpms@c-hdmi-a1.html

  * igt@kms_flip@basic-plain-flip@b-hdmi-a1:
    - shard-adlp:         [PASS][73] -> [DMESG-WARN][74] ([Intel XE#4543]) +4 other tests dmesg-warn
   [73]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-1/igt@kms_flip@basic-plain-flip@b-hdmi-a1.html
   [74]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@kms_flip@basic-plain-flip@b-hdmi-a1.html

  * igt@kms_flip@flip-vs-panning-interruptible:
    - shard-adlp:         NOTRUN -> [DMESG-WARN][75] ([Intel XE#4543] / [Intel XE#5208])
   [75]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-2/igt@kms_flip@flip-vs-panning-interruptible.html

  * igt@kms_flip@flip-vs-suspend-interruptible:
    - shard-dg2-set2:     [PASS][76] -> [INCOMPLETE][77] ([Intel XE#2049] / [Intel XE#2597]) +1 other test incomplete
   [76]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-dg2-432/igt@kms_flip@flip-vs-suspend-interruptible.html
   [77]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-435/igt@kms_flip@flip-vs-suspend-interruptible.html

  * igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-upscaling:
    - shard-adlp:         NOTRUN -> [SKIP][78] ([Intel XE#455]) +42 other tests skip
   [78]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-upscaling.html

  * igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-downscaling:
    - shard-adlp:         NOTRUN -> [DMESG-FAIL][79] ([Intel XE#4543] / [Intel XE#4921]) +3 other tests dmesg-fail
   [79]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-16bpp-xtile-downscaling.html

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

  * igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-downscaling:
    - shard-dg2-set2:     NOTRUN -> [SKIP][81] ([Intel XE#455]) +16 other tests skip
   [81]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-463/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytile-downscaling.html

  * igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling:
    - shard-lnl:          NOTRUN -> [SKIP][82] ([Intel XE#1401] / [Intel XE#1745]) +1 other test skip
   [82]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-8/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling.html

  * igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling@pipe-a-default-mode:
    - shard-lnl:          NOTRUN -> [SKIP][83] ([Intel XE#1401]) +1 other test skip
   [83]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-8/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling@pipe-a-default-mode.html

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

  * igt@kms_force_connector_basic@force-connector-state:
    - shard-lnl:          NOTRUN -> [SKIP][85] ([Intel XE#352])
   [85]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-5/igt@kms_force_connector_basic@force-connector-state.html

  * igt@kms_frontbuffer_tracking@drrs-1p-primscrn-cur-indfb-onoff:
    - shard-dg2-set2:     NOTRUN -> [SKIP][86] ([Intel XE#651]) +15 other tests skip
   [86]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-464/igt@kms_frontbuffer_tracking@drrs-1p-primscrn-cur-indfb-onoff.html
    - shard-lnl:          NOTRUN -> [SKIP][87] ([Intel XE#651]) +3 other tests skip
   [87]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-3/igt@kms_frontbuffer_tracking@drrs-1p-primscrn-cur-indfb-onoff.html

  * igt@kms_frontbuffer_tracking@drrs-2p-primscrn-pri-indfb-draw-mmap-wc:
    - shard-bmg:          NOTRUN -> [SKIP][88] ([Intel XE#2312]) +2 other tests skip
   [88]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-pri-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@drrs-modesetfrombusy:
    - shard-adlp:         NOTRUN -> [SKIP][89] ([Intel XE#651]) +16 other tests skip
   [89]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-8/igt@kms_frontbuffer_tracking@drrs-modesetfrombusy.html

  * igt@kms_frontbuffer_tracking@drrs-rgb101010-draw-render:
    - shard-bmg:          NOTRUN -> [SKIP][90] ([Intel XE#2311]) +12 other tests skip
   [90]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-7/igt@kms_frontbuffer_tracking@drrs-rgb101010-draw-render.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-render:
    - shard-bmg:          NOTRUN -> [SKIP][91] ([Intel XE#5390]) +8 other tests skip
   [91]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-2/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbc-tiling-y:
    - shard-bmg:          NOTRUN -> [SKIP][92] ([Intel XE#2352])
   [92]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-3/igt@kms_frontbuffer_tracking@fbc-tiling-y.html

  * igt@kms_frontbuffer_tracking@fbcpsr-tiling-4:
    - shard-adlp:         NOTRUN -> [SKIP][93] ([Intel XE#1151])
   [93]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@kms_frontbuffer_tracking@fbcpsr-tiling-4.html

  * igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-blt:
    - shard-adlp:         NOTRUN -> [SKIP][94] ([Intel XE#653]) +18 other tests skip
   [94]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-9/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-mmap-wc:
    - shard-dg2-set2:     NOTRUN -> [SKIP][95] ([Intel XE#653]) +21 other tests skip
   [95]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-464/igt@kms_frontbuffer_tracking@psr-2p-primscrn-pri-shrfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@psr-2p-primscrn-shrfb-plflip-blt:
    - shard-lnl:          NOTRUN -> [SKIP][96] ([Intel XE#656]) +9 other tests skip
   [96]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-1/igt@kms_frontbuffer_tracking@psr-2p-primscrn-shrfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-shrfb-draw-blt:
    - shard-adlp:         NOTRUN -> [SKIP][97] ([Intel XE#656]) +67 other tests skip
   [97]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-shrfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-wc:
    - shard-bmg:          NOTRUN -> [SKIP][98] ([Intel XE#2313]) +12 other tests skip
   [98]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-1/igt@kms_frontbuffer_tracking@psr-rgb565-draw-mmap-wc.html

  * igt@kms_hdr@invalid-hdr:
    - shard-bmg:          [PASS][99] -> [SKIP][100] ([Intel XE#1503])
   [99]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-6/igt@kms_hdr@invalid-hdr.html
   [100]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-1/igt@kms_hdr@invalid-hdr.html

  * igt@kms_joiner@basic-big-joiner:
    - shard-adlp:         NOTRUN -> [SKIP][101] ([Intel XE#346]) +1 other test skip
   [101]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@kms_joiner@basic-big-joiner.html

  * igt@kms_joiner@basic-force-big-joiner:
    - shard-adlp:         NOTRUN -> [SKIP][102] ([Intel XE#3012])
   [102]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@kms_joiner@basic-force-big-joiner.html
    - shard-bmg:          [PASS][103] -> [SKIP][104] ([Intel XE#3012])
   [103]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-7/igt@kms_joiner@basic-force-big-joiner.html
   [104]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@kms_joiner@basic-force-big-joiner.html

  * igt@kms_joiner@invalid-modeset-big-joiner:
    - shard-dg2-set2:     NOTRUN -> [SKIP][105] ([Intel XE#346])
   [105]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-432/igt@kms_joiner@invalid-modeset-big-joiner.html

  * igt@kms_multipipe_modeset@basic-max-pipe-crc-check:
    - shard-adlp:         NOTRUN -> [SKIP][106] ([Intel XE#356])
   [106]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-9/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html

  * igt@kms_plane_lowres@tiling-y:
    - shard-lnl:          NOTRUN -> [SKIP][107] ([Intel XE#599])
   [107]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-4/igt@kms_plane_lowres@tiling-y.html
    - shard-bmg:          NOTRUN -> [SKIP][108] ([Intel XE#2393])
   [108]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-3/igt@kms_plane_lowres@tiling-y.html

  * igt@kms_plane_multiple@2x-tiling-x:
    - shard-adlp:         NOTRUN -> [SKIP][109] ([Intel XE#4596])
   [109]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-9/igt@kms_plane_multiple@2x-tiling-x.html

  * igt@kms_plane_multiple@2x-tiling-y:
    - shard-bmg:          NOTRUN -> [SKIP][110] ([Intel XE#5021])
   [110]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-3/igt@kms_plane_multiple@2x-tiling-y.html

  * igt@kms_plane_multiple@tiling-yf:
    - shard-dg2-set2:     NOTRUN -> [SKIP][111] ([Intel XE#5020])
   [111]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-433/igt@kms_plane_multiple@tiling-yf.html

  * igt@kms_plane_scaling@plane-downscale-factor-0-5-with-rotation@pipe-c:
    - shard-lnl:          NOTRUN -> [SKIP][112] ([Intel XE#2763]) +3 other tests skip
   [112]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-7/igt@kms_plane_scaling@plane-downscale-factor-0-5-with-rotation@pipe-c.html

  * igt@kms_pm_dc@dc5-retention-flops:
    - shard-adlp:         NOTRUN -> [SKIP][113] ([Intel XE#3309])
   [113]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-9/igt@kms_pm_dc@dc5-retention-flops.html

  * igt@kms_pm_dc@dc6-dpms:
    - shard-dg2-set2:     NOTRUN -> [SKIP][114] ([Intel XE#908])
   [114]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-432/igt@kms_pm_dc@dc6-dpms.html
    - shard-lnl:          NOTRUN -> [FAIL][115] ([Intel XE#718])
   [115]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-8/igt@kms_pm_dc@dc6-dpms.html

  * igt@kms_pm_dc@dc6-psr:
    - shard-lnl:          [PASS][116] -> [FAIL][117] ([Intel XE#718])
   [116]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-lnl-2/igt@kms_pm_dc@dc6-psr.html
   [117]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-5/igt@kms_pm_dc@dc6-psr.html

  * igt@kms_pm_dc@deep-pkgc:
    - shard-adlp:         NOTRUN -> [SKIP][118] ([Intel XE#2007])
   [118]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-2/igt@kms_pm_dc@deep-pkgc.html

  * igt@kms_pm_rpm@modeset-non-lpsp:
    - shard-lnl:          NOTRUN -> [SKIP][119] ([Intel XE#1439] / [Intel XE#3141])
   [119]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-3/igt@kms_pm_rpm@modeset-non-lpsp.html

  * igt@kms_pm_rpm@modeset-non-lpsp-stress:
    - shard-adlp:         NOTRUN -> [SKIP][120] ([Intel XE#836])
   [120]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-2/igt@kms_pm_rpm@modeset-non-lpsp-stress.html

  * igt@kms_psr2_sf@fbc-pr-overlay-primary-update-sf-dmg-area:
    - shard-bmg:          NOTRUN -> [SKIP][121] ([Intel XE#1406] / [Intel XE#1489]) +6 other tests skip
   [121]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-2/igt@kms_psr2_sf@fbc-pr-overlay-primary-update-sf-dmg-area.html
    - shard-lnl:          NOTRUN -> [SKIP][122] ([Intel XE#1406] / [Intel XE#2893]) +1 other test skip
   [122]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-4/igt@kms_psr2_sf@fbc-pr-overlay-primary-update-sf-dmg-area.html

  * igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-sf:
    - shard-lnl:          NOTRUN -> [SKIP][123] ([Intel XE#1406] / [Intel XE#2893] / [Intel XE#4608])
   [123]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-7/igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-sf.html

  * igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-sf@pipe-a-edp-1:
    - shard-lnl:          NOTRUN -> [SKIP][124] ([Intel XE#1406] / [Intel XE#4608]) +1 other test skip
   [124]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-7/igt@kms_psr2_sf@fbc-psr2-overlay-plane-move-continuous-sf@pipe-a-edp-1.html

  * igt@kms_psr2_sf@psr2-overlay-primary-update-sf-dmg-area:
    - shard-dg2-set2:     NOTRUN -> [SKIP][125] ([Intel XE#1406] / [Intel XE#1489]) +5 other tests skip
   [125]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-434/igt@kms_psr2_sf@psr2-overlay-primary-update-sf-dmg-area.html

  * igt@kms_psr2_sf@psr2-primary-plane-update-sf-dmg-area-big-fb:
    - shard-adlp:         NOTRUN -> [SKIP][126] ([Intel XE#1406] / [Intel XE#1489]) +16 other tests skip
   [126]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-8/igt@kms_psr2_sf@psr2-primary-plane-update-sf-dmg-area-big-fb.html

  * igt@kms_psr2_su@page_flip-nv12:
    - shard-dg2-set2:     NOTRUN -> [SKIP][127] ([Intel XE#1122] / [Intel XE#1406])
   [127]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-463/igt@kms_psr2_su@page_flip-nv12.html

  * igt@kms_psr@fbc-psr-sprite-plane-onoff:
    - shard-dg2-set2:     NOTRUN -> [SKIP][128] ([Intel XE#1406] / [Intel XE#2850] / [Intel XE#929]) +8 other tests skip
   [128]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-434/igt@kms_psr@fbc-psr-sprite-plane-onoff.html

  * igt@kms_psr@fbc-psr2-basic:
    - shard-adlp:         NOTRUN -> [SKIP][129] ([Intel XE#1406] / [Intel XE#2850] / [Intel XE#929]) +21 other tests skip
   [129]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@kms_psr@fbc-psr2-basic.html

  * igt@kms_psr@pr-sprite-plane-onoff:
    - shard-bmg:          NOTRUN -> [SKIP][130] ([Intel XE#1406] / [Intel XE#2234] / [Intel XE#2850]) +9 other tests skip
   [130]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-7/igt@kms_psr@pr-sprite-plane-onoff.html
    - shard-lnl:          NOTRUN -> [SKIP][131] ([Intel XE#1406]) +1 other test skip
   [131]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-5/igt@kms_psr@pr-sprite-plane-onoff.html

  * igt@kms_rotation_crc@primary-4-tiled-reflect-x-180:
    - shard-adlp:         NOTRUN -> [SKIP][132] ([Intel XE#1127])
   [132]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-9/igt@kms_rotation_crc@primary-4-tiled-reflect-x-180.html

  * igt@kms_rotation_crc@primary-y-tiled-reflect-x-270:
    - shard-bmg:          NOTRUN -> [SKIP][133] ([Intel XE#3414] / [Intel XE#3904])
   [133]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-7/igt@kms_rotation_crc@primary-y-tiled-reflect-x-270.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][134] ([Intel XE#3414])
   [134]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-433/igt@kms_rotation_crc@primary-y-tiled-reflect-x-270.html
    - shard-lnl:          NOTRUN -> [SKIP][135] ([Intel XE#3414] / [Intel XE#3904])
   [135]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-5/igt@kms_rotation_crc@primary-y-tiled-reflect-x-270.html

  * igt@kms_rotation_crc@sprite-rotation-270:
    - shard-adlp:         NOTRUN -> [SKIP][136] ([Intel XE#3414]) +3 other tests skip
   [136]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-8/igt@kms_rotation_crc@sprite-rotation-270.html

  * igt@kms_scaling_modes@scaling-mode-center:
    - shard-bmg:          NOTRUN -> [SKIP][137] ([Intel XE#2413])
   [137]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-8/igt@kms_scaling_modes@scaling-mode-center.html

  * igt@kms_setmode@invalid-clone-single-crtc-stealing:
    - shard-bmg:          [PASS][138] -> [SKIP][139] ([Intel XE#1435])
   [138]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-4/igt@kms_setmode@invalid-clone-single-crtc-stealing.html
   [139]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@kms_setmode@invalid-clone-single-crtc-stealing.html

  * igt@kms_tiled_display@basic-test-pattern-with-chamelium:
    - shard-adlp:         NOTRUN -> [SKIP][140] ([Intel XE#362])
   [140]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-9/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html

  * igt@kms_vrr@seamless-rr-switch-drrs:
    - shard-bmg:          NOTRUN -> [SKIP][141] ([Intel XE#1499])
   [141]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-4/igt@kms_vrr@seamless-rr-switch-drrs.html
    - shard-lnl:          NOTRUN -> [SKIP][142] ([Intel XE#1499])
   [142]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-3/igt@kms_vrr@seamless-rr-switch-drrs.html

  * igt@xe_ccs@block-copy-compressed-inc-dimension:
    - shard-adlp:         NOTRUN -> [SKIP][143] ([Intel XE#455] / [Intel XE#488] / [Intel XE#5607])
   [143]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-8/igt@xe_ccs@block-copy-compressed-inc-dimension.html

  * igt@xe_ccs@large-ctrl-surf-copy:
    - shard-adlp:         NOTRUN -> [SKIP][144] ([Intel XE#3576] / [Intel XE#5610])
   [144]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@xe_ccs@large-ctrl-surf-copy.html

  * igt@xe_copy_basic@mem-copy-linear-0x3fff:
    - shard-adlp:         NOTRUN -> [SKIP][145] ([Intel XE#1123]) +1 other test skip
   [145]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@xe_copy_basic@mem-copy-linear-0x3fff.html

  * igt@xe_copy_basic@mem-set-linear-0x369:
    - shard-dg2-set2:     NOTRUN -> [SKIP][146] ([Intel XE#1126])
   [146]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-436/igt@xe_copy_basic@mem-set-linear-0x369.html

  * igt@xe_eu_stall@blocking-re-enable:
    - shard-adlp:         NOTRUN -> [SKIP][147] ([Intel XE#5626]) +1 other test skip
   [147]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-8/igt@xe_eu_stall@blocking-re-enable.html

  * igt@xe_eu_stall@invalid-gt-id:
    - shard-dg2-set2:     NOTRUN -> [SKIP][148] ([Intel XE#5626])
   [148]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-435/igt@xe_eu_stall@invalid-gt-id.html

  * igt@xe_eudebug_online@breakpoint-many-sessions-tiles:
    - shard-bmg:          NOTRUN -> [SKIP][149] ([Intel XE#4837]) +8 other tests skip
   [149]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@xe_eudebug_online@breakpoint-many-sessions-tiles.html

  * igt@xe_eudebug_online@resume-dss:
    - shard-dg2-set2:     NOTRUN -> [SKIP][150] ([Intel XE#4837]) +6 other tests skip
   [150]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-433/igt@xe_eudebug_online@resume-dss.html
    - shard-lnl:          NOTRUN -> [SKIP][151] ([Intel XE#4837]) +4 other tests skip
   [151]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-1/igt@xe_eudebug_online@resume-dss.html

  * igt@xe_eudebug_online@single-step:
    - shard-adlp:         NOTRUN -> [SKIP][152] ([Intel XE#4837] / [Intel XE#5565]) +22 other tests skip
   [152]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@xe_eudebug_online@single-step.html

  * igt@xe_eudebug_sriov@deny-eudebug:
    - shard-adlp:         NOTRUN -> [SKIP][153] ([Intel XE#4519])
   [153]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-9/igt@xe_eudebug_sriov@deny-eudebug.html

  * igt@xe_evict@evict-beng-large-external-cm:
    - shard-adlp:         NOTRUN -> [SKIP][154] ([Intel XE#261] / [Intel XE#5564]) +2 other tests skip
   [154]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-2/igt@xe_evict@evict-beng-large-external-cm.html

  * igt@xe_evict@evict-beng-mixed-many-threads-small:
    - shard-bmg:          [PASS][155] -> [INCOMPLETE][156] ([Intel XE#6321])
   [155]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-8/igt@xe_evict@evict-beng-mixed-many-threads-small.html
   [156]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@xe_evict@evict-beng-mixed-many-threads-small.html

  * igt@xe_evict@evict-beng-small-external-cm:
    - shard-adlp:         NOTRUN -> [SKIP][157] ([Intel XE#261] / [Intel XE#5564] / [Intel XE#688]) +1 other test skip
   [157]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@xe_evict@evict-beng-small-external-cm.html

  * igt@xe_evict@evict-threads-large-multi-vm:
    - shard-adlp:         NOTRUN -> [SKIP][158] ([Intel XE#261]) +7 other tests skip
   [158]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-8/igt@xe_evict@evict-threads-large-multi-vm.html

  * igt@xe_evict@evict-threads-small-multi-vm:
    - shard-lnl:          NOTRUN -> [SKIP][159] ([Intel XE#688]) +3 other tests skip
   [159]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-3/igt@xe_evict@evict-threads-small-multi-vm.html

  * igt@xe_evict_ccs@evict-overcommit-standalone-nofree-reopen:
    - shard-adlp:         NOTRUN -> [SKIP][160] ([Intel XE#688]) +1 other test skip
   [160]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-9/igt@xe_evict_ccs@evict-overcommit-standalone-nofree-reopen.html

  * igt@xe_exec_basic@multigpu-once-basic-defer-mmap:
    - shard-lnl:          NOTRUN -> [SKIP][161] ([Intel XE#1392]) +1 other test skip
   [161]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-1/igt@xe_exec_basic@multigpu-once-basic-defer-mmap.html

  * igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate:
    - shard-adlp:         NOTRUN -> [SKIP][162] ([Intel XE#1392] / [Intel XE#5575]) +17 other tests skip
   [162]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-9/igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate.html

  * igt@xe_exec_basic@multigpu-once-null-defer-mmap:
    - shard-bmg:          NOTRUN -> [SKIP][163] ([Intel XE#2322]) +1 other test skip
   [163]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@xe_exec_basic@multigpu-once-null-defer-mmap.html

  * igt@xe_exec_fault_mode@many-userptr-invalidate-race-prefetch:
    - shard-adlp:         NOTRUN -> [SKIP][164] ([Intel XE#288] / [Intel XE#5561]) +40 other tests skip
   [164]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@xe_exec_fault_mode@many-userptr-invalidate-race-prefetch.html

  * igt@xe_exec_fault_mode@once-bindexecqueue-rebind-prefetch:
    - shard-dg2-set2:     NOTRUN -> [SKIP][165] ([Intel XE#288]) +16 other tests skip
   [165]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-432/igt@xe_exec_fault_mode@once-bindexecqueue-rebind-prefetch.html

  * igt@xe_exec_mix_modes@exec-simple-batch-store-lr:
    - shard-adlp:         NOTRUN -> [SKIP][166] ([Intel XE#2360])
   [166]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@xe_exec_mix_modes@exec-simple-batch-store-lr.html

  * igt@xe_exec_reset@cat-error:
    - shard-adlp:         NOTRUN -> [DMESG-WARN][167] ([Intel XE#3868])
   [167]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-8/igt@xe_exec_reset@cat-error.html

  * igt@xe_exec_system_allocator@once-mmap-huge-nomemset:
    - shard-bmg:          NOTRUN -> [SKIP][168] ([Intel XE#4943]) +12 other tests skip
   [168]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-7/igt@xe_exec_system_allocator@once-mmap-huge-nomemset.html

  * igt@xe_exec_system_allocator@processes-evict-malloc:
    - shard-adlp:         NOTRUN -> [SKIP][169] ([Intel XE#4915]) +397 other tests skip
   [169]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-2/igt@xe_exec_system_allocator@processes-evict-malloc.html

  * igt@xe_exec_system_allocator@threads-shared-vm-many-large-execqueues-mmap-new-race-nomemset:
    - shard-dg2-set2:     NOTRUN -> [SKIP][170] ([Intel XE#4915]) +149 other tests skip
   [170]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-466/igt@xe_exec_system_allocator@threads-shared-vm-many-large-execqueues-mmap-new-race-nomemset.html

  * igt@xe_exec_system_allocator@threads-shared-vm-many-large-mmap-free-huge-nomemset:
    - shard-lnl:          NOTRUN -> [SKIP][171] ([Intel XE#4943]) +2 other tests skip
   [171]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-2/igt@xe_exec_system_allocator@threads-shared-vm-many-large-mmap-free-huge-nomemset.html

  * igt@xe_live_ktest@xe_bo:
    - shard-adlp:         NOTRUN -> [SKIP][172] ([Intel XE#2229] / [Intel XE#455]) +1 other test skip
   [172]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-8/igt@xe_live_ktest@xe_bo.html

  * igt@xe_live_ktest@xe_bo@xe_ccs_migrate_kunit:
    - shard-adlp:         NOTRUN -> [SKIP][173] ([Intel XE#2229])
   [173]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-8/igt@xe_live_ktest@xe_bo@xe_ccs_migrate_kunit.html

  * igt@xe_live_ktest@xe_eudebug:
    - shard-adlp:         NOTRUN -> [SKIP][174] ([Intel XE#455] / [Intel XE#5712])
   [174]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@xe_live_ktest@xe_eudebug.html

  * igt@xe_mmap@small-bar:
    - shard-adlp:         NOTRUN -> [SKIP][175] ([Intel XE#512])
   [175]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-8/igt@xe_mmap@small-bar.html

  * igt@xe_module_load@force-load:
    - shard-adlp:         NOTRUN -> [SKIP][176] ([Intel XE#378] / [Intel XE#5612])
   [176]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@xe_module_load@force-load.html

  * igt@xe_oa@buffer-size:
    - shard-dg2-set2:     NOTRUN -> [SKIP][177] ([Intel XE#6032])
   [177]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-432/igt@xe_oa@buffer-size.html
    - shard-adlp:         NOTRUN -> [SKIP][178] ([Intel XE#6032])
   [178]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@xe_oa@buffer-size.html

  * igt@xe_oa@non-privileged-access-vaddr:
    - shard-dg2-set2:     NOTRUN -> [SKIP][179] ([Intel XE#3573]) +4 other tests skip
   [179]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-466/igt@xe_oa@non-privileged-access-vaddr.html

  * igt@xe_oa@unprivileged-single-ctx-counters:
    - shard-adlp:         NOTRUN -> [SKIP][180] ([Intel XE#3573]) +8 other tests skip
   [180]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-8/igt@xe_oa@unprivileged-single-ctx-counters.html

  * igt@xe_pat@pat-index-xehpc:
    - shard-adlp:         NOTRUN -> [SKIP][181] ([Intel XE#2838] / [Intel XE#979])
   [181]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@xe_pat@pat-index-xehpc.html

  * igt@xe_pm@d3hot-mmap-vram:
    - shard-adlp:         NOTRUN -> [SKIP][182] ([Intel XE#1948])
   [182]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-8/igt@xe_pm@d3hot-mmap-vram.html

  * igt@xe_pm@s2idle-basic:
    - shard-adlp:         NOTRUN -> [DMESG-WARN][183] ([Intel XE#2953] / [Intel XE#4173] / [Intel XE#4504])
   [183]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@xe_pm@s2idle-basic.html

  * igt@xe_pm@s2idle-d3cold-basic-exec:
    - shard-adlp:         NOTRUN -> [SKIP][184] ([Intel XE#2284] / [Intel XE#366]) +3 other tests skip
   [184]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-9/igt@xe_pm@s2idle-d3cold-basic-exec.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][185] ([Intel XE#2284] / [Intel XE#366]) +1 other test skip
   [185]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-435/igt@xe_pm@s2idle-d3cold-basic-exec.html

  * igt@xe_pxp@display-pxp-fb:
    - shard-adlp:         NOTRUN -> [SKIP][186] ([Intel XE#4733])
   [186]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-2/igt@xe_pxp@display-pxp-fb.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][187] ([Intel XE#4733]) +1 other test skip
   [187]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-434/igt@xe_pxp@display-pxp-fb.html

  * igt@xe_pxp@pxp-src-to-pxp-dest-rendercopy:
    - shard-bmg:          NOTRUN -> [SKIP][188] ([Intel XE#4733]) +1 other test skip
   [188]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@xe_pxp@pxp-src-to-pxp-dest-rendercopy.html

  * igt@xe_pxp@pxp-stale-bo-bind-post-termination-irq:
    - shard-adlp:         NOTRUN -> [SKIP][189] ([Intel XE#4733] / [Intel XE#5594]) +2 other tests skip
   [189]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-9/igt@xe_pxp@pxp-stale-bo-bind-post-termination-irq.html

  * igt@xe_query@multigpu-query-config:
    - shard-adlp:         NOTRUN -> [SKIP][190] ([Intel XE#944]) +3 other tests skip
   [190]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@xe_query@multigpu-query-config.html

  * igt@xe_query@multigpu-query-engines:
    - shard-dg2-set2:     NOTRUN -> [SKIP][191] ([Intel XE#944])
   [191]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-463/igt@xe_query@multigpu-query-engines.html

  * igt@xe_query@multigpu-query-topology:
    - shard-lnl:          NOTRUN -> [SKIP][192] ([Intel XE#944])
   [192]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-7/igt@xe_query@multigpu-query-topology.html
    - shard-bmg:          NOTRUN -> [SKIP][193] ([Intel XE#944])
   [193]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-5/igt@xe_query@multigpu-query-topology.html

  * igt@xe_render_copy@render-stress-4-copies:
    - shard-adlp:         NOTRUN -> [SKIP][194] ([Intel XE#4814] / [Intel XE#5614])
   [194]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@xe_render_copy@render-stress-4-copies.html

  * igt@xe_sriov_flr@flr-twice:
    - shard-lnl:          NOTRUN -> [SKIP][195] ([Intel XE#4273])
   [195]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-3/igt@xe_sriov_flr@flr-twice.html

  * igt@xe_sriov_scheduling@equal-throughput:
    - shard-adlp:         NOTRUN -> [DMESG-FAIL][196] ([Intel XE#3868] / [Intel XE#5213]) +1 other test dmesg-fail
   [196]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@xe_sriov_scheduling@equal-throughput.html

  
#### Possible fixes ####

  * igt@kms_async_flips@async-flip-with-page-flip-events-linear@pipe-c-edp-1:
    - shard-lnl:          [FAIL][197] ([Intel XE#5993]) -> [PASS][198] +3 other tests pass
   [197]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-lnl-1/igt@kms_async_flips@async-flip-with-page-flip-events-linear@pipe-c-edp-1.html
   [198]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-1/igt@kms_async_flips@async-flip-with-page-flip-events-linear@pipe-c-edp-1.html

  * igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc@pipe-a-hdmi-a-6:
    - shard-dg2-set2:     [INCOMPLETE][199] ([Intel XE#1727] / [Intel XE#2705] / [Intel XE#3113] / [Intel XE#4212] / [Intel XE#4522]) -> [PASS][200]
   [199]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-dg2-464/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc@pipe-a-hdmi-a-6.html
   [200]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-466/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc@pipe-a-hdmi-a-6.html

  * igt@kms_cursor_crc@cursor-random-128x42@pipe-a-hdmi-a-6:
    - shard-dg2-set2:     [INCOMPLETE][201] ([Intel XE#4842]) -> [PASS][202] +1 other test pass
   [201]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-dg2-433/igt@kms_cursor_crc@cursor-random-128x42@pipe-a-hdmi-a-6.html
   [202]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-434/igt@kms_cursor_crc@cursor-random-128x42@pipe-a-hdmi-a-6.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size:
    - shard-bmg:          [SKIP][203] ([Intel XE#2291]) -> [PASS][204] +4 other tests pass
   [203]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-6/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size.html
   [204]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-1/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions:
    - shard-bmg:          [FAIL][205] ([Intel XE#1475]) -> [PASS][206]
   [205]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-5/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
   [206]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-5/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html

  * igt@kms_cursor_legacy@forked-bo:
    - shard-bmg:          [DMESG-WARN][207] ([Intel XE#5354]) -> [PASS][208] +1 other test pass
   [207]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-8/igt@kms_cursor_legacy@forked-bo.html
   [208]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-8/igt@kms_cursor_legacy@forked-bo.html

  * igt@kms_flip@2x-plain-flip-fb-recreate-interruptible:
    - shard-bmg:          [SKIP][209] ([Intel XE#2316]) -> [PASS][210] +2 other tests pass
   [209]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-6/igt@kms_flip@2x-plain-flip-fb-recreate-interruptible.html
   [210]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-3/igt@kms_flip@2x-plain-flip-fb-recreate-interruptible.html

  * igt@kms_flip@flip-vs-dpms-on-nop-interruptible:
    - shard-adlp:         [DMESG-WARN][211] ([Intel XE#4543]) -> [PASS][212] +2 other tests pass
   [211]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-2/igt@kms_flip@flip-vs-dpms-on-nop-interruptible.html
   [212]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@kms_flip@flip-vs-dpms-on-nop-interruptible.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible:
    - shard-lnl:          [FAIL][213] ([Intel XE#301] / [Intel XE#3149]) -> [PASS][214]
   [213]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-lnl-1/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
   [214]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-1/igt@kms_flip@flip-vs-expired-vblank-interruptible.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1:
    - shard-lnl:          [FAIL][215] ([Intel XE#301]) -> [PASS][216]
   [215]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-lnl-1/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1.html
   [216]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-1/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-edp1.html

  * igt@kms_flip_tiling@flip-change-tiling@pipe-b-hdmi-a-1-x-to-x:
    - shard-adlp:         [DMESG-FAIL][217] ([Intel XE#4543]) -> [PASS][218] +1 other test pass
   [217]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-6/igt@kms_flip_tiling@flip-change-tiling@pipe-b-hdmi-a-1-x-to-x.html
   [218]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-2/igt@kms_flip_tiling@flip-change-tiling@pipe-b-hdmi-a-1-x-to-x.html

  * igt@kms_flip_tiling@flip-change-tiling@pipe-d-hdmi-a-1-x-to-y:
    - shard-adlp:         [FAIL][219] ([Intel XE#1874]) -> [PASS][220]
   [219]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-6/igt@kms_flip_tiling@flip-change-tiling@pipe-d-hdmi-a-1-x-to-y.html
   [220]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-2/igt@kms_flip_tiling@flip-change-tiling@pipe-d-hdmi-a-1-x-to-y.html

  * {igt@kms_frontbuffer_tracking@fbc-1p-offscreen-pri-indfb-draw-mmap-wc}:
    - shard-adlp:         [DMESG-WARN][221] ([Intel XE#2953] / [Intel XE#4173]) -> [PASS][222]
   [221]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-9/igt@kms_frontbuffer_tracking@fbc-1p-offscreen-pri-indfb-draw-mmap-wc.html
   [222]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@kms_frontbuffer_tracking@fbc-1p-offscreen-pri-indfb-draw-mmap-wc.html

  * igt@kms_joiner@invalid-modeset-force-big-joiner:
    - shard-bmg:          [SKIP][223] ([Intel XE#3012]) -> [PASS][224]
   [223]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-6/igt@kms_joiner@invalid-modeset-force-big-joiner.html
   [224]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-1/igt@kms_joiner@invalid-modeset-force-big-joiner.html

  * igt@kms_pm_dc@dc5-dpms:
    - shard-lnl:          [FAIL][225] ([Intel XE#718]) -> [PASS][226]
   [225]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-lnl-5/igt@kms_pm_dc@dc5-dpms.html
   [226]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-7/igt@kms_pm_dc@dc5-dpms.html

  * igt@sriov_basic@enable-vfs-bind-unbind-each-numvfs-all:
    - shard-bmg:          [FAIL][227] ([Intel XE#5937]) -> [PASS][228]
   [227]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-6/igt@sriov_basic@enable-vfs-bind-unbind-each-numvfs-all.html
   [228]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-4/igt@sriov_basic@enable-vfs-bind-unbind-each-numvfs-all.html

  * {igt@xe_exec_system_allocator@many-stride-malloc-prefetch}:
    - shard-bmg:          [WARN][229] ([Intel XE#5786]) -> [PASS][230]
   [229]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-7/igt@xe_exec_system_allocator@many-stride-malloc-prefetch.html
   [230]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-5/igt@xe_exec_system_allocator@many-stride-malloc-prefetch.html

  * igt@xe_module_load@load:
    - shard-adlp:         ([PASS][231], [PASS][232], [PASS][233], [PASS][234], [PASS][235], [PASS][236], [PASS][237], [PASS][238], [SKIP][239], [PASS][240], [PASS][241], [PASS][242], [PASS][243], [PASS][244], [PASS][245]) ([Intel XE#378] / [Intel XE#5612]) -> ([PASS][246], [PASS][247], [PASS][248], [PASS][249], [PASS][250], [PASS][251], [PASS][252], [PASS][253], [PASS][254], [PASS][255], [PASS][256], [PASS][257], [PASS][258], [PASS][259], [PASS][260])
   [231]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-6/igt@xe_module_load@load.html
   [232]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-6/igt@xe_module_load@load.html
   [233]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-6/igt@xe_module_load@load.html
   [234]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-8/igt@xe_module_load@load.html
   [235]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-8/igt@xe_module_load@load.html
   [236]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-2/igt@xe_module_load@load.html
   [237]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-2/igt@xe_module_load@load.html
   [238]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-2/igt@xe_module_load@load.html
   [239]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-9/igt@xe_module_load@load.html
   [240]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-9/igt@xe_module_load@load.html
   [241]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-9/igt@xe_module_load@load.html
   [242]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-9/igt@xe_module_load@load.html
   [243]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-1/igt@xe_module_load@load.html
   [244]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-1/igt@xe_module_load@load.html
   [245]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-8/igt@xe_module_load@load.html
   [246]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-2/igt@xe_module_load@load.html
   [247]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-2/igt@xe_module_load@load.html
   [248]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-2/igt@xe_module_load@load.html
   [249]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@xe_module_load@load.html
   [250]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@xe_module_load@load.html
   [251]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@xe_module_load@load.html
   [252]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-8/igt@xe_module_load@load.html
   [253]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-8/igt@xe_module_load@load.html
   [254]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-8/igt@xe_module_load@load.html
   [255]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@xe_module_load@load.html
   [256]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@xe_module_load@load.html
   [257]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-9/igt@xe_module_load@load.html
   [258]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-1/igt@xe_module_load@load.html
   [259]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-9/igt@xe_module_load@load.html
   [260]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-9/igt@xe_module_load@load.html

  * igt@xe_pm@s4-d3hot-basic-exec:
    - shard-lnl:          [FAIL][261] ([Intel XE#6339]) -> [PASS][262] +1 other test pass
   [261]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-lnl-2/igt@xe_pm@s4-d3hot-basic-exec.html
   [262]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-lnl-4/igt@xe_pm@s4-d3hot-basic-exec.html

  * igt@xe_pm@s4-mocs:
    - shard-adlp:         [FAIL][263] ([Intel XE#6339]) -> [PASS][264]
   [263]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-9/igt@xe_pm@s4-mocs.html
   [264]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@xe_pm@s4-mocs.html

  * igt@xe_pmu@gt-c6-idle:
    - shard-dg2-set2:     [FAIL][265] ([Intel XE#6366]) -> [PASS][266]
   [265]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-dg2-435/igt@xe_pmu@gt-c6-idle.html
   [266]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-434/igt@xe_pmu@gt-c6-idle.html

  
#### Warnings ####

  * igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-hflip:
    - shard-adlp:         [FAIL][267] ([Intel XE#1874]) -> [DMESG-FAIL][268] ([Intel XE#4543])
   [267]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-1/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-hflip.html
   [268]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-6/igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0-hflip.html

  * igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-b-hdmi-a-6:
    - shard-dg2-set2:     [INCOMPLETE][269] ([Intel XE#1727] / [Intel XE#3113] / [Intel XE#4345] / [Intel XE#6168]) -> [INCOMPLETE][270] ([Intel XE#2705] / [Intel XE#4212] / [Intel XE#4345] / [Intel XE#4522]) +1 other test incomplete
   [269]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-dg2-436/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-b-hdmi-a-6.html
   [270]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-432/igt@kms_ccs@random-ccs-data-4-tiled-dg2-mc-ccs@pipe-b-hdmi-a-6.html

  * igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc:
    - shard-dg2-set2:     [INCOMPLETE][271] ([Intel XE#1727] / [Intel XE#2705] / [Intel XE#3113] / [Intel XE#4212] / [Intel XE#4345] / [Intel XE#4522]) -> [INCOMPLETE][272] ([Intel XE#1727] / [Intel XE#3113] / [Intel XE#4345] / [Intel XE#6168])
   [271]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-dg2-464/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc.html
   [272]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-dg2-466/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc.html

  * igt@kms_content_protection@lic-type-0:
    - shard-bmg:          [FAIL][273] ([Intel XE#1178]) -> [SKIP][274] ([Intel XE#2341]) +1 other test skip
   [273]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-4/igt@kms_content_protection@lic-type-0.html
   [274]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@kms_content_protection@lic-type-0.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic:
    - shard-bmg:          [FAIL][275] ([Intel XE#1475]) -> [FAIL][276] ([Intel XE#4633])
   [275]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-1/igt@kms_cursor_legacy@flip-vs-cursor-atomic.html
   [276]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@kms_cursor_legacy@flip-vs-cursor-atomic.html

  * igt@kms_flip@flip-vs-rmfb-interruptible:
    - shard-adlp:         [DMESG-WARN][277] ([Intel XE#4543] / [Intel XE#5208]) -> [DMESG-WARN][278] ([Intel XE#5208])
   [277]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-adlp-8/igt@kms_flip@flip-vs-rmfb-interruptible.html
   [278]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-adlp-8/igt@kms_flip@flip-vs-rmfb-interruptible.html

  * igt@kms_frontbuffer_tracking@drrs-2p-pri-indfb-multidraw:
    - shard-bmg:          [SKIP][279] ([Intel XE#2311]) -> [SKIP][280] ([Intel XE#2312]) +13 other tests skip
   [279]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-1/igt@kms_frontbuffer_tracking@drrs-2p-pri-indfb-multidraw.html
   [280]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@kms_frontbuffer_tracking@drrs-2p-pri-indfb-multidraw.html

  * igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-render:
    - shard-bmg:          [SKIP][281] ([Intel XE#2312]) -> [SKIP][282] ([Intel XE#2311]) +8 other tests skip
   [281]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-6/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-render.html
   [282]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-3/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-blt:
    - shard-bmg:          [SKIP][283] ([Intel XE#5390]) -> [SKIP][284] ([Intel XE#2312]) +3 other tests skip
   [283]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-5/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-blt.html
   [284]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-render:
    - shard-bmg:          [SKIP][285] ([Intel XE#2312]) -> [SKIP][286] ([Intel XE#5390]) +4 other tests skip
   [285]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-6/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-render.html
   [286]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-4/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-cur-indfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-blt:
    - shard-bmg:          [SKIP][287] ([Intel XE#2312]) -> [SKIP][288] ([Intel XE#2313]) +9 other tests skip
   [287]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-6/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-blt.html
   [288]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-3/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-cur-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-plflip-blt:
    - shard-bmg:          [SKIP][289] ([Intel XE#2313]) -> [SKIP][290] ([Intel XE#2312]) +11 other tests skip
   [289]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-3/igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-plflip-blt.html
   [290]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-6/igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-plflip-blt.html

  * igt@kms_hdr@brightness-with-hdr:
    - shard-bmg:          [SKIP][291] ([Intel XE#3374] / [Intel XE#3544]) -> [SKIP][292] ([Intel XE#3544])
   [291]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-3/igt@kms_hdr@brightness-with-hdr.html
   [292]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-5/igt@kms_hdr@brightness-with-hdr.html

  * igt@kms_tiled_display@basic-test-pattern:
    - shard-bmg:          [SKIP][293] ([Intel XE#2426]) -> [FAIL][294] ([Intel XE#1729])
   [293]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-6/igt@kms_tiled_display@basic-test-pattern.html
   [294]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-5/igt@kms_tiled_display@basic-test-pattern.html

  * igt@kms_tiled_display@basic-test-pattern-with-chamelium:
    - shard-bmg:          [SKIP][295] ([Intel XE#2426]) -> [SKIP][296] ([Intel XE#2509])
   [295]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-6/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html
   [296]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-1/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html

  * igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv:
    - shard-bmg:          [ABORT][297] ([Intel XE#5466] / [Intel XE#5530]) -> [ABORT][298] ([Intel XE#4917] / [Intel XE#5466] / [Intel XE#5530])
   [297]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed/shard-bmg-7/igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv.html
   [298]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-154017v3/shard-bmg-1/igt@xe_fault_injection@probe-fail-guc-xe_guc_ct_send_recv.html

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

  [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#1125]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1125
  [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#1138]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1138
  [Intel XE#1151]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1151
  [Intel XE#1178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1178
  [Intel XE#1392]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1392
  [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#1421]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1421
  [Intel XE#1424]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1424
  [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#1475]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1475
  [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#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#1874]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1874
  [Intel XE#1948]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1948
  [Intel XE#2007]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2007
  [Intel XE#2049]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2049
  [Intel XE#2191]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2191
  [Intel XE#2229]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2229
  [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#2316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2316
  [Intel XE#2320]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2320
  [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#2341]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2341
  [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#2393]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2393
  [Intel XE#2413]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2413
  [Intel XE#2426]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2426
  [Intel XE#2509]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2509
  [Intel XE#2597]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2597
  [Intel XE#261]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/261
  [Intel XE#2705]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2705
  [Intel XE#2763]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2763
  [Intel XE#2838]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2838
  [Intel XE#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850
  [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#2907]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2907
  [Intel XE#2953]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2953
  [Intel XE#3009]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3009
  [Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301
  [Intel XE#3012]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3012
  [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#3309]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3309
  [Intel XE#3374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3374
  [Intel XE#3414]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3414
  [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#352]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/352
  [Intel XE#3544]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3544
  [Intel XE#356]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/356
  [Intel XE#3573]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3573
  [Intel XE#3576]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3576
  [Intel XE#362]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/362
  [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#373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/373
  [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#3868]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3868
  [Intel XE#3904]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3904
  [Intel XE#4173]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4173
  [Intel XE#4212]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4212
  [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#4331]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4331
  [Intel XE#4345]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4345
  [Intel XE#4354]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4354
  [Intel XE#4422]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4422
  [Intel XE#4504]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4504
  [Intel XE#4519]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4519
  [Intel XE#4522]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4522
  [Intel XE#4543]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4543
  [Intel XE#455]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/455
  [Intel XE#4596]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4596
  [Intel XE#4608]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4608
  [Intel XE#4633]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4633
  [Intel XE#4733]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4733
  [Intel XE#4814]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4814
  [Intel XE#4837]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4837
  [Intel XE#4842]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4842
  [Intel XE#488]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/488
  [Intel XE#4915]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4915
  [Intel XE#4917]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4917
  [Intel XE#4921]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4921
  [Intel XE#4943]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4943
  [Intel XE#5020]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5020
  [Intel XE#5021]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5021
  [Intel XE#512]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/512
  [Intel XE#5191]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5191
  [Intel XE#5208]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5208
  [Intel XE#5213]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5213
  [Intel XE#5354]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5354
  [Intel XE#5390]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5390
  [Intel XE#5466]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5466
  [Intel XE#5530]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5530
  [Intel XE#5561]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5561
  [Intel XE#5564]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5564
  [Intel XE#5565]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5565
  [Intel XE#5574]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5574
  [Intel XE#5575]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5575
  [Intel XE#5594]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5594
  [Intel XE#5607]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5607
  [Intel XE#5610]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5610
  [Intel XE#5612]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5612
  [Intel XE#5614]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5614
  [Intel XE#5624]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5624
  [Intel XE#5626]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5626
  [Intel XE#5712]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5712
  [Intel XE#5786]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5786
  [Intel XE#5937]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5937
  [Intel XE#599]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/599
  [Intel XE#5993]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5993
  [Intel XE#6032]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6032
  [Intel XE#607]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/607
  [Intel XE#610]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/610
  [Intel XE#6168]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6168
  [Intel XE#6299]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6299
  [Intel XE#6312]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6312
  [Intel XE#6313]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6313
  [Intel XE#6318]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6318
  [Intel XE#6321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6321
  [Intel XE#6339]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6339
  [Intel XE#6360]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6360
  [Intel XE#6366]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6366
  [Intel XE#6376]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6376
  [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#688]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/688
  [Intel XE#718]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/718
  [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#908]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/908
  [Intel XE#929]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/929
  [Intel XE#944]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/944
  [Intel XE#979]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/979
  [i915#14968]: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/14968


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

  * IGT: IGT_8587 -> IGT_8588
  * Linux: xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed -> xe-pw-154017v3

  IGT_8587: 8587
  IGT_8588: 8588
  xe-3930-aaaff197c9186f4959c2bcb18035725188b950ed: aaaff197c9186f4959c2bcb18035725188b950ed
  xe-pw-154017v3: 154017v3

== Logs ==

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

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

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

* Re: [PATCH v5 2/2] drm/xe/gt: Introduce runtime suspend/resume
  2025-10-16 18:47       ` Daniele Ceraolo Spurio
@ 2025-10-20 11:48         ` Raag Jadav
  0 siblings, 0 replies; 18+ messages in thread
From: Raag Jadav @ 2025-10-20 11:48 UTC (permalink / raw)
  To: Daniele Ceraolo Spurio
  Cc: Matthew Brost, lucas.demarchi, rodrigo.vivi, intel-xe,
	riana.tauro, michal.wajdeczko

On Thu, Oct 16, 2025 at 11:47:40AM -0700, Daniele Ceraolo Spurio wrote:
> On 10/16/2025 11:38 AM, Matthew Brost wrote:
> > On Thu, Oct 16, 2025 at 08:32:23AM -0700, Daniele Ceraolo Spurio wrote:
> > > On 10/14/2025 12:30 AM, Raag Jadav wrote:
> > > > If power state is retained between suspend/resume cycle, we don't need
> > > > to perform full GT re-initialization. Introduce runtime helpers for GT
> > > > which greatly reduce suspend/resume delay.
> > > > 
> > > > v2: Drop redundant xe_gt_sanitize() and xe_guc_ct_stop() (Daniele)
> > > >       Use runtime naming for guc helpers (Daniele)
> > > > v3: Drop redundant logging, add kernel doc (Michal)
> > > >       Use runtime naming for ct helpers (Michal)
> > > > v4: Fix tags (Rodrigo)
> > > > v5: Include host_l2_vram workaround (Daniele)
> > > >       Reuse xe_guc_submit_enable/disable() helpers (Daniele)
> > > Based on the reply about VF behavior in the previous rev, I am thinking this
> > > is not the correct approach to this.
> > > If on a VF the runtime_suspend/resume functions are not called at all like
> > > you said, it means that the VF driver needs to be able to cope with the fact
> > > that the HW can lose power without it being directly notified if its rpm
> > > refcount is 0. This in turn means that on a VF the driver can't rely on what
> > > you do in xe_uc_runtime_suspend/resume() to idle the state and must instead
> > > guarantee that the state is already idled when the last rpm ref is released
> > > and that a new rpm ref is taken before restarting anything (which might
> > > already be true). AFAIK there are no difference in the SW state management
> > > of queues and CTBs between PF and VF, so if we achieve that on a VF we'll
> > > also have it on PF/Native, which means that there will be no need to
> > > pause/unpause CTBs and exec_queues. The only thing that the PF would need to
> > > do in the rpm flow is program the HW (e.g. the host_l2_vram stuff and the
> > > irq re-enabling).
> > > 
> > > tl;dr, if we guarantee that:
> > > 1 - if the rpm refcount is 0 then there is no activity on HW, so nothing
> > > that needs to be paused (which might already be true)
> > > 2 - an rpm ref is taken before any activity is started (which might also
> > > already be true)
> > > 
> > > Then we're guaranteeing that there is nothing to pause/unpause at runtime
> > > suspend/resume time, so we're safe skipping those calls entirely on VF while
> > > on native/PF we can just focus on the HW re-programming.
> > > 
> > > BTW, any idea how this is working with the current code? Given that we're
> > > re-loading the GuC on runtime resume, are the VFs getting disconnected and
> > VFs hold a RPM ref. See pf_enable_vfs in xe_pci_sriov.c.
> 
> Ok, so we just can never do runtime pm if there are VFs active and my
> concerns about VF rpm behavior are void. Thanks for clarifying. It might be
> worth adding an assert to the runtime suspend/resume functions to make sure
> this is documented there as well and not just in the SRIOV code.

Would you prefer xe_assert() or drm_WARN()?

> I think that we should still investigate if we actually do need to call
> pause/unpause on runtime suspend or if we're already covered by the rpm
> refs, because we might end up being able to actually turn on rpm for VFs,
> but we can do that as a follow up step and go ahead with the approach in
> this patch first.

Raag

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

end of thread, other threads:[~2025-10-20 11:48 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-14  7:30 [PATCH v5 0/2] Introduce GT runtime suspend/resume Raag Jadav
2025-10-14  7:30 ` [PATCH v5 1/2] drm/xe/guc: Make xe_guc_submit_pause() available for non-VF cases Raag Jadav
2025-10-14 18:09   ` Matthew Brost
2025-10-15  7:04     ` Raag Jadav
2025-10-16 12:21       ` Raag Jadav
2025-10-16 19:01         ` Matthew Brost
2025-10-14  7:30 ` [PATCH v5 2/2] drm/xe/gt: Introduce runtime suspend/resume Raag Jadav
2025-10-16 15:32   ` Daniele Ceraolo Spurio
2025-10-16 18:38     ` Matthew Brost
2025-10-16 18:47       ` Daniele Ceraolo Spurio
2025-10-20 11:48         ` Raag Jadav
2025-10-14  7:42 ` ✓ CI.KUnit: success for Introduce GT runtime suspend/resume (rev2) Patchwork
2025-10-14  8:19 ` ✓ Xe.CI.BAT: " Patchwork
2025-10-14 15:40 ` ✗ Xe.CI.Full: failure " Patchwork
2025-10-16 13:03 ` ✗ CI.checkpatch: warning for Introduce GT runtime suspend/resume (rev3) Patchwork
2025-10-16 13:04 ` ✓ CI.KUnit: success " Patchwork
2025-10-16 14:08 ` ✓ Xe.CI.BAT: " Patchwork
2025-10-17  9:43 ` ✓ 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