Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v5 0/8] drm/xe/vf: Post-migration recovery of queues and jobs
@ 2025-06-12 10:24 Tomasz Lis
  2025-06-12 10:24 ` [PATCH v5 1/8] drm/xe/sa: Avoid caching GGTT address within the manager Tomasz Lis
                   ` (10 more replies)
  0 siblings, 11 replies; 13+ messages in thread
From: Tomasz Lis @ 2025-06-12 10:24 UTC (permalink / raw)
  To: intel-xe
  Cc: Michał Winiarski, Michał Wajdeczko,
	Piotr Piórkowski, Matthew Brost, Lucas De Marchi

To support VF Migration, it is necessary to do fixups to any
non-virtualized resources. These fixups need to be applied within
VM, on the KMD working with VF.

This series adds two fixup functions to the recovery worker:
* for fixing xe_lrc structs within queues
* for fixing xe_job structs and the commands they emit
It also provides some performance and stability fixes - blocking
submissions and resets while the fixups are being applied.
In case of sub-allocator, it removes the cached GGTT addresses
instead of implementing fixups for them.

v2: Switcghed to update of addresses by xe_lrc_write_ctx_reg()
  to avoid kzalloc(), renamed or moved few functions
v3: Renamed and reordered parameters, added kerneldocs
v4: Take job_list_lock, introduce a new atomic for reset
  blocking, add "refresh utilization buffer" patch
v5: Replaced "Finish RESFIX by reset" patch with "Skip fixups
  before getting GGTT info", rebased "Refresh utilization buffer"
  patch

Tomasz Lis (8):
  drm/xe/sa: Avoid caching GGTT address within the manager
  drm/xe/vf: Skip fixups on migration before getting GGTT info
  drm/xe/vf: Pause submissions during RESFIX fixups
  drm/xe: Block reset while recovering from VF migration
  drm/xe/vf: Rebase HWSP of all contexts after migration
  drm/xe/vf: Rebase MEMIRQ structures for all contexts after migration
  drm/xe/vf: Post migration, repopulate ring area for pending request
  drm/xe/vf: Refresh utilization buffer during migration recovery

 drivers/gpu/drm/xe/xe_exec_queue.c    |  40 ++++++++++
 drivers/gpu/drm/xe/xe_exec_queue.h    |   4 +
 drivers/gpu/drm/xe/xe_gpu_scheduler.c |  13 +++
 drivers/gpu/drm/xe/xe_gpu_scheduler.h |   1 +
 drivers/gpu/drm/xe/xe_gt.c            |  10 +++
 drivers/gpu/drm/xe/xe_gt_debugfs.c    |   3 +-
 drivers/gpu/drm/xe/xe_gt_sriov_vf.c   |  23 ++++++
 drivers/gpu/drm/xe/xe_gt_sriov_vf.h   |   1 +
 drivers/gpu/drm/xe/xe_guc_buf.c       |   2 +-
 drivers/gpu/drm/xe/xe_guc_submit.c    | 111 ++++++++++++++++++++++++++
 drivers/gpu/drm/xe/xe_guc_submit.h    |   9 +++
 drivers/gpu/drm/xe/xe_guc_types.h     |   6 ++
 drivers/gpu/drm/xe/xe_lrc.c           |  65 ++++++++++++++-
 drivers/gpu/drm/xe/xe_lrc.h           |   4 +
 drivers/gpu/drm/xe/xe_sa.c            |   1 -
 drivers/gpu/drm/xe/xe_sa.h            |  15 +++-
 drivers/gpu/drm/xe/xe_sa_types.h      |   1 -
 drivers/gpu/drm/xe/xe_sriov_vf.c      |  84 ++++++++++++++++++-
 18 files changed, 384 insertions(+), 9 deletions(-)

-- 
2.25.1


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

* [PATCH v5 1/8] drm/xe/sa: Avoid caching GGTT address within the manager
  2025-06-12 10:24 [PATCH v5 0/8] drm/xe/vf: Post-migration recovery of queues and jobs Tomasz Lis
@ 2025-06-12 10:24 ` Tomasz Lis
  2025-06-12 10:24 ` [PATCH v5 2/8] drm/xe/vf: Skip fixups on migration before getting GGTT info Tomasz Lis
                   ` (9 subsequent siblings)
  10 siblings, 0 replies; 13+ messages in thread
From: Tomasz Lis @ 2025-06-12 10:24 UTC (permalink / raw)
  To: intel-xe
  Cc: Michał Winiarski, Michał Wajdeczko,
	Piotr Piórkowski, Matthew Brost, Lucas De Marchi

Non-virtualized resources require fixups after SRIOV VF migration.
Caching GGTT references rather than re-computing them from the
underlying Buffer Object is something we want to avoid, as such
code would require additional fixup step and additional locking
around all the places where the address is accessed.

This change removes the cached GPU address from the Sub-Allocation
Manager, and introduces a function which recomputes and returns
the address instead.

v2: renamed xe_sa_manager_gpu_addr(), added kerneldoc

Signed-off-by: Tomasz Lis <tomasz.lis@intel.com>
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Michal Wajdeczko <michal.wajdeczko@intel.com>
---
 drivers/gpu/drm/xe/xe_gt_debugfs.c |  3 ++-
 drivers/gpu/drm/xe/xe_guc_buf.c    |  2 +-
 drivers/gpu/drm/xe/xe_sa.c         |  1 -
 drivers/gpu/drm/xe/xe_sa.h         | 15 ++++++++++++++-
 drivers/gpu/drm/xe/xe_sa_types.h   |  1 -
 5 files changed, 17 insertions(+), 5 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_gt_debugfs.c b/drivers/gpu/drm/xe/xe_gt_debugfs.c
index 848618acdca8..d277db00018e 100644
--- a/drivers/gpu/drm/xe/xe_gt_debugfs.c
+++ b/drivers/gpu/drm/xe/xe_gt_debugfs.c
@@ -29,6 +29,7 @@
 #include "xe_pm.h"
 #include "xe_reg_sr.h"
 #include "xe_reg_whitelist.h"
+#include "xe_sa.h"
 #include "xe_sriov.h"
 #include "xe_tuning.h"
 #include "xe_uc_debugfs.h"
@@ -128,7 +129,7 @@ static int sa_info(struct xe_gt *gt, struct drm_printer *p)
 
 	xe_pm_runtime_get(gt_to_xe(gt));
 	drm_suballoc_dump_debug_info(&tile->mem.kernel_bb_pool->base, p,
-				     tile->mem.kernel_bb_pool->gpu_addr);
+				     xe_sa_manager_gpu_addr(tile->mem.kernel_bb_pool));
 	xe_pm_runtime_put(gt_to_xe(gt));
 
 	return 0;
diff --git a/drivers/gpu/drm/xe/xe_guc_buf.c b/drivers/gpu/drm/xe/xe_guc_buf.c
index 14a07dca48e7..502ca3a4ee60 100644
--- a/drivers/gpu/drm/xe/xe_guc_buf.c
+++ b/drivers/gpu/drm/xe/xe_guc_buf.c
@@ -164,7 +164,7 @@ u64 xe_guc_cache_gpu_addr_from_ptr(struct xe_guc_buf_cache *cache, const void *p
 	if (offset < 0 || offset + size > cache->sam->base.size)
 		return 0;
 
-	return cache->sam->gpu_addr + offset;
+	return xe_sa_manager_gpu_addr(cache->sam) + offset;
 }
 
 #if IS_BUILTIN(CONFIG_DRM_XE_KUNIT_TEST)
diff --git a/drivers/gpu/drm/xe/xe_sa.c b/drivers/gpu/drm/xe/xe_sa.c
index 1d43e183ca21..fedd017d6dd3 100644
--- a/drivers/gpu/drm/xe/xe_sa.c
+++ b/drivers/gpu/drm/xe/xe_sa.c
@@ -69,7 +69,6 @@ struct xe_sa_manager *__xe_sa_bo_manager_init(struct xe_tile *tile, u32 size, u3
 	}
 	sa_manager->bo = bo;
 	sa_manager->is_iomem = bo->vmap.is_iomem;
-	sa_manager->gpu_addr = xe_bo_ggtt_addr(bo);
 
 	if (bo->vmap.is_iomem) {
 		sa_manager->cpu_ptr = kvzalloc(managed_size, GFP_KERNEL);
diff --git a/drivers/gpu/drm/xe/xe_sa.h b/drivers/gpu/drm/xe/xe_sa.h
index 1170ee5a81a8..99dbf0eea540 100644
--- a/drivers/gpu/drm/xe/xe_sa.h
+++ b/drivers/gpu/drm/xe/xe_sa.h
@@ -7,6 +7,8 @@
 
 #include <linux/sizes.h>
 #include <linux/types.h>
+
+#include "xe_bo.h"
 #include "xe_sa_types.h"
 
 struct dma_fence;
@@ -43,9 +45,20 @@ to_xe_sa_manager(struct drm_suballoc_manager *mng)
 	return container_of(mng, struct xe_sa_manager, base);
 }
 
+/**
+ * xe_sa_manager_gpu_addr - Retrieve GPU address of a back storage BO
+ * within suballocator.
+ * @sa_manager: the &xe_sa_manager struct instance
+ * Return: GGTT address of the back storage BO.
+ */
+static inline u64 xe_sa_manager_gpu_addr(struct xe_sa_manager *sa_manager)
+{
+	return xe_bo_ggtt_addr(sa_manager->bo);
+}
+
 static inline u64 xe_sa_bo_gpu_addr(struct drm_suballoc *sa)
 {
-	return to_xe_sa_manager(sa->manager)->gpu_addr +
+	return xe_sa_manager_gpu_addr(to_xe_sa_manager(sa->manager)) +
 		drm_suballoc_soffset(sa);
 }
 
diff --git a/drivers/gpu/drm/xe/xe_sa_types.h b/drivers/gpu/drm/xe/xe_sa_types.h
index 2b070ff1292e..cb7238799dcb 100644
--- a/drivers/gpu/drm/xe/xe_sa_types.h
+++ b/drivers/gpu/drm/xe/xe_sa_types.h
@@ -12,7 +12,6 @@ struct xe_bo;
 struct xe_sa_manager {
 	struct drm_suballoc_manager base;
 	struct xe_bo *bo;
-	u64 gpu_addr;
 	void *cpu_ptr;
 	bool is_iomem;
 };
-- 
2.25.1


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

* [PATCH v5 2/8] drm/xe/vf: Skip fixups on migration before getting GGTT info
  2025-06-12 10:24 [PATCH v5 0/8] drm/xe/vf: Post-migration recovery of queues and jobs Tomasz Lis
  2025-06-12 10:24 ` [PATCH v5 1/8] drm/xe/sa: Avoid caching GGTT address within the manager Tomasz Lis
@ 2025-06-12 10:24 ` Tomasz Lis
  2025-06-12 10:24 ` [PATCH v5 3/8] drm/xe/vf: Pause submissions during RESFIX fixups Tomasz Lis
                   ` (8 subsequent siblings)
  10 siblings, 0 replies; 13+ messages in thread
From: Tomasz Lis @ 2025-06-12 10:24 UTC (permalink / raw)
  To: intel-xe
  Cc: Michał Winiarski, Michał Wajdeczko,
	Piotr Piórkowski, Matthew Brost, Lucas De Marchi

The RESFIX state should be achievable only after a successful
handshake. If VF KMD has no GGTT configuration yet and we still got
into RESFIX state, then either we're dealing with unclean initial
state due to unusual actions before probe, or the migration
happened while xe init (started by probe) was running.

In 1st case (migration before probe), we should just skip migration -
init procedure will ensure exit from RESFIX state as it starts GuC
handshake with a reset.

In 2nd case (migration during xe init), the migration procedure should
execute normally if GGTT configuration was already acquired from GuC,
and can be skipped if it was not acquired.

Signed-off-by: Tomasz Lis <tomasz.lis@intel.com>
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Michal Winiarski <michal.winiarski@intel.com>
---
 drivers/gpu/drm/xe/xe_gt_sriov_vf.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/drivers/gpu/drm/xe/xe_gt_sriov_vf.c b/drivers/gpu/drm/xe/xe_gt_sriov_vf.c
index 9b2fc9db55b8..74dcfe693d1c 100644
--- a/drivers/gpu/drm/xe/xe_gt_sriov_vf.c
+++ b/drivers/gpu/drm/xe/xe_gt_sriov_vf.c
@@ -762,6 +762,15 @@ void xe_gt_sriov_vf_migrated_event_handler(struct xe_gt *gt)
 
 	xe_gt_assert(gt, IS_SRIOV_VF(xe));
 
+	if (!gt->sriov.vf.self_config.ggtt_size) {
+		/*
+		 * If driver initialization is running in parallel to this handler,
+		 * and it did not reached acquiring GGTT config yet, then ignore
+		 * the migration - init procedure will create the GGTT at new place.
+		 */
+		return;
+	}
+
 	set_bit(gt->info.id, &xe->sriov.vf.migration.gt_flags);
 	/*
 	 * We need to be certain that if all flags were set, at least one
-- 
2.25.1


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

* [PATCH v5 3/8] drm/xe/vf: Pause submissions during RESFIX fixups
  2025-06-12 10:24 [PATCH v5 0/8] drm/xe/vf: Post-migration recovery of queues and jobs Tomasz Lis
  2025-06-12 10:24 ` [PATCH v5 1/8] drm/xe/sa: Avoid caching GGTT address within the manager Tomasz Lis
  2025-06-12 10:24 ` [PATCH v5 2/8] drm/xe/vf: Skip fixups on migration before getting GGTT info Tomasz Lis
@ 2025-06-12 10:24 ` Tomasz Lis
  2025-06-12 10:24 ` [PATCH v5 4/8] drm/xe: Block reset while recovering from VF migration Tomasz Lis
                   ` (7 subsequent siblings)
  10 siblings, 0 replies; 13+ messages in thread
From: Tomasz Lis @ 2025-06-12 10:24 UTC (permalink / raw)
  To: intel-xe
  Cc: Michał Winiarski, Michał Wajdeczko,
	Piotr Piórkowski, Matthew Brost, Lucas De Marchi

While applying post-migration fixups to VF, GuC will not respond
to any commands. This means submissions have no way of finishing.

To avoid acquiring additional resources and then stalling
on hardware access, pause the submission work. This will
decrease the chance of depleting resources, and speed up
the recovery.

v2: Commented xe_irq_resume() call
v3: Typo fix

Signed-off-by: Tomasz Lis <tomasz.lis@intel.com>
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Michal Winiarski <michal.winiarski@intel.com>
---
 drivers/gpu/drm/xe/xe_gpu_scheduler.c | 13 ++++++++
 drivers/gpu/drm/xe/xe_gpu_scheduler.h |  1 +
 drivers/gpu/drm/xe/xe_guc_submit.c    | 35 ++++++++++++++++++++
 drivers/gpu/drm/xe/xe_guc_submit.h    |  2 ++
 drivers/gpu/drm/xe/xe_sriov_vf.c      | 46 +++++++++++++++++++++++++++
 5 files changed, 97 insertions(+)

diff --git a/drivers/gpu/drm/xe/xe_gpu_scheduler.c b/drivers/gpu/drm/xe/xe_gpu_scheduler.c
index 869b43a4151d..455ccaf17314 100644
--- a/drivers/gpu/drm/xe/xe_gpu_scheduler.c
+++ b/drivers/gpu/drm/xe/xe_gpu_scheduler.c
@@ -101,6 +101,19 @@ void xe_sched_submission_stop(struct xe_gpu_scheduler *sched)
 	cancel_work_sync(&sched->work_process_msg);
 }
 
+/**
+ * xe_sched_submission_stop_async - Stop further runs of submission tasks on a scheduler.
+ * @sched: the &xe_gpu_scheduler struct instance
+ *
+ * This call disables further runs of scheduling work queue. It does not wait
+ * for any in-progress runs to finish, only makes sure no further runs happen
+ * afterwards.
+ */
+void xe_sched_submission_stop_async(struct xe_gpu_scheduler *sched)
+{
+	drm_sched_wqueue_stop(&sched->base);
+}
+
 void xe_sched_submission_resume_tdr(struct xe_gpu_scheduler *sched)
 {
 	drm_sched_resume_timeout(&sched->base, sched->base.timeout);
diff --git a/drivers/gpu/drm/xe/xe_gpu_scheduler.h b/drivers/gpu/drm/xe/xe_gpu_scheduler.h
index 308061f0cf37..e548b2aed95a 100644
--- a/drivers/gpu/drm/xe/xe_gpu_scheduler.h
+++ b/drivers/gpu/drm/xe/xe_gpu_scheduler.h
@@ -21,6 +21,7 @@ void xe_sched_fini(struct xe_gpu_scheduler *sched);
 
 void xe_sched_submission_start(struct xe_gpu_scheduler *sched);
 void xe_sched_submission_stop(struct xe_gpu_scheduler *sched);
+void xe_sched_submission_stop_async(struct xe_gpu_scheduler *sched);
 
 void xe_sched_submission_resume_tdr(struct xe_gpu_scheduler *sched);
 
diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
index 2b61d017eeca..61a1aac7a976 100644
--- a/drivers/gpu/drm/xe/xe_guc_submit.c
+++ b/drivers/gpu/drm/xe/xe_guc_submit.c
@@ -1822,6 +1822,19 @@ void xe_guc_submit_stop(struct xe_guc *guc)
 
 }
 
+/**
+ * xe_guc_submit_pause - Stop further runs of submission tasks on given GuC.
+ * @guc: the &xe_guc struct instance whose scheduler is to be disabled
+ */
+void xe_guc_submit_pause(struct xe_guc *guc)
+{
+	struct xe_exec_queue *q;
+	unsigned long index;
+
+	xa_for_each(&guc->submission_state.exec_queue_lookup, index, q)
+		xe_sched_submission_stop_async(&q->guc->sched);
+}
+
 static void guc_exec_queue_start(struct xe_exec_queue *q)
 {
 	struct xe_gpu_scheduler *sched = &q->guc->sched;
@@ -1862,6 +1875,28 @@ int xe_guc_submit_start(struct xe_guc *guc)
 	return 0;
 }
 
+static void guc_exec_queue_unpause(struct xe_exec_queue *q)
+{
+	struct xe_gpu_scheduler *sched = &q->guc->sched;
+
+	xe_sched_submission_start(sched);
+}
+
+/**
+ * xe_guc_submit_unpause - Allow further runs of submission tasks on given GuC.
+ * @guc: the &xe_guc struct instance whose scheduler is to be enabled
+ */
+void xe_guc_submit_unpause(struct xe_guc *guc)
+{
+	struct xe_exec_queue *q;
+	unsigned long index;
+
+	xa_for_each(&guc->submission_state.exec_queue_lookup, index, q)
+		guc_exec_queue_unpause(q);
+
+	wake_up_all(&guc->ct.wq);
+}
+
 static struct xe_exec_queue *
 g2h_exec_queue_lookup(struct xe_guc *guc, u32 guc_id)
 {
diff --git a/drivers/gpu/drm/xe/xe_guc_submit.h b/drivers/gpu/drm/xe/xe_guc_submit.h
index 9b71a986c6ca..f1cf271492ae 100644
--- a/drivers/gpu/drm/xe/xe_guc_submit.h
+++ b/drivers/gpu/drm/xe/xe_guc_submit.h
@@ -18,6 +18,8 @@ int xe_guc_submit_reset_prepare(struct xe_guc *guc);
 void xe_guc_submit_reset_wait(struct xe_guc *guc);
 void xe_guc_submit_stop(struct xe_guc *guc);
 int xe_guc_submit_start(struct xe_guc *guc);
+void xe_guc_submit_pause(struct xe_guc *guc);
+void xe_guc_submit_unpause(struct xe_guc *guc);
 void xe_guc_submit_wedge(struct xe_guc *guc);
 
 int xe_guc_read_stopped(struct xe_guc *guc);
diff --git a/drivers/gpu/drm/xe/xe_sriov_vf.c b/drivers/gpu/drm/xe/xe_sriov_vf.c
index 6526fe450e55..d52a16127735 100644
--- a/drivers/gpu/drm/xe/xe_sriov_vf.c
+++ b/drivers/gpu/drm/xe/xe_sriov_vf.c
@@ -11,6 +11,8 @@
 #include "xe_gt_sriov_printk.h"
 #include "xe_gt_sriov_vf.h"
 #include "xe_guc_ct.h"
+#include "xe_guc_submit.h"
+#include "xe_irq.h"
 #include "xe_pm.h"
 #include "xe_sriov.h"
 #include "xe_sriov_printk.h"
@@ -147,6 +149,48 @@ void xe_sriov_vf_init_early(struct xe_device *xe)
 		xe_sriov_info(xe, "migration not supported by this module version\n");
 }
 
+/**
+ * vf_post_migration_shutdown - Stop the driver activities after VF migration.
+ * @xe: the &xe_device struct instance
+ *
+ * After this VM is migrated and assigned to a new VF, it is running on a new
+ * hardware, and therefore many hardware-dependent states and related structures
+ * require fixups. Without fixups, the hardware cannot do any work, and therefore
+ * all GPU pipelines are stalled.
+ * Stop some of kernel activities to make the fixup process faster.
+ */
+static void vf_post_migration_shutdown(struct xe_device *xe)
+{
+	struct xe_gt *gt;
+	unsigned int id;
+
+	for_each_gt(gt, xe, id)
+		xe_guc_submit_pause(&gt->uc.guc);
+}
+
+/**
+ * vf_post_migration_kickstart - Re-start the driver activities under new hardware.
+ * @xe: the &xe_device struct instance
+ *
+ * After we have finished with all post-migration fixups, restart the driver
+ * activities to continue feeding the GPU with workloads.
+ */
+static void vf_post_migration_kickstart(struct xe_device *xe)
+{
+	struct xe_gt *gt;
+	unsigned int id;
+
+	/*
+	 * Make sure interrupts on the new HW are properly set. The GuC IRQ
+	 * must be working at this point, since the recovery did started,
+	 * but the rest was not enabled using the procedure from spec.
+	 */
+	xe_irq_resume(xe);
+
+	for_each_gt(gt, xe, id)
+		xe_guc_submit_unpause(&gt->uc.guc);
+}
+
 /**
  * vf_post_migration_requery_guc - Re-query GuC for current VF provisioning.
  * @xe: the &xe_device struct instance
@@ -244,6 +288,7 @@ static void vf_post_migration_recovery(struct xe_device *xe)
 
 	drm_dbg(&xe->drm, "migration recovery in progress\n");
 	xe_pm_runtime_get(xe);
+	vf_post_migration_shutdown(xe);
 	err = vf_post_migration_requery_guc(xe);
 	if (vf_post_migration_imminent(xe))
 		goto defer;
@@ -260,6 +305,7 @@ static void vf_post_migration_recovery(struct xe_device *xe)
 	if (need_fixups)
 		vf_post_migration_fixup_ctb(xe);
 
+	vf_post_migration_kickstart(xe);
 	vf_post_migration_notify_resfix_done(xe);
 	xe_pm_runtime_put(xe);
 	drm_notice(&xe->drm, "migration recovery ended\n");
-- 
2.25.1


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

* [PATCH v5 4/8] drm/xe: Block reset while recovering from VF migration
  2025-06-12 10:24 [PATCH v5 0/8] drm/xe/vf: Post-migration recovery of queues and jobs Tomasz Lis
                   ` (2 preceding siblings ...)
  2025-06-12 10:24 ` [PATCH v5 3/8] drm/xe/vf: Pause submissions during RESFIX fixups Tomasz Lis
@ 2025-06-12 10:24 ` Tomasz Lis
  2025-06-12 10:24 ` [PATCH v5 5/8] drm/xe/vf: Rebase HWSP of all contexts after migration Tomasz Lis
                   ` (6 subsequent siblings)
  10 siblings, 0 replies; 13+ messages in thread
From: Tomasz Lis @ 2025-06-12 10:24 UTC (permalink / raw)
  To: intel-xe
  Cc: Michał Winiarski, Michał Wajdeczko,
	Piotr Piórkowski, Matthew Brost, Lucas De Marchi

Resetting GuC during recovery could interfere with the recovery
process. Such reset might be also triggered without justification,
due to migration taking time, rather than due to the workload not
progressing.

Doing GuC reset during the recovery would cause exit of RESFIX state,
and therefore continuation of GuC work while fixups are still being
applied. To avoid that, reset needs to be blocked during the recovery.

This patch blocks the reset during recovery. Reset request in that
time range will be stalled, and unblocked only after GuC goes out
of RESFIX state.

In case a reset procedure already started while the recovery is
triggered, there isn't much we can do - we cannot wait for it to
finish as it involves waiting for hardware, and we can't be sure
at which exact point of the reset procedure the GPU got switched.
Therefore, the rare cases where migration happens while reset is
in progress, are still dangerous. Resets are not a part of the
standard flow, and cause unfinished workloads - that will happen
during the reset interrupted by migration as well, so it doesn't
diverge that much from what normally happens during such resets.

v2: Introduce a new atomic for reset blocking, as we cannot reuse
  `stopped` atomic (that could lead to losing a workload).

Signed-off-by: Tomasz Lis <tomasz.lis@intel.com>
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Michal Winiarski <michal.winiarski@intel.com>
---
 drivers/gpu/drm/xe/xe_gt.c         | 10 +++++++++
 drivers/gpu/drm/xe/xe_guc_submit.c | 36 ++++++++++++++++++++++++++++++
 drivers/gpu/drm/xe/xe_guc_submit.h |  3 +++
 drivers/gpu/drm/xe/xe_guc_types.h  |  6 +++++
 drivers/gpu/drm/xe/xe_sriov_vf.c   | 12 ++++++++--
 5 files changed, 65 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_gt.c b/drivers/gpu/drm/xe/xe_gt.c
index 858b5398c01b..96647c5801cc 100644
--- a/drivers/gpu/drm/xe/xe_gt.c
+++ b/drivers/gpu/drm/xe/xe_gt.c
@@ -41,6 +41,7 @@
 #include "xe_gt_topology.h"
 #include "xe_guc_exec_queue_types.h"
 #include "xe_guc_pc.h"
+#include "xe_guc_submit.h"
 #include "xe_hw_fence.h"
 #include "xe_hw_engine_class_sysfs.h"
 #include "xe_irq.h"
@@ -810,6 +811,11 @@ static int do_gt_restart(struct xe_gt *gt)
 	return 0;
 }
 
+static int gt_wait_reset_unblock(struct xe_gt *gt)
+{
+	return xe_guc_wait_reset_unblock(&gt->uc.guc);
+}
+
 static int gt_reset(struct xe_gt *gt)
 {
 	unsigned int fw_ref;
@@ -824,6 +830,10 @@ static int gt_reset(struct xe_gt *gt)
 
 	xe_gt_info(gt, "reset started\n");
 
+	err = gt_wait_reset_unblock(gt);
+	if (!err)
+		xe_gt_warn(gt, "reset block failed to get lifted");
+
 	xe_pm_runtime_get(gt_to_xe(gt));
 
 	if (xe_fault_inject_gt_reset()) {
diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
index 61a1aac7a976..0d6d9e07fc48 100644
--- a/drivers/gpu/drm/xe/xe_guc_submit.c
+++ b/drivers/gpu/drm/xe/xe_guc_submit.c
@@ -1772,6 +1772,42 @@ static void guc_exec_queue_stop(struct xe_guc *guc, struct xe_exec_queue *q)
 	}
 }
 
+/**
+ * xe_guc_submit_reset_block - Disallow reset calls on given GuC.
+ * @guc: the &xe_guc struct instance
+ */
+int xe_guc_submit_reset_block(struct xe_guc *guc)
+{
+	return atomic_fetch_or(1, &guc->submission_state.reset_blocked);
+}
+
+/**
+ * xe_guc_submit_reset_unblock - Allow back reset calls on given GuC.
+ * @guc: the &xe_guc struct instance
+ */
+void xe_guc_submit_reset_unblock(struct xe_guc *guc)
+{
+	atomic_and(0, &guc->submission_state.reset_blocked);
+	/* we are going to wake workers, make sure they all see the value */
+	smp_wmb();
+	wake_up_all(&guc->ct.wq);
+}
+
+static int guc_submit_reset_is_blocked(struct xe_guc *guc)
+{
+	return atomic_read(&guc->submission_state.reset_blocked);
+}
+
+/**
+ * xe_guc_wait_reset_unblock - Wait until reset blocking flag is lifted, or timeout.
+ * @guc: the &xe_guc struct instance
+ */
+int xe_guc_wait_reset_unblock(struct xe_guc *guc)
+{
+	return wait_event_timeout(guc->ct.wq,
+				  !guc_submit_reset_is_blocked(guc), HZ * 5);
+}
+
 int xe_guc_submit_reset_prepare(struct xe_guc *guc)
 {
 	int ret;
diff --git a/drivers/gpu/drm/xe/xe_guc_submit.h b/drivers/gpu/drm/xe/xe_guc_submit.h
index f1cf271492ae..45b978b047c9 100644
--- a/drivers/gpu/drm/xe/xe_guc_submit.h
+++ b/drivers/gpu/drm/xe/xe_guc_submit.h
@@ -20,6 +20,9 @@ void xe_guc_submit_stop(struct xe_guc *guc);
 int xe_guc_submit_start(struct xe_guc *guc);
 void xe_guc_submit_pause(struct xe_guc *guc);
 void xe_guc_submit_unpause(struct xe_guc *guc);
+int xe_guc_submit_reset_block(struct xe_guc *guc);
+void xe_guc_submit_reset_unblock(struct xe_guc *guc);
+int xe_guc_wait_reset_unblock(struct xe_guc *guc);
 void xe_guc_submit_wedge(struct xe_guc *guc);
 
 int xe_guc_read_stopped(struct xe_guc *guc);
diff --git a/drivers/gpu/drm/xe/xe_guc_types.h b/drivers/gpu/drm/xe/xe_guc_types.h
index 1fde7614fcc5..c7b9642b41ba 100644
--- a/drivers/gpu/drm/xe/xe_guc_types.h
+++ b/drivers/gpu/drm/xe/xe_guc_types.h
@@ -85,6 +85,12 @@ struct xe_guc {
 		struct xarray exec_queue_lookup;
 		/** @submission_state.stopped: submissions are stopped */
 		atomic_t stopped;
+		/**
+		 * @submission_state.reset_blocked: reset attempts are blocked;
+		 * blocking reset in order to delay it may be required if running
+		 * an operation which is sensitive to resets.
+		 */
+		atomic_t reset_blocked;
 		/** @submission_state.lock: protects submission state */
 		struct mutex lock;
 		/** @submission_state.enabled: submission is enabled */
diff --git a/drivers/gpu/drm/xe/xe_sriov_vf.c b/drivers/gpu/drm/xe/xe_sriov_vf.c
index d52a16127735..a4175a2b185b 100644
--- a/drivers/gpu/drm/xe/xe_sriov_vf.c
+++ b/drivers/gpu/drm/xe/xe_sriov_vf.c
@@ -163,9 +163,15 @@ static void vf_post_migration_shutdown(struct xe_device *xe)
 {
 	struct xe_gt *gt;
 	unsigned int id;
+	int ret = 0;
 
-	for_each_gt(gt, xe, id)
+	for_each_gt(gt, xe, id) {
 		xe_guc_submit_pause(&gt->uc.guc);
+		ret |= xe_guc_submit_reset_block(&gt->uc.guc);
+	}
+
+	if (ret)
+		drm_info(&xe->drm, "migration recovery encountered ongoing reset\n");
 }
 
 /**
@@ -187,8 +193,10 @@ static void vf_post_migration_kickstart(struct xe_device *xe)
 	 */
 	xe_irq_resume(xe);
 
-	for_each_gt(gt, xe, id)
+	for_each_gt(gt, xe, id) {
+		xe_guc_submit_reset_unblock(&gt->uc.guc);
 		xe_guc_submit_unpause(&gt->uc.guc);
+	}
 }
 
 /**
-- 
2.25.1


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

* [PATCH v5 5/8] drm/xe/vf: Rebase HWSP of all contexts after migration
  2025-06-12 10:24 [PATCH v5 0/8] drm/xe/vf: Post-migration recovery of queues and jobs Tomasz Lis
                   ` (3 preceding siblings ...)
  2025-06-12 10:24 ` [PATCH v5 4/8] drm/xe: Block reset while recovering from VF migration Tomasz Lis
@ 2025-06-12 10:24 ` Tomasz Lis
  2025-06-12 10:24 ` [PATCH v5 6/8] drm/xe/vf: Rebase MEMIRQ structures for " Tomasz Lis
                   ` (5 subsequent siblings)
  10 siblings, 0 replies; 13+ messages in thread
From: Tomasz Lis @ 2025-06-12 10:24 UTC (permalink / raw)
  To: intel-xe
  Cc: Michał Winiarski, Michał Wajdeczko,
	Piotr Piórkowski, Matthew Brost, Lucas De Marchi,
	Satyanarayana K V P

All contexts require an update due to GGTT range shift, as that
affects their HWSP.

The HW status page of a context contains GGTT references, which
need to be shifted to a new range (or re-computed using the
previously updated vma nodes). The references include ring start
address and indirect state address.

v2: move some functions to better matched files
v3: Add missing kerneldocs
v4: Style fix

Signed-off-by: Tomasz Lis <tomasz.lis@intel.com>
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Michal Winiarski <michal.winiarski@intel.com>
Acked-by: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
---
 drivers/gpu/drm/xe/xe_exec_queue.c | 13 +++++++++++++
 drivers/gpu/drm/xe/xe_exec_queue.h |  2 ++
 drivers/gpu/drm/xe/xe_guc_submit.c | 16 ++++++++++++++++
 drivers/gpu/drm/xe/xe_guc_submit.h |  2 ++
 drivers/gpu/drm/xe/xe_lrc.c        | 17 +++++++++++++++++
 drivers/gpu/drm/xe/xe_lrc.h        |  1 +
 drivers/gpu/drm/xe/xe_sriov_vf.c   | 17 +++++++++++++++--
 7 files changed, 66 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_exec_queue.c b/drivers/gpu/drm/xe/xe_exec_queue.c
index fee22358cc09..c44a523ba906 100644
--- a/drivers/gpu/drm/xe/xe_exec_queue.c
+++ b/drivers/gpu/drm/xe/xe_exec_queue.c
@@ -1028,3 +1028,16 @@ int xe_exec_queue_last_fence_test_dep(struct xe_exec_queue *q, struct xe_vm *vm)
 
 	return err;
 }
+
+/**
+ * xe_exec_queue_contexts_hwsp_rebase - Re-compute GGTT references
+ * within all LRCs of a queue.
+ * @q: the &xe_exec_queue struct instance containing target LRCs
+ */
+void xe_exec_queue_contexts_hwsp_rebase(struct xe_exec_queue *q)
+{
+	int i;
+
+	for (i = 0; i < q->width; ++i)
+		xe_lrc_update_hwctx_regs_with_address(q->lrc[i]);
+}
diff --git a/drivers/gpu/drm/xe/xe_exec_queue.h b/drivers/gpu/drm/xe/xe_exec_queue.h
index 17bc50a7f05a..1d399a33c5c0 100644
--- a/drivers/gpu/drm/xe/xe_exec_queue.h
+++ b/drivers/gpu/drm/xe/xe_exec_queue.h
@@ -90,4 +90,6 @@ int xe_exec_queue_last_fence_test_dep(struct xe_exec_queue *q,
 				      struct xe_vm *vm);
 void xe_exec_queue_update_run_ticks(struct xe_exec_queue *q);
 
+void xe_exec_queue_contexts_hwsp_rebase(struct xe_exec_queue *q);
+
 #endif
diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
index 0d6d9e07fc48..89b4c09e733a 100644
--- a/drivers/gpu/drm/xe/xe_guc_submit.c
+++ b/drivers/gpu/drm/xe/xe_guc_submit.c
@@ -2449,3 +2449,19 @@ void xe_guc_submit_print(struct xe_guc *guc, struct drm_printer *p)
 		guc_exec_queue_print(q, p);
 	mutex_unlock(&guc->submission_state.lock);
 }
+
+/**
+ * xe_guc_contexts_hwsp_rebase - Re-compute GGTT references within all
+ * exec queues registered to given GuC.
+ * @guc: the &xe_guc struct instance
+ */
+void xe_guc_contexts_hwsp_rebase(struct xe_guc *guc)
+{
+	struct xe_exec_queue *q;
+	unsigned long index;
+
+	mutex_lock(&guc->submission_state.lock);
+	xa_for_each(&guc->submission_state.exec_queue_lookup, index, q)
+		xe_exec_queue_contexts_hwsp_rebase(q);
+	mutex_unlock(&guc->submission_state.lock);
+}
diff --git a/drivers/gpu/drm/xe/xe_guc_submit.h b/drivers/gpu/drm/xe/xe_guc_submit.h
index 45b978b047c9..5b43e6639f52 100644
--- a/drivers/gpu/drm/xe/xe_guc_submit.h
+++ b/drivers/gpu/drm/xe/xe_guc_submit.h
@@ -45,4 +45,6 @@ void
 xe_guc_exec_queue_snapshot_free(struct xe_guc_submit_exec_queue_snapshot *snapshot);
 void xe_guc_submit_print(struct xe_guc *guc, struct drm_printer *p);
 
+void xe_guc_contexts_hwsp_rebase(struct xe_guc *guc);
+
 #endif
diff --git a/drivers/gpu/drm/xe/xe_lrc.c b/drivers/gpu/drm/xe/xe_lrc.c
index 529c6a972a55..b2f8eadc776d 100644
--- a/drivers/gpu/drm/xe/xe_lrc.c
+++ b/drivers/gpu/drm/xe/xe_lrc.c
@@ -1238,6 +1238,23 @@ void xe_lrc_destroy(struct kref *ref)
 	kfree(lrc);
 }
 
+/**
+ * xe_lrc_update_hwctx_regs_with_address - Re-compute GGTT references within given LRC.
+ * @lrc: the &xe_lrc struct instance
+ */
+void xe_lrc_update_hwctx_regs_with_address(struct xe_lrc *lrc)
+{
+	if (xe_lrc_has_indirect_ring_state(lrc)) {
+		xe_lrc_write_ctx_reg(lrc, CTX_INDIRECT_RING_STATE,
+				     __xe_lrc_indirect_ring_ggtt_addr(lrc));
+
+		xe_lrc_write_indirect_ctx_reg(lrc, INDIRECT_CTX_RING_START,
+					      __xe_lrc_ring_ggtt_addr(lrc));
+	} else {
+		xe_lrc_write_ctx_reg(lrc, CTX_RING_START, __xe_lrc_ring_ggtt_addr(lrc));
+	}
+}
+
 void xe_lrc_set_ring_tail(struct xe_lrc *lrc, u32 tail)
 {
 	if (xe_lrc_has_indirect_ring_state(lrc))
diff --git a/drivers/gpu/drm/xe/xe_lrc.h b/drivers/gpu/drm/xe/xe_lrc.h
index eb6e8de8c939..e7a99cfd0abe 100644
--- a/drivers/gpu/drm/xe/xe_lrc.h
+++ b/drivers/gpu/drm/xe/xe_lrc.h
@@ -88,6 +88,7 @@ bool xe_lrc_ring_is_idle(struct xe_lrc *lrc);
 u32 xe_lrc_indirect_ring_ggtt_addr(struct xe_lrc *lrc);
 u32 xe_lrc_ggtt_addr(struct xe_lrc *lrc);
 u32 *xe_lrc_regs(struct xe_lrc *lrc);
+void xe_lrc_update_hwctx_regs_with_address(struct xe_lrc *lrc);
 
 u32 xe_lrc_read_ctx_reg(struct xe_lrc *lrc, int reg_nr);
 void xe_lrc_write_ctx_reg(struct xe_lrc *lrc, int reg_nr, u32 val);
diff --git a/drivers/gpu/drm/xe/xe_sriov_vf.c b/drivers/gpu/drm/xe/xe_sriov_vf.c
index a4175a2b185b..a559a1f961a4 100644
--- a/drivers/gpu/drm/xe/xe_sriov_vf.c
+++ b/drivers/gpu/drm/xe/xe_sriov_vf.c
@@ -7,12 +7,14 @@
 
 #include "xe_assert.h"
 #include "xe_device.h"
+#include "xe_exec_queue_types.h"
 #include "xe_gt.h"
 #include "xe_gt_sriov_printk.h"
 #include "xe_gt_sriov_vf.h"
 #include "xe_guc_ct.h"
 #include "xe_guc_submit.h"
 #include "xe_irq.h"
+#include "xe_lrc.h"
 #include "xe_pm.h"
 #include "xe_sriov.h"
 #include "xe_sriov_printk.h"
@@ -224,6 +226,15 @@ static int vf_post_migration_requery_guc(struct xe_device *xe)
 	return ret;
 }
 
+static void vf_post_migration_fixup_contexts(struct xe_device *xe)
+{
+	struct xe_gt *gt;
+	unsigned int id;
+
+	for_each_gt(gt, xe, id)
+		xe_guc_contexts_hwsp_rebase(&gt->uc.guc);
+}
+
 static void vf_post_migration_fixup_ctb(struct xe_device *xe)
 {
 	struct xe_gt *gt;
@@ -309,9 +320,11 @@ static void vf_post_migration_recovery(struct xe_device *xe)
 	}
 
 	need_fixups = vf_post_migration_fixup_ggtt_nodes(xe);
-	/* FIXME: add the recovery steps */
-	if (need_fixups)
+	if (need_fixups) {
+		vf_post_migration_fixup_contexts(xe);
+		/* FIXME: add the recovery steps */
 		vf_post_migration_fixup_ctb(xe);
+	}
 
 	vf_post_migration_kickstart(xe);
 	vf_post_migration_notify_resfix_done(xe);
-- 
2.25.1


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

* [PATCH v5 6/8] drm/xe/vf: Rebase MEMIRQ structures for all contexts after migration
  2025-06-12 10:24 [PATCH v5 0/8] drm/xe/vf: Post-migration recovery of queues and jobs Tomasz Lis
                   ` (4 preceding siblings ...)
  2025-06-12 10:24 ` [PATCH v5 5/8] drm/xe/vf: Rebase HWSP of all contexts after migration Tomasz Lis
@ 2025-06-12 10:24 ` Tomasz Lis
  2025-06-12 10:24 ` [PATCH v5 7/8] drm/xe/vf: Post migration, repopulate ring area for pending request Tomasz Lis
                   ` (4 subsequent siblings)
  10 siblings, 0 replies; 13+ messages in thread
From: Tomasz Lis @ 2025-06-12 10:24 UTC (permalink / raw)
  To: intel-xe
  Cc: Michał Winiarski, Michał Wajdeczko,
	Piotr Piórkowski, Matthew Brost, Lucas De Marchi,
	Satyanarayana K V P

All contexts require an update of state data, as the data includes
GGTT references to memirq-related buffers.

Default contexts need these references updated as well, because they
are not refreshed when a new context is created from them.

v2: Update addresses by xe_lrc_write_ctx_reg() rather than
  set_memory_based_intr()
v3: Renamed parameter, reordered parameters in some functs
v4: Check if have MEMIRQ, move `xe_gt*` funct to proper file

Signed-off-by: Tomasz Lis <tomasz.lis@intel.com>
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Michal Winiarski <michal.winiarski@intel.com>
Acked-by: Satyanarayana K V P <satyanarayana.k.v.p@intel.com>
---
 drivers/gpu/drm/xe/xe_exec_queue.c  |  4 ++-
 drivers/gpu/drm/xe/xe_gt_sriov_vf.c | 14 +++++++++++
 drivers/gpu/drm/xe/xe_gt_sriov_vf.h |  1 +
 drivers/gpu/drm/xe/xe_lrc.c         | 38 +++++++++++++++++++++++++++++
 drivers/gpu/drm/xe/xe_lrc.h         |  2 ++
 drivers/gpu/drm/xe/xe_sriov_vf.c    |  4 ++-
 6 files changed, 61 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_exec_queue.c b/drivers/gpu/drm/xe/xe_exec_queue.c
index c44a523ba906..86b2f9034902 100644
--- a/drivers/gpu/drm/xe/xe_exec_queue.c
+++ b/drivers/gpu/drm/xe/xe_exec_queue.c
@@ -1038,6 +1038,8 @@ void xe_exec_queue_contexts_hwsp_rebase(struct xe_exec_queue *q)
 {
 	int i;
 
-	for (i = 0; i < q->width; ++i)
+	for (i = 0; i < q->width; ++i) {
+		xe_lrc_update_memirq_regs_with_address(q->lrc[i], q->hwe);
 		xe_lrc_update_hwctx_regs_with_address(q->lrc[i]);
+	}
 }
diff --git a/drivers/gpu/drm/xe/xe_gt_sriov_vf.c b/drivers/gpu/drm/xe/xe_gt_sriov_vf.c
index 74dcfe693d1c..dba6f1e43e2b 100644
--- a/drivers/gpu/drm/xe/xe_gt_sriov_vf.c
+++ b/drivers/gpu/drm/xe/xe_gt_sriov_vf.c
@@ -25,6 +25,7 @@
 #include "xe_guc.h"
 #include "xe_guc_hxg_helpers.h"
 #include "xe_guc_relay.h"
+#include "xe_lrc.h"
 #include "xe_mmio.h"
 #include "xe_sriov.h"
 #include "xe_sriov_vf.h"
@@ -749,6 +750,19 @@ int xe_gt_sriov_vf_connect(struct xe_gt *gt)
 	return err;
 }
 
+/**
+ * xe_gt_sriov_vf_default_lrcs_hwsp_rebase - Update GGTT references in HWSP of default LRCs.
+ * @gt: the &xe_gt struct instance
+ */
+void xe_gt_sriov_vf_default_lrcs_hwsp_rebase(struct xe_gt *gt)
+{
+	struct xe_hw_engine *hwe;
+	enum xe_hw_engine_id id;
+
+	for_each_hw_engine(hwe, gt, id)
+		xe_default_lrc_update_memirq_regs_with_address(hwe);
+}
+
 /**
  * xe_gt_sriov_vf_migrated_event_handler - Start a VF migration recovery,
  *   or just mark that a GuC is ready for it.
diff --git a/drivers/gpu/drm/xe/xe_gt_sriov_vf.h b/drivers/gpu/drm/xe/xe_gt_sriov_vf.h
index e0357f341a2d..0af1dc769fe0 100644
--- a/drivers/gpu/drm/xe/xe_gt_sriov_vf.h
+++ b/drivers/gpu/drm/xe/xe_gt_sriov_vf.h
@@ -21,6 +21,7 @@ void xe_gt_sriov_vf_guc_versions(struct xe_gt *gt,
 int xe_gt_sriov_vf_query_config(struct xe_gt *gt);
 int xe_gt_sriov_vf_connect(struct xe_gt *gt);
 int xe_gt_sriov_vf_query_runtime(struct xe_gt *gt);
+void xe_gt_sriov_vf_default_lrcs_hwsp_rebase(struct xe_gt *gt);
 int xe_gt_sriov_vf_notify_resfix_done(struct xe_gt *gt);
 void xe_gt_sriov_vf_migrated_event_handler(struct xe_gt *gt);
 
diff --git a/drivers/gpu/drm/xe/xe_lrc.c b/drivers/gpu/drm/xe/xe_lrc.c
index b2f8eadc776d..8b08c416ccf0 100644
--- a/drivers/gpu/drm/xe/xe_lrc.c
+++ b/drivers/gpu/drm/xe/xe_lrc.c
@@ -898,6 +898,44 @@ static void *empty_lrc_data(struct xe_hw_engine *hwe)
 	return data;
 }
 
+/**
+ * xe_default_lrc_update_memirq_regs_with_address - Re-compute GGTT references in default LRC
+ * of given engine.
+ * @hwe: the &xe_hw_engine struct instance
+ */
+void xe_default_lrc_update_memirq_regs_with_address(struct xe_hw_engine *hwe)
+{
+	struct xe_gt *gt = hwe->gt;
+	u32 *regs;
+
+	if (!gt->default_lrc[hwe->class])
+		return;
+
+	regs = gt->default_lrc[hwe->class] + LRC_PPHWSP_SIZE;
+	set_memory_based_intr(regs, hwe);
+}
+
+/**
+ * xe_lrc_update_memirq_regs_with_address - Re-compute GGTT references in mem interrupt data
+ * for given LRC.
+ * @lrc: the &xe_lrc struct instance
+ * @hwe: the &xe_hw_engine struct instance
+ */
+void xe_lrc_update_memirq_regs_with_address(struct xe_lrc *lrc, struct xe_hw_engine *hwe)
+{
+	struct xe_memirq *memirq = &gt_to_tile(hwe->gt)->memirq;
+
+	if (!xe_device_uses_memirq(gt_to_xe(hwe->gt)))
+		return;
+
+	xe_lrc_write_ctx_reg(lrc, CTX_INT_MASK_ENABLE_PTR,
+			     xe_memirq_enable_ptr(memirq));
+	xe_lrc_write_ctx_reg(lrc, CTX_INT_STATUS_REPORT_PTR,
+			     xe_memirq_status_ptr(memirq, hwe));
+	xe_lrc_write_ctx_reg(lrc, CTX_INT_SRC_REPORT_PTR,
+			     xe_memirq_source_ptr(memirq, hwe));
+}
+
 static void xe_lrc_set_ppgtt(struct xe_lrc *lrc, struct xe_vm *vm)
 {
 	u64 desc = xe_vm_pdp4_descriptor(vm, gt_to_tile(lrc->gt));
diff --git a/drivers/gpu/drm/xe/xe_lrc.h b/drivers/gpu/drm/xe/xe_lrc.h
index e7a99cfd0abe..801a6b943f6e 100644
--- a/drivers/gpu/drm/xe/xe_lrc.h
+++ b/drivers/gpu/drm/xe/xe_lrc.h
@@ -89,6 +89,8 @@ u32 xe_lrc_indirect_ring_ggtt_addr(struct xe_lrc *lrc);
 u32 xe_lrc_ggtt_addr(struct xe_lrc *lrc);
 u32 *xe_lrc_regs(struct xe_lrc *lrc);
 void xe_lrc_update_hwctx_regs_with_address(struct xe_lrc *lrc);
+void xe_default_lrc_update_memirq_regs_with_address(struct xe_hw_engine *hwe);
+void xe_lrc_update_memirq_regs_with_address(struct xe_lrc *lrc, struct xe_hw_engine *hwe);
 
 u32 xe_lrc_read_ctx_reg(struct xe_lrc *lrc, int reg_nr);
 void xe_lrc_write_ctx_reg(struct xe_lrc *lrc, int reg_nr, u32 val);
diff --git a/drivers/gpu/drm/xe/xe_sriov_vf.c b/drivers/gpu/drm/xe/xe_sriov_vf.c
index a559a1f961a4..42c779b107c3 100644
--- a/drivers/gpu/drm/xe/xe_sriov_vf.c
+++ b/drivers/gpu/drm/xe/xe_sriov_vf.c
@@ -231,8 +231,10 @@ static void vf_post_migration_fixup_contexts(struct xe_device *xe)
 	struct xe_gt *gt;
 	unsigned int id;
 
-	for_each_gt(gt, xe, id)
+	for_each_gt(gt, xe, id) {
+		xe_gt_sriov_vf_default_lrcs_hwsp_rebase(gt);
 		xe_guc_contexts_hwsp_rebase(&gt->uc.guc);
+	}
 }
 
 static void vf_post_migration_fixup_ctb(struct xe_device *xe)
-- 
2.25.1


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

* [PATCH v5 7/8] drm/xe/vf: Post migration, repopulate ring area for pending request
  2025-06-12 10:24 [PATCH v5 0/8] drm/xe/vf: Post-migration recovery of queues and jobs Tomasz Lis
                   ` (5 preceding siblings ...)
  2025-06-12 10:24 ` [PATCH v5 6/8] drm/xe/vf: Rebase MEMIRQ structures for " Tomasz Lis
@ 2025-06-12 10:24 ` Tomasz Lis
  2025-06-12 10:24 ` [PATCH v5 8/8] drm/xe/vf: Refresh utilization buffer during migration recovery Tomasz Lis
                   ` (3 subsequent siblings)
  10 siblings, 0 replies; 13+ messages in thread
From: Tomasz Lis @ 2025-06-12 10:24 UTC (permalink / raw)
  To: intel-xe
  Cc: Michał Winiarski, Michał Wajdeczko,
	Piotr Piórkowski, Matthew Brost, Lucas De Marchi

The commands within ring area allocated for a request may contain
references to GGTT. These references require update after VF
migration, in order to continue any preempted LRCs, or jobs which
were emitted to the ring but not sent to GuC yet.

This change calls the emit function again for all such jobs,
as part of post-migration recovery.

v2: Moved few functions to better files
v3: Take job_list_lock

Signed-off-by: Tomasz Lis <tomasz.lis@intel.com>
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Michal Winiarski <michal.winiarski@intel.com>
---
 drivers/gpu/drm/xe/xe_exec_queue.c | 24 ++++++++++++++++++++++++
 drivers/gpu/drm/xe/xe_exec_queue.h |  2 ++
 drivers/gpu/drm/xe/xe_guc_submit.c | 24 ++++++++++++++++++++++++
 drivers/gpu/drm/xe/xe_guc_submit.h |  2 ++
 drivers/gpu/drm/xe/xe_sriov_vf.c   | 13 ++++++++++++-
 5 files changed, 64 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/xe/xe_exec_queue.c b/drivers/gpu/drm/xe/xe_exec_queue.c
index 86b2f9034902..d5ffb550bde7 100644
--- a/drivers/gpu/drm/xe/xe_exec_queue.c
+++ b/drivers/gpu/drm/xe/xe_exec_queue.c
@@ -1043,3 +1043,27 @@ void xe_exec_queue_contexts_hwsp_rebase(struct xe_exec_queue *q)
 		xe_lrc_update_hwctx_regs_with_address(q->lrc[i]);
 	}
 }
+
+/**
+ * xe_exec_queue_jobs_ring_restore - Re-emit ring commands of requests pending on given queue.
+ * @q: the &xe_exec_queue struct instance
+ */
+void xe_exec_queue_jobs_ring_restore(struct xe_exec_queue *q)
+{
+	struct xe_gpu_scheduler *sched = &q->guc->sched;
+	struct xe_sched_job *job;
+
+	/*
+	 * This routine is used within VF migration recovery. This means
+	 * using the lock here, introduces a restriction: in no place we
+	 * can wait for any GFX HW response when that lock is taken.
+	 */
+	spin_lock(&sched->base.job_list_lock);
+	list_for_each_entry(job, &sched->base.pending_list, drm.list) {
+		if (xe_sched_job_is_error(job))
+			continue;
+
+		q->ring_ops->emit_job(job);
+	}
+	spin_unlock(&sched->base.job_list_lock);
+}
diff --git a/drivers/gpu/drm/xe/xe_exec_queue.h b/drivers/gpu/drm/xe/xe_exec_queue.h
index 1d399a33c5c0..67c2baa42c0f 100644
--- a/drivers/gpu/drm/xe/xe_exec_queue.h
+++ b/drivers/gpu/drm/xe/xe_exec_queue.h
@@ -92,4 +92,6 @@ void xe_exec_queue_update_run_ticks(struct xe_exec_queue *q);
 
 void xe_exec_queue_contexts_hwsp_rebase(struct xe_exec_queue *q);
 
+void xe_exec_queue_jobs_ring_restore(struct xe_exec_queue *q);
+
 #endif
diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
index 89b4c09e733a..57ad4d850540 100644
--- a/drivers/gpu/drm/xe/xe_guc_submit.c
+++ b/drivers/gpu/drm/xe/xe_guc_submit.c
@@ -777,6 +777,30 @@ guc_exec_queue_run_job(struct drm_sched_job *drm_job)
 	return fence;
 }
 
+/**
+ * xe_guc_jobs_ring_rebase - Re-emit ring commands of requests pending
+ * on all queues under a guc.
+ * @guc: the &xe_guc struct instance
+ */
+void xe_guc_jobs_ring_rebase(struct xe_guc *guc)
+{
+	struct xe_exec_queue *q;
+	unsigned long index;
+
+	/*
+	 * This routine is used within VF migration recovery. This means
+	 * using the lock here, introduces a restriction: in no place we
+	 * can wait for any GFX HW response when that lock is taken.
+	 */
+	mutex_lock(&guc->submission_state.lock);
+	xa_for_each(&guc->submission_state.exec_queue_lookup, index, q) {
+		if (exec_queue_killed_or_banned_or_wedged(q))
+			continue;
+		xe_exec_queue_jobs_ring_restore(q);
+	}
+	mutex_unlock(&guc->submission_state.lock);
+}
+
 static void guc_exec_queue_free_job(struct drm_sched_job *drm_job)
 {
 	struct xe_sched_job *job = to_xe_sched_job(drm_job);
diff --git a/drivers/gpu/drm/xe/xe_guc_submit.h b/drivers/gpu/drm/xe/xe_guc_submit.h
index 5b43e6639f52..4bc16dd5c333 100644
--- a/drivers/gpu/drm/xe/xe_guc_submit.h
+++ b/drivers/gpu/drm/xe/xe_guc_submit.h
@@ -34,6 +34,8 @@ int xe_guc_exec_queue_memory_cat_error_handler(struct xe_guc *guc, u32 *msg,
 int xe_guc_exec_queue_reset_failure_handler(struct xe_guc *guc, u32 *msg, u32 len);
 int xe_guc_error_capture_handler(struct xe_guc *guc, u32 *msg, u32 len);
 
+void xe_guc_jobs_ring_rebase(struct xe_guc *guc);
+
 struct xe_guc_submit_exec_queue_snapshot *
 xe_guc_exec_queue_snapshot_capture(struct xe_exec_queue *q);
 void
diff --git a/drivers/gpu/drm/xe/xe_sriov_vf.c b/drivers/gpu/drm/xe/xe_sriov_vf.c
index 42c779b107c3..b3c591a5a159 100644
--- a/drivers/gpu/drm/xe/xe_sriov_vf.c
+++ b/drivers/gpu/drm/xe/xe_sriov_vf.c
@@ -8,6 +8,7 @@
 #include "xe_assert.h"
 #include "xe_device.h"
 #include "xe_exec_queue_types.h"
+#include "xe_guc_exec_queue_types.h"
 #include "xe_gt.h"
 #include "xe_gt_sriov_printk.h"
 #include "xe_gt_sriov_vf.h"
@@ -16,6 +17,7 @@
 #include "xe_irq.h"
 #include "xe_lrc.h"
 #include "xe_pm.h"
+#include "xe_sched_job_types.h"
 #include "xe_sriov.h"
 #include "xe_sriov_printk.h"
 #include "xe_sriov_vf.h"
@@ -237,6 +239,15 @@ static void vf_post_migration_fixup_contexts(struct xe_device *xe)
 	}
 }
 
+static void vf_post_migration_fixup_jobs(struct xe_device *xe)
+{
+	struct xe_gt *gt;
+	unsigned int id;
+
+	for_each_gt(gt, xe, id)
+		xe_guc_jobs_ring_rebase(&gt->uc.guc);
+}
+
 static void vf_post_migration_fixup_ctb(struct xe_device *xe)
 {
 	struct xe_gt *gt;
@@ -324,7 +335,7 @@ static void vf_post_migration_recovery(struct xe_device *xe)
 	need_fixups = vf_post_migration_fixup_ggtt_nodes(xe);
 	if (need_fixups) {
 		vf_post_migration_fixup_contexts(xe);
-		/* FIXME: add the recovery steps */
+		vf_post_migration_fixup_jobs(xe);
 		vf_post_migration_fixup_ctb(xe);
 	}
 
-- 
2.25.1


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

* [PATCH v5 8/8] drm/xe/vf: Refresh utilization buffer during migration recovery
  2025-06-12 10:24 [PATCH v5 0/8] drm/xe/vf: Post-migration recovery of queues and jobs Tomasz Lis
                   ` (6 preceding siblings ...)
  2025-06-12 10:24 ` [PATCH v5 7/8] drm/xe/vf: Post migration, repopulate ring area for pending request Tomasz Lis
@ 2025-06-12 10:24 ` Tomasz Lis
  2025-06-13 18:05   ` Lis, Tomasz
  2025-06-12 11:14 ` ✓ CI.KUnit: success for drm/xe/vf: Post-migration recovery of queues and jobs (rev5) Patchwork
                   ` (2 subsequent siblings)
  10 siblings, 1 reply; 13+ messages in thread
From: Tomasz Lis @ 2025-06-12 10:24 UTC (permalink / raw)
  To: intel-xe
  Cc: Michał Winiarski, Michał Wajdeczko,
	Piotr Piórkowski, Matthew Brost, Lucas De Marchi

The WA buffer we use to capture context utilization contains GGTT
references. This means its instructions have to be either fixed or
re-emitted during VF post-migration recovery.

This patch adds re-emitting content of the utilization WA BB during
the recovery.

Signed-off-by: Tomasz Lis <tomasz.lis@intel.com>
Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: Michal Winiarski <michal.winiarski@intel.com>
---
 drivers/gpu/drm/xe/xe_exec_queue.c |  1 +
 drivers/gpu/drm/xe/xe_lrc.c        | 10 ++++++++--
 drivers/gpu/drm/xe/xe_lrc.h        |  1 +
 3 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_exec_queue.c b/drivers/gpu/drm/xe/xe_exec_queue.c
index d5ffb550bde7..dc2bcda1d636 100644
--- a/drivers/gpu/drm/xe/xe_exec_queue.c
+++ b/drivers/gpu/drm/xe/xe_exec_queue.c
@@ -1041,6 +1041,7 @@ void xe_exec_queue_contexts_hwsp_rebase(struct xe_exec_queue *q)
 	for (i = 0; i < q->width; ++i) {
 		xe_lrc_update_memirq_regs_with_address(q->lrc[i], q->hwe);
 		xe_lrc_update_hwctx_regs_with_address(q->lrc[i]);
+		xe_lrc_setup_wa_bb(q->lrc[i], q->hwe);
 	}
 }
 
diff --git a/drivers/gpu/drm/xe/xe_lrc.c b/drivers/gpu/drm/xe/xe_lrc.c
index 8b08c416ccf0..9f3331779dae 100644
--- a/drivers/gpu/drm/xe/xe_lrc.c
+++ b/drivers/gpu/drm/xe/xe_lrc.c
@@ -1011,7 +1011,13 @@ struct wa_bb_setup {
 			 u32 *batch, size_t max_size);
 };
 
-static int setup_wa_bb(struct xe_lrc *lrc, struct xe_hw_engine *hwe)
+/**
+ * xe_lrc_setup_wa_bb - Execute all wa bb setup callbacks.
+ * @lrc: the &xe_lrc struct instance
+ * @hwe: the &xe_hw_engine struct instance
+ * Return: 0 on success, negative error code on failure
+ */
+int xe_lrc_setup_wa_bb(struct xe_lrc *lrc, struct xe_hw_engine *hwe)
 {
 	const size_t max_size = lrc->bb_per_ctx_bo->size;
 	static const struct wa_bb_setup funcs[] = {
@@ -1218,7 +1224,7 @@ static int xe_lrc_init(struct xe_lrc *lrc, struct xe_hw_engine *hwe,
 	map = __xe_lrc_start_seqno_map(lrc);
 	xe_map_write32(lrc_to_xe(lrc), &map, lrc->fence_ctx.next_seqno - 1);
 
-	err = setup_wa_bb(lrc, hwe);
+	err = xe_lrc_setup_wa_bb(lrc, hwe);
 	if (err)
 		goto err_lrc_finish;
 
diff --git a/drivers/gpu/drm/xe/xe_lrc.h b/drivers/gpu/drm/xe/xe_lrc.h
index 801a6b943f6e..8f05620fc0f0 100644
--- a/drivers/gpu/drm/xe/xe_lrc.h
+++ b/drivers/gpu/drm/xe/xe_lrc.h
@@ -127,6 +127,7 @@ u32 xe_lrc_ctx_timestamp_udw_ggtt_addr(struct xe_lrc *lrc);
 u64 xe_lrc_ctx_timestamp(struct xe_lrc *lrc);
 u32 xe_lrc_ctx_job_timestamp_ggtt_addr(struct xe_lrc *lrc);
 u32 xe_lrc_ctx_job_timestamp(struct xe_lrc *lrc);
+int xe_lrc_setup_wa_bb(struct xe_lrc *lrc, struct xe_hw_engine *hwe);
 
 /**
  * xe_lrc_update_timestamp - readout LRC timestamp and update cached value
-- 
2.25.1


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

* ✓ CI.KUnit: success for drm/xe/vf: Post-migration recovery of queues and jobs (rev5)
  2025-06-12 10:24 [PATCH v5 0/8] drm/xe/vf: Post-migration recovery of queues and jobs Tomasz Lis
                   ` (7 preceding siblings ...)
  2025-06-12 10:24 ` [PATCH v5 8/8] drm/xe/vf: Refresh utilization buffer during migration recovery Tomasz Lis
@ 2025-06-12 11:14 ` Patchwork
  2025-06-12 11:50 ` ✓ Xe.CI.BAT: " Patchwork
  2025-06-12 23:22 ` ✓ Xe.CI.Full: " Patchwork
  10 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2025-06-12 11:14 UTC (permalink / raw)
  To: Tomasz Lis; +Cc: intel-xe

== Series Details ==

Series: drm/xe/vf: Post-migration recovery of queues and jobs (rev5)
URL   : https://patchwork.freedesktop.org/series/148982/
State : success

== Summary ==

+ trap cleanup EXIT
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/xe/.kunitconfig
[11:13:01] Configuring KUnit Kernel ...
Generating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[11:13:05] 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
[11:13:32] Starting KUnit Kernel (1/1)...
[11:13:32] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[11:13:33] ================== guc_buf (11 subtests) ===================
[11:13:33] [PASSED] test_smallest
[11:13:33] [PASSED] test_largest
[11:13:33] [PASSED] test_granular
[11:13:33] [PASSED] test_unique
[11:13:33] [PASSED] test_overlap
[11:13:33] [PASSED] test_reusable
[11:13:33] [PASSED] test_too_big
[11:13:33] [PASSED] test_flush
[11:13:33] [PASSED] test_lookup
[11:13:33] [PASSED] test_data
[11:13:33] [PASSED] test_class
[11:13:33] ===================== [PASSED] guc_buf =====================
[11:13:33] =================== guc_dbm (7 subtests) ===================
[11:13:33] [PASSED] test_empty
[11:13:33] [PASSED] test_default
[11:13:33] ======================== test_size  ========================
[11:13:33] [PASSED] 4
[11:13:33] [PASSED] 8
[11:13:33] [PASSED] 32
[11:13:33] [PASSED] 256
[11:13:33] ==================== [PASSED] test_size ====================
[11:13:33] ======================= test_reuse  ========================
[11:13:33] [PASSED] 4
[11:13:33] [PASSED] 8
[11:13:33] [PASSED] 32
[11:13:33] [PASSED] 256
[11:13:33] =================== [PASSED] test_reuse ====================
[11:13:33] =================== test_range_overlap  ====================
[11:13:33] [PASSED] 4
[11:13:33] [PASSED] 8
[11:13:33] [PASSED] 32
[11:13:33] [PASSED] 256
[11:13:33] =============== [PASSED] test_range_overlap ================
[11:13:33] =================== test_range_compact  ====================
[11:13:33] [PASSED] 4
[11:13:33] [PASSED] 8
[11:13:33] [PASSED] 32
[11:13:33] [PASSED] 256
[11:13:33] =============== [PASSED] test_range_compact ================
[11:13:33] ==================== test_range_spare  =====================
[11:13:33] [PASSED] 4
[11:13:33] [PASSED] 8
[11:13:33] [PASSED] 32
[11:13:33] [PASSED] 256
[11:13:33] ================ [PASSED] test_range_spare =================
[11:13:33] ===================== [PASSED] guc_dbm =====================
[11:13:33] =================== guc_idm (6 subtests) ===================
[11:13:33] [PASSED] bad_init
[11:13:33] [PASSED] no_init
[11:13:33] [PASSED] init_fini
[11:13:33] [PASSED] check_used
[11:13:33] [PASSED] check_quota
[11:13:33] [PASSED] check_all
[11:13:33] ===================== [PASSED] guc_idm =====================
[11:13:33] ================== no_relay (3 subtests) ===================
[11:13:33] [PASSED] xe_drops_guc2pf_if_not_ready
[11:13:33] [PASSED] xe_drops_guc2vf_if_not_ready
[11:13:33] [PASSED] xe_rejects_send_if_not_ready
[11:13:33] ==================== [PASSED] no_relay =====================
[11:13:33] ================== pf_relay (14 subtests) ==================
[11:13:33] [PASSED] pf_rejects_guc2pf_too_short
[11:13:33] [PASSED] pf_rejects_guc2pf_too_long
[11:13:33] [PASSED] pf_rejects_guc2pf_no_payload
[11:13:33] [PASSED] pf_fails_no_payload
[11:13:33] [PASSED] pf_fails_bad_origin
[11:13:33] [PASSED] pf_fails_bad_type
[11:13:33] [PASSED] pf_txn_reports_error
[11:13:33] [PASSED] pf_txn_sends_pf2guc
[11:13:33] [PASSED] pf_sends_pf2guc
[11:13:33] [SKIPPED] pf_loopback_nop
[11:13:33] [SKIPPED] pf_loopback_echo
[11:13:33] [SKIPPED] pf_loopback_fail
[11:13:33] [SKIPPED] pf_loopback_busy
[11:13:33] [SKIPPED] pf_loopback_retry
[11:13:33] ==================== [PASSED] pf_relay =====================
[11:13:33] ================== vf_relay (3 subtests) ===================
[11:13:33] [PASSED] vf_rejects_guc2vf_too_short
[11:13:33] [PASSED] vf_rejects_guc2vf_too_long
[11:13:33] [PASSED] vf_rejects_guc2vf_no_payload
[11:13:33] ==================== [PASSED] vf_relay =====================
[11:13:33] ================= pf_service (11 subtests) =================
[11:13:33] [PASSED] pf_negotiate_any
[11:13:33] [PASSED] pf_negotiate_base_match
[11:13:33] [PASSED] pf_negotiate_base_newer
[11:13:33] [PASSED] pf_negotiate_base_next
[11:13:33] [SKIPPED] pf_negotiate_base_older
[11:13:33] [PASSED] pf_negotiate_base_prev
[11:13:33] [PASSED] pf_negotiate_latest_match
[11:13:33] [PASSED] pf_negotiate_latest_newer
[11:13:33] [PASSED] pf_negotiate_latest_next
[11:13:33] [SKIPPED] pf_negotiate_latest_older
[11:13:33] [SKIPPED] pf_negotiate_latest_prev
[11:13:33] =================== [PASSED] pf_service ====================
[11:13:33] ===================== lmtt (1 subtest) =====================
[11:13:33] ======================== test_ops  =========================
[11:13:33] [PASSED] 2-level
[11:13:33] [PASSED] multi-level
[11:13:33] ==================== [PASSED] test_ops =====================
[11:13:33] ====================== [PASSED] lmtt =======================
[11:13:33] =================== xe_mocs (2 subtests) ===================
[11:13:33] ================ xe_live_mocs_kernel_kunit  ================
[11:13:33] =========== [SKIPPED] xe_live_mocs_kernel_kunit ============
[11:13:33] ================ xe_live_mocs_reset_kunit  =================
[11:13:33] ============ [SKIPPED] xe_live_mocs_reset_kunit ============
[11:13:33] ==================== [SKIPPED] xe_mocs =====================
[11:13:33] ================= xe_migrate (2 subtests) ==================
[11:13:33] ================= xe_migrate_sanity_kunit  =================
[11:13:33] ============ [SKIPPED] xe_migrate_sanity_kunit =============
[11:13:33] ================== xe_validate_ccs_kunit  ==================
[11:13:33] ============= [SKIPPED] xe_validate_ccs_kunit ==============
[11:13:33] =================== [SKIPPED] xe_migrate ===================
[11:13:33] ================== xe_dma_buf (1 subtest) ==================
[11:13:33] ==================== xe_dma_buf_kunit  =====================
[11:13:33] ================ [SKIPPED] xe_dma_buf_kunit ================
[11:13:33] =================== [SKIPPED] xe_dma_buf ===================
[11:13:33] ================= xe_bo_shrink (1 subtest) =================
[11:13:33] =================== xe_bo_shrink_kunit  ====================
[11:13:33] =============== [SKIPPED] xe_bo_shrink_kunit ===============
[11:13:33] ================== [SKIPPED] xe_bo_shrink ==================
[11:13:33] ==================== xe_bo (2 subtests) ====================
[11:13:33] ================== xe_ccs_migrate_kunit  ===================
[11:13:33] ============== [SKIPPED] xe_ccs_migrate_kunit ==============
[11:13:33] ==================== xe_bo_evict_kunit  ====================
[11:13:33] =============== [SKIPPED] xe_bo_evict_kunit ================
[11:13:33] ===================== [SKIPPED] xe_bo ======================
[11:13:33] ==================== args (11 subtests) ====================
[11:13:33] [PASSED] count_args_test
[11:13:33] [PASSED] call_args_example
[11:13:33] [PASSED] call_args_test
[11:13:33] [PASSED] drop_first_arg_example
[11:13:33] [PASSED] drop_first_arg_test
[11:13:33] [PASSED] first_arg_example
[11:13:33] [PASSED] first_arg_test
[11:13:33] [PASSED] last_arg_example
[11:13:33] [PASSED] last_arg_test
[11:13:33] [PASSED] pick_arg_example
[11:13:33] [PASSED] sep_comma_example
[11:13:33] ====================== [PASSED] args =======================
[11:13:33] =================== xe_pci (2 subtests) ====================
[11:13:33] [PASSED] xe_gmdid_graphics_ip
[11:13:33] [PASSED] xe_gmdid_media_ip
[11:13:33] ===================== [PASSED] xe_pci ======================
[11:13:33] =================== xe_rtp (2 subtests) ====================
[11:13:33] =============== xe_rtp_process_to_sr_tests  ================
[11:13:33] [PASSED] coalesce-same-reg
[11:13:33] [PASSED] no-match-no-add
[11:13:33] [PASSED] match-or
[11:13:33] [PASSED] match-or-xfail
[11:13:33] [PASSED] no-match-no-add-multiple-rules
[11:13:33] [PASSED] two-regs-two-entries
[11:13:33] [PASSED] clr-one-set-other
[11:13:33] [PASSED] set-field
[11:13:33] [PASSED] conflict-duplicate
[11:13:33] [PASSED] conflict-not-disjoint
stty: 'standard input': Inappropriate ioctl for device
[11:13:33] [PASSED] conflict-reg-type
[11:13:33] =========== [PASSED] xe_rtp_process_to_sr_tests ============
[11:13:33] ================== xe_rtp_process_tests  ===================
[11:13:33] [PASSED] active1
[11:13:33] [PASSED] active2
[11:13:33] [PASSED] active-inactive
[11:13:33] [PASSED] inactive-active
[11:13:33] [PASSED] inactive-1st_or_active-inactive
[11:13:33] [PASSED] inactive-2nd_or_active-inactive
[11:13:33] [PASSED] inactive-last_or_active-inactive
[11:13:33] [PASSED] inactive-no_or_active-inactive
[11:13:33] ============== [PASSED] xe_rtp_process_tests ===============
[11:13:33] ===================== [PASSED] xe_rtp ======================
[11:13:33] ==================== xe_wa (1 subtest) =====================
[11:13:33] ======================== xe_wa_gt  =========================
[11:13:33] [PASSED] TIGERLAKE (B0)
[11:13:33] [PASSED] DG1 (A0)
[11:13:33] [PASSED] DG1 (B0)
[11:13:33] [PASSED] ALDERLAKE_S (A0)
[11:13:33] [PASSED] ALDERLAKE_S (B0)
[11:13:33] [PASSED] ALDERLAKE_S (C0)
[11:13:33] [PASSED] ALDERLAKE_S (D0)
[11:13:33] [PASSED] ALDERLAKE_P (A0)
[11:13:33] [PASSED] ALDERLAKE_P (B0)
[11:13:33] [PASSED] ALDERLAKE_P (C0)
[11:13:33] [PASSED] ALDERLAKE_S_RPLS (D0)
[11:13:33] [PASSED] ALDERLAKE_P_RPLU (E0)
[11:13:33] [PASSED] DG2_G10 (C0)
[11:13:33] [PASSED] DG2_G11 (B1)
[11:13:33] [PASSED] DG2_G12 (A1)
[11:13:33] [PASSED] METEORLAKE (g:A0, m:A0)
[11:13:33] [PASSED] METEORLAKE (g:A0, m:A0)
[11:13:33] [PASSED] METEORLAKE (g:A0, m:A0)
[11:13:33] [PASSED] LUNARLAKE (g:A0, m:A0)
[11:13:33] [PASSED] LUNARLAKE (g:B0, m:A0)
[11:13:33] [PASSED] BATTLEMAGE (g:A0, m:A1)
[11:13:33] ==================== [PASSED] xe_wa_gt =====================
[11:13:33] ====================== [PASSED] xe_wa ======================
[11:13:33] ============================================================
[11:13:33] Testing complete. Ran 133 tests: passed: 117, skipped: 16
[11:13:33] Elapsed time: 31.628s total, 4.226s configuring, 27.035s building, 0.312s running

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

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

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



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

* ✓ Xe.CI.BAT: success for drm/xe/vf: Post-migration recovery of queues and jobs (rev5)
  2025-06-12 10:24 [PATCH v5 0/8] drm/xe/vf: Post-migration recovery of queues and jobs Tomasz Lis
                   ` (8 preceding siblings ...)
  2025-06-12 11:14 ` ✓ CI.KUnit: success for drm/xe/vf: Post-migration recovery of queues and jobs (rev5) Patchwork
@ 2025-06-12 11:50 ` Patchwork
  2025-06-12 23:22 ` ✓ Xe.CI.Full: " Patchwork
  10 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2025-06-12 11:50 UTC (permalink / raw)
  To: Tomasz Lis; +Cc: intel-xe

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

== Series Details ==

Series: drm/xe/vf: Post-migration recovery of queues and jobs (rev5)
URL   : https://patchwork.freedesktop.org/series/148982/
State : success

== Summary ==

CI Bug Log - changes from xe-3237-75238c32deae15ee4120b42a5be556ec36807a84_BAT -> xe-pw-148982v5_BAT
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  

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

  No changes in participating hosts


Changes
-------

  No changes found


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

  * IGT: IGT_8405 -> IGT_8406
  * Linux: xe-3237-75238c32deae15ee4120b42a5be556ec36807a84 -> xe-pw-148982v5

  IGT_8405: 8405
  IGT_8406: 12d7c99650c85e479571b6db2c392408be474c88 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
  xe-3237-75238c32deae15ee4120b42a5be556ec36807a84: 75238c32deae15ee4120b42a5be556ec36807a84
  xe-pw-148982v5: 148982v5

== Logs ==

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

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

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

* ✓ Xe.CI.Full: success for drm/xe/vf: Post-migration recovery of queues and jobs (rev5)
  2025-06-12 10:24 [PATCH v5 0/8] drm/xe/vf: Post-migration recovery of queues and jobs Tomasz Lis
                   ` (9 preceding siblings ...)
  2025-06-12 11:50 ` ✓ Xe.CI.BAT: " Patchwork
@ 2025-06-12 23:22 ` Patchwork
  10 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2025-06-12 23:22 UTC (permalink / raw)
  To: Tomasz Lis; +Cc: intel-xe

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

== Series Details ==

Series: drm/xe/vf: Post-migration recovery of queues and jobs (rev5)
URL   : https://patchwork.freedesktop.org/series/148982/
State : success

== Summary ==

CI Bug Log - changes from xe-3237-75238c32deae15ee4120b42a5be556ec36807a84_FULL -> xe-pw-148982v5_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-148982v5_FULL that come from known issues:

### IGT changes ###

#### Issues hit ####

  * igt@intel_hwmon@hwmon-write:
    - shard-adlp:         NOTRUN -> [SKIP][1] ([Intel XE#1125]) +1 other test skip
   [1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-1/igt@intel_hwmon@hwmon-write.html

  * igt@kms_async_flips@async-flip-with-page-flip-events-linear-atomic@pipe-c-edp-1:
    - shard-lnl:          [PASS][2] -> [FAIL][3] ([Intel XE#911]) +3 other tests fail
   [2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-lnl-2/igt@kms_async_flips@async-flip-with-page-flip-events-linear-atomic@pipe-c-edp-1.html
   [3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-1/igt@kms_async_flips@async-flip-with-page-flip-events-linear-atomic@pipe-c-edp-1.html

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

  * igt@kms_async_flips@test-cursor:
    - shard-lnl:          NOTRUN -> [SKIP][5] ([Intel XE#664])
   [5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-3/igt@kms_async_flips@test-cursor.html

  * igt@kms_big_fb@4-tiled-addfb:
    - shard-adlp:         NOTRUN -> [SKIP][6] ([Intel XE#619])
   [6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-3/igt@kms_big_fb@4-tiled-addfb.html

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

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

  * igt@kms_big_fb@linear-32bpp-rotate-270:
    - shard-bmg:          NOTRUN -> [SKIP][9] ([Intel XE#2327]) +2 other tests skip
   [9]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-1/igt@kms_big_fb@linear-32bpp-rotate-270.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][10] ([Intel XE#316]) +1 other test skip
   [10]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-464/igt@kms_big_fb@linear-32bpp-rotate-270.html
    - shard-lnl:          NOTRUN -> [SKIP][11] ([Intel XE#1407]) +1 other test skip
   [11]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-7/igt@kms_big_fb@linear-32bpp-rotate-270.html

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

  * igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180-async-flip:
    - shard-adlp:         [PASS][13] -> [DMESG-FAIL][14] ([Intel XE#4543]) +6 other tests dmesg-fail
   [13]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-6/igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html
   [14]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-9/igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html

  * igt@kms_big_fb@y-tiled-16bpp-rotate-90:
    - shard-dg2-set2:     NOTRUN -> [SKIP][15] ([Intel XE#1124]) +5 other tests skip
   [15]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-434/igt@kms_big_fb@y-tiled-16bpp-rotate-90.html
    - shard-lnl:          NOTRUN -> [SKIP][16] ([Intel XE#1124]) +2 other tests skip
   [16]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-8/igt@kms_big_fb@y-tiled-16bpp-rotate-90.html

  * igt@kms_big_fb@y-tiled-64bpp-rotate-270:
    - shard-bmg:          NOTRUN -> [SKIP][17] ([Intel XE#1124]) +3 other tests skip
   [17]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-4/igt@kms_big_fb@y-tiled-64bpp-rotate-270.html

  * igt@kms_big_fb@y-tiled-64bpp-rotate-90:
    - shard-adlp:         NOTRUN -> [SKIP][18] ([Intel XE#316]) +3 other tests skip
   [18]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-4/igt@kms_big_fb@y-tiled-64bpp-rotate-90.html

  * igt@kms_bw@connected-linear-tiling-3-displays-2560x1440p:
    - shard-bmg:          NOTRUN -> [SKIP][19] ([Intel XE#2314] / [Intel XE#2894]) +1 other test skip
   [19]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-1/igt@kms_bw@connected-linear-tiling-3-displays-2560x1440p.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][20] ([Intel XE#2191])
   [20]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-436/igt@kms_bw@connected-linear-tiling-3-displays-2560x1440p.html
    - shard-lnl:          NOTRUN -> [SKIP][21] ([Intel XE#2191])
   [21]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-3/igt@kms_bw@connected-linear-tiling-3-displays-2560x1440p.html

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

  * igt@kms_bw@linear-tiling-1-displays-3840x2160p:
    - shard-adlp:         NOTRUN -> [SKIP][23] ([Intel XE#367])
   [23]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-8/igt@kms_bw@linear-tiling-1-displays-3840x2160p.html

  * igt@kms_bw@linear-tiling-3-displays-3840x2160p:
    - shard-dg2-set2:     NOTRUN -> [SKIP][24] ([Intel XE#367]) +2 other tests skip
   [24]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-434/igt@kms_bw@linear-tiling-3-displays-3840x2160p.html

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

  * igt@kms_ccs@bad-pixel-format-4-tiled-dg2-mc-ccs:
    - shard-adlp:         NOTRUN -> [SKIP][27] ([Intel XE#455] / [Intel XE#787]) +45 other tests skip
   [27]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-4/igt@kms_ccs@bad-pixel-format-4-tiled-dg2-mc-ccs.html

  * igt@kms_ccs@bad-pixel-format-4-tiled-dg2-rc-ccs-cc@pipe-a-hdmi-a-1:
    - shard-adlp:         NOTRUN -> [SKIP][28] ([Intel XE#787]) +68 other tests skip
   [28]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-9/igt@kms_ccs@bad-pixel-format-4-tiled-dg2-rc-ccs-cc@pipe-a-hdmi-a-1.html

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

  * igt@kms_ccs@crc-primary-basic-4-tiled-dg2-rc-ccs-cc:
    - shard-bmg:          NOTRUN -> [SKIP][30] ([Intel XE#2887]) +3 other tests skip
   [30]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-5/igt@kms_ccs@crc-primary-basic-4-tiled-dg2-rc-ccs-cc.html
    - shard-lnl:          NOTRUN -> [SKIP][31] ([Intel XE#2887])
   [31]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-3/igt@kms_ccs@crc-primary-basic-4-tiled-dg2-rc-ccs-cc.html

  * igt@kms_ccs@crc-primary-basic-4-tiled-lnl-ccs:
    - shard-adlp:         NOTRUN -> [SKIP][32] ([Intel XE#2907])
   [32]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-3/igt@kms_ccs@crc-primary-basic-4-tiled-lnl-ccs.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc:
    - shard-bmg:          NOTRUN -> [SKIP][33] ([Intel XE#3432]) +1 other test skip
   [33]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-1/igt@kms_ccs@crc-primary-suspend-4-tiled-mtl-rc-ccs-cc.html

  * igt@kms_ccs@crc-sprite-planes-basic-4-tiled-lnl-ccs@pipe-b-dp-2:
    - shard-bmg:          NOTRUN -> [SKIP][34] ([Intel XE#2652] / [Intel XE#787]) +7 other tests skip
   [34]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-4/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-lnl-ccs@pipe-b-dp-2.html

  * igt@kms_ccs@crc-sprite-planes-basic-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-2:
    - shard-dg2-set2:     NOTRUN -> [SKIP][35] ([Intel XE#787]) +118 other tests skip
   [35]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-432/igt@kms_ccs@crc-sprite-planes-basic-4-tiled-mtl-mc-ccs@pipe-a-hdmi-a-2.html

  * igt@kms_chamelium_color@ctm-0-75:
    - shard-dg2-set2:     NOTRUN -> [SKIP][36] ([Intel XE#306]) +1 other test skip
   [36]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-433/igt@kms_chamelium_color@ctm-0-75.html

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

  * igt@kms_chamelium_color@degamma:
    - shard-adlp:         NOTRUN -> [SKIP][38] ([Intel XE#306]) +1 other test skip
   [38]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-8/igt@kms_chamelium_color@degamma.html

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

  * igt@kms_chamelium_hpd@vga-hpd-fast:
    - shard-bmg:          NOTRUN -> [SKIP][40] ([Intel XE#2252]) +2 other tests skip
   [40]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-1/igt@kms_chamelium_hpd@vga-hpd-fast.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][41] ([Intel XE#373]) +3 other tests skip
   [41]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-464/igt@kms_chamelium_hpd@vga-hpd-fast.html

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

  * igt@kms_content_protection@atomic@pipe-a-dp-2:
    - shard-dg2-set2:     NOTRUN -> [FAIL][43] ([Intel XE#1178])
   [43]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-432/igt@kms_content_protection@atomic@pipe-a-dp-2.html

  * igt@kms_content_protection@content-type-change:
    - shard-lnl:          NOTRUN -> [SKIP][44] ([Intel XE#5176])
   [44]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-6/igt@kms_content_protection@content-type-change.html

  * igt@kms_content_protection@dp-mst-lic-type-1:
    - shard-bmg:          NOTRUN -> [SKIP][45] ([Intel XE#2390])
   [45]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-6/igt@kms_content_protection@dp-mst-lic-type-1.html

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

  * igt@kms_cursor_crc@cursor-onscreen-512x512:
    - shard-dg2-set2:     NOTRUN -> [SKIP][47] ([Intel XE#308]) +1 other test skip
   [47]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-432/igt@kms_cursor_crc@cursor-onscreen-512x512.html

  * igt@kms_cursor_crc@cursor-random-32x32:
    - shard-adlp:         NOTRUN -> [SKIP][48] ([Intel XE#455]) +31 other tests skip
   [48]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-1/igt@kms_cursor_crc@cursor-random-32x32.html

  * igt@kms_cursor_crc@cursor-random-max-size:
    - shard-bmg:          NOTRUN -> [SKIP][49] ([Intel XE#2320])
   [49]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-1/igt@kms_cursor_crc@cursor-random-max-size.html

  * igt@kms_cursor_crc@cursor-sliding-512x512:
    - shard-adlp:         NOTRUN -> [SKIP][50] ([Intel XE#308]) +3 other tests skip
   [50]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-3/igt@kms_cursor_crc@cursor-sliding-512x512.html

  * igt@kms_cursor_legacy@2x-long-nonblocking-modeset-vs-cursor-atomic:
    - shard-bmg:          [PASS][51] -> [SKIP][52] ([Intel XE#2291])
   [51]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-7/igt@kms_cursor_legacy@2x-long-nonblocking-modeset-vs-cursor-atomic.html
   [52]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-6/igt@kms_cursor_legacy@2x-long-nonblocking-modeset-vs-cursor-atomic.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions:
    - shard-bmg:          NOTRUN -> [SKIP][53] ([Intel XE#2291])
   [53]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-6/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions.html

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

  * igt@kms_dither@fb-8bpc-vs-panel-6bpc:
    - shard-bmg:          [PASS][55] -> [SKIP][56] ([Intel XE#1340])
   [55]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-2/igt@kms_dither@fb-8bpc-vs-panel-6bpc.html
   [56]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-6/igt@kms_dither@fb-8bpc-vs-panel-6bpc.html

  * igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-2:
    - shard-dg2-set2:     NOTRUN -> [SKIP][57] ([Intel XE#4494])
   [57]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-432/igt@kms_dither@fb-8bpc-vs-panel-6bpc@pipe-a-hdmi-a-2.html

  * igt@kms_dp_link_training@non-uhbr-sst:
    - shard-adlp:         NOTRUN -> [SKIP][58] ([Intel XE#4354]) +1 other test skip
   [58]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-3/igt@kms_dp_link_training@non-uhbr-sst.html

  * igt@kms_dp_link_training@uhbr-sst:
    - shard-adlp:         NOTRUN -> [SKIP][59] ([Intel XE#4356])
   [59]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-3/igt@kms_dp_link_training@uhbr-sst.html

  * igt@kms_dsc@dsc-with-bpc-formats:
    - shard-bmg:          NOTRUN -> [SKIP][60] ([Intel XE#2244])
   [60]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-1/igt@kms_dsc@dsc-with-bpc-formats.html

  * igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-dirtyfb-tests:
    - shard-dg2-set2:     NOTRUN -> [SKIP][61] ([Intel XE#4422])
   [61]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-463/igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-dirtyfb-tests.html

  * igt@kms_fbcon_fbt@psr:
    - shard-dg2-set2:     NOTRUN -> [SKIP][62] ([Intel XE#776])
   [62]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-435/igt@kms_fbcon_fbt@psr.html

  * igt@kms_fbcon_fbt@psr-suspend:
    - shard-adlp:         NOTRUN -> [SKIP][63] ([Intel XE#776]) +1 other test skip
   [63]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-2/igt@kms_fbcon_fbt@psr-suspend.html

  * igt@kms_feature_discovery@display-2x:
    - shard-adlp:         NOTRUN -> [SKIP][64] ([Intel XE#702])
   [64]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-1/igt@kms_feature_discovery@display-2x.html

  * igt@kms_feature_discovery@dp-mst:
    - shard-adlp:         NOTRUN -> [SKIP][65] ([Intel XE#1137])
   [65]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-3/igt@kms_feature_discovery@dp-mst.html

  * igt@kms_flip@2x-flip-vs-dpms-on-nop:
    - shard-bmg:          [PASS][66] -> [SKIP][67] ([Intel XE#2316]) +2 other tests skip
   [66]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-2/igt@kms_flip@2x-flip-vs-dpms-on-nop.html
   [67]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-6/igt@kms_flip@2x-flip-vs-dpms-on-nop.html

  * igt@kms_flip@2x-flip-vs-expired-vblank@ab-dp2-hdmi-a3:
    - shard-bmg:          [PASS][68] -> [FAIL][69] ([Intel XE#3321]) +5 other tests fail
   [68]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-5/igt@kms_flip@2x-flip-vs-expired-vblank@ab-dp2-hdmi-a3.html
   [69]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-1/igt@kms_flip@2x-flip-vs-expired-vblank@ab-dp2-hdmi-a3.html

  * igt@kms_flip@2x-flip-vs-expired-vblank@ab-hdmi-a6-dp4:
    - shard-dg2-set2:     NOTRUN -> [FAIL][70] ([Intel XE#301]) +5 other tests fail
   [70]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-436/igt@kms_flip@2x-flip-vs-expired-vblank@ab-hdmi-a6-dp4.html

  * igt@kms_flip@2x-plain-flip-fb-recreate:
    - shard-lnl:          NOTRUN -> [SKIP][71] ([Intel XE#1421]) +2 other tests skip
   [71]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-4/igt@kms_flip@2x-plain-flip-fb-recreate.html

  * igt@kms_flip@2x-single-buffer-flip-vs-dpms-off-vs-modeset:
    - shard-adlp:         NOTRUN -> [SKIP][72] ([Intel XE#310]) +9 other tests skip
   [72]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-6/igt@kms_flip@2x-single-buffer-flip-vs-dpms-off-vs-modeset.html

  * igt@kms_flip@flip-vs-blocking-wf-vblank:
    - shard-dg2-set2:     [PASS][73] -> [FAIL][74] ([Intel XE#886])
   [73]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-dg2-436/igt@kms_flip@flip-vs-blocking-wf-vblank.html
   [74]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-432/igt@kms_flip@flip-vs-blocking-wf-vblank.html

  * igt@kms_flip@flip-vs-blocking-wf-vblank@a-hdmi-a2:
    - shard-dg2-set2:     NOTRUN -> [FAIL][75] ([Intel XE#886])
   [75]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-432/igt@kms_flip@flip-vs-blocking-wf-vblank@a-hdmi-a2.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a6:
    - shard-dg2-set2:     [PASS][76] -> [FAIL][77] ([Intel XE#301]) +1 other test fail
   [76]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-dg2-436/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a6.html
   [77]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-463/igt@kms_flip@flip-vs-expired-vblank-interruptible@a-hdmi-a6.html

  * igt@kms_flip@flip-vs-suspend@d-dp4:
    - shard-dg2-set2:     NOTRUN -> [INCOMPLETE][78] ([Intel XE#2049] / [Intel XE#2597])
   [78]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-463/igt@kms_flip@flip-vs-suspend@d-dp4.html

  * igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-upscaling:
    - shard-bmg:          NOTRUN -> [SKIP][79] ([Intel XE#2293] / [Intel XE#2380]) +3 other tests skip
   [79]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-4/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-upscaling.html
    - shard-lnl:          NOTRUN -> [SKIP][80] ([Intel XE#1401] / [Intel XE#1745]) +1 other test skip
   [80]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-3/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-upscaling.html

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

  * igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-upscaling@pipe-a-valid-mode:
    - shard-bmg:          NOTRUN -> [SKIP][82] ([Intel XE#2293]) +3 other tests skip
   [82]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-4/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-32bpp-yftileccs-upscaling@pipe-a-valid-mode.html

  * igt@kms_frontbuffer_tracking@drrs-1p-offscren-pri-indfb-draw-blt:
    - shard-bmg:          NOTRUN -> [SKIP][83] ([Intel XE#2311]) +11 other tests skip
   [83]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-3/igt@kms_frontbuffer_tracking@drrs-1p-offscren-pri-indfb-draw-blt.html

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

  * igt@kms_frontbuffer_tracking@drrs-2p-pri-indfb-multidraw:
    - shard-adlp:         NOTRUN -> [SKIP][85] ([Intel XE#656]) +57 other tests skip
   [85]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-3/igt@kms_frontbuffer_tracking@drrs-2p-pri-indfb-multidraw.html

  * igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-onoff:
    - shard-dg2-set2:     NOTRUN -> [SKIP][86] ([Intel XE#651]) +18 other tests skip
   [86]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-432/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-cur-indfb-onoff.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-mmap-wc:
    - shard-lnl:          NOTRUN -> [SKIP][87] ([Intel XE#656]) +8 other tests skip
   [87]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-3/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@fbc-tiling-4:
    - shard-adlp:         NOTRUN -> [SKIP][88] ([Intel XE#1151]) +1 other test skip
   [88]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-6/igt@kms_frontbuffer_tracking@fbc-tiling-4.html
    - shard-bmg:          NOTRUN -> [SKIP][89] ([Intel XE#4141]) +5 other tests skip
   [89]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-1/igt@kms_frontbuffer_tracking@fbc-tiling-4.html

  * igt@kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-pri-shrfb-draw-render:
    - shard-lnl:          NOTRUN -> [SKIP][90] ([Intel XE#651]) +2 other tests skip
   [90]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-7/igt@kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-pri-shrfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-draw-mmap-wc:
    - shard-bmg:          NOTRUN -> [SKIP][91] ([Intel XE#2312]) +1 other test skip
   [91]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-6/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@fbcpsr-slowdraw:
    - shard-dg2-set2:     NOTRUN -> [SKIP][92] ([Intel XE#653]) +19 other tests skip
   [92]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-463/igt@kms_frontbuffer_tracking@fbcpsr-slowdraw.html

  * igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-mmap-wc:
    - shard-adlp:         NOTRUN -> [SKIP][93] ([Intel XE#653]) +19 other tests skip
   [93]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-3/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-mmap-wc.html

  * igt@kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-fullscreen:
    - shard-bmg:          NOTRUN -> [SKIP][94] ([Intel XE#2313]) +13 other tests skip
   [94]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-4/igt@kms_frontbuffer_tracking@psr-2p-primscrn-spr-indfb-fullscreen.html

  * igt@kms_joiner@invalid-modeset-big-joiner:
    - shard-adlp:         NOTRUN -> [SKIP][95] ([Intel XE#346])
   [95]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-4/igt@kms_joiner@invalid-modeset-big-joiner.html

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

  * igt@kms_joiner@invalid-modeset-ultra-joiner:
    - shard-adlp:         NOTRUN -> [SKIP][97] ([Intel XE#2927])
   [97]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-1/igt@kms_joiner@invalid-modeset-ultra-joiner.html

  * igt@kms_plane_multiple@2x-tiling-4:
    - shard-adlp:         NOTRUN -> [SKIP][98] ([Intel XE#4596])
   [98]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-6/igt@kms_plane_multiple@2x-tiling-4.html

  * igt@kms_pm_dc@dc3co-vpb-simulation:
    - shard-adlp:         NOTRUN -> [SKIP][99] ([Intel XE#1122]) +1 other test skip
   [99]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-6/igt@kms_pm_dc@dc3co-vpb-simulation.html

  * igt@kms_pm_dc@dc5-psr:
    - shard-adlp:         NOTRUN -> [SKIP][100] ([Intel XE#1129])
   [100]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-4/igt@kms_pm_dc@dc5-psr.html

  * igt@kms_pm_dc@dc5-retention-flops:
    - shard-dg2-set2:     NOTRUN -> [SKIP][101] ([Intel XE#3309])
   [101]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-436/igt@kms_pm_dc@dc5-retention-flops.html

  * igt@kms_pm_dc@dc6-dpms:
    - shard-adlp:         NOTRUN -> [DMESG-FAIL][102] ([Intel XE#2953] / [Intel XE#4173])
   [102]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-8/igt@kms_pm_dc@dc6-dpms.html

  * igt@kms_pm_dc@dc6-psr:
    - shard-lnl:          [PASS][103] -> [FAIL][104] ([Intel XE#718])
   [103]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-lnl-3/igt@kms_pm_dc@dc6-psr.html
   [104]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-7/igt@kms_pm_dc@dc6-psr.html

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

  * igt@kms_pm_rpm@dpms-mode-unset-non-lpsp:
    - shard-lnl:          NOTRUN -> [SKIP][106] ([Intel XE#1439] / [Intel XE#836])
   [106]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-6/igt@kms_pm_rpm@dpms-mode-unset-non-lpsp.html

  * igt@kms_pm_rpm@modeset-lpsp:
    - shard-adlp:         NOTRUN -> [DMESG-WARN][107] ([Intel XE#2953] / [Intel XE#4173])
   [107]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-8/igt@kms_pm_rpm@modeset-lpsp.html

  * igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-sf:
    - shard-adlp:         NOTRUN -> [SKIP][108] ([Intel XE#1489]) +9 other tests skip
   [108]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-8/igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-sf.html
    - shard-bmg:          NOTRUN -> [SKIP][109] ([Intel XE#1489]) +2 other tests skip
   [109]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-2/igt@kms_psr2_sf@fbc-psr2-cursor-plane-move-continuous-sf.html

  * igt@kms_psr2_sf@pr-cursor-plane-move-continuous-sf:
    - shard-dg2-set2:     NOTRUN -> [SKIP][110] ([Intel XE#1489]) +5 other tests skip
   [110]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-435/igt@kms_psr2_sf@pr-cursor-plane-move-continuous-sf.html

  * igt@kms_psr2_sf@pr-cursor-plane-update-sf:
    - shard-lnl:          NOTRUN -> [SKIP][111] ([Intel XE#2893])
   [111]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-7/igt@kms_psr2_sf@pr-cursor-plane-update-sf.html

  * igt@kms_psr2_su@page_flip-xrgb8888:
    - shard-bmg:          NOTRUN -> [SKIP][112] ([Intel XE#2387])
   [112]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-3/igt@kms_psr2_su@page_flip-xrgb8888.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][113] ([Intel XE#1122])
   [113]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-434/igt@kms_psr2_su@page_flip-xrgb8888.html
    - shard-lnl:          NOTRUN -> [SKIP][114] ([Intel XE#1128])
   [114]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-4/igt@kms_psr2_su@page_flip-xrgb8888.html

  * igt@kms_psr@fbc-psr2-basic:
    - shard-lnl:          NOTRUN -> [SKIP][115] ([Intel XE#1406])
   [115]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-7/igt@kms_psr@fbc-psr2-basic.html

  * igt@kms_psr@fbc-psr2-basic@edp-1:
    - shard-lnl:          NOTRUN -> [SKIP][116] ([Intel XE#4609])
   [116]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-7/igt@kms_psr@fbc-psr2-basic@edp-1.html

  * igt@kms_psr@fbc-psr2-cursor-blt:
    - shard-adlp:         NOTRUN -> [SKIP][117] ([Intel XE#2850] / [Intel XE#929]) +14 other tests skip
   [117]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-8/igt@kms_psr@fbc-psr2-cursor-blt.html
    - shard-bmg:          NOTRUN -> [SKIP][118] ([Intel XE#2234] / [Intel XE#2850]) +7 other tests skip
   [118]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-2/igt@kms_psr@fbc-psr2-cursor-blt.html

  * igt@kms_psr@psr2-sprite-plane-move:
    - shard-dg2-set2:     NOTRUN -> [SKIP][119] ([Intel XE#2850] / [Intel XE#929]) +7 other tests skip
   [119]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-435/igt@kms_psr@psr2-sprite-plane-move.html

  * igt@kms_psr_stress_test@invalidate-primary-flip-overlay:
    - shard-adlp:         NOTRUN -> [SKIP][120] ([Intel XE#2939]) +1 other test skip
   [120]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-9/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html

  * igt@kms_rotation_crc@bad-tiling:
    - shard-lnl:          NOTRUN -> [SKIP][121] ([Intel XE#3414] / [Intel XE#3904])
   [121]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-3/igt@kms_rotation_crc@bad-tiling.html

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

  * igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0:
    - shard-bmg:          NOTRUN -> [SKIP][123] ([Intel XE#2330])
   [123]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-2/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][124] ([Intel XE#1127])
   [124]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-434/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0.html

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

  * igt@kms_rotation_crc@sprite-rotation-90:
    - shard-bmg:          NOTRUN -> [SKIP][126] ([Intel XE#3414] / [Intel XE#3904])
   [126]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-1/igt@kms_rotation_crc@sprite-rotation-90.html

  * igt@kms_setmode@basic@pipe-a-hdmi-a-6:
    - shard-dg2-set2:     NOTRUN -> [FAIL][127] ([Intel XE#2883]) +4 other tests fail
   [127]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-436/igt@kms_setmode@basic@pipe-a-hdmi-a-6.html

  * igt@kms_tiled_display@basic-test-pattern:
    - shard-adlp:         NOTRUN -> [SKIP][128] ([Intel XE#362])
   [128]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-9/igt@kms_tiled_display@basic-test-pattern.html
    - shard-dg2-set2:     NOTRUN -> [FAIL][129] ([Intel XE#1729])
   [129]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-435/igt@kms_tiled_display@basic-test-pattern.html

  * igt@kms_tv_load_detect@load-detect:
    - shard-dg2-set2:     NOTRUN -> [SKIP][130] ([Intel XE#330])
   [130]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-463/igt@kms_tv_load_detect@load-detect.html

  * igt@kms_vblank@ts-continuation-suspend:
    - shard-adlp:         [PASS][131] -> [DMESG-WARN][132] ([Intel XE#2953] / [Intel XE#4173]) +8 other tests dmesg-warn
   [131]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-3/igt@kms_vblank@ts-continuation-suspend.html
   [132]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-8/igt@kms_vblank@ts-continuation-suspend.html

  * igt@kms_vrr@flipline:
    - shard-dg2-set2:     NOTRUN -> [SKIP][133] ([Intel XE#455]) +17 other tests skip
   [133]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-463/igt@kms_vrr@flipline.html

  * igt@xe_ccs@large-ctrl-surf-copy:
    - shard-adlp:         NOTRUN -> [SKIP][134] ([Intel XE#3576])
   [134]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-4/igt@xe_ccs@large-ctrl-surf-copy.html

  * igt@xe_ccs@suspend-resume:
    - shard-adlp:         NOTRUN -> [SKIP][135] ([Intel XE#455] / [Intel XE#488]) +3 other tests skip
   [135]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-4/igt@xe_ccs@suspend-resume.html

  * igt@xe_compute@ccs-mode-compute-kernel:
    - shard-adlp:         NOTRUN -> [SKIP][136] ([Intel XE#1447])
   [136]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-8/igt@xe_compute@ccs-mode-compute-kernel.html

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

  * igt@xe_copy_basic@mem-set-linear-0xfffe:
    - shard-dg2-set2:     NOTRUN -> [SKIP][138] ([Intel XE#1126])
   [138]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-435/igt@xe_copy_basic@mem-set-linear-0xfffe.html

  * igt@xe_eu_stall@invalid-sampling-rate:
    - shard-adlp:         NOTRUN -> [SKIP][139] ([Intel XE#4497]) +1 other test skip
   [139]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-8/igt@xe_eu_stall@invalid-sampling-rate.html

  * igt@xe_eudebug@basic-vm-access-parameters:
    - shard-dg2-set2:     NOTRUN -> [SKIP][140] ([Intel XE#4837]) +7 other tests skip
   [140]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-435/igt@xe_eudebug@basic-vm-access-parameters.html

  * igt@xe_eudebug@basic-vm-bind-vm-destroy-discovery:
    - shard-bmg:          NOTRUN -> [SKIP][141] ([Intel XE#4837]) +3 other tests skip
   [141]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-2/igt@xe_eudebug@basic-vm-bind-vm-destroy-discovery.html

  * igt@xe_eudebug_online@pagefault-read:
    - shard-lnl:          NOTRUN -> [SKIP][142] ([Intel XE#4837])
   [142]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-7/igt@xe_eudebug_online@pagefault-read.html

  * igt@xe_eudebug_online@set-breakpoint-sigint-debugger:
    - shard-adlp:         NOTRUN -> [SKIP][143] ([Intel XE#4837]) +17 other tests skip
   [143]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-8/igt@xe_eudebug_online@set-breakpoint-sigint-debugger.html

  * igt@xe_evict@evict-small-cm:
    - shard-adlp:         NOTRUN -> [SKIP][144] ([Intel XE#261] / [Intel XE#688]) +4 other tests skip
   [144]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-1/igt@xe_evict@evict-small-cm.html

  * igt@xe_evict_ccs@evict-overcommit-parallel-instantfree-samefd:
    - shard-adlp:         NOTRUN -> [SKIP][145] ([Intel XE#688]) +1 other test skip
   [145]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-4/igt@xe_evict_ccs@evict-overcommit-parallel-instantfree-samefd.html

  * igt@xe_evict_ccs@evict-overcommit-parallel-nofree-samefd:
    - shard-lnl:          NOTRUN -> [SKIP][146] ([Intel XE#688])
   [146]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-7/igt@xe_evict_ccs@evict-overcommit-parallel-nofree-samefd.html

  * igt@xe_exec_basic@multigpu-many-execqueues-many-vm-null-defer-bind:
    - shard-adlp:         NOTRUN -> [SKIP][147] ([Intel XE#1392]) +14 other tests skip
   [147]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-2/igt@xe_exec_basic@multigpu-many-execqueues-many-vm-null-defer-bind.html
    - shard-bmg:          NOTRUN -> [SKIP][148] ([Intel XE#2322]) +3 other tests skip
   [148]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-1/igt@xe_exec_basic@multigpu-many-execqueues-many-vm-null-defer-bind.html

  * igt@xe_exec_basic@multigpu-no-exec-bindexecqueue-rebind:
    - shard-lnl:          NOTRUN -> [SKIP][149] ([Intel XE#1392])
   [149]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-8/igt@xe_exec_basic@multigpu-no-exec-bindexecqueue-rebind.html

  * igt@xe_exec_basic@multigpu-no-exec-userptr-invalidate-race:
    - shard-dg2-set2:     NOTRUN -> [SKIP][150] ([Intel XE#1392]) +1 other test skip
   [150]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-432/igt@xe_exec_basic@multigpu-no-exec-userptr-invalidate-race.html

  * igt@xe_exec_basic@multigpu-once-basic-defer-bind:
    - shard-dg2-set2:     [PASS][151] -> [INCOMPLETE][152] ([Intel XE#4842])
   [151]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-dg2-464/igt@xe_exec_basic@multigpu-once-basic-defer-bind.html
   [152]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-464/igt@xe_exec_basic@multigpu-once-basic-defer-bind.html

  * igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate-race:
    - shard-dg2-set2:     [PASS][153] -> [SKIP][154] ([Intel XE#1392]) +2 other tests skip
   [153]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-dg2-434/igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate-race.html
   [154]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-432/igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate-race.html

  * igt@xe_exec_fault_mode@many-bindexecqueue-userptr-imm:
    - shard-adlp:         NOTRUN -> [SKIP][155] ([Intel XE#288]) +43 other tests skip
   [155]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-2/igt@xe_exec_fault_mode@many-bindexecqueue-userptr-imm.html

  * igt@xe_exec_fault_mode@once-bindexecqueue-imm:
    - shard-dg2-set2:     NOTRUN -> [SKIP][156] ([Intel XE#288]) +18 other tests skip
   [156]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-435/igt@xe_exec_fault_mode@once-bindexecqueue-imm.html

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

  * igt@xe_exec_reset@cm-cat-error:
    - shard-adlp:         NOTRUN -> [DMESG-FAIL][158] ([Intel XE#3868])
   [158]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-6/igt@xe_exec_reset@cm-cat-error.html

  * igt@xe_exec_system_allocator@process-many-stride-mmap-huge:
    - shard-lnl:          NOTRUN -> [SKIP][159] ([Intel XE#4943]) +4 other tests skip
   [159]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-1/igt@xe_exec_system_allocator@process-many-stride-mmap-huge.html

  * igt@xe_exec_system_allocator@threads-shared-vm-many-execqueues-new-race-nomemset:
    - shard-dg2-set2:     NOTRUN -> [SKIP][160] ([Intel XE#4915]) +164 other tests skip
   [160]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-433/igt@xe_exec_system_allocator@threads-shared-vm-many-execqueues-new-race-nomemset.html

  * igt@xe_exec_system_allocator@threads-shared-vm-many-large-execqueues-new-bo-map-nomemset:
    - shard-lnl:          [PASS][161] -> [FAIL][162] ([Intel XE#5018])
   [161]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-lnl-3/igt@xe_exec_system_allocator@threads-shared-vm-many-large-execqueues-new-bo-map-nomemset.html
   [162]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-2/igt@xe_exec_system_allocator@threads-shared-vm-many-large-execqueues-new-bo-map-nomemset.html

  * igt@xe_exec_system_allocator@threads-shared-vm-many-new-race:
    - shard-bmg:          [PASS][163] -> [INCOMPLETE][164] ([Intel XE#2594])
   [163]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-3/igt@xe_exec_system_allocator@threads-shared-vm-many-new-race.html
   [164]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-8/igt@xe_exec_system_allocator@threads-shared-vm-many-new-race.html

  * igt@xe_exec_system_allocator@twice-large-new-race:
    - shard-adlp:         NOTRUN -> [SKIP][165] ([Intel XE#4915]) +343 other tests skip
   [165]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-2/igt@xe_exec_system_allocator@twice-large-new-race.html

  * igt@xe_exec_system_allocator@twice-mmap-huge:
    - shard-bmg:          NOTRUN -> [SKIP][166] ([Intel XE#4943]) +9 other tests skip
   [166]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-6/igt@xe_exec_system_allocator@twice-mmap-huge.html

  * igt@xe_media_fill@media-fill:
    - shard-bmg:          NOTRUN -> [SKIP][167] ([Intel XE#2459] / [Intel XE#2596])
   [167]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-8/igt@xe_media_fill@media-fill.html

  * igt@xe_mmap@pci-membarrier-bad-object:
    - shard-adlp:         NOTRUN -> [SKIP][168] ([Intel XE#5100]) +1 other test skip
   [168]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-2/igt@xe_mmap@pci-membarrier-bad-object.html

  * igt@xe_mmap@vram:
    - shard-adlp:         NOTRUN -> [SKIP][169] ([Intel XE#1008])
   [169]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-2/igt@xe_mmap@vram.html

  * igt@xe_module_load@force-load:
    - shard-dg2-set2:     NOTRUN -> [SKIP][170] ([Intel XE#378])
   [170]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-435/igt@xe_module_load@force-load.html

  * igt@xe_oa@non-system-wide-paranoid:
    - shard-dg2-set2:     NOTRUN -> [SKIP][171] ([Intel XE#2541] / [Intel XE#3573]) +1 other test skip
   [171]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-433/igt@xe_oa@non-system-wide-paranoid.html

  * igt@xe_oa@privileged-forked-access-vaddr:
    - shard-adlp:         NOTRUN -> [SKIP][172] ([Intel XE#2541] / [Intel XE#3573]) +10 other tests skip
   [172]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-2/igt@xe_oa@privileged-forked-access-vaddr.html

  * igt@xe_oa@syncs-syncobj-cfg:
    - shard-adlp:         NOTRUN -> [SKIP][173] ([Intel XE#2541] / [Intel XE#3573] / [Intel XE#4501])
   [173]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-8/igt@xe_oa@syncs-syncobj-cfg.html

  * igt@xe_peer2peer@read:
    - shard-adlp:         NOTRUN -> [SKIP][174] ([Intel XE#1061])
   [174]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-1/igt@xe_peer2peer@read.html

  * igt@xe_peer2peer@write:
    - shard-bmg:          NOTRUN -> [SKIP][175] ([Intel XE#2427])
   [175]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-4/igt@xe_peer2peer@write.html

  * igt@xe_peer2peer@write@write-gpua-vram01-gpub-system-p2p:
    - shard-dg2-set2:     NOTRUN -> [FAIL][176] ([Intel XE#1173]) +1 other test fail
   [176]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-433/igt@xe_peer2peer@write@write-gpua-vram01-gpub-system-p2p.html

  * igt@xe_pm@d3cold-multiple-execs:
    - shard-adlp:         NOTRUN -> [SKIP][177] ([Intel XE#2284] / [Intel XE#366]) +1 other test skip
   [177]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-3/igt@xe_pm@d3cold-multiple-execs.html

  * igt@xe_pm@s4-basic-exec:
    - shard-adlp:         [PASS][178] -> [ABORT][179] ([Intel XE#1794])
   [178]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-1/igt@xe_pm@s4-basic-exec.html
   [179]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-9/igt@xe_pm@s4-basic-exec.html

  * igt@xe_pm@s4-exec-after:
    - shard-adlp:         NOTRUN -> [ABORT][180] ([Intel XE#1794])
   [180]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-9/igt@xe_pm@s4-exec-after.html
    - shard-lnl:          [PASS][181] -> [ABORT][182] ([Intel XE#1794])
   [181]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-lnl-3/igt@xe_pm@s4-exec-after.html
   [182]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-2/igt@xe_pm@s4-exec-after.html

  * igt@xe_pm_residency@cpg-basic:
    - shard-lnl:          NOTRUN -> [SKIP][183] ([Intel XE#584]) +1 other test skip
   [183]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-7/igt@xe_pm_residency@cpg-basic.html

  * igt@xe_pm_residency@gt-c6-freeze:
    - shard-dg2-set2:     [PASS][184] -> [INCOMPLETE][185] ([Intel XE#3088]) +1 other test incomplete
   [184]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-dg2-434/igt@xe_pm_residency@gt-c6-freeze.html
   [185]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-432/igt@xe_pm_residency@gt-c6-freeze.html

  * igt@xe_pmu@all-fn-engine-activity-load:
    - shard-dg2-set2:     NOTRUN -> [SKIP][186] ([Intel XE#4650])
   [186]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-433/igt@xe_pmu@all-fn-engine-activity-load.html

  * igt@xe_pmu@engine-activity-most-load-idle:
    - shard-adlp:         NOTRUN -> [ABORT][187] ([Intel XE#5214]) +1 other test abort
   [187]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-6/igt@xe_pmu@engine-activity-most-load-idle.html

  * igt@xe_pxp@pxp-stale-bo-exec-post-suspend:
    - shard-adlp:         NOTRUN -> [SKIP][188] ([Intel XE#4733]) +1 other test skip
   [188]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-1/igt@xe_pxp@pxp-stale-bo-exec-post-suspend.html

  * igt@xe_pxp@pxp-stale-queue-post-suspend:
    - shard-dg2-set2:     NOTRUN -> [SKIP][189] ([Intel XE#4733]) +1 other test skip
   [189]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-463/igt@xe_pxp@pxp-stale-queue-post-suspend.html

  * igt@xe_query@multigpu-query-gt-list:
    - shard-bmg:          NOTRUN -> [SKIP][190] ([Intel XE#944]) +2 other tests skip
   [190]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-7/igt@xe_query@multigpu-query-gt-list.html

  * igt@xe_query@multigpu-query-invalid-extension:
    - shard-adlp:         NOTRUN -> [SKIP][191] ([Intel XE#944]) +1 other test skip
   [191]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-2/igt@xe_query@multigpu-query-invalid-extension.html
    - shard-dg2-set2:     NOTRUN -> [SKIP][192] ([Intel XE#944])
   [192]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-432/igt@xe_query@multigpu-query-invalid-extension.html

  * igt@xe_query@multigpu-query-uc-fw-version-guc:
    - shard-lnl:          NOTRUN -> [SKIP][193] ([Intel XE#944])
   [193]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-4/igt@xe_query@multigpu-query-uc-fw-version-guc.html

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

  * igt@xe_spin_batch@spin-mem-copy:
    - shard-adlp:         NOTRUN -> [SKIP][195] ([Intel XE#4821])
   [195]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-8/igt@xe_spin_batch@spin-mem-copy.html

  * igt@xe_sriov_auto_provisioning@selfconfig-reprovision-increase-numvfs:
    - shard-dg2-set2:     NOTRUN -> [SKIP][196] ([Intel XE#4130])
   [196]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-434/igt@xe_sriov_auto_provisioning@selfconfig-reprovision-increase-numvfs.html

  
#### Possible fixes ####

  * igt@kms_async_flips@async-flip-suspend-resume:
    - shard-adlp:         [DMESG-WARN][197] ([Intel XE#4543]) -> [PASS][198] +2 other tests pass
   [197]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-3/igt@kms_async_flips@async-flip-suspend-resume.html
   [198]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-4/igt@kms_async_flips@async-flip-suspend-resume.html

  * igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-async-flip:
    - shard-adlp:         [DMESG-FAIL][199] ([Intel XE#4543]) -> [PASS][200] +1 other test pass
   [199]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-9/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html
   [200]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-1/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-async-flip.html

  * igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs:
    - shard-bmg:          [INCOMPLETE][201] ([Intel XE#3862]) -> [PASS][202] +1 other test pass
   [201]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-8/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html
   [202]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-1/igt@kms_ccs@crc-primary-suspend-4-tiled-bmg-ccs.html

  * igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc:
    - shard-dg2-set2:     [INCOMPLETE][203] ([Intel XE#1727] / [Intel XE#3113] / [Intel XE#4212] / [Intel XE#4522]) -> [PASS][204] +1 other test pass
   [203]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-dg2-464/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc.html
   [204]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-435/igt@kms_ccs@random-ccs-data-4-tiled-dg2-rc-ccs-cc.html

  * igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size:
    - shard-bmg:          [SKIP][205] ([Intel XE#2291]) -> [PASS][206] +4 other tests pass
   [205]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-6/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size.html
   [206]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-2/igt@kms_cursor_legacy@cursorb-vs-flipa-atomic-transitions-varying-size.html

  * igt@kms_flip@2x-blocking-wf_vblank:
    - shard-bmg:          [SKIP][207] ([Intel XE#2316]) -> [PASS][208] +4 other tests pass
   [207]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-6/igt@kms_flip@2x-blocking-wf_vblank.html
   [208]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-2/igt@kms_flip@2x-blocking-wf_vblank.html

  * igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@ab-hdmi-a6-dp4:
    - shard-dg2-set2:     [FAIL][209] ([Intel XE#301] / [Intel XE#3321]) -> [PASS][210] +1 other test pass
   [209]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-dg2-436/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@ab-hdmi-a6-dp4.html
   [210]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-434/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@ab-hdmi-a6-dp4.html

  * igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@bd-dp2-hdmi-a3:
    - shard-bmg:          [FAIL][211] ([Intel XE#3321]) -> [PASS][212] +2 other tests pass
   [211]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-2/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@bd-dp2-hdmi-a3.html
   [212]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-4/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@bd-dp2-hdmi-a3.html

  * igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@cd-hdmi-a6-dp4:
    - shard-dg2-set2:     [FAIL][213] ([Intel XE#301]) -> [PASS][214] +8 other tests pass
   [213]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-dg2-436/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@cd-hdmi-a6-dp4.html
   [214]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-434/igt@kms_flip@2x-flip-vs-expired-vblank-interruptible@cd-hdmi-a6-dp4.html

  * igt@kms_flip@flip-vs-suspend@a-dp4:
    - shard-dg2-set2:     [INCOMPLETE][215] ([Intel XE#2049] / [Intel XE#2597]) -> [PASS][216]
   [215]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-dg2-435/igt@kms_flip@flip-vs-suspend@a-dp4.html
   [216]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-463/igt@kms_flip@flip-vs-suspend@a-dp4.html

  * igt@kms_flip@plain-flip-fb-recreate-interruptible@b-edp1:
    - shard-lnl:          [FAIL][217] ([Intel XE#886]) -> [PASS][218] +4 other tests pass
   [217]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-lnl-2/igt@kms_flip@plain-flip-fb-recreate-interruptible@b-edp1.html
   [218]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-7/igt@kms_flip@plain-flip-fb-recreate-interruptible@b-edp1.html

  * igt@kms_flip@wf_vblank-ts-check:
    - shard-bmg:          [FAIL][219] ([Intel XE#2882]) -> [PASS][220] +1 other test pass
   [219]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-3/igt@kms_flip@wf_vblank-ts-check.html
   [220]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-1/igt@kms_flip@wf_vblank-ts-check.html

  * igt@kms_hdr@static-toggle-suspend:
    - shard-bmg:          [SKIP][221] ([Intel XE#1503]) -> [PASS][222]
   [221]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-6/igt@kms_hdr@static-toggle-suspend.html
   [222]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-1/igt@kms_hdr@static-toggle-suspend.html

  * igt@kms_lease@implicit-plane-lease:
    - shard-adlp:         [DMESG-WARN][223] ([Intel XE#2953] / [Intel XE#4173]) -> [PASS][224]
   [223]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-8/igt@kms_lease@implicit-plane-lease.html
   [224]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-2/igt@kms_lease@implicit-plane-lease.html

  * igt@kms_plane_cursor@viewport:
    - shard-dg2-set2:     [FAIL][225] ([Intel XE#616]) -> [PASS][226] +1 other test pass
   [225]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-dg2-436/igt@kms_plane_cursor@viewport.html
   [226]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-436/igt@kms_plane_cursor@viewport.html

  * igt@kms_pm_dc@dc5-psr:
    - shard-lnl:          [FAIL][227] ([Intel XE#718]) -> [PASS][228]
   [227]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-lnl-3/igt@kms_pm_dc@dc5-psr.html
   [228]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-4/igt@kms_pm_dc@dc5-psr.html

  * igt@kms_pm_rpm@modeset-stress-extra-wait:
    - shard-dg2-set2:     [INCOMPLETE][229] ([Intel XE#4842]) -> [PASS][230]
   [229]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-dg2-463/igt@kms_pm_rpm@modeset-stress-extra-wait.html
   [230]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-435/igt@kms_pm_rpm@modeset-stress-extra-wait.html

  * igt@xe_exec_basic@multigpu-once-bindexecqueue:
    - shard-dg2-set2:     [SKIP][231] ([Intel XE#1392]) -> [PASS][232] +4 other tests pass
   [231]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-dg2-432/igt@xe_exec_basic@multigpu-once-bindexecqueue.html
   [232]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-434/igt@xe_exec_basic@multigpu-once-bindexecqueue.html

  * igt@xe_exec_system_allocator@threads-shared-vm-many-large-new-bo-map-nomemset:
    - shard-bmg:          [FAIL][233] -> [PASS][234]
   [233]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-2/igt@xe_exec_system_allocator@threads-shared-vm-many-large-new-bo-map-nomemset.html
   [234]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-4/igt@xe_exec_system_allocator@threads-shared-vm-many-large-new-bo-map-nomemset.html

  * igt@xe_module_load@load:
    - shard-adlp:         ([PASS][235], [PASS][236], [PASS][237], [PASS][238], [PASS][239], [PASS][240], [PASS][241], [PASS][242], [PASS][243], [PASS][244], [PASS][245], [PASS][246], [PASS][247], [PASS][248], [PASS][249], [PASS][250], [PASS][251], [PASS][252], [PASS][253], [SKIP][254], [PASS][255], [PASS][256], [PASS][257], [PASS][258], [PASS][259], [PASS][260]) ([Intel XE#378]) -> ([PASS][261], [PASS][262], [PASS][263], [PASS][264], [PASS][265], [PASS][266], [PASS][267], [PASS][268], [PASS][269], [PASS][270], [PASS][271], [PASS][272], [PASS][273], [PASS][274], [PASS][275], [PASS][276], [PASS][277], [PASS][278], [PASS][279], [PASS][280], [PASS][281], [PASS][282], [PASS][283], [PASS][284], [PASS][285])
   [235]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-6/igt@xe_module_load@load.html
   [236]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-6/igt@xe_module_load@load.html
   [237]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-6/igt@xe_module_load@load.html
   [238]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-4/igt@xe_module_load@load.html
   [239]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-4/igt@xe_module_load@load.html
   [240]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-4/igt@xe_module_load@load.html
   [241]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-4/igt@xe_module_load@load.html
   [242]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-2/igt@xe_module_load@load.html
   [243]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-2/igt@xe_module_load@load.html
   [244]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-2/igt@xe_module_load@load.html
   [245]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-2/igt@xe_module_load@load.html
   [246]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-9/igt@xe_module_load@load.html
   [247]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-9/igt@xe_module_load@load.html
   [248]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-9/igt@xe_module_load@load.html
   [249]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-9/igt@xe_module_load@load.html
   [250]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-3/igt@xe_module_load@load.html
   [251]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-3/igt@xe_module_load@load.html
   [252]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-1/igt@xe_module_load@load.html
   [253]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-1/igt@xe_module_load@load.html
   [254]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-1/igt@xe_module_load@load.html
   [255]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-1/igt@xe_module_load@load.html
   [256]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-3/igt@xe_module_load@load.html
   [257]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-3/igt@xe_module_load@load.html
   [258]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-8/igt@xe_module_load@load.html
   [259]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-8/igt@xe_module_load@load.html
   [260]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-adlp-8/igt@xe_module_load@load.html
   [261]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-1/igt@xe_module_load@load.html
   [262]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-2/igt@xe_module_load@load.html
   [263]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-9/igt@xe_module_load@load.html
   [264]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-1/igt@xe_module_load@load.html
   [265]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-8/igt@xe_module_load@load.html
   [266]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-8/igt@xe_module_load@load.html
   [267]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-4/igt@xe_module_load@load.html
   [268]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-6/igt@xe_module_load@load.html
   [269]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-6/igt@xe_module_load@load.html
   [270]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-2/igt@xe_module_load@load.html
   [271]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-9/igt@xe_module_load@load.html
   [272]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-3/igt@xe_module_load@load.html
   [273]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-2/igt@xe_module_load@load.html
   [274]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-1/igt@xe_module_load@load.html
   [275]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-9/igt@xe_module_load@load.html
   [276]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-3/igt@xe_module_load@load.html
   [277]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-3/igt@xe_module_load@load.html
   [278]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-3/igt@xe_module_load@load.html
   [279]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-4/igt@xe_module_load@load.html
   [280]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-6/igt@xe_module_load@load.html
   [281]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-8/igt@xe_module_load@load.html
   [282]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-6/igt@xe_module_load@load.html
   [283]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-4/igt@xe_module_load@load.html
   [284]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-2/igt@xe_module_load@load.html
   [285]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-adlp-1/igt@xe_module_load@load.html

  * igt@xe_pm@s4-basic-exec:
    - shard-lnl:          [ABORT][286] ([Intel XE#1794]) -> [PASS][287]
   [286]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-lnl-2/igt@xe_pm@s4-basic-exec.html
   [287]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-lnl-8/igt@xe_pm@s4-basic-exec.html

  * igt@xe_pmu@gt-frequency:
    - shard-dg2-set2:     [FAIL][288] ([Intel XE#4819]) -> [PASS][289] +1 other test pass
   [288]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-dg2-434/igt@xe_pmu@gt-frequency.html
   [289]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-436/igt@xe_pmu@gt-frequency.html

  
#### Warnings ####

  * igt@kms_content_protection@atomic-dpms:
    - shard-bmg:          [SKIP][290] ([Intel XE#2341]) -> [FAIL][291] ([Intel XE#1178])
   [290]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-6/igt@kms_content_protection@atomic-dpms.html
   [291]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-4/igt@kms_content_protection@atomic-dpms.html

  * igt@kms_content_protection@legacy:
    - shard-bmg:          [FAIL][292] ([Intel XE#1178]) -> [SKIP][293] ([Intel XE#2341])
   [292]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-3/igt@kms_content_protection@legacy.html
   [293]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-6/igt@kms_content_protection@legacy.html

  * igt@kms_frontbuffer_tracking@drrs-2p-primscrn-indfb-pgflip-blt:
    - shard-bmg:          [SKIP][294] ([Intel XE#2311]) -> [SKIP][295] ([Intel XE#2312]) +3 other tests skip
   [294]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-5/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-indfb-pgflip-blt.html
   [295]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-6/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-indfb-pgflip-blt.html

  * igt@kms_frontbuffer_tracking@drrs-2p-primscrn-shrfb-msflip-blt:
    - shard-bmg:          [SKIP][296] ([Intel XE#2312]) -> [SKIP][297] ([Intel XE#2311]) +13 other tests skip
   [296]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-6/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-shrfb-msflip-blt.html
   [297]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-2/igt@kms_frontbuffer_tracking@drrs-2p-primscrn-shrfb-msflip-blt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-blt:
    - shard-bmg:          [SKIP][298] ([Intel XE#4141]) -> [SKIP][299] ([Intel XE#2312])
   [298]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-2/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-blt.html
   [299]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-6/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-render:
    - shard-bmg:          [SKIP][300] ([Intel XE#2312]) -> [SKIP][301] ([Intel XE#4141]) +3 other tests skip
   [300]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-6/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-render.html
   [301]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-1/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-spr-indfb-draw-render.html

  * igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-plflip-blt:
    - shard-bmg:          [SKIP][302] ([Intel XE#2312]) -> [SKIP][303] ([Intel XE#2313]) +12 other tests skip
   [302]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-6/igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-plflip-blt.html
   [303]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-1/igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-plflip-blt.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-indfb-msflip-blt:
    - shard-bmg:          [SKIP][304] ([Intel XE#2313]) -> [SKIP][305] ([Intel XE#2312]) +5 other tests skip
   [304]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-8/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-indfb-msflip-blt.html
   [305]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-6/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-indfb-msflip-blt.html

  * igt@kms_plane_multiple@2x-tiling-y:
    - shard-bmg:          [SKIP][306] ([Intel XE#4596]) -> [SKIP][307] ([Intel XE#5021])
   [306]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-bmg-6/igt@kms_plane_multiple@2x-tiling-y.html
   [307]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-bmg-2/igt@kms_plane_multiple@2x-tiling-y.html

  * igt@kms_tiled_display@basic-test-pattern-with-chamelium:
    - shard-dg2-set2:     [SKIP][308] ([Intel XE#362]) -> [SKIP][309] ([Intel XE#1500])
   [308]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-3237-75238c32deae15ee4120b42a5be556ec36807a84/shard-dg2-463/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html
   [309]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-148982v5/shard-dg2-434/igt@kms_tiled_display@basic-test-pattern-with-chamelium.html

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

  [Intel XE#1008]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1008
  [Intel XE#1061]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1061
  [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#1128]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1128
  [Intel XE#1129]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1129
  [Intel XE#1137]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1137
  [Intel XE#1151]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1151
  [Intel XE#1173]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1173
  [Intel XE#1178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1178
  [Intel XE#1340]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1340
  [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#1439]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1439
  [Intel XE#1447]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1447
  [Intel XE#1489]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1489
  [Intel XE#1500]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1500
  [Intel XE#1503]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1503
  [Intel XE#1512]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1512
  [Intel XE#1727]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1727
  [Intel XE#1729]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1729
  [Intel XE#1745]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1745
  [Intel XE#1794]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1794
  [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#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#2291]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2291
  [Intel XE#2293]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2293
  [Intel XE#2311]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2311
  [Intel XE#2312]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2312
  [Intel XE#2313]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2313
  [Intel XE#2314]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2314
  [Intel XE#2316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2316
  [Intel XE#2320]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2320
  [Intel XE#2322]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2322
  [Intel XE#2325]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2325
  [Intel XE#2327]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2327
  [Intel XE#2330]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2330
  [Intel XE#2341]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2341
  [Intel XE#2380]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2380
  [Intel XE#2387]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2387
  [Intel XE#2390]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2390
  [Intel XE#2427]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2427
  [Intel XE#2459]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2459
  [Intel XE#2505]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2505
  [Intel XE#2541]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2541
  [Intel XE#2594]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2594
  [Intel XE#2596]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2596
  [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#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850
  [Intel XE#288]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/288
  [Intel XE#2882]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2882
  [Intel XE#2883]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2883
  [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#2925]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2925
  [Intel XE#2927]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2927
  [Intel XE#2939]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2939
  [Intel XE#2953]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2953
  [Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301
  [Intel XE#306]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/306
  [Intel XE#307]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/307
  [Intel XE#308]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/308
  [Intel XE#3088]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3088
  [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#330]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/330
  [Intel XE#3309]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3309
  [Intel XE#3321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3321
  [Intel XE#3414]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3414
  [Intel XE#3432]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3432
  [Intel XE#346]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/346
  [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#3884]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3884
  [Intel XE#3904]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3904
  [Intel XE#4130]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4130
  [Intel XE#4141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4141
  [Intel XE#4173]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4173
  [Intel XE#4212]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4212
  [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#4422]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4422
  [Intel XE#4494]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4494
  [Intel XE#4497]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4497
  [Intel XE#4501]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4501
  [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#4609]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4609
  [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#4819]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4819
  [Intel XE#4821]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4821
  [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#4943]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4943
  [Intel XE#5018]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5018
  [Intel XE#5021]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5021
  [Intel XE#5100]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5100
  [Intel XE#5172]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5172
  [Intel XE#5176]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5176
  [Intel XE#5191]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5191
  [Intel XE#5214]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5214
  [Intel XE#584]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/584
  [Intel XE#607]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/607
  [Intel XE#616]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/616
  [Intel XE#619]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/619
  [Intel XE#651]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/651
  [Intel XE#653]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/653
  [Intel XE#656]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/656
  [Intel XE#664]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/664
  [Intel XE#688]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/688
  [Intel XE#702]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/702
  [Intel XE#718]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/718
  [Intel XE#776]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/776
  [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#886]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/886
  [Intel XE#911]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/911
  [Intel XE#929]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/929
  [Intel XE#944]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/944


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

  * IGT: IGT_8405 -> IGT_8406
  * Linux: xe-3237-75238c32deae15ee4120b42a5be556ec36807a84 -> xe-pw-148982v5

  IGT_8405: 8405
  IGT_8406: 12d7c99650c85e479571b6db2c392408be474c88 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
  xe-3237-75238c32deae15ee4120b42a5be556ec36807a84: 75238c32deae15ee4120b42a5be556ec36807a84
  xe-pw-148982v5: 148982v5

== Logs ==

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

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

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

* Re: [PATCH v5 8/8] drm/xe/vf: Refresh utilization buffer during migration recovery
  2025-06-12 10:24 ` [PATCH v5 8/8] drm/xe/vf: Refresh utilization buffer during migration recovery Tomasz Lis
@ 2025-06-13 18:05   ` Lis, Tomasz
  0 siblings, 0 replies; 13+ messages in thread
From: Lis, Tomasz @ 2025-06-13 18:05 UTC (permalink / raw)
  To: intel-xe

This patch is now invalid as it uses setup_wa_bb() which calls kmalloc().

We try to avoid kmalloc() during post-migration recovery, so will have 
to develop a different way of fixing WA BB.

Currently calling that would lead to a deadlock possibility (and even if 
we've solved that somehow, possibility for fixups apply to fail).

-Tomasz

On 12.06.2025 12:24, Tomasz Lis wrote:
> The WA buffer we use to capture context utilization contains GGTT
> references. This means its instructions have to be either fixed or
> re-emitted during VF post-migration recovery.
>
> This patch adds re-emitting content of the utilization WA BB during
> the recovery.
>
> Signed-off-by: Tomasz Lis <tomasz.lis@intel.com>
> Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
> Cc: Michal Winiarski <michal.winiarski@intel.com>
> ---
>   drivers/gpu/drm/xe/xe_exec_queue.c |  1 +
>   drivers/gpu/drm/xe/xe_lrc.c        | 10 ++++++++--
>   drivers/gpu/drm/xe/xe_lrc.h        |  1 +
>   3 files changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/xe/xe_exec_queue.c b/drivers/gpu/drm/xe/xe_exec_queue.c
> index d5ffb550bde7..dc2bcda1d636 100644
> --- a/drivers/gpu/drm/xe/xe_exec_queue.c
> +++ b/drivers/gpu/drm/xe/xe_exec_queue.c
> @@ -1041,6 +1041,7 @@ void xe_exec_queue_contexts_hwsp_rebase(struct xe_exec_queue *q)
>   	for (i = 0; i < q->width; ++i) {
>   		xe_lrc_update_memirq_regs_with_address(q->lrc[i], q->hwe);
>   		xe_lrc_update_hwctx_regs_with_address(q->lrc[i]);
> +		xe_lrc_setup_wa_bb(q->lrc[i], q->hwe);
>   	}
>   }
>   
> diff --git a/drivers/gpu/drm/xe/xe_lrc.c b/drivers/gpu/drm/xe/xe_lrc.c
> index 8b08c416ccf0..9f3331779dae 100644
> --- a/drivers/gpu/drm/xe/xe_lrc.c
> +++ b/drivers/gpu/drm/xe/xe_lrc.c
> @@ -1011,7 +1011,13 @@ struct wa_bb_setup {
>   			 u32 *batch, size_t max_size);
>   };
>   
> -static int setup_wa_bb(struct xe_lrc *lrc, struct xe_hw_engine *hwe)
> +/**
> + * xe_lrc_setup_wa_bb - Execute all wa bb setup callbacks.
> + * @lrc: the &xe_lrc struct instance
> + * @hwe: the &xe_hw_engine struct instance
> + * Return: 0 on success, negative error code on failure
> + */
> +int xe_lrc_setup_wa_bb(struct xe_lrc *lrc, struct xe_hw_engine *hwe)
>   {
>   	const size_t max_size = lrc->bb_per_ctx_bo->size;
>   	static const struct wa_bb_setup funcs[] = {
> @@ -1218,7 +1224,7 @@ static int xe_lrc_init(struct xe_lrc *lrc, struct xe_hw_engine *hwe,
>   	map = __xe_lrc_start_seqno_map(lrc);
>   	xe_map_write32(lrc_to_xe(lrc), &map, lrc->fence_ctx.next_seqno - 1);
>   
> -	err = setup_wa_bb(lrc, hwe);
> +	err = xe_lrc_setup_wa_bb(lrc, hwe);
>   	if (err)
>   		goto err_lrc_finish;
>   
> diff --git a/drivers/gpu/drm/xe/xe_lrc.h b/drivers/gpu/drm/xe/xe_lrc.h
> index 801a6b943f6e..8f05620fc0f0 100644
> --- a/drivers/gpu/drm/xe/xe_lrc.h
> +++ b/drivers/gpu/drm/xe/xe_lrc.h
> @@ -127,6 +127,7 @@ u32 xe_lrc_ctx_timestamp_udw_ggtt_addr(struct xe_lrc *lrc);
>   u64 xe_lrc_ctx_timestamp(struct xe_lrc *lrc);
>   u32 xe_lrc_ctx_job_timestamp_ggtt_addr(struct xe_lrc *lrc);
>   u32 xe_lrc_ctx_job_timestamp(struct xe_lrc *lrc);
> +int xe_lrc_setup_wa_bb(struct xe_lrc *lrc, struct xe_hw_engine *hwe);
>   
>   /**
>    * xe_lrc_update_timestamp - readout LRC timestamp and update cached value

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

end of thread, other threads:[~2025-06-13 18:05 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-06-12 10:24 [PATCH v5 0/8] drm/xe/vf: Post-migration recovery of queues and jobs Tomasz Lis
2025-06-12 10:24 ` [PATCH v5 1/8] drm/xe/sa: Avoid caching GGTT address within the manager Tomasz Lis
2025-06-12 10:24 ` [PATCH v5 2/8] drm/xe/vf: Skip fixups on migration before getting GGTT info Tomasz Lis
2025-06-12 10:24 ` [PATCH v5 3/8] drm/xe/vf: Pause submissions during RESFIX fixups Tomasz Lis
2025-06-12 10:24 ` [PATCH v5 4/8] drm/xe: Block reset while recovering from VF migration Tomasz Lis
2025-06-12 10:24 ` [PATCH v5 5/8] drm/xe/vf: Rebase HWSP of all contexts after migration Tomasz Lis
2025-06-12 10:24 ` [PATCH v5 6/8] drm/xe/vf: Rebase MEMIRQ structures for " Tomasz Lis
2025-06-12 10:24 ` [PATCH v5 7/8] drm/xe/vf: Post migration, repopulate ring area for pending request Tomasz Lis
2025-06-12 10:24 ` [PATCH v5 8/8] drm/xe/vf: Refresh utilization buffer during migration recovery Tomasz Lis
2025-06-13 18:05   ` Lis, Tomasz
2025-06-12 11:14 ` ✓ CI.KUnit: success for drm/xe/vf: Post-migration recovery of queues and jobs (rev5) Patchwork
2025-06-12 11:50 ` ✓ Xe.CI.BAT: " Patchwork
2025-06-12 23:22 ` ✓ 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