* [PATCH V14 0/9] Add memory page offlining support
@ 2026-07-30 10:11 Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 1/9] drm/xe: Link VRAM object with gpu buddy Tejas Upadhyay
` (12 more replies)
0 siblings, 13 replies; 17+ messages in thread
From: Tejas Upadhyay @ 2026-07-30 10:11 UTC (permalink / raw)
To: intel-xe; +Cc: himal.prasad.ghimiray, Tejas Upadhyay
This functionality represents a significant step in making
the xe driver gracefully handle hardware memory degradation.
By integrating with the DRM Buddy allocator, the driver
can permanently "carve out" faulty memory so it isn't reused
by subsequent allocations.
This series adds memory page offlining support with following:
1. Link VRAM object with gpu buddy
2. Link and track ttm BO's with physical addresses
3. Link LRC BO and its execution Queue
4. Extend BO purge to handle vram pages as well
5. Handle the generated physical address error by reserving addresses 4K page
6. Add configfs for vram bad page reservation policy
7. Sysfs entry to provide statistics of bad gpu vram pages for user info
8. Expose ban reason in EXEC_QUEUE_GET_PROPERTY_BAN
9. drm/xe: Add fault-inject based VRAM page offline injection
v14:
- Solve sashiko reviews
- Remove SOFT->HARD offline patch, decision is taken based on -EEXIST
- Dump gpu buddy allocated patch dropped
v13:
- Add fault inject and remove standlone debugfs
v12:
- Fix Sashiko review comments
v11:
- Add BAN reason for UMD to know about offlining
- Add support for soft offline mode
- Rebase and remove dummy lockdep annotation patch, as it merged from upstream
v10:
- Remove RFC
v7:
- Improve debugfs warning messages
- Use scope_guard for locking(MattB)
- Adapt addition of queue member of LRC BO(MattB)
- Extend and use xe_ttm_bo_purge API for vram pages(MattB)
- Handle dma_buf_map requests for native and remote(MattB)
- Address if in never initialized block, set block to NULL
- Add lockdep in gpu buddy (MattB)
- Correct allocated_addr_to_block logic (MattA)
V6:
- Add more specific tests to noncritical bo sections
- Handle smooth exit of user created exec queues
- Break code and make purge specific static API
V5:
- Sysfs "max_pages" addition
- Reset block->private NULL post purge
- Remove wedge, return -EIO to system controller will initiate reset
- Add debugfs tests to trigger different test scenarios manually and via igt
- Rename addr_to_tbo to addr_to_block and move under gpu/buddy.c
V4: API reworks, add configfs for policy reservation and apply config everywhere
V3: use res_to_mem_region to avoid use of block->private (MattA)
V2:
- some fixes and clean up on errors
- Added xe_vram_addr_to_region helper to avoid other use of block->private(MattB)
IGT tests for testing this via injecting simple single address and
duplicate address fault to unit test functionality:
https://patchwork.freedesktop.org/patch/740601/
Tejas Upadhyay (9):
drm/xe: Link VRAM object with gpu buddy
[DO NOT MERGE]drm/gpu: Add gpu_buddy_allocated_addr_to_block helper
drm/xe: Link LRC BO and its execution Queue
drm/xe: Extend BO purge to handle vram pages as well
drm/xe: Handle physical memory address error
drm/xe/configfs: Add vram bad page reservation policy
drm/xe/cri: Add sysfs interface for bad gpu vram pages
drm/xe/uapi: Expose ban reason in EXEC_QUEUE_GET_PROPERTY_BAN
drm/xe: Add fault-inject based VRAM page offline injection
drivers/gpu/buddy.c | 53 ++
drivers/gpu/drm/xe/xe_bo.c | 16 +-
drivers/gpu/drm/xe/xe_bo.h | 5 +-
drivers/gpu/drm/xe/xe_bo_types.h | 3 +
drivers/gpu/drm/xe/xe_configfs.c | 64 ++-
drivers/gpu/drm/xe/xe_configfs.h | 2 +
drivers/gpu/drm/xe/xe_debugfs.c | 50 ++
drivers/gpu/drm/xe/xe_debugfs.h | 2 +
drivers/gpu/drm/xe/xe_device_sysfs.c | 7 +
drivers/gpu/drm/xe/xe_dma_buf.c | 3 +
drivers/gpu/drm/xe/xe_exec_queue.c | 14 +-
drivers/gpu/drm/xe/xe_exec_queue_types.h | 7 +-
drivers/gpu/drm/xe/xe_execlist.c | 4 +-
drivers/gpu/drm/xe/xe_guc_submit.c | 32 +-
drivers/gpu/drm/xe/xe_lrc.c | 1 +
drivers/gpu/drm/xe/xe_pt.c | 3 +-
drivers/gpu/drm/xe/xe_ttm_vram_mgr.c | 610 ++++++++++++++++++++-
drivers/gpu/drm/xe/xe_ttm_vram_mgr.h | 3 +
drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h | 28 +
include/linux/gpu_buddy.h | 2 +
include/uapi/drm/xe_drm.h | 12 +-
21 files changed, 876 insertions(+), 45 deletions(-)
--
2.52.0
^ permalink raw reply [flat|nested] 17+ messages in thread
* [PATCH V14 1/9] drm/xe: Link VRAM object with gpu buddy
2026-07-30 10:11 [PATCH V14 0/9] Add memory page offlining support Tejas Upadhyay
@ 2026-07-30 10:11 ` Tejas Upadhyay
2026-08-11 11:04 ` Ghimiray, Himal Prasad
2026-07-30 10:11 ` [PATCH V14 2/9] [DO NOT MERGE]drm/gpu: Add gpu_buddy_allocated_addr_to_block helper Tejas Upadhyay
` (11 subsequent siblings)
12 siblings, 1 reply; 17+ messages in thread
From: Tejas Upadhyay @ 2026-07-30 10:11 UTC (permalink / raw)
To: intel-xe; +Cc: himal.prasad.ghimiray, Tejas Upadhyay, Matthew Brost
Setup to link TTM buffer object inside gpu buddy. This functionality
is critical for supporting the memory page offline feature on CRI,
where identified faulty pages must be traced back to their
originating buffer for safe removal.
V2(MattB): Clear block->private in xe_ttm_vram_mgr_del as well
Reviewed-by: Matthew Brost <matthew.brost@intel.com>
Signed-off-by: Tejas Upadhyay <tejas.upadhyay@intel.com>
---
drivers/gpu/drm/xe/xe_ttm_vram_mgr.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
index b518f7dec680..5ab5dfdb183c 100644
--- a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
+++ b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
@@ -54,6 +54,7 @@ static int xe_ttm_vram_mgr_new(struct ttm_resource_manager *man,
struct xe_ttm_vram_mgr *mgr = to_xe_ttm_vram_mgr(man);
struct xe_ttm_vram_mgr_resource *vres;
struct gpu_buddy *mm = &mgr->mm;
+ struct gpu_buddy_block *block;
u64 size, min_page_size;
unsigned long lpfn;
int err;
@@ -138,6 +139,8 @@ static int xe_ttm_vram_mgr_new(struct ttm_resource_manager *man,
}
mgr->visible_avail -= vres->used_visible_size;
+ list_for_each_entry(block, &vres->blocks, link)
+ block->private = tbo;
mutex_unlock(&mgr->lock);
if (!(vres->base.placement & TTM_PL_FLAG_CONTIGUOUS) &&
@@ -176,8 +179,11 @@ static void xe_ttm_vram_mgr_del(struct ttm_resource_manager *man,
to_xe_ttm_vram_mgr_resource(res);
struct xe_ttm_vram_mgr *mgr = to_xe_ttm_vram_mgr(man);
struct gpu_buddy *mm = &mgr->mm;
+ struct gpu_buddy_block *block;
mutex_lock(&mgr->lock);
+ list_for_each_entry(block, &vres->blocks, link)
+ block->private = NULL;
gpu_buddy_free_list(mm, &vres->blocks, 0);
mgr->visible_avail += vres->used_visible_size;
mutex_unlock(&mgr->lock);
--
2.52.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [PATCH V14 2/9] [DO NOT MERGE]drm/gpu: Add gpu_buddy_allocated_addr_to_block helper
2026-07-30 10:11 [PATCH V14 0/9] Add memory page offlining support Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 1/9] drm/xe: Link VRAM object with gpu buddy Tejas Upadhyay
@ 2026-07-30 10:11 ` Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 3/9] drm/xe: Link LRC BO and its execution Queue Tejas Upadhyay
` (10 subsequent siblings)
12 siblings, 0 replies; 17+ messages in thread
From: Tejas Upadhyay @ 2026-07-30 10:11 UTC (permalink / raw)
To: intel-xe
Cc: himal.prasad.ghimiray, Tejas Upadhyay, Arunpravin Paneer Selvam,
dri-devel, Arunpravin Paneer Selvam
Add helper with primary purpose is to efficiently trace a specific
physical memory address back to its corresponding TTM buffer object.
v3:
- use mm->chunk_size minimum allocation granularity (Arun)
v2:
- %s/gpu_buddy_addr_to_block/gpu_buddy_allocated_addr_to_block(MattA)
- remove clear->avail and split nodes check(MattA)
- Adapt lockdep(MattB)
Signed-off-by: Tejas Upadhyay <tejas.upadhyay@intel.com>
Cc: Arunpravin Paneer Selvam <arunpravin.paneerselvam@amd.com>
Cc: dri-devel@lists.freedesktop.org
Reviewed-by: Arunpravin Paneer Selvam <Arunpravin.PaneerSelvam@amd.com>
---
drivers/gpu/buddy.c | 53 +++++++++++++++++++++++++++++++++++++++
include/linux/gpu_buddy.h | 2 ++
2 files changed, 55 insertions(+)
diff --git a/drivers/gpu/buddy.c b/drivers/gpu/buddy.c
index dc81fe0301ce..4d5ac375a538 100644
--- a/drivers/gpu/buddy.c
+++ b/drivers/gpu/buddy.c
@@ -630,6 +630,59 @@ void gpu_buddy_free_block(struct gpu_buddy *mm,
}
EXPORT_SYMBOL(gpu_buddy_free_block);
+/**
+ * gpu_buddy_allocated_addr_to_block - given relative address find the allocated block
+ *
+ * @mm: GPU buddy manager
+ * @addr: Relative address
+ *
+ * Returns:
+ * gpu_buddy_block on success, NULL or error code on failure
+ */
+struct gpu_buddy_block *gpu_buddy_allocated_addr_to_block(struct gpu_buddy *mm, u64 addr)
+{
+ struct gpu_buddy_block *block;
+ LIST_HEAD(dfs);
+ u64 end;
+ int i;
+
+ gpu_buddy_driver_lock_held(mm);
+
+ end = addr + mm->chunk_size - 1;
+ for (i = 0; i < mm->n_roots; ++i)
+ list_add_tail(&mm->roots[i]->tmp_link, &dfs);
+
+ do {
+ u64 block_start;
+ u64 block_end;
+
+ block = list_first_entry_or_null(&dfs,
+ struct gpu_buddy_block,
+ tmp_link);
+ if (!block)
+ break;
+
+ list_del(&block->tmp_link);
+
+ block_start = gpu_buddy_block_offset(block);
+ block_end = block_start + gpu_buddy_block_size(mm, block) - 1;
+
+ if (!overlaps(addr, end, block_start, block_end))
+ continue;
+
+ if (gpu_buddy_block_is_allocated(block))
+ return block;
+ else if (gpu_buddy_block_is_free(block))
+ return NULL;
+
+ list_add(&block->right->tmp_link, &dfs);
+ list_add(&block->left->tmp_link, &dfs);
+ } while (1);
+
+ return ERR_PTR(-ENXIO);
+}
+EXPORT_SYMBOL(gpu_buddy_allocated_addr_to_block);
+
static void __gpu_buddy_free_list(struct gpu_buddy *mm,
struct list_head *objects,
bool mark_clear,
diff --git a/include/linux/gpu_buddy.h b/include/linux/gpu_buddy.h
index e037714563d8..2c36124bb696 100644
--- a/include/linux/gpu_buddy.h
+++ b/include/linux/gpu_buddy.h
@@ -287,6 +287,8 @@ void gpu_buddy_reset_clear(struct gpu_buddy *mm, bool is_clear);
void gpu_buddy_free_block(struct gpu_buddy *mm, struct gpu_buddy_block *block);
+struct gpu_buddy_block *gpu_buddy_allocated_addr_to_block(struct gpu_buddy *mm, u64 addr);
+
void gpu_buddy_free_list(struct gpu_buddy *mm,
struct list_head *objects,
unsigned int flags);
--
2.52.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [PATCH V14 3/9] drm/xe: Link LRC BO and its execution Queue
2026-07-30 10:11 [PATCH V14 0/9] Add memory page offlining support Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 1/9] drm/xe: Link VRAM object with gpu buddy Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 2/9] [DO NOT MERGE]drm/gpu: Add gpu_buddy_allocated_addr_to_block helper Tejas Upadhyay
@ 2026-07-30 10:11 ` Tejas Upadhyay
2026-08-11 11:05 ` Ghimiray, Himal Prasad
2026-07-30 10:11 ` [PATCH V14 4/9] drm/xe: Extend BO purge to handle vram pages as well Tejas Upadhyay
` (9 subsequent siblings)
12 siblings, 1 reply; 17+ messages in thread
From: Tejas Upadhyay @ 2026-07-30 10:11 UTC (permalink / raw)
To: intel-xe; +Cc: himal.prasad.ghimiray, Tejas Upadhyay
To establish a link between an LRC BO (Logical Ring Context
Buffer Object) and its corresponding execution Queue in the
drm/xe driver, you need to store a back-pointer to the queue
within the BO's private data structure. This allows the
driver to identify and take corrective action on the specific
queue if the LRC BO encounters an error (e.g., memory
corruption or eviction issues).
V3(Sashiko):
- Placeholder of 8 byte for non-lrc bo is acceptable
- Assign bo-q is safe just use READ_ONCE/WRITE_ONCE
V2(MattB):
- Handle multiqueue
Signed-off-by: Tejas Upadhyay <tejas.upadhyay@intel.com>
---
drivers/gpu/drm/xe/xe_bo_types.h | 3 +++
drivers/gpu/drm/xe/xe_exec_queue.c | 6 ++++++
drivers/gpu/drm/xe/xe_lrc.c | 1 +
3 files changed, 10 insertions(+)
diff --git a/drivers/gpu/drm/xe/xe_bo_types.h b/drivers/gpu/drm/xe/xe_bo_types.h
index e45f24301050..a9c48e440669 100644
--- a/drivers/gpu/drm/xe/xe_bo_types.h
+++ b/drivers/gpu/drm/xe/xe_bo_types.h
@@ -20,6 +20,7 @@
struct xe_device;
struct xe_mem_pool_node;
struct xe_vm;
+struct xe_exec_queue;
#define XE_BO_MAX_PLACEMENTS 3
@@ -42,6 +43,8 @@ struct xe_bo {
u32 flags;
/** @vm: VM this BO is attached to, for extobj this will be NULL */
struct xe_vm *vm;
+ /** @q: Queue this BO is attached to, mostly for LRC BO, NULL otherwise */
+ struct xe_exec_queue *q;
/** @tile: Tile this BO is attached to (kernel BO only) */
struct xe_tile *tile;
/** @placements: valid placements for this BO */
diff --git a/drivers/gpu/drm/xe/xe_exec_queue.c b/drivers/gpu/drm/xe/xe_exec_queue.c
index 38972b6e6d37..ab81a512fb41 100644
--- a/drivers/gpu/drm/xe/xe_exec_queue.c
+++ b/drivers/gpu/drm/xe/xe_exec_queue.c
@@ -390,6 +390,12 @@ static int __xe_exec_queue_init(struct xe_exec_queue *q, u32 exec_queue_flags)
goto err_lrc;
}
+ /*
+ * The queue ref counts the LRCs, thus it safe for the LRC BO to hold a
+ * pointer to queue without reference. The reader holds dma_resv (
+ * xe_bo_lock) which serializes with xe_lrc_finish().
+ */
+ WRITE_ONCE(lrc->bo->q, xe_exec_queue_multi_queue_primary(q));
xe_exec_queue_set_lrc(q, lrc, i);
if (__lrc)
diff --git a/drivers/gpu/drm/xe/xe_lrc.c b/drivers/gpu/drm/xe/xe_lrc.c
index 3e7c995085d0..ee77106b06bc 100644
--- a/drivers/gpu/drm/xe/xe_lrc.c
+++ b/drivers/gpu/drm/xe/xe_lrc.c
@@ -1066,6 +1066,7 @@ static void xe_lrc_set_ppgtt(struct xe_lrc *lrc, struct xe_vm *vm)
static void xe_lrc_finish(struct xe_lrc *lrc)
{
xe_hw_fence_ctx_finish(&lrc->fence_ctx);
+ WRITE_ONCE(lrc->bo->q, NULL);
xe_bo_unpin_map_no_vm(lrc->bo);
xe_bo_unpin_map_no_vm(lrc->seqno_bo);
}
--
2.52.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [PATCH V14 4/9] drm/xe: Extend BO purge to handle vram pages as well
2026-07-30 10:11 [PATCH V14 0/9] Add memory page offlining support Tejas Upadhyay
` (2 preceding siblings ...)
2026-07-30 10:11 ` [PATCH V14 3/9] drm/xe: Link LRC BO and its execution Queue Tejas Upadhyay
@ 2026-07-30 10:11 ` Tejas Upadhyay
2026-08-11 11:06 ` Ghimiray, Himal Prasad
2026-07-30 10:11 ` [PATCH V14 5/9] drm/xe: Handle physical memory address error Tejas Upadhyay
` (8 subsequent siblings)
12 siblings, 1 reply; 17+ messages in thread
From: Tejas Upadhyay @ 2026-07-30 10:11 UTC (permalink / raw)
To: intel-xe; +Cc: himal.prasad.ghimiray, Tejas Upadhyay, Arvind Yadav
Recent driver update introduce support for purgeable buffer
objects (BOs), extending the API to include VRAM pages to
better manage memory pressure and enable memory offlining.
Signed-off-by: Tejas Upadhyay <tejas.upadhyay@intel.com>
Reviewed-by: Arvind Yadav <arvind.yadav@intel.com>
---
drivers/gpu/drm/xe/xe_bo.c | 5 +----
drivers/gpu/drm/xe/xe_bo.h | 1 +
2 files changed, 2 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/xe/xe_bo.c b/drivers/gpu/drm/xe/xe_bo.c
index dde309821237..52f81e972ada 100644
--- a/drivers/gpu/drm/xe/xe_bo.c
+++ b/drivers/gpu/drm/xe/xe_bo.c
@@ -921,7 +921,7 @@ void xe_bo_set_purgeable_state(struct xe_bo *bo,
*
* Return: 0 on success, negative error code on failure
*/
-static int xe_ttm_bo_purge(struct ttm_buffer_object *ttm_bo, struct ttm_operation_ctx *ctx)
+int xe_ttm_bo_purge(struct ttm_buffer_object *ttm_bo, struct ttm_operation_ctx *ctx)
{
struct xe_bo *bo = ttm_to_xe_bo(ttm_bo);
struct ttm_placement place = {};
@@ -929,9 +929,6 @@ static int xe_ttm_bo_purge(struct ttm_buffer_object *ttm_bo, struct ttm_operatio
xe_bo_assert_held(bo);
- if (!ttm_bo->ttm)
- return 0;
-
if (!xe_bo_madv_is_dontneed(bo))
return 0;
diff --git a/drivers/gpu/drm/xe/xe_bo.h b/drivers/gpu/drm/xe/xe_bo.h
index c6d80e1bd6e7..659e2888d419 100644
--- a/drivers/gpu/drm/xe/xe_bo.h
+++ b/drivers/gpu/drm/xe/xe_bo.h
@@ -586,6 +586,7 @@ struct xe_bo_shrink_flags {
long xe_bo_shrink(struct ttm_operation_ctx *ctx, struct ttm_buffer_object *bo,
const struct xe_bo_shrink_flags flags,
unsigned long *scanned);
+int xe_ttm_bo_purge(struct ttm_buffer_object *ttm_bo, struct ttm_operation_ctx *ctx);
/**
* xe_bo_is_mem_type - Whether the bo currently resides in the given
--
2.52.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [PATCH V14 5/9] drm/xe: Handle physical memory address error
2026-07-30 10:11 [PATCH V14 0/9] Add memory page offlining support Tejas Upadhyay
` (3 preceding siblings ...)
2026-07-30 10:11 ` [PATCH V14 4/9] drm/xe: Extend BO purge to handle vram pages as well Tejas Upadhyay
@ 2026-07-30 10:11 ` Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 6/9] drm/xe/configfs: Add vram bad page reservation policy Tejas Upadhyay
` (7 subsequent siblings)
12 siblings, 0 replies; 17+ messages in thread
From: Tejas Upadhyay @ 2026-07-30 10:11 UTC (permalink / raw)
To: intel-xe; +Cc: himal.prasad.ghimiray, Tejas Upadhyay
This functionality represents a significant step in making
the xe driver gracefully handle hardware memory degradation.
By integrating with the DRM Buddy allocator, the driver
can permanently "carve out" faulty memory so it isn't reused
by subsequent allocations.
Buddy Block Reservation:
When a memory address is reported as faulty, the driver instructs
the DRM Buddy allocator to reserve a block of the specific page
size (typically 4KB). This marks the memory as "dirty/used"
indefinitely.
Two-Stage Tracking:
Offlined Pages:
Pages that have been successfully isolated and removed from the
available memory pool.
Queued Pages:
Addresses that have been flagged as faulty but are currently in
use by a process. These are tracked until the associated buffer
object (BO) is released or migrated, at which point they move
to the "offlined" state.
v10(Sashiko):
- Move exec_queue_kill out to avoid vm lock deadlock
- Use u64 to avoid truncate
- remove id, offline addr itself is unique
v9(Sashiko):
- Move xe_exec_queue_put() outside bo lock to avoid sleeping under
spinlock
- Check PURGED state before xe_bo_set_purgeable_state to avoid
assertion if shrinker raced during unlocked window
- Add best-effort comment for flags check without resv lock
- Move xe_bo_put() (pbo_to_put) outside scoped_guard to avoid
recursive deadlock
- Remove xe_ttm_vram_free_bad_pages from critical path
(avoid UAF if another thread frees nentry while fault handler
holds reference)
- Add comment documenting purge-to-reserve race window (self-corrects
on next HW fault)
- In else branch, add nentry to queued_pages before buddy_alloc to
prevent leak on allocation failure
- handle with Eexist for race case
v8(MattA):
- introduce helper for vram_buddy_alloc and free to avoid code dup
- Add WARN_ON for -ENXIO
v7:
- keep vm ref during vm kill and fix some typos
- FW communication code is moved in RAS, keep comment for same
V6:
- Use scope_guard for locking(MattB)
- Adapt addition of queue member of LRC BO(MattB)
- Extend and use xe_ttm_bo_purge API for vram pages(MattB)
- Handle dma_buf_map requests for native and remote(MattB)
- Address if in never initialized block, set block to NULL
V5:
- Categorise and handle BOs accordingly
- Fix crash found with new debugfs tests
V4:
- Set block->private NULL post bo purge
- Filter out gsm address early on
- Rebase
V3:
-rename api, remove tile dependency and add status of reservation
V2:
- Fix mm->avail counter issue
- Remove unused code and handle clean up in case of error
Signed-off-by: Tejas Upadhyay <tejas.upadhyay@intel.com>
---
drivers/gpu/drm/xe/xe_bo.c | 11 +-
drivers/gpu/drm/xe/xe_bo.h | 4 +-
drivers/gpu/drm/xe/xe_dma_buf.c | 3 +
drivers/gpu/drm/xe/xe_exec_queue.c | 8 +-
drivers/gpu/drm/xe/xe_pt.c | 3 +-
drivers/gpu/drm/xe/xe_ttm_vram_mgr.c | 402 +++++++++++++++++++--
drivers/gpu/drm/xe/xe_ttm_vram_mgr.h | 1 +
drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h | 26 ++
8 files changed, 422 insertions(+), 36 deletions(-)
diff --git a/drivers/gpu/drm/xe/xe_bo.c b/drivers/gpu/drm/xe/xe_bo.c
index 52f81e972ada..23ad61ec3f5b 100644
--- a/drivers/gpu/drm/xe/xe_bo.c
+++ b/drivers/gpu/drm/xe/xe_bo.c
@@ -158,7 +158,16 @@ bool xe_bo_is_vm_bound(struct xe_bo *bo)
return !list_empty(&bo->ttm.base.gpuva.list);
}
-static bool xe_bo_is_user(struct xe_bo *bo)
+/**
+ * xe_bo_is_user - check if BO is user created BO
+ * @bo: The BO
+ *
+ * Check if BO is user created BO. This requires the
+ * reservation lock for the BO to be held.
+ *
+ * Returns: boolean
+ */
+bool xe_bo_is_user(struct xe_bo *bo)
{
return bo->flags & XE_BO_FLAG_USER;
}
diff --git a/drivers/gpu/drm/xe/xe_bo.h b/drivers/gpu/drm/xe/xe_bo.h
index 659e2888d419..c650186ff2ae 100644
--- a/drivers/gpu/drm/xe/xe_bo.h
+++ b/drivers/gpu/drm/xe/xe_bo.h
@@ -363,7 +363,8 @@ static inline void xe_bo_unpin_map_no_vm(struct xe_bo *bo)
{
if (likely(bo)) {
xe_bo_lock(bo, false);
- xe_bo_unpin(bo);
+ if (!xe_bo_is_purged(bo))
+ xe_bo_unpin(bo);
xe_bo_unlock(bo);
xe_bo_put(bo);
@@ -587,6 +588,7 @@ long xe_bo_shrink(struct ttm_operation_ctx *ctx, struct ttm_buffer_object *bo,
const struct xe_bo_shrink_flags flags,
unsigned long *scanned);
int xe_ttm_bo_purge(struct ttm_buffer_object *ttm_bo, struct ttm_operation_ctx *ctx);
+bool xe_bo_is_user(struct xe_bo *bo);
/**
* xe_bo_is_mem_type - Whether the bo currently resides in the given
diff --git a/drivers/gpu/drm/xe/xe_dma_buf.c b/drivers/gpu/drm/xe/xe_dma_buf.c
index bf0728838ead..5d9f1cd24b7f 100644
--- a/drivers/gpu/drm/xe/xe_dma_buf.c
+++ b/drivers/gpu/drm/xe/xe_dma_buf.c
@@ -104,6 +104,9 @@ static struct sg_table *xe_dma_buf_map(struct dma_buf_attachment *attach,
struct sg_table *sgt;
int r = 0;
+ if (xe_bo_is_purged(bo))
+ return ERR_PTR(-ENOENT);
+
if (!attach->peer2peer && !xe_bo_can_migrate(bo, XE_PL_TT))
return ERR_PTR(-EOPNOTSUPP);
diff --git a/drivers/gpu/drm/xe/xe_exec_queue.c b/drivers/gpu/drm/xe/xe_exec_queue.c
index ab81a512fb41..5a0d9f65cf3c 100644
--- a/drivers/gpu/drm/xe/xe_exec_queue.c
+++ b/drivers/gpu/drm/xe/xe_exec_queue.c
@@ -1569,8 +1569,12 @@ void xe_exec_queue_update_run_ticks(struct xe_exec_queue *q)
* errors.
*/
lrc = q->lrc[0];
- new_ts = xe_lrc_update_timestamp(lrc, &old_ts);
- q->xef->run_ticks[q->class] += (new_ts - old_ts) * q->width;
+ xe_bo_lock(lrc->bo, false);
+ if (!xe_bo_is_purged(lrc->bo)) {
+ new_ts = xe_lrc_update_timestamp(lrc, &old_ts);
+ q->xef->run_ticks[q->class] += (new_ts - old_ts) * q->width;
+ }
+ xe_bo_unlock(lrc->bo);
drm_dev_exit(idx);
}
diff --git a/drivers/gpu/drm/xe/xe_pt.c b/drivers/gpu/drm/xe/xe_pt.c
index 8cd89c4f49d0..6971882c6862 100644
--- a/drivers/gpu/drm/xe/xe_pt.c
+++ b/drivers/gpu/drm/xe/xe_pt.c
@@ -212,7 +212,8 @@ void xe_pt_destroy(struct xe_pt *pt, u32 flags, struct llist_head *deferred)
return;
XE_WARN_ON(!list_empty(&pt->bo->ttm.base.gpuva.list));
- xe_bo_unpin(pt->bo);
+ if (!xe_bo_is_purged(pt->bo))
+ xe_bo_unpin(pt->bo);
xe_bo_put_deferred(pt->bo, deferred);
if (pt->level > 0 && pt->num_live) {
diff --git a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
index 5ab5dfdb183c..d9dc0e51e365 100644
--- a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
+++ b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
@@ -11,9 +11,14 @@
#include <drm/ttm/ttm_placement.h>
#include <drm/ttm/ttm_range_manager.h>
+#include "regs/xe_regs.h"
#include "xe_bo.h"
#include "xe_device.h"
+#include "xe_exec_queue.h"
+#include "xe_lrc.h"
+#include "xe_mmio.h"
#include "xe_res_cursor.h"
+#include "xe_ttm_stolen_mgr.h"
#include "xe_ttm_vram_mgr.h"
#include "xe_vram_types.h"
@@ -46,6 +51,40 @@ static inline bool xe_is_vram_mgr_blocks_contiguous(struct gpu_buddy *mm,
return true;
}
+static int xe_ttm_vram_buddy_alloc(struct xe_ttm_vram_mgr *mgr, u64 start,
+ u64 end, u64 size, u64 min_page_size,
+ struct list_head *blocks, unsigned long flags,
+ void *priv, u64 *used_visible)
+{
+ struct gpu_buddy *mm = &mgr->mm;
+ struct gpu_buddy_block *block;
+ int err;
+
+ err = gpu_buddy_alloc_blocks(mm, start, end, size, min_page_size, blocks, flags);
+ if (err)
+ return err;
+
+ list_for_each_entry(block, blocks, link)
+ block->private = priv;
+
+ if (end <= mgr->visible_size) {
+ *used_visible = size;
+ } else {
+ list_for_each_entry(block, blocks, link) {
+ u64 blk_start = gpu_buddy_block_offset(block);
+
+ if (blk_start < mgr->visible_size) {
+ u64 blk_end = blk_start + gpu_buddy_block_size(mm, block);
+
+ *used_visible += min(blk_end, mgr->visible_size) - blk_start;
+ }
+ }
+ }
+
+ mgr->visible_avail -= *used_visible;
+ return 0;
+}
+
static int xe_ttm_vram_mgr_new(struct ttm_resource_manager *man,
struct ttm_buffer_object *tbo,
const struct ttm_place *place,
@@ -54,7 +93,6 @@ static int xe_ttm_vram_mgr_new(struct ttm_resource_manager *man,
struct xe_ttm_vram_mgr *mgr = to_xe_ttm_vram_mgr(man);
struct xe_ttm_vram_mgr_resource *vres;
struct gpu_buddy *mm = &mgr->mm;
- struct gpu_buddy_block *block;
u64 size, min_page_size;
unsigned long lpfn;
int err;
@@ -115,32 +153,12 @@ static int xe_ttm_vram_mgr_new(struct ttm_resource_manager *man,
goto error_unlock;
}
- err = gpu_buddy_alloc_blocks(mm, (u64)place->fpfn << PAGE_SHIFT,
- (u64)lpfn << PAGE_SHIFT, size,
- min_page_size, &vres->blocks, vres->flags);
+ err = xe_ttm_vram_buddy_alloc(mgr, (u64)place->fpfn << PAGE_SHIFT,
+ (u64)lpfn << PAGE_SHIFT, size,
+ min_page_size, &vres->blocks, vres->flags,
+ tbo, &vres->used_visible_size);
if (err)
goto error_unlock;
-
- if (lpfn <= mgr->visible_size >> PAGE_SHIFT) {
- vres->used_visible_size = size;
- } else {
- struct gpu_buddy_block *block;
-
- list_for_each_entry(block, &vres->blocks, link) {
- u64 start = gpu_buddy_block_offset(block);
-
- if (start < mgr->visible_size) {
- u64 end = start + gpu_buddy_block_size(mm, block);
-
- vres->used_visible_size +=
- min(end, mgr->visible_size) - start;
- }
- }
- }
-
- mgr->visible_avail -= vres->used_visible_size;
- list_for_each_entry(block, &vres->blocks, link)
- block->private = tbo;
mutex_unlock(&mgr->lock);
if (!(vres->base.placement & TTM_PL_FLAG_CONTIGUOUS) &&
@@ -172,20 +190,27 @@ static int xe_ttm_vram_mgr_new(struct ttm_resource_manager *man,
return err;
}
+static void xe_ttm_vram_buddy_free(struct xe_ttm_vram_mgr *mgr,
+ struct list_head *blocks,
+ u64 used_visible)
+{
+ struct gpu_buddy_block *block;
+
+ list_for_each_entry(block, blocks, link)
+ block->private = NULL;
+ gpu_buddy_free_list(&mgr->mm, blocks, 0);
+ mgr->visible_avail += used_visible;
+}
+
static void xe_ttm_vram_mgr_del(struct ttm_resource_manager *man,
struct ttm_resource *res)
{
struct xe_ttm_vram_mgr_resource *vres =
to_xe_ttm_vram_mgr_resource(res);
struct xe_ttm_vram_mgr *mgr = to_xe_ttm_vram_mgr(man);
- struct gpu_buddy *mm = &mgr->mm;
- struct gpu_buddy_block *block;
mutex_lock(&mgr->lock);
- list_for_each_entry(block, &vres->blocks, link)
- block->private = NULL;
- gpu_buddy_free_list(mm, &vres->blocks, 0);
- mgr->visible_avail += vres->used_visible_size;
+ xe_ttm_vram_buddy_free(mgr, &vres->blocks, vres->used_visible_size);
mutex_unlock(&mgr->lock);
ttm_resource_fini(man, res);
@@ -280,6 +305,24 @@ static const struct ttm_resource_manager_func xe_ttm_vram_mgr_func = {
.debug = xe_ttm_vram_mgr_debug
};
+static void xe_ttm_vram_free_bad_pages(struct drm_device *dev, struct xe_ttm_vram_mgr *mgr)
+{
+ struct xe_ttm_vram_offline_resource *pos, *n;
+
+ list_for_each_entry_safe(pos, n, &mgr->offlined_pages, offlined_link) {
+ xe_ttm_vram_buddy_free(mgr, &pos->blocks, pos->used_visible_size);
+ list_del(&pos->offlined_link);
+ --mgr->n_offlined_pages;
+ kfree(pos);
+ }
+ list_for_each_entry_safe(pos, n, &mgr->queued_pages, queued_link) {
+ xe_ttm_vram_buddy_free(mgr, &pos->blocks, 0);
+ list_del(&pos->queued_link);
+ --mgr->n_queued_pages;
+ kfree(pos);
+ }
+}
+
static void xe_ttm_vram_mgr_fini(struct drm_device *dev, void *arg)
{
struct xe_device *xe = to_xe_device(dev);
@@ -291,6 +334,10 @@ static void xe_ttm_vram_mgr_fini(struct drm_device *dev, void *arg)
if (ttm_resource_manager_evict_all(&xe->ttm, man))
return;
+ mutex_lock(&mgr->lock);
+ xe_ttm_vram_free_bad_pages(dev, mgr);
+ mutex_unlock(&mgr->lock);
+
WARN_ON_ONCE(mgr->visible_avail != mgr->visible_size);
gpu_buddy_fini(&mgr->mm);
@@ -318,6 +365,8 @@ int __xe_ttm_vram_mgr_init(struct xe_device *xe, struct xe_ttm_vram_mgr *mgr,
err = drmm_mutex_init(&xe->drm, &mgr->lock);
if (err)
return err;
+ INIT_LIST_HEAD(&mgr->offlined_pages);
+ INIT_LIST_HEAD(&mgr->queued_pages);
mgr->default_page_size = default_page_size;
mgr->visible_size = io_size;
mgr->visible_avail = io_size;
@@ -474,3 +523,294 @@ u64 xe_ttm_vram_get_avail(struct ttm_resource_manager *man)
return avail;
}
+
+static int xe_ttm_vram_purge_page(struct xe_device *xe, struct xe_bo *bo)
+{
+ struct ttm_operation_ctx ctx = {};
+ struct xe_exec_queue *q_to_put = NULL;
+ struct xe_exec_queue *q = NULL;
+ struct xe_vm *vm = NULL;
+ u32 flags;
+ int ret = 0;
+
+ xe_bo_lock(bo, false);
+ if (bo->vm)
+ vm = xe_vm_get(bo->vm);
+ flags = bo->flags;
+ xe_bo_unlock(bo);
+ /* Ban VM if BO is PPGTT */
+ if (vm && (flags & XE_BO_FLAG_PAGETABLE)) {
+ down_write(&vm->lock);
+ xe_vm_kill(vm, true);
+ up_write(&vm->lock);
+ }
+ if (vm)
+ xe_vm_put(vm);
+
+ xe_bo_lock(bo, false);
+ q = READ_ONCE(bo->q);
+ /* Ban exec queue if BO is lrc */
+ if (q && xe_exec_queue_get_unless_zero(q)) {
+ /* ban queue */
+ q_to_put = q;
+ }
+
+ if (bo->purgeable.state == XE_MADV_PURGEABLE_PURGED) {
+ /* Already purged by shrinker during unlocked window — nothing to do */
+ xe_bo_unlock(bo);
+ goto out;
+ }
+
+ xe_bo_set_purgeable_state(bo, XE_MADV_PURGEABLE_DONTNEED);
+ ttm_bo_unmap_virtual(&bo->ttm); /* nuke CPU mmap + VRAM IO mappings */
+ if (xe_bo_is_pinned(bo))
+ xe_bo_unpin(bo);
+ ret = xe_ttm_bo_purge(&bo->ttm, &ctx);
+ xe_bo_unlock(bo);
+
+out:
+ if (q_to_put) {
+ xe_exec_queue_kill(q_to_put);
+ xe_exec_queue_put(q_to_put);
+ }
+
+ return ret;
+}
+
+static bool xe_ttm_vram_page_already_processed(struct xe_ttm_vram_mgr *mgr,
+ u64 addr)
+{
+ struct xe_ttm_vram_offline_resource *pos;
+
+ lockdep_assert_held(&mgr->lock);
+
+ list_for_each_entry(pos, &mgr->offlined_pages, offlined_link) {
+ if (pos->addr == addr)
+ return true;
+ }
+
+ list_for_each_entry(pos, &mgr->queued_pages, queued_link) {
+ if (pos->addr == addr)
+ return true;
+ }
+
+ return false;
+}
+
+static int xe_ttm_vram_reserve_page_at_addr(struct xe_device *xe, u64 addr,
+ struct xe_ttm_vram_mgr *vram_mgr, struct gpu_buddy *mm)
+{
+ struct xe_ttm_vram_offline_resource *nentry;
+ struct ttm_buffer_object *tbo = NULL;
+ struct xe_bo *pbo_to_put = NULL;
+ struct gpu_buddy_block *block;
+ enum reserve_status {
+ pending = 0,
+ fail
+ };
+ u64 size = SZ_4K;
+ int ret = 0;
+
+ scoped_guard(mutex, &vram_mgr->lock) {
+ if (xe_ttm_vram_page_already_processed(vram_mgr, addr))
+ return -EEXIST;
+ block = gpu_buddy_allocated_addr_to_block(mm, addr);
+ if (WARN_ON(IS_ERR(block)))
+ return PTR_ERR(block);
+
+ nentry = kzalloc_obj(*nentry);
+ if (!nentry)
+ return -ENOMEM;
+ INIT_LIST_HEAD(&nentry->blocks);
+ nentry->status = pending;
+ nentry->addr = addr;
+
+ if (block) {
+ struct xe_bo *pbo;
+
+ if (!block->private) {
+ /* Race: another thread just reserved this block */
+ kfree(nentry);
+ return -EEXIST;
+ }
+ tbo = block->private;
+ pbo = ttm_to_xe_bo(tbo);
+
+ /* Get reference safely - BO may have zero refcount */
+ if (!xe_bo_get_unless_zero(pbo)) {
+ kfree(nentry);
+ return -ENOENT;
+ }
+ /*
+ * Critical kernel BO? Best-effort check without resv lock;
+ * worst case a concurrent pin causes reset path unnecessarily.
+ */
+ if ((pbo->ttm.type == ttm_bo_type_kernel &&
+ !(pbo->flags & XE_BO_FLAG_PINNED_LATE_RESTORE)) ||
+ (xe_bo_is_user(pbo) && xe_bo_is_pinned(pbo))) {
+ kfree(nentry);
+ pbo_to_put = pbo;
+ drm_err(&xe->drm,
+ "%s: addr: 0x%llx is critical kernel bo, requesting SBR\n",
+ __func__, addr);
+ break;
+ }
+ ++vram_mgr->n_queued_pages;
+ list_add(&nentry->queued_link, &vram_mgr->queued_pages);
+ }
+ }
+
+ /* Deferred put outside lock to avoid recursive deadlock */
+ if (pbo_to_put) {
+ xe_bo_put(pbo_to_put);
+ /* Hint System controller driver for reset with -EIO */
+ return -EIO;
+ }
+
+ if (block) {
+ struct xe_ttm_vram_offline_resource *pos, *n;
+ struct xe_bo *pbo = ttm_to_xe_bo(tbo);
+
+ /*
+ * Purge BO containing address - reference held from above.
+ * Note: brief window between purge (freeing blocks) and re-reserve
+ * below. If another allocation claims the block, buddy_alloc fails
+ * and the next HW fault at this address will retry.
+ */
+ ret = xe_ttm_vram_purge_page(xe, pbo);
+ xe_bo_put(pbo);
+ if (ret) {
+ nentry->status = fail;
+ return ret;
+ }
+
+ /* Reserve page at address addr*/
+ scoped_guard(mutex, &vram_mgr->lock) {
+ ret = xe_ttm_vram_buddy_alloc(vram_mgr, addr, addr + size,
+ size, size, &nentry->blocks,
+ GPU_BUDDY_RANGE_ALLOCATION,
+ NULL, &nentry->used_visible_size);
+ if (ret) {
+ drm_warn(&xe->drm,
+ "Could not reserve page at addr:0x%llx, ret:%d\n",
+ addr, ret);
+ nentry->status = fail;
+ return ret;
+ }
+
+ list_for_each_entry_safe(pos, n, &vram_mgr->queued_pages, queued_link) {
+ if (pos->addr == nentry->addr) {
+ --vram_mgr->n_queued_pages;
+ list_del(&pos->queued_link);
+ break;
+ }
+ }
+ list_add(&nentry->offlined_link, &vram_mgr->offlined_pages);
+ /* RAS will send command to FW for offlining page based on ret value */
+ ++vram_mgr->n_offlined_pages;
+ return ret;
+ }
+ } else {
+ struct xe_ttm_vram_offline_resource *pos, *n;
+
+ scoped_guard(mutex, &vram_mgr->lock) {
+ list_add(&nentry->queued_link, &vram_mgr->queued_pages);
+ ret = xe_ttm_vram_buddy_alloc(vram_mgr, addr, addr + size,
+ size, size, &nentry->blocks,
+ GPU_BUDDY_RANGE_ALLOCATION,
+ NULL, &nentry->used_visible_size);
+ if (ret) {
+ drm_warn(&xe->drm,
+ "Could not reserve page at addr:0x%llx, ret:%d\n",
+ addr, ret);
+ nentry->status = fail;
+ return ret;
+ }
+
+ list_for_each_entry_safe(pos, n, &vram_mgr->queued_pages, queued_link) {
+ if (pos->addr == nentry->addr) {
+ --vram_mgr->n_queued_pages;
+ list_del(&pos->queued_link);
+ break;
+ }
+ }
+ ++vram_mgr->n_offlined_pages;
+ list_add(&nentry->offlined_link, &vram_mgr->offlined_pages);
+ /* RAS will send command to FW for offlining page based on ret value */
+ }
+ }
+ /* Success */
+ return ret;
+}
+
+static struct xe_vram_region *xe_ttm_vram_addr_to_region(struct xe_device *xe, u64 addr)
+{
+ u64 raw_offset = xe_mmio_read64_2x32(&xe_device_get_root_tile(xe)->mmio, GSMBASE);
+ /* force a 4K (4096 bytes) page alignment */
+ u64 gsmbase_dpa = raw_offset & ~(u64)(PAGE_SIZE - 1);
+ struct xe_vram_region *vr;
+ struct xe_tile *tile;
+ int id;
+
+ /* Addr from GSM? */
+ if (addr >= gsmbase_dpa)
+ /* Return NULL so the caller can request reset (SBR) */
+ return NULL;
+
+ for_each_tile(tile, xe, id) {
+ vr = tile->mem.vram;
+ if (addr >= vr->dpa_base &&
+ addr < vr->dpa_base + vr->usable_size)
+ return vr;
+ }
+
+ /*
+ * Return an explicit error pointer so the caller knows the addr
+ * is invalid and should be ignored, NOT SBR.
+ */
+ return ERR_PTR(-ENOENT);
+}
+
+/**
+ * xe_ttm_vram_handle_addr_fault - Handle vram physical address error flaged
+ * @xe: pointer to parent device
+ * @addr: physical faulty address
+ *
+ * Handle the physcial faulty address error on specific tile.
+ *
+ * Returns 0 for success, negative error code otherwise as follow:
+ * * %-EIO - critical BO or address outside any VRAM region; next action is reset.
+ * * %-EOPNOTSUPP - log-only policy; no further action.
+ * * %-ENOMEM - allocation failure; next action is reset.
+ * * %-ENXIO - address not found in buddy; next action is reset.
+ * * %-EEXIST - address already processed; no further action.
+ * * % Any other negative error - next action is reset.
+ */
+int xe_ttm_vram_handle_addr_fault(struct xe_device *xe, u64 addr)
+{
+ struct xe_ttm_vram_mgr *vram_mgr;
+ struct xe_vram_region *vr;
+ struct gpu_buddy *mm;
+
+ vr = xe_ttm_vram_addr_to_region(xe, addr);
+ if (IS_ERR(vr)) {
+ /*
+ * The addr is outside VRAM and GSM.
+ * Log a debug message if needed, and safely exit/ignore.
+ */
+ drm_dbg(&xe->drm, "Address %llx is out of bounds, ignoring fault.\n", addr);
+ return -EOPNOTSUPP;
+ }
+ if (!vr) {
+ drm_err(&xe->drm, "%s:%d GSM addr:%llx error requesting SBR\n",
+ __func__, __LINE__, addr);
+ /* Hint System controller driver for reset with -EIO */
+ return -EIO;
+ }
+ vram_mgr = &vr->ttm;
+ mm = &vram_mgr->mm;
+
+ /* Reserve page at address */
+ return xe_ttm_vram_reserve_page_at_addr(xe, addr, vram_mgr, mm);
+}
+EXPORT_SYMBOL(xe_ttm_vram_handle_addr_fault);
diff --git a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.h b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.h
index 87b7fae5edba..d5392beff30c 100644
--- a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.h
+++ b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.h
@@ -31,6 +31,7 @@ u64 xe_ttm_vram_get_cpu_visible_size(struct ttm_resource_manager *man);
void xe_ttm_vram_get_used(struct ttm_resource_manager *man,
u64 *used, u64 *used_visible);
+int xe_ttm_vram_handle_addr_fault(struct xe_device *xe, u64 addr);
static inline struct xe_ttm_vram_mgr_resource *
to_xe_ttm_vram_mgr_resource(struct ttm_resource *res)
{
diff --git a/drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h b/drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h
index 9106da056b49..815a601504d5 100644
--- a/drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h
+++ b/drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h
@@ -19,6 +19,14 @@ struct xe_ttm_vram_mgr {
struct ttm_resource_manager manager;
/** @mm: DRM buddy allocator which manages the VRAM */
struct gpu_buddy mm;
+ /** @offlined_pages: List of offlined pages */
+ struct list_head offlined_pages;
+ /** @n_offlined_pages: Number of offlined pages */
+ u16 n_offlined_pages;
+ /** @queued_pages: List of queued pages */
+ struct list_head queued_pages;
+ /** @n_queued_pages: Number of queued pages */
+ u16 n_queued_pages;
/** @visible_size: Proped size of the CPU visible portion */
u64 visible_size;
/** @visible_avail: CPU visible portion still unallocated */
@@ -45,4 +53,22 @@ struct xe_ttm_vram_mgr_resource {
unsigned long flags;
};
+/**
+ * struct xe_ttm_vram_offline_resource - Xe TTM VRAM offline resource
+ */
+struct xe_ttm_vram_offline_resource {
+ /** @offlined_link: Link to offlined pages */
+ struct list_head offlined_link;
+ /** @queued_link: Link to queued pages */
+ struct list_head queued_link;
+ /** @blocks: list of DRM buddy blocks */
+ struct list_head blocks;
+ /** @used_visible_size: How many CPU visible bytes this resource is using */
+ u64 used_visible_size;
+ /** @addr: Address of faulty memory location reported by HW */
+ u64 addr;
+ /** @status: reservation status of resource */
+ bool status;
+};
+
#endif
--
2.52.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [PATCH V14 6/9] drm/xe/configfs: Add vram bad page reservation policy
2026-07-30 10:11 [PATCH V14 0/9] Add memory page offlining support Tejas Upadhyay
` (4 preceding siblings ...)
2026-07-30 10:11 ` [PATCH V14 5/9] drm/xe: Handle physical memory address error Tejas Upadhyay
@ 2026-07-30 10:11 ` Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 7/9] drm/xe/cri: Add sysfs interface for bad gpu vram pages Tejas Upadhyay
` (6 subsequent siblings)
12 siblings, 0 replies; 17+ messages in thread
From: Tejas Upadhyay @ 2026-07-30 10:11 UTC (permalink / raw)
To: intel-xe; +Cc: himal.prasad.ghimiray, Tejas Upadhyay
The interface enables setting the policy for how bad pages are
handled in VRAM. This is crucial for maintaining system
stability in scenarios where VRAM degradation occurs.
By default policy will be "reserve", which can be changed to
"logging" only.
v3:
- All FW communication moved under RAS
v2:
- Add CRI check and rebase
Signed-off-by: Tejas Upadhyay <tejas.upadhyay@intel.com>
---
drivers/gpu/drm/xe/xe_configfs.c | 64 +++++++++++++++++++++++++++-
drivers/gpu/drm/xe/xe_configfs.h | 2 +
drivers/gpu/drm/xe/xe_ttm_vram_mgr.c | 10 +++++
3 files changed, 75 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/xe/xe_configfs.c b/drivers/gpu/drm/xe/xe_configfs.c
index 052cce962161..c4f386d4bf09 100644
--- a/drivers/gpu/drm/xe/xe_configfs.c
+++ b/drivers/gpu/drm/xe/xe_configfs.c
@@ -61,7 +61,8 @@
* ├── survivability_mode
* ├── gt_types_allowed
* ├── engines_allowed
- * └── enable_psmi
+ * ├── enable_psmi
+ * └── bad_page_reservation
*
* After configuring the attributes as per next section, the device can be
* probed with::
@@ -159,6 +160,16 @@
*
* This attribute can only be set before binding to the device.
*
+ * Bad pages reservation:
+ * ---------------------
+ *
+ * Disable vram bad pages reservation, instead just report it in dmesg.
+ * Example to disable it::
+ *
+ * # echo 0 > /sys/kernel/config/xe/0000:03:00.0/bad_page_reservation
+ *
+ * This attribute can only be set before binding to the device.
+ *
* Context restore BB
* ------------------
*
@@ -275,6 +286,7 @@ struct xe_config_group_device {
bool survivability_mode;
bool enable_psmi;
bool enable_multi_queue;
+ bool bad_page_reservation;
struct {
unsigned int max_vfs;
bool admin_only_pf;
@@ -295,6 +307,7 @@ static const struct xe_config_device device_defaults = {
.survivability_mode = false,
.enable_psmi = false,
.enable_multi_queue = true,
+ .bad_page_reservation = true,
.sriov = {
.max_vfs = XE_DEFAULT_MAX_VFS,
.admin_only_pf = XE_DEFAULT_ADMIN_ONLY_PF,
@@ -616,6 +629,32 @@ static ssize_t enable_multi_queue_store(struct config_item *item, const char *pa
return len;
}
+static ssize_t bad_page_reservation_show(struct config_item *item, char *page)
+{
+ struct xe_config_device *dev = to_xe_config_device(item);
+
+ return sprintf(page, "%d\n", dev->bad_page_reservation);
+}
+
+static ssize_t bad_page_reservation_store(struct config_item *item, const char *page, size_t len)
+{
+ struct xe_config_group_device *dev = to_xe_config_group_device(item);
+ bool val;
+ int ret;
+
+ ret = kstrtobool(page, &val);
+ if (ret)
+ return ret;
+
+ guard(mutex)(&dev->lock);
+ if (is_bound(dev))
+ return -EBUSY;
+
+ dev->config.bad_page_reservation = val;
+
+ return len;
+}
+
static bool wa_bb_read_advance(bool dereference, char **p,
const char *append, size_t len,
size_t *max_size)
@@ -855,6 +894,7 @@ CONFIGFS_ATTR(, ctx_restore_mid_bb);
CONFIGFS_ATTR(, ctx_restore_post_bb);
CONFIGFS_ATTR(, enable_multi_queue);
CONFIGFS_ATTR(, enable_psmi);
+CONFIGFS_ATTR(, bad_page_reservation);
CONFIGFS_ATTR(, engines_allowed);
CONFIGFS_ATTR(, gt_types_allowed);
CONFIGFS_ATTR(, survivability_mode);
@@ -864,6 +904,7 @@ static struct configfs_attribute *xe_config_device_attrs[] = {
&attr_ctx_restore_post_bb,
&attr_enable_multi_queue,
&attr_enable_psmi,
+ &attr_bad_page_reservation,
&attr_engines_allowed,
&attr_gt_types_allowed,
&attr_survivability_mode,
@@ -1142,6 +1183,7 @@ static void dump_custom_dev_config(struct pci_dev *pdev,
PRI_CUSTOM_ATTR("%llx", engines_allowed);
PRI_CUSTOM_ATTR("%d", enable_multi_queue);
PRI_CUSTOM_ATTR("%d", enable_psmi);
+ PRI_CUSTOM_ATTR("%d", bad_page_reservation);
PRI_CUSTOM_ATTR("%d", survivability_mode);
PRI_CUSTOM_ATTR("%u", sriov.admin_only_pf);
@@ -1290,6 +1332,26 @@ bool xe_configfs_get_enable_multi_queue(struct pci_dev *pdev)
return ret;
}
+/**
+ * xe_configfs_get_bad_page_reservation - get configfs bad_page_reservation setting
+ * @pdev: pci device
+ *
+ * Return: bad_page_reservation setting in configfs
+ */
+bool xe_configfs_get_bad_page_reservation(struct pci_dev *pdev)
+{
+ struct xe_config_group_device *dev = find_xe_config_group_device(pdev);
+ bool ret;
+
+ if (!dev)
+ return device_defaults.bad_page_reservation;
+
+ ret = dev->config.bad_page_reservation;
+ config_group_put(&dev->group);
+
+ return ret;
+}
+
/**
* xe_configfs_get_ctx_restore_mid_bb - get configfs ctx_restore_mid_bb setting
* @pdev: pci device
diff --git a/drivers/gpu/drm/xe/xe_configfs.h b/drivers/gpu/drm/xe/xe_configfs.h
index 4fbbeafba473..7405cc5f3207 100644
--- a/drivers/gpu/drm/xe/xe_configfs.h
+++ b/drivers/gpu/drm/xe/xe_configfs.h
@@ -24,6 +24,7 @@ bool xe_configfs_media_gt_allowed(struct pci_dev *pdev);
u64 xe_configfs_get_engines_allowed(struct pci_dev *pdev);
bool xe_configfs_get_psmi_enabled(struct pci_dev *pdev);
bool xe_configfs_get_enable_multi_queue(struct pci_dev *pdev);
+bool xe_configfs_get_bad_page_reservation(struct pci_dev *pdev);
u32 xe_configfs_get_ctx_restore_mid_bb(struct pci_dev *pdev,
enum xe_engine_class class,
const u32 **cs);
@@ -44,6 +45,7 @@ static inline bool xe_configfs_media_gt_allowed(struct pci_dev *pdev) { return t
static inline u64 xe_configfs_get_engines_allowed(struct pci_dev *pdev) { return U64_MAX; }
static inline bool xe_configfs_get_psmi_enabled(struct pci_dev *pdev) { return false; }
static inline bool xe_configfs_get_enable_multi_queue(struct pci_dev *pdev) { return true; }
+static inline bool xe_configfs_get_bad_page_reservation(struct pci_dev *pdev) { return true; }
static inline u32 xe_configfs_get_ctx_restore_mid_bb(struct pci_dev *pdev,
enum xe_engine_class class,
const u32 **cs) { return 0; }
diff --git a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
index d9dc0e51e365..b884f876f55d 100644
--- a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
+++ b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
@@ -13,6 +13,7 @@
#include "regs/xe_regs.h"
#include "xe_bo.h"
+#include "xe_configfs.h"
#include "xe_device.h"
#include "xe_exec_queue.h"
#include "xe_lrc.h"
@@ -791,6 +792,7 @@ int xe_ttm_vram_handle_addr_fault(struct xe_device *xe, u64 addr)
struct xe_ttm_vram_mgr *vram_mgr;
struct xe_vram_region *vr;
struct gpu_buddy *mm;
+ bool policy;
vr = xe_ttm_vram_addr_to_region(xe, addr);
if (IS_ERR(vr)) {
@@ -810,6 +812,14 @@ int xe_ttm_vram_handle_addr_fault(struct xe_device *xe, u64 addr)
vram_mgr = &vr->ttm;
mm = &vram_mgr->mm;
+ policy = xe_configfs_get_bad_page_reservation(to_pci_dev(xe->drm.dev));
+ if (!policy) {
+ drm_err(&xe->drm, "0x%llx is reported as corrupted address by HW\n",
+ addr);
+ /* Let RAS report to FW to drop addr from SRAM queue */
+ return -EOPNOTSUPP;
+ }
+
/* Reserve page at address */
return xe_ttm_vram_reserve_page_at_addr(xe, addr, vram_mgr, mm);
}
--
2.52.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [PATCH V14 7/9] drm/xe/cri: Add sysfs interface for bad gpu vram pages
2026-07-30 10:11 [PATCH V14 0/9] Add memory page offlining support Tejas Upadhyay
` (5 preceding siblings ...)
2026-07-30 10:11 ` [PATCH V14 6/9] drm/xe/configfs: Add vram bad page reservation policy Tejas Upadhyay
@ 2026-07-30 10:11 ` Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 8/9] drm/xe/uapi: Expose ban reason in EXEC_QUEUE_GET_PROPERTY_BAN Tejas Upadhyay
` (5 subsequent siblings)
12 siblings, 0 replies; 17+ messages in thread
From: Tejas Upadhyay @ 2026-07-30 10:11 UTC (permalink / raw)
To: intel-xe; +Cc: himal.prasad.ghimiray, Tejas Upadhyay
Starting CRI, Include a sysfs interface designed to expose information
about bad VRAM pages—those identified as having hardware faults
(e.g., ECC errors). This interface allows userspace tools and
administrators to monitor the health of the GPU's local memory and
track the status of page retirement.To get details on bad gpu vram
pages can be found under /sys/bus/pci/devices/bdf/vram_bad_pages.
Where The format is, pfn : gpu page size : flags
flags:
R: reserved, this gpu page is reserved.
P: pending for reserve, this gpu page is marked as bad, will be reserved
in next window of page_reserve.
F: unable to reserve. this gpu page can't be reserved
due to some reasons.
For example if you read using cat /sys/bus/pci/devices/bdf/vram_bad_pages,
max_pages : 10000
0x00000000 : 0x00001000 : R
0x00001234 : 0x00001000 : P
v5(Sashiko):
- Add capacity of 10000(=max_pages) entries dump
v4:
- Use sysfs_emit_at() instead of scnprintf() to respect PAGE_SIZE
- Use list_first_entry_or_null() with continue to handle empty lists
- Use %016llx for full 64-bit address width
- Fix inverted P/F ternary (status ? F : P)
- Return err instead of 0 on device_create_file failure
- Remove redundant element_size/maxpage_size constants
v3:
- Move FW communication in RAS code
v2:
- Add max_pages info as per updated design doc
- Rebase
Signed-off-by: Tejas Upadhyay <tejas.upadhyay@intel.com>
---
drivers/gpu/drm/xe/xe_device_sysfs.c | 7 +
drivers/gpu/drm/xe/xe_ttm_vram_mgr.c | 144 +++++++++++++++++++++
drivers/gpu/drm/xe/xe_ttm_vram_mgr.h | 1 +
drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h | 2 +
4 files changed, 154 insertions(+)
diff --git a/drivers/gpu/drm/xe/xe_device_sysfs.c b/drivers/gpu/drm/xe/xe_device_sysfs.c
index a73e0e957cb0..47c5be4180fe 100644
--- a/drivers/gpu/drm/xe/xe_device_sysfs.c
+++ b/drivers/gpu/drm/xe/xe_device_sysfs.c
@@ -8,12 +8,14 @@
#include <linux/pci.h>
#include <linux/sysfs.h>
+#include "xe_configfs.h"
#include "xe_device.h"
#include "xe_device_sysfs.h"
#include "xe_mmio.h"
#include "xe_pcode_api.h"
#include "xe_pcode.h"
#include "xe_pm.h"
+#include "xe_ttm_vram_mgr.h"
/**
* DOC: Xe device sysfs
@@ -267,6 +269,7 @@ static const struct attribute_group auto_link_downgrade_attr_group = {
int xe_device_sysfs_init(struct xe_device *xe)
{
struct device *dev = xe->drm.dev;
+ bool policy;
int ret;
if (xe->d3cold.capable) {
@@ -285,5 +288,9 @@ int xe_device_sysfs_init(struct xe_device *xe)
return ret;
}
+ policy = xe_configfs_get_bad_page_reservation(to_pci_dev(dev));
+ if (xe->info.platform == XE_CRESCENTISLAND && policy)
+ xe_ttm_vram_sysfs_init(xe);
+
return 0;
}
diff --git a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
index b884f876f55d..ef9b7128f28a 100644
--- a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
+++ b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
@@ -824,3 +824,147 @@ int xe_ttm_vram_handle_addr_fault(struct xe_device *xe, u64 addr)
return xe_ttm_vram_reserve_page_at_addr(xe, addr, vram_mgr, mm);
}
EXPORT_SYMBOL(xe_ttm_vram_handle_addr_fault);
+
+static size_t serialize_bad_pages(struct xe_ttm_vram_mgr *mgr, char *buf, size_t max_len)
+{
+ struct xe_ttm_vram_offline_resource *pos;
+ struct gpu_buddy_block *block;
+ size_t s = 0;
+ int printed;
+ int count = 0;
+
+ lockdep_assert_held(&mgr->lock);
+
+ printed = scnprintf(buf + s, max_len - s, "max_pages: %d\n", mgr->max_pages);
+ s += printed;
+
+ list_for_each_entry(pos, &mgr->offlined_pages, offlined_link) {
+ if (count >= 10000 || s >= max_len)
+ break;
+
+ block = list_first_entry_or_null(&pos->blocks, struct gpu_buddy_block, link);
+ if (!block)
+ continue;
+
+ printed = scnprintf(buf + s, max_len - s, "0x%016llx : 0x%016llx : %c\n",
+ gpu_buddy_block_offset(block) >> PAGE_SHIFT,
+ gpu_buddy_block_size(&mgr->mm, block), 'R');
+ s += printed;
+ count++;
+ }
+ list_for_each_entry(pos, &mgr->queued_pages, queued_link) {
+ u64 pfn, blk_size;
+
+ if (count >= 10000 || s >= max_len)
+ break;
+
+ block = list_first_entry_or_null(&pos->blocks, struct gpu_buddy_block, link);
+ if (block) {
+ pfn = gpu_buddy_block_offset(block) >> PAGE_SHIFT;
+ blk_size = gpu_buddy_block_size(&mgr->mm, block);
+ } else {
+ pfn = pos->addr >> PAGE_SHIFT;
+ blk_size = PAGE_SIZE;
+ }
+
+ printed = scnprintf(buf + s, max_len - s, "0x%016llx : 0x%016llx : %c\n",
+ pfn, blk_size, pos->status ? 'F' : 'P');
+ s += printed;
+ count++;
+ }
+
+ return s;
+}
+
+static ssize_t vram_bad_pages_bin_read(struct file *filp, struct kobject *kobj,
+ const struct bin_attribute *attr, char *buf,
+ loff_t off, size_t count)
+{
+ struct device *dev = kobj_to_dev(kobj);
+ struct pci_dev *pdev = to_pci_dev(dev);
+ struct ttm_resource_manager *man;
+ struct xe_ttm_vram_mgr *mgr;
+ size_t allocation_size;
+ struct xe_device *xe;
+ size_t full_data_len;
+ int active_entries;
+ char *temp_buf;
+
+ xe = pdev_to_xe_device(pdev);
+ man = ttm_manager_type(&xe->ttm, XE_PL_VRAM0);
+ if (!man)
+ return -ENODEV;
+ mgr = to_xe_ttm_vram_mgr(man);
+
+ /* Snapshot entry count under lock, then allocate outside to avoid deadlock */
+ mutex_lock(&mgr->lock);
+ active_entries = mgr->n_offlined_pages + mgr->n_queued_pages;
+ mutex_unlock(&mgr->lock);
+
+ if (active_entries > 10000)
+ active_entries = 10000;
+
+ allocation_size = 64 + (active_entries * 48);
+
+ temp_buf = kvmalloc(allocation_size, GFP_KERNEL);
+ if (!temp_buf)
+ return -ENOMEM;
+
+ mutex_lock(&mgr->lock);
+ full_data_len = serialize_bad_pages(mgr, temp_buf, allocation_size);
+ mutex_unlock(&mgr->lock);
+
+ if (off >= full_data_len) {
+ kvfree(temp_buf);
+ return 0;
+ }
+
+ if (off + count > full_data_len)
+ count = full_data_len - off;
+
+ memcpy(buf, temp_buf + off, count);
+
+ kvfree(temp_buf);
+ return count;
+}
+
+static const struct bin_attribute bin_attr_vram_bad_pages = {
+ .attr = { .name = "vram_bad_pages", .mode = 0444 },
+ .read = vram_bad_pages_bin_read,
+ .size = 0,
+};
+
+static void xe_ttm_vram_sysfs_fini(void *arg)
+{
+ struct xe_device *xe = arg;
+ struct pci_dev *pdev = to_pci_dev(xe->drm.dev);
+
+ sysfs_remove_bin_file(&pdev->dev.kobj, &bin_attr_vram_bad_pages);
+}
+
+/**
+ * xe_ttm_vram_sysfs_init - Initialize vram bad pages sysfs binary file
+ * @xe: Xe Device object
+ *
+ * Creates a binary sysfs file under the PCI device for reading
+ * offlined and queued VRAM pages. Supports large entry counts
+ * via offset/count pagination.
+ *
+ * Returns: 0 on success, negative error code on error.
+ */
+int xe_ttm_vram_sysfs_init(struct xe_device *xe)
+{
+ struct pci_dev *pdev = to_pci_dev(xe->drm.dev);
+ int err;
+
+ err = sysfs_create_bin_file(&pdev->dev.kobj, &bin_attr_vram_bad_pages);
+ if (err) {
+ dev_err(&pdev->dev,
+ "Failed to create vram_bad_pages sysfs: %d\n",
+ err);
+ return err;
+ }
+
+ return devm_add_action_or_reset(&pdev->dev, xe_ttm_vram_sysfs_fini, xe);
+}
+EXPORT_SYMBOL(xe_ttm_vram_sysfs_init);
diff --git a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.h b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.h
index d5392beff30c..eb55b0f74ef3 100644
--- a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.h
+++ b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.h
@@ -32,6 +32,7 @@ void xe_ttm_vram_get_used(struct ttm_resource_manager *man,
u64 *used, u64 *used_visible);
int xe_ttm_vram_handle_addr_fault(struct xe_device *xe, u64 addr);
+int xe_ttm_vram_sysfs_init(struct xe_device *xe);
static inline struct xe_ttm_vram_mgr_resource *
to_xe_ttm_vram_mgr_resource(struct ttm_resource *res)
{
diff --git a/drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h b/drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h
index 815a601504d5..5f7c53d3a753 100644
--- a/drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h
+++ b/drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h
@@ -37,6 +37,8 @@ struct xe_ttm_vram_mgr {
struct mutex lock;
/** @mem_type: The TTM memory type */
u32 mem_type;
+ /** @max_pages: max pages that can be in offline queue retrieved from FW */
+ u16 max_pages;
};
/**
--
2.52.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [PATCH V14 8/9] drm/xe/uapi: Expose ban reason in EXEC_QUEUE_GET_PROPERTY_BAN
2026-07-30 10:11 [PATCH V14 0/9] Add memory page offlining support Tejas Upadhyay
` (6 preceding siblings ...)
2026-07-30 10:11 ` [PATCH V14 7/9] drm/xe/cri: Add sysfs interface for bad gpu vram pages Tejas Upadhyay
@ 2026-07-30 10:11 ` Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 9/9] drm/xe: Add fault-inject based VRAM page offline injection Tejas Upadhyay
` (4 subsequent siblings)
12 siblings, 0 replies; 17+ messages in thread
From: Tejas Upadhyay @ 2026-07-30 10:11 UTC (permalink / raw)
To: intel-xe
Cc: himal.prasad.ghimiray, Tejas Upadhyay, José Roberto de Souza,
Michal Mrozek
Extend DRM_XE_EXEC_QUEUE_GET_PROPERTY_BAN to return a bitmask indicating
the reason for the ban, rather than a simple boolean. This allows
userspace to distinguish between different ban causes:
- DRM_XE_EXEC_QUEUE_BAN_REASON_GPU_HANG (bit 0): exec queue was banned
due to a GPU hang or job timeout detected by the TDR.
- DRM_XE_EXEC_QUEUE_BAN_REASON_PAGE_OFFLINE (bit 1): exec queue was
banned because a VRAM page backing its resources was taken offline.
The ban_reason field is added to struct xe_exec_queue and set at the
point where the ban is triggered:
- In guc_exec_queue_timedout_job() for GPU hang.
- In xe_ttm_vram_purge_page() for memory page offline, before calling
xe_exec_queue_kill() or xe_vm_kill().
The reset_status op is updated to return u64 with the reason bitmask.
When a queue is banned but no explicit reason was recorded (e.g., from a
generic CAT error), it defaults to GPU_HANG for backward compatibility.
A value of 0 means the exec queue is not banned.
v2(Sashiko):
- Use atomic_t for ban_reason to fix concurrent updates from TDR and
page-offline
- Guard GPU_HANG bit with !exec_queue_killed to avoid masking
page-offline reason
- Clear ban_reason on queue recovery (clear_exec_queue_banned path)
- Use atomic_read in guc_exec_queue_reset_status for lockless read
Assisted-by: Copilot:claude-opus-4.6
Acked-by: José Roberto de Souza <jose.souza@intel.com>
Acked-by: Michal Mrozek <michal.mrozek@intel.com>
Signed-off-by: Tejas Upadhyay <tejas.upadhyay@intel.com>
---
drivers/gpu/drm/xe/xe_exec_queue_types.h | 7 ++++--
drivers/gpu/drm/xe/xe_execlist.c | 4 +--
drivers/gpu/drm/xe/xe_guc_submit.c | 32 ++++++++++++++++++++----
drivers/gpu/drm/xe/xe_ttm_vram_mgr.c | 10 +++++++-
include/uapi/drm/xe_drm.h | 12 ++++++++-
5 files changed, 54 insertions(+), 11 deletions(-)
diff --git a/drivers/gpu/drm/xe/xe_exec_queue_types.h b/drivers/gpu/drm/xe/xe_exec_queue_types.h
index 53b6c0bf4849..326c8aa4014c 100644
--- a/drivers/gpu/drm/xe/xe_exec_queue_types.h
+++ b/drivers/gpu/drm/xe/xe_exec_queue_types.h
@@ -149,6 +149,9 @@ struct xe_exec_queue {
*/
unsigned long flags;
+ /** @ban_reason: Bitmask of ban reasons (DRM_XE_EXEC_QUEUE_BAN_REASON_*) */
+ atomic_t ban_reason;
+
union {
/** @multi_gt_list: list head for VM bind engines if multi-GT */
struct list_head multi_gt_list;
@@ -343,8 +346,8 @@ struct xe_exec_queue_ops {
* signalled when this function is called.
*/
void (*resume)(struct xe_exec_queue *q);
- /** @reset_status: check exec queue reset status */
- bool (*reset_status)(struct xe_exec_queue *q);
+ /** @reset_status: check exec queue ban status, returns ban reason bitmask */
+ u64 (*reset_status)(struct xe_exec_queue *q);
};
#endif
diff --git a/drivers/gpu/drm/xe/xe_execlist.c b/drivers/gpu/drm/xe/xe_execlist.c
index cc33ae80e8cf..534e7c4e0099 100644
--- a/drivers/gpu/drm/xe/xe_execlist.c
+++ b/drivers/gpu/drm/xe/xe_execlist.c
@@ -452,10 +452,10 @@ static void execlist_exec_queue_resume(struct xe_exec_queue *q)
/* NIY */
}
-static bool execlist_exec_queue_reset_status(struct xe_exec_queue *q)
+static u64 execlist_exec_queue_reset_status(struct xe_exec_queue *q)
{
/* NIY */
- return false;
+ return 0;
}
static const struct xe_exec_queue_ops execlist_exec_queue_ops = {
diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
index 8aaed4fd13ea..bb92faf3e8c9 100644
--- a/drivers/gpu/drm/xe/xe_guc_submit.c
+++ b/drivers/gpu/drm/xe/xe_guc_submit.c
@@ -6,6 +6,7 @@
#include "xe_guc_submit.h"
#include <linux/bitfield.h>
+#include <uapi/drm/xe_drm.h>
#include <linux/bitmap.h>
#include <linux/circ_buf.h>
#include <linux/dma-fence-array.h>
@@ -1562,6 +1563,12 @@ guc_exec_queue_timedout_job(struct drm_sched_job *drm_job)
if (!exec_queue_killed(q))
wedged = guc_submit_hint_wedged(exec_queue_to_guc(q));
+ /*
+ * Only tag as GPU hang if this is the original timeout, not a
+ * consequence of a prior kill (e.g., page-offline).
+ */
+ if (!exec_queue_killed(q))
+ atomic_or(DRM_XE_EXEC_QUEUE_BAN_REASON_GPU_HANG, &q->ban_reason);
set_exec_queue_banned(q);
/* Kick job / queue off hardware */
@@ -1645,6 +1652,9 @@ guc_exec_queue_timedout_job(struct drm_sched_job *drm_job)
if (timeout_needs_gt_reset(q, job, skip_timeout_check)) {
if (!xe_sched_invalidate_job(job, 2)) {
clear_exec_queue_banned(q);
+ /* protect concurrent page offline reasons */
+ atomic_andnot(DRM_XE_EXEC_QUEUE_BAN_REASON_GPU_HANG,
+ &q->ban_reason);
xe_gt_reset_async(q->gt);
goto rearm;
}
@@ -2521,13 +2531,25 @@ static void guc_exec_queue_multi_queue_drop_suspend(struct xe_exec_queue *q)
}
}
-static bool guc_exec_queue_reset_status(struct xe_exec_queue *q)
+static u64 guc_exec_queue_reset_status(struct xe_exec_queue *q)
{
- if (xe_exec_queue_is_multi_queue_secondary(q) &&
- guc_exec_queue_reset_status(xe_exec_queue_multi_queue_primary(q)))
- return true;
+ if (xe_exec_queue_is_multi_queue_secondary(q)) {
+ u64 status = guc_exec_queue_reset_status(xe_exec_queue_multi_queue_primary(q));
- return exec_queue_reset(q) || exec_queue_killed_or_banned_or_wedged(q);
+ if (status)
+ return status;
+ }
+
+ if (exec_queue_reset(q) || exec_queue_killed_or_banned_or_wedged(q)) {
+ u64 reason = atomic_read_acquire(&q->ban_reason);
+
+ /* If no specific reason was recorded, default to GPU hang */
+ if (!reason)
+ reason = DRM_XE_EXEC_QUEUE_BAN_REASON_GPU_HANG;
+ return reason;
+ }
+
+ return 0;
}
/*
diff --git a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
index ef9b7128f28a..3f9cad4b1402 100644
--- a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
+++ b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
@@ -7,6 +7,7 @@
#include <drm/drm_managed.h>
#include <drm/drm_drv.h>
#include <drm/drm_buddy.h>
+#include <uapi/drm/xe_drm.h>
#include <drm/ttm/ttm_placement.h>
#include <drm/ttm/ttm_range_manager.h>
@@ -541,7 +542,12 @@ static int xe_ttm_vram_purge_page(struct xe_device *xe, struct xe_bo *bo)
xe_bo_unlock(bo);
/* Ban VM if BO is PPGTT */
if (vm && (flags & XE_BO_FLAG_PAGETABLE)) {
+ struct xe_exec_queue *eq;
+
down_write(&vm->lock);
+ list_for_each_entry(eq, &vm->preempt.exec_queues, lr.link)
+ atomic_or(DRM_XE_EXEC_QUEUE_BAN_REASON_PAGE_OFFLINE, &eq->ban_reason);
+ smp_wmb(); /* Force all queue bits to be visible before killing the VM */
xe_vm_kill(vm, true);
up_write(&vm->lock);
}
@@ -553,7 +559,9 @@ static int xe_ttm_vram_purge_page(struct xe_device *xe, struct xe_bo *bo)
/* Ban exec queue if BO is lrc */
if (q && xe_exec_queue_get_unless_zero(q)) {
/* ban queue */
- q_to_put = q;
+ atomic_or(DRM_XE_EXEC_QUEUE_BAN_REASON_PAGE_OFFLINE, &q->ban_reason);
+ smp_wmb(); /* Force bit change to finish before state change triggers */
+ q_to_put = q;
}
if (bo->purgeable.state == XE_MADV_PURGEABLE_PURGED) {
diff --git a/include/uapi/drm/xe_drm.h b/include/uapi/drm/xe_drm.h
index 509202a7b13e..1600e8f0885a 100644
--- a/include/uapi/drm/xe_drm.h
+++ b/include/uapi/drm/xe_drm.h
@@ -1503,7 +1503,17 @@ struct drm_xe_exec_queue_get_property {
/** @property: property to get */
__u32 property;
- /** @value: property value */
+ /**
+ * @value: property value
+ *
+ * For %DRM_XE_EXEC_QUEUE_GET_PROPERTY_BAN, this is a bitmask of:
+ * - %DRM_XE_EXEC_QUEUE_BAN_REASON_GPU_HANG - banned due to GPU hang/timeout
+ * - %DRM_XE_EXEC_QUEUE_BAN_REASON_PAGE_OFFLINE - banned due to memory page offline
+ *
+ * Value of 0 means the exec queue is not banned.
+ */
+#define DRM_XE_EXEC_QUEUE_BAN_REASON_GPU_HANG (1 << 0)
+#define DRM_XE_EXEC_QUEUE_BAN_REASON_PAGE_OFFLINE (1 << 1)
__u64 value;
/** @reserved: Reserved */
--
2.52.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* [PATCH V14 9/9] drm/xe: Add fault-inject based VRAM page offline injection
2026-07-30 10:11 [PATCH V14 0/9] Add memory page offlining support Tejas Upadhyay
` (7 preceding siblings ...)
2026-07-30 10:11 ` [PATCH V14 8/9] drm/xe/uapi: Expose ban reason in EXEC_QUEUE_GET_PROPERTY_BAN Tejas Upadhyay
@ 2026-07-30 10:11 ` Tejas Upadhyay
2026-07-30 10:18 ` ✗ CI.checkpatch: warning for Add memory page offlining support (rev16) Patchwork
` (3 subsequent siblings)
12 siblings, 0 replies; 17+ messages in thread
From: Tejas Upadhyay @ 2026-07-30 10:11 UTC (permalink / raw)
To: intel-xe; +Cc: himal.prasad.ghimiray, Tejas Upadhyay
Add a fault-inject based debugfs interface for testing VRAM page
offlining. This replaces the previous standalone debugfs approach
with the standard kernel fault-inject infrastructure.
Two debugfs entries are created under the xe debugfs root for
CRI platforms:
- inject_mempage_offline/: Standard fault-inject knobs (probability,
times, interval, etc.) — only available with
CONFIG_FAULT_INJECTION_DEBUG_FS
- inject_mempage_offline_trigger: Write a PFN value to inject a
specific page, or write "0" to auto-pick the last unallocated
VRAM page
The trigger accepts:
- "0" : auto-pick last unallocated page
- "0xPFN" : inject fault at a specific PFN address
On kernels with CONFIG_FAULT_INJECTION_DEBUG_FS, injection is gated
by should_fail() (probability/times must be configured first).
On kernels without it, the trigger always injects directly.
The injection reports the page as faulted via
xe_ttm_vram_handle_addr_fault(), exercising the full page offlining
path.
Usage (with CONFIG_FAULT_INJECTION_DEBUG_FS):
echo 100 > inject_mempage_offline/probability
echo 1 > inject_mempage_offline/times
echo 0 > inject_mempage_offline_trigger
Usage (without CONFIG_FAULT_INJECTION_DEBUG_FS):
echo 0 > inject_mempage_offline_trigger
v2(sashiko):
- use cond_resched()
- validate input first and fix addr < 0 case
- validate vr, move block, found var as local to scope_guard
Signed-off-by: Tejas Upadhyay <tejas.upadhyay@intel.com>
---
drivers/gpu/drm/xe/xe_debugfs.c | 50 ++++++++++++++++++++++++++
drivers/gpu/drm/xe/xe_debugfs.h | 2 ++
drivers/gpu/drm/xe/xe_ttm_vram_mgr.c | 52 ++++++++++++++++++++++++++++
drivers/gpu/drm/xe/xe_ttm_vram_mgr.h | 1 +
4 files changed, 105 insertions(+)
diff --git a/drivers/gpu/drm/xe/xe_debugfs.c b/drivers/gpu/drm/xe/xe_debugfs.c
index 8de78cd0aa03..58c07f7b14d2 100644
--- a/drivers/gpu/drm/xe/xe_debugfs.c
+++ b/drivers/gpu/drm/xe/xe_debugfs.c
@@ -31,6 +31,7 @@
#include "xe_sriov_vf.h"
#include "xe_step.h"
#include "xe_tile_debugfs.h"
+#include "xe_ttm_vram_mgr.h"
#include "xe_vsec.h"
#include "xe_wa.h"
@@ -42,12 +43,18 @@
DECLARE_FAULT_ATTR(gt_reset_failure);
DECLARE_FAULT_ATTR(inject_csc_hw_error);
+DECLARE_FAULT_ATTR(inject_mempage_offline);
static bool csc_hw_error_available(struct xe_device *xe)
{
return !IS_SRIOV_VF(xe) && xe->info.platform == XE_BATTLEMAGE;
}
+static bool is_crescent_island(struct xe_device *xe)
+{
+ return xe->info.platform == XE_CRESCENTISLAND;
+}
+
/*
* Fault injection table. Each entry registers a debugfs attribute; add a
* matching FAULT_ACTION() below for every entry added here.
@@ -62,6 +69,9 @@ static struct {
{ .name = "inject_csc_hw_error",
.attr = &inject_csc_hw_error,
.is_visible = csc_hw_error_available },
+ { .name = "inject_mempage_offline",
+ .attr = &inject_mempage_offline,
+ .is_visible = is_crescent_island },
};
/*
@@ -76,6 +86,41 @@ bool xe_fault_##name(void) \
FAULT_ACTION(gt_reset, gt_reset_failure)
FAULT_ACTION(csc_hw_error, inject_csc_hw_error)
+FAULT_ACTION(mempage_offline, inject_mempage_offline)
+
+static ssize_t inject_mempage_offline_trigger(struct file *f,
+ const char __user *ubuf,
+ size_t size, loff_t *pos)
+{
+ struct xe_device *xe = file_inode(f)->i_private;
+ struct xe_tile *tile = xe_device_get_root_tile(xe);
+ struct xe_vram_region *vr = tile->mem.vram;
+ u64 pfn;
+ int ret;
+
+ if (!vr)
+ return -ENODEV;
+
+ ret = kstrtou64_from_user(ubuf, size, 0, &pfn);
+ if (ret)
+ return ret;
+
+ if (IS_ENABLED(CONFIG_FAULT_INJECTION_DEBUG_FS) &&
+ !should_fail(&inject_mempage_offline, 1))
+ return size;
+
+ if (pfn == 0)
+ return xe_ttm_vram_inject_fault(xe) ?: size;
+
+ /* User provided PFN — convert to DPA and inject */
+ return xe_ttm_vram_handle_addr_fault(xe,
+ (pfn << PAGE_SHIFT) + vr->dpa_base) ?: size;
+}
+
+static const struct file_operations inject_mempage_offline_fops = {
+ .owner = THIS_MODULE,
+ .write = inject_mempage_offline_trigger,
+};
static void xe_fault_inject_debugfs_register(struct xe_device *xe,
struct dentry *root)
@@ -90,6 +135,11 @@ static void xe_fault_inject_debugfs_register(struct xe_device *xe,
fault_create_debugfs_attr(xe_fault_inject_entry[i].name, root,
xe_fault_inject_entry[i].attr);
}
+
+ if (is_crescent_island(xe)) {
+ debugfs_create_file("inject_mempage_offline_trigger", 0200,
+ root, xe, &inject_mempage_offline_fops);
+ }
}
static void read_residency_counter(struct xe_device *xe, struct xe_mmio *mmio,
diff --git a/drivers/gpu/drm/xe/xe_debugfs.h b/drivers/gpu/drm/xe/xe_debugfs.h
index cd56f7442b99..727747f13101 100644
--- a/drivers/gpu/drm/xe/xe_debugfs.h
+++ b/drivers/gpu/drm/xe/xe_debugfs.h
@@ -13,10 +13,12 @@ struct xe_device;
#ifdef CONFIG_DEBUG_FS
bool xe_fault_gt_reset(void);
bool xe_fault_csc_hw_error(void);
+bool xe_fault_mempage_offline(void);
void xe_debugfs_register(struct xe_device *xe);
#else
static inline bool xe_fault_gt_reset(void) { return false; }
static inline bool xe_fault_csc_hw_error(void) { return false; }
+static inline bool xe_fault_mempage_offline(void) { return false; }
static inline void xe_debugfs_register(struct xe_device *xe) { }
#endif
diff --git a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
index 3f9cad4b1402..849a400fad5d 100644
--- a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
+++ b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
@@ -833,6 +833,58 @@ int xe_ttm_vram_handle_addr_fault(struct xe_device *xe, u64 addr)
}
EXPORT_SYMBOL(xe_ttm_vram_handle_addr_fault);
+/**
+ * xe_ttm_vram_inject_fault - Inject a VRAM page fault for testing
+ * @xe: xe device instance
+ *
+ * Picks the last unallocated VRAM page and reports it as faulted
+ * via xe_ttm_vram_handle_addr_fault(). Used by the fault-inject
+ * debugfs interface for testing page offlining.
+ *
+ * Return: 0 on success, negative error code on failure.
+ */
+int xe_ttm_vram_inject_fault(struct xe_device *xe)
+{
+ struct xe_tile *tile = xe_device_get_root_tile(xe);
+ struct xe_vram_region *vr = tile->mem.vram;
+ struct xe_ttm_vram_mgr *vram_mgr = &vr->ttm;
+ struct gpu_buddy *mm = &vram_mgr->mm;
+ u64 addr;
+
+ if (vr->actual_physical_size < SZ_4K)
+ return -ENOSPC;
+
+ addr = vr->actual_physical_size - SZ_4K;
+ while (addr < vr->actual_physical_size) {
+ struct gpu_buddy_block *block;
+ bool found = false;
+
+ scoped_guard(mutex, &vram_mgr->lock) {
+ block = gpu_buddy_allocated_addr_to_block(mm, addr);
+ if (!block)
+ found = true;
+ }
+
+ /*
+ * Intentional race window: xe_ttm_vram_handle_addr_fault()
+ * re-acquires vram_mgr->lock internally, so we cannot hold
+ * it here. A concurrent allocation claiming this page between
+ * the two calls is an acceptable false negative for this
+ * test-only path.
+ */
+ if (found)
+ return xe_ttm_vram_handle_addr_fault(xe, addr + vr->dpa_base);
+
+ cond_resched();
+ if (addr == 0)
+ break;
+ addr -= SZ_4K;
+ }
+
+ return -ENOSPC;
+}
+EXPORT_SYMBOL(xe_ttm_vram_inject_fault);
+
static size_t serialize_bad_pages(struct xe_ttm_vram_mgr *mgr, char *buf, size_t max_len)
{
struct xe_ttm_vram_offline_resource *pos;
diff --git a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.h b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.h
index eb55b0f74ef3..9feb999a1f8d 100644
--- a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.h
+++ b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.h
@@ -32,6 +32,7 @@ void xe_ttm_vram_get_used(struct ttm_resource_manager *man,
u64 *used, u64 *used_visible);
int xe_ttm_vram_handle_addr_fault(struct xe_device *xe, u64 addr);
+int xe_ttm_vram_inject_fault(struct xe_device *xe);
int xe_ttm_vram_sysfs_init(struct xe_device *xe);
static inline struct xe_ttm_vram_mgr_resource *
to_xe_ttm_vram_mgr_resource(struct ttm_resource *res)
--
2.52.0
^ permalink raw reply related [flat|nested] 17+ messages in thread
* ✗ CI.checkpatch: warning for Add memory page offlining support (rev16)
2026-07-30 10:11 [PATCH V14 0/9] Add memory page offlining support Tejas Upadhyay
` (8 preceding siblings ...)
2026-07-30 10:11 ` [PATCH V14 9/9] drm/xe: Add fault-inject based VRAM page offline injection Tejas Upadhyay
@ 2026-07-30 10:18 ` Patchwork
2026-07-30 10:19 ` ✓ CI.KUnit: success " Patchwork
` (2 subsequent siblings)
12 siblings, 0 replies; 17+ messages in thread
From: Patchwork @ 2026-07-30 10:18 UTC (permalink / raw)
To: Tejas Upadhyay; +Cc: intel-xe
== Series Details ==
Series: Add memory page offlining support (rev16)
URL : https://patchwork.freedesktop.org/series/161473/
State : warning
== Summary ==
+ KERNEL=/kernel
+ git clone https://gitlab.freedesktop.org/drm/maintainer-tools mt
Cloning into 'mt'...
warning: redirecting to https://gitlab.freedesktop.org/drm/maintainer-tools.git/
+ git -C mt rev-list -n1 origin/master
061140b9bc586ae7f40abc1249c97e1cc72d1b9d
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ git log -n1
commit 5f79b71c6d86e69074cdae08b0011e0d16fc477e
Author: Tejas Upadhyay <tejas.upadhyay@intel.com>
Date: Thu Jul 30 15:41:31 2026 +0530
drm/xe: Add fault-inject based VRAM page offline injection
Add a fault-inject based debugfs interface for testing VRAM page
offlining. This replaces the previous standalone debugfs approach
with the standard kernel fault-inject infrastructure.
Two debugfs entries are created under the xe debugfs root for
CRI platforms:
- inject_mempage_offline/: Standard fault-inject knobs (probability,
times, interval, etc.) — only available with
CONFIG_FAULT_INJECTION_DEBUG_FS
- inject_mempage_offline_trigger: Write a PFN value to inject a
specific page, or write "0" to auto-pick the last unallocated
VRAM page
The trigger accepts:
- "0" : auto-pick last unallocated page
- "0xPFN" : inject fault at a specific PFN address
On kernels with CONFIG_FAULT_INJECTION_DEBUG_FS, injection is gated
by should_fail() (probability/times must be configured first).
On kernels without it, the trigger always injects directly.
The injection reports the page as faulted via
xe_ttm_vram_handle_addr_fault(), exercising the full page offlining
path.
Usage (with CONFIG_FAULT_INJECTION_DEBUG_FS):
echo 100 > inject_mempage_offline/probability
echo 1 > inject_mempage_offline/times
echo 0 > inject_mempage_offline_trigger
Usage (without CONFIG_FAULT_INJECTION_DEBUG_FS):
echo 0 > inject_mempage_offline_trigger
v2(sashiko):
- use cond_resched()
- validate input first and fix addr < 0 case
- validate vr, move block, found var as local to scope_guard
Signed-off-by: Tejas Upadhyay <tejas.upadhyay@intel.com>
+ /mt/dim checkpatch 5e24f68d311764bf343f9def49b752b509dfd5fd drm-intel
76cf3604040c drm/xe: Link VRAM object with gpu buddy
805f3444d0c6 drm/gpu: Add gpu_buddy_allocated_addr_to_block helper
f3a511f775fa drm/xe: Link LRC BO and its execution Queue
d378b1954c92 drm/xe: Extend BO purge to handle vram pages as well
f2692dfed6ae drm/xe: Handle physical memory address error
62dc6ec4e57c drm/xe/configfs: Add vram bad page reservation policy
7c55e51de9f3 drm/xe/cri: Add sysfs interface for bad gpu vram pages
e6d021690468 drm/xe/uapi: Expose ban reason in EXEC_QUEUE_GET_PROPERTY_BAN
-:180: ERROR:CODE_INDENT: code indent should use tabs where possible
#180: FILE: drivers/gpu/drm/xe/xe_ttm_vram_mgr.c:562:
+ atomic_or(DRM_XE_EXEC_QUEUE_BAN_REASON_PAGE_OFFLINE, &q->ban_reason);$
-:180: WARNING:LEADING_SPACE: please, no spaces at the start of a line
#180: FILE: drivers/gpu/drm/xe/xe_ttm_vram_mgr.c:562:
+ atomic_or(DRM_XE_EXEC_QUEUE_BAN_REASON_PAGE_OFFLINE, &q->ban_reason);$
-:181: ERROR:CODE_INDENT: code indent should use tabs where possible
#181: FILE: drivers/gpu/drm/xe/xe_ttm_vram_mgr.c:563:
+ smp_wmb(); /* Force bit change to finish before state change triggers */$
-:181: WARNING:LEADING_SPACE: please, no spaces at the start of a line
#181: FILE: drivers/gpu/drm/xe/xe_ttm_vram_mgr.c:563:
+ smp_wmb(); /* Force bit change to finish before state change triggers */$
-:182: ERROR:CODE_INDENT: code indent should use tabs where possible
#182: FILE: drivers/gpu/drm/xe/xe_ttm_vram_mgr.c:564:
+ q_to_put = q;$
-:182: WARNING:LEADING_SPACE: please, no spaces at the start of a line
#182: FILE: drivers/gpu/drm/xe/xe_ttm_vram_mgr.c:564:
+ q_to_put = q;$
total: 3 errors, 3 warnings, 0 checks, 136 lines checked
5f79b71c6d86 drm/xe: Add fault-inject based VRAM page offline injection
^ permalink raw reply [flat|nested] 17+ messages in thread
* ✓ CI.KUnit: success for Add memory page offlining support (rev16)
2026-07-30 10:11 [PATCH V14 0/9] Add memory page offlining support Tejas Upadhyay
` (9 preceding siblings ...)
2026-07-30 10:18 ` ✗ CI.checkpatch: warning for Add memory page offlining support (rev16) Patchwork
@ 2026-07-30 10:19 ` Patchwork
2026-07-30 11:04 ` ✓ Xe.CI.BAT: " Patchwork
2026-07-30 12:10 ` ✓ Xe.CI.FULL: " Patchwork
12 siblings, 0 replies; 17+ messages in thread
From: Patchwork @ 2026-07-30 10:19 UTC (permalink / raw)
To: Tejas Upadhyay; +Cc: intel-xe
== Series Details ==
Series: Add memory page offlining support (rev16)
URL : https://patchwork.freedesktop.org/series/161473/
State : success
== Summary ==
+ trap cleanup EXIT
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/xe/.kunitconfig
[10:18:15] Configuring KUnit Kernel ...
Generating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[10:18:19] 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
[10:18:51] Starting KUnit Kernel (1/1)...
[10:18:51] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[10:18:52] ================== guc_buf (11 subtests) ===================
[10:18:52] [PASSED] test_smallest
[10:18:52] [PASSED] test_largest
[10:18:52] [PASSED] test_granular
[10:18:52] [PASSED] test_unique
[10:18:52] [PASSED] test_overlap
[10:18:52] [PASSED] test_reusable
[10:18:52] [PASSED] test_too_big
[10:18:52] [PASSED] test_flush
[10:18:52] [PASSED] test_lookup
[10:18:52] [PASSED] test_data
[10:18:52] [PASSED] test_class
[10:18:52] ===================== [PASSED] guc_buf =====================
[10:18:52] =================== guc_dbm (7 subtests) ===================
[10:18:52] [PASSED] test_empty
[10:18:52] [PASSED] test_default
[10:18:52] ======================== test_size ========================
[10:18:52] [PASSED] 4
[10:18:52] [PASSED] 8
[10:18:52] [PASSED] 32
[10:18:52] [PASSED] 256
[10:18:52] ==================== [PASSED] test_size ====================
[10:18:52] ======================= test_reuse ========================
[10:18:52] [PASSED] 4
[10:18:52] [PASSED] 8
[10:18:52] [PASSED] 32
[10:18:52] [PASSED] 256
[10:18:52] =================== [PASSED] test_reuse ====================
[10:18:52] =================== test_range_overlap ====================
[10:18:52] [PASSED] 4
[10:18:52] [PASSED] 8
[10:18:52] [PASSED] 32
[10:18:52] [PASSED] 256
[10:18:52] =============== [PASSED] test_range_overlap ================
[10:18:52] =================== test_range_compact ====================
[10:18:52] [PASSED] 4
[10:18:52] [PASSED] 8
[10:18:52] [PASSED] 32
[10:18:52] [PASSED] 256
[10:18:52] =============== [PASSED] test_range_compact ================
[10:18:52] ==================== test_range_spare =====================
[10:18:52] [PASSED] 4
[10:18:52] [PASSED] 8
[10:18:52] [PASSED] 32
[10:18:52] [PASSED] 256
[10:18:52] ================ [PASSED] test_range_spare =================
[10:18:52] ===================== [PASSED] guc_dbm =====================
[10:18:52] =================== guc_idm (6 subtests) ===================
[10:18:52] [PASSED] bad_init
[10:18:52] [PASSED] no_init
[10:18:52] [PASSED] init_fini
[10:18:52] [PASSED] check_used
[10:18:52] [PASSED] check_quota
[10:18:52] [PASSED] check_all
[10:18:52] ===================== [PASSED] guc_idm =====================
[10:18:52] =============== guc_klv_helpers (9 subtests) ===============
[10:18:52] [PASSED] test_count
[10:18:52] [PASSED] test_encode_u32
[10:18:52] [PASSED] test_encode_u64
[10:18:52] [PASSED] test_encode_string
[10:18:52] [PASSED] test_encode_object_raw
[10:18:52] [PASSED] test_encode_object_klv
[10:18:52] [PASSED] test_encode_object_nested
[10:18:52] [PASSED] test_encode_object_basic
[10:18:52] [PASSED] test_print
[10:18:52] ================= [PASSED] guc_klv_helpers =================
[10:18:52] ================== no_relay (3 subtests) ===================
[10:18:52] [PASSED] xe_drops_guc2pf_if_not_ready
[10:18:52] [PASSED] xe_drops_guc2vf_if_not_ready
[10:18:52] [PASSED] xe_rejects_send_if_not_ready
[10:18:52] ==================== [PASSED] no_relay =====================
[10:18:52] ================== pf_relay (14 subtests) ==================
[10:18:52] [PASSED] pf_rejects_guc2pf_too_short
[10:18:52] [PASSED] pf_rejects_guc2pf_too_long
[10:18:52] [PASSED] pf_rejects_guc2pf_no_payload
[10:18:52] [PASSED] pf_fails_no_payload
[10:18:52] [PASSED] pf_fails_bad_origin
[10:18:52] [PASSED] pf_fails_bad_type
[10:18:52] [PASSED] pf_txn_reports_error
[10:18:52] [PASSED] pf_txn_sends_pf2guc
[10:18:52] [PASSED] pf_sends_pf2guc
[10:18:52] [SKIPPED] pf_loopback_nop (requires CONFIG_DRM_XE_DEBUG_SRIOV)
[10:18:52] [SKIPPED] pf_loopback_echo (requires CONFIG_DRM_XE_DEBUG_SRIOV)
[10:18:52] [SKIPPED] pf_loopback_fail (requires CONFIG_DRM_XE_DEBUG_SRIOV)
[10:18:52] [SKIPPED] pf_loopback_busy (requires CONFIG_DRM_XE_DEBUG_SRIOV)
[10:18:52] [SKIPPED] pf_loopback_retry (requires CONFIG_DRM_XE_DEBUG_SRIOV)
[10:18:52] ==================== [PASSED] pf_relay =====================
[10:18:52] ================== vf_relay (3 subtests) ===================
[10:18:52] [PASSED] vf_rejects_guc2vf_too_short
[10:18:52] [PASSED] vf_rejects_guc2vf_too_long
[10:18:52] [PASSED] vf_rejects_guc2vf_no_payload
[10:18:52] ==================== [PASSED] vf_relay =====================
[10:18:52] ================ pf_gt_config (9 subtests) =================
[10:18:52] [PASSED] fair_contexts_1vf
[10:18:52] [PASSED] fair_doorbells_1vf
[10:18:52] [PASSED] fair_ggtt_1vf
[10:18:52] ====================== fair_vram_1vf ======================
[10:18:52] [PASSED] 3.50 GiB
[10:18:52] [PASSED] 11.5 GiB
[10:18:52] [PASSED] 15.5 GiB
[10:18:52] [PASSED] 31.5 GiB
[10:18:52] [PASSED] 63.5 GiB
[10:18:52] [PASSED] 1.91 GiB
[10:18:52] ================== [PASSED] fair_vram_1vf ==================
[10:18:52] ================ fair_vram_1vf_admin_only =================
[10:18:52] [PASSED] 3.50 GiB
[10:18:52] [PASSED] 11.5 GiB
[10:18:52] [PASSED] 15.5 GiB
[10:18:52] [PASSED] 31.5 GiB
[10:18:52] [PASSED] 63.5 GiB
[10:18:52] [PASSED] 1.91 GiB
[10:18:52] ============ [PASSED] fair_vram_1vf_admin_only =============
[10:18:52] ====================== fair_contexts ======================
[10:18:52] [PASSED] 1 VF
[10:18:52] [PASSED] 2 VFs
[10:18:52] [PASSED] 3 VFs
[10:18:52] [PASSED] 4 VFs
[10:18:52] [PASSED] 5 VFs
[10:18:52] [PASSED] 6 VFs
[10:18:52] [PASSED] 7 VFs
[10:18:52] [PASSED] 8 VFs
[10:18:52] [PASSED] 9 VFs
[10:18:52] [PASSED] 10 VFs
[10:18:52] [PASSED] 11 VFs
[10:18:52] [PASSED] 12 VFs
[10:18:52] [PASSED] 13 VFs
[10:18:52] [PASSED] 14 VFs
[10:18:52] [PASSED] 15 VFs
[10:18:52] [PASSED] 16 VFs
[10:18:52] [PASSED] 17 VFs
[10:18:52] [PASSED] 18 VFs
[10:18:52] [PASSED] 19 VFs
[10:18:52] [PASSED] 20 VFs
[10:18:52] [PASSED] 21 VFs
[10:18:52] [PASSED] 22 VFs
[10:18:52] [PASSED] 23 VFs
[10:18:52] [PASSED] 24 VFs
[10:18:52] [PASSED] 25 VFs
[10:18:52] [PASSED] 26 VFs
[10:18:52] [PASSED] 27 VFs
[10:18:52] [PASSED] 28 VFs
[10:18:52] [PASSED] 29 VFs
[10:18:52] [PASSED] 30 VFs
[10:18:52] [PASSED] 31 VFs
[10:18:52] [PASSED] 32 VFs
[10:18:52] [PASSED] 33 VFs
[10:18:52] [PASSED] 34 VFs
[10:18:52] [PASSED] 35 VFs
[10:18:52] [PASSED] 36 VFs
[10:18:52] [PASSED] 37 VFs
[10:18:52] [PASSED] 38 VFs
[10:18:52] [PASSED] 39 VFs
[10:18:52] [PASSED] 40 VFs
[10:18:52] [PASSED] 41 VFs
[10:18:52] [PASSED] 42 VFs
[10:18:52] [PASSED] 43 VFs
[10:18:52] [PASSED] 44 VFs
[10:18:52] [PASSED] 45 VFs
[10:18:52] [PASSED] 46 VFs
[10:18:52] [PASSED] 47 VFs
[10:18:52] [PASSED] 48 VFs
[10:18:52] [PASSED] 49 VFs
[10:18:52] [PASSED] 50 VFs
[10:18:52] [PASSED] 51 VFs
[10:18:52] [PASSED] 52 VFs
[10:18:52] [PASSED] 53 VFs
[10:18:52] [PASSED] 54 VFs
[10:18:52] [PASSED] 55 VFs
[10:18:52] [PASSED] 56 VFs
[10:18:52] [PASSED] 57 VFs
[10:18:52] [PASSED] 58 VFs
[10:18:52] [PASSED] 59 VFs
[10:18:52] [PASSED] 60 VFs
[10:18:52] [PASSED] 61 VFs
[10:18:52] [PASSED] 62 VFs
[10:18:52] [PASSED] 63 VFs
[10:18:52] ================== [PASSED] fair_contexts ==================
[10:18:52] ===================== fair_doorbells ======================
[10:18:52] [PASSED] 1 VF
[10:18:52] [PASSED] 2 VFs
[10:18:52] [PASSED] 3 VFs
[10:18:52] [PASSED] 4 VFs
[10:18:52] [PASSED] 5 VFs
[10:18:52] [PASSED] 6 VFs
[10:18:52] [PASSED] 7 VFs
[10:18:52] [PASSED] 8 VFs
[10:18:52] [PASSED] 9 VFs
[10:18:52] [PASSED] 10 VFs
[10:18:52] [PASSED] 11 VFs
[10:18:52] [PASSED] 12 VFs
[10:18:52] [PASSED] 13 VFs
[10:18:52] [PASSED] 14 VFs
[10:18:52] [PASSED] 15 VFs
[10:18:52] [PASSED] 16 VFs
[10:18:52] [PASSED] 17 VFs
[10:18:52] [PASSED] 18 VFs
[10:18:52] [PASSED] 19 VFs
[10:18:52] [PASSED] 20 VFs
[10:18:52] [PASSED] 21 VFs
[10:18:52] [PASSED] 22 VFs
[10:18:52] [PASSED] 23 VFs
[10:18:52] [PASSED] 24 VFs
[10:18:52] [PASSED] 25 VFs
[10:18:52] [PASSED] 26 VFs
[10:18:52] [PASSED] 27 VFs
[10:18:52] [PASSED] 28 VFs
[10:18:52] [PASSED] 29 VFs
[10:18:52] [PASSED] 30 VFs
[10:18:52] [PASSED] 31 VFs
[10:18:52] [PASSED] 32 VFs
[10:18:52] [PASSED] 33 VFs
[10:18:52] [PASSED] 34 VFs
[10:18:52] [PASSED] 35 VFs
[10:18:52] [PASSED] 36 VFs
[10:18:52] [PASSED] 37 VFs
[10:18:52] [PASSED] 38 VFs
[10:18:52] [PASSED] 39 VFs
[10:18:52] [PASSED] 40 VFs
[10:18:52] [PASSED] 41 VFs
[10:18:52] [PASSED] 42 VFs
[10:18:52] [PASSED] 43 VFs
[10:18:52] [PASSED] 44 VFs
[10:18:52] [PASSED] 45 VFs
[10:18:52] [PASSED] 46 VFs
[10:18:52] [PASSED] 47 VFs
[10:18:52] [PASSED] 48 VFs
[10:18:52] [PASSED] 49 VFs
[10:18:52] [PASSED] 50 VFs
[10:18:52] [PASSED] 51 VFs
[10:18:52] [PASSED] 52 VFs
[10:18:52] [PASSED] 53 VFs
[10:18:52] [PASSED] 54 VFs
[10:18:52] [PASSED] 55 VFs
[10:18:52] [PASSED] 56 VFs
[10:18:52] [PASSED] 57 VFs
[10:18:52] [PASSED] 58 VFs
[10:18:52] [PASSED] 59 VFs
[10:18:52] [PASSED] 60 VFs
[10:18:52] [PASSED] 61 VFs
[10:18:52] [PASSED] 62 VFs
[10:18:52] [PASSED] 63 VFs
[10:18:52] ================= [PASSED] fair_doorbells ==================
[10:18:52] ======================== fair_ggtt ========================
[10:18:52] [PASSED] 1 VF
[10:18:52] [PASSED] 2 VFs
[10:18:52] [PASSED] 3 VFs
[10:18:52] [PASSED] 4 VFs
[10:18:52] [PASSED] 5 VFs
[10:18:52] [PASSED] 6 VFs
[10:18:52] [PASSED] 7 VFs
[10:18:52] [PASSED] 8 VFs
[10:18:52] [PASSED] 9 VFs
[10:18:52] [PASSED] 10 VFs
[10:18:52] [PASSED] 11 VFs
[10:18:52] [PASSED] 12 VFs
[10:18:52] [PASSED] 13 VFs
[10:18:52] [PASSED] 14 VFs
[10:18:52] [PASSED] 15 VFs
[10:18:52] [PASSED] 16 VFs
[10:18:52] [PASSED] 17 VFs
[10:18:52] [PASSED] 18 VFs
[10:18:52] [PASSED] 19 VFs
[10:18:52] [PASSED] 20 VFs
[10:18:52] [PASSED] 21 VFs
[10:18:52] [PASSED] 22 VFs
[10:18:52] [PASSED] 23 VFs
[10:18:52] [PASSED] 24 VFs
[10:18:52] [PASSED] 25 VFs
[10:18:52] [PASSED] 26 VFs
[10:18:52] [PASSED] 27 VFs
[10:18:52] [PASSED] 28 VFs
[10:18:52] [PASSED] 29 VFs
[10:18:52] [PASSED] 30 VFs
[10:18:52] [PASSED] 31 VFs
[10:18:52] [PASSED] 32 VFs
[10:18:52] [PASSED] 33 VFs
[10:18:52] [PASSED] 34 VFs
[10:18:52] [PASSED] 35 VFs
[10:18:52] [PASSED] 36 VFs
[10:18:52] [PASSED] 37 VFs
[10:18:52] [PASSED] 38 VFs
[10:18:52] [PASSED] 39 VFs
[10:18:52] [PASSED] 40 VFs
[10:18:52] [PASSED] 41 VFs
[10:18:52] [PASSED] 42 VFs
[10:18:52] [PASSED] 43 VFs
[10:18:52] [PASSED] 44 VFs
[10:18:52] [PASSED] 45 VFs
[10:18:52] [PASSED] 46 VFs
[10:18:52] [PASSED] 47 VFs
[10:18:52] [PASSED] 48 VFs
[10:18:52] [PASSED] 49 VFs
[10:18:52] [PASSED] 50 VFs
[10:18:52] [PASSED] 51 VFs
[10:18:52] [PASSED] 52 VFs
[10:18:52] [PASSED] 53 VFs
[10:18:52] [PASSED] 54 VFs
[10:18:52] [PASSED] 55 VFs
[10:18:52] [PASSED] 56 VFs
[10:18:52] [PASSED] 57 VFs
[10:18:52] [PASSED] 58 VFs
[10:18:52] [PASSED] 59 VFs
[10:18:52] [PASSED] 60 VFs
[10:18:52] [PASSED] 61 VFs
[10:18:52] [PASSED] 62 VFs
[10:18:52] [PASSED] 63 VFs
[10:18:52] ==================== [PASSED] fair_ggtt ====================
[10:18:52] ======================== fair_vram ========================
[10:18:52] [PASSED] 1 VF
[10:18:52] [PASSED] 2 VFs
[10:18:52] [PASSED] 3 VFs
[10:18:52] [PASSED] 4 VFs
[10:18:52] [PASSED] 5 VFs
[10:18:52] [PASSED] 6 VFs
[10:18:52] [PASSED] 7 VFs
[10:18:52] [PASSED] 8 VFs
[10:18:52] [PASSED] 9 VFs
[10:18:52] [PASSED] 10 VFs
[10:18:52] [PASSED] 11 VFs
[10:18:52] [PASSED] 12 VFs
[10:18:52] [PASSED] 13 VFs
[10:18:52] [PASSED] 14 VFs
[10:18:52] [PASSED] 15 VFs
[10:18:52] [PASSED] 16 VFs
[10:18:52] [PASSED] 17 VFs
[10:18:52] [PASSED] 18 VFs
[10:18:52] [PASSED] 19 VFs
[10:18:52] [PASSED] 20 VFs
[10:18:52] [PASSED] 21 VFs
[10:18:52] [PASSED] 22 VFs
[10:18:52] [PASSED] 23 VFs
[10:18:52] [PASSED] 24 VFs
[10:18:52] [PASSED] 25 VFs
[10:18:52] [PASSED] 26 VFs
[10:18:52] [PASSED] 27 VFs
[10:18:52] [PASSED] 28 VFs
[10:18:52] [PASSED] 29 VFs
[10:18:52] [PASSED] 30 VFs
[10:18:52] [PASSED] 31 VFs
[10:18:52] [PASSED] 32 VFs
[10:18:52] [PASSED] 33 VFs
[10:18:52] [PASSED] 34 VFs
[10:18:52] [PASSED] 35 VFs
[10:18:52] [PASSED] 36 VFs
[10:18:52] [PASSED] 37 VFs
[10:18:52] [PASSED] 38 VFs
[10:18:52] [PASSED] 39 VFs
[10:18:52] [PASSED] 40 VFs
[10:18:52] [PASSED] 41 VFs
[10:18:52] [PASSED] 42 VFs
[10:18:52] [PASSED] 43 VFs
[10:18:52] [PASSED] 44 VFs
[10:18:52] [PASSED] 45 VFs
[10:18:52] [PASSED] 46 VFs
[10:18:52] [PASSED] 47 VFs
[10:18:52] [PASSED] 48 VFs
[10:18:52] [PASSED] 49 VFs
[10:18:52] [PASSED] 50 VFs
[10:18:52] [PASSED] 51 VFs
[10:18:52] [PASSED] 52 VFs
[10:18:52] [PASSED] 53 VFs
[10:18:52] [PASSED] 54 VFs
[10:18:52] [PASSED] 55 VFs
[10:18:52] [PASSED] 56 VFs
[10:18:52] [PASSED] 57 VFs
[10:18:52] [PASSED] 58 VFs
[10:18:52] [PASSED] 59 VFs
[10:18:52] [PASSED] 60 VFs
[10:18:52] [PASSED] 61 VFs
[10:18:52] [PASSED] 62 VFs
[10:18:52] [PASSED] 63 VFs
[10:18:52] ==================== [PASSED] fair_vram ====================
[10:18:52] ================== [PASSED] pf_gt_config ===================
[10:18:52] ===================== lmtt (1 subtest) =====================
[10:18:52] ======================== test_ops =========================
[10:18:52] [PASSED] 2-level
[10:18:52] [PASSED] multi-level
[10:18:52] ==================== [PASSED] test_ops =====================
[10:18:52] ====================== [PASSED] lmtt =======================
[10:18:52] ================= sriov_packet (1 subtest) =================
[10:18:52] [PASSED] test_descriptor_init
[10:18:52] ================== [PASSED] sriov_packet ===================
[10:18:52] ================= pf_service (11 subtests) =================
[10:18:52] [PASSED] pf_negotiate_any
[10:18:52] [PASSED] pf_negotiate_base_match
[10:18:52] [PASSED] pf_negotiate_base_newer
[10:18:52] [PASSED] pf_negotiate_base_next
[10:18:52] [SKIPPED] pf_negotiate_base_older (no older minor)
[10:18:52] [PASSED] pf_negotiate_base_prev
[10:18:52] [PASSED] pf_negotiate_latest_match
[10:18:52] [PASSED] pf_negotiate_latest_newer
[10:18:52] [PASSED] pf_negotiate_latest_next
[10:18:52] [SKIPPED] pf_negotiate_latest_older (no older minor)
[10:18:52] [SKIPPED] pf_negotiate_latest_prev (no prev major)
[10:18:52] =================== [PASSED] pf_service ====================
[10:18:52] ================= xe_guc_g2g (2 subtests) ==================
[10:18:52] ============== xe_live_guc_g2g_kunit_default ==============
[10:18:52] ========= [SKIPPED] xe_live_guc_g2g_kunit_default ==========
[10:18:52] ============== xe_live_guc_g2g_kunit_allmem ===============
[10:18:52] ========== [SKIPPED] xe_live_guc_g2g_kunit_allmem ==========
[10:18:52] =================== [SKIPPED] xe_guc_g2g ===================
[10:18:52] =================== xe_mocs (2 subtests) ===================
[10:18:52] ================ xe_live_mocs_kernel_kunit ================
[10:18:52] =========== [SKIPPED] xe_live_mocs_kernel_kunit ============
[10:18:52] ================ xe_live_mocs_reset_kunit =================
[10:18:52] ============ [SKIPPED] xe_live_mocs_reset_kunit ============
[10:18:52] ==================== [SKIPPED] xe_mocs =====================
[10:18:52] ================= xe_migrate (2 subtests) ==================
[10:18:52] ================= xe_migrate_sanity_kunit =================
[10:18:52] ============ [SKIPPED] xe_migrate_sanity_kunit =============
[10:18:52] ================== xe_validate_ccs_kunit ==================
[10:18:52] ============= [SKIPPED] xe_validate_ccs_kunit ==============
[10:18:52] =================== [SKIPPED] xe_migrate ===================
[10:18:52] ================== xe_dma_buf (1 subtest) ==================
[10:18:52] ==================== xe_dma_buf_kunit =====================
[10:18:52] ================ [SKIPPED] xe_dma_buf_kunit ================
[10:18:52] =================== [SKIPPED] xe_dma_buf ===================
[10:18:52] ================= xe_bo_shrink (1 subtest) =================
[10:18:52] =================== xe_bo_shrink_kunit ====================
[10:18:52] =============== [SKIPPED] xe_bo_shrink_kunit ===============
[10:18:52] ================== [SKIPPED] xe_bo_shrink ==================
[10:18:52] ==================== xe_bo (2 subtests) ====================
[10:18:52] ================== xe_ccs_migrate_kunit ===================
[10:18:52] ============== [SKIPPED] xe_ccs_migrate_kunit ==============
[10:18:52] ==================== xe_bo_evict_kunit ====================
[10:18:52] =============== [SKIPPED] xe_bo_evict_kunit ================
[10:18:52] ===================== [SKIPPED] xe_bo ======================
[10:18:52] ==================== args (13 subtests) ====================
[10:18:52] [PASSED] count_args_test
[10:18:52] [PASSED] call_args_example
[10:18:52] [PASSED] call_args_test
[10:18:52] [PASSED] drop_first_arg_example
[10:18:52] [PASSED] drop_first_arg_test
[10:18:52] [PASSED] first_arg_example
[10:18:52] [PASSED] first_arg_test
[10:18:52] [PASSED] last_arg_example
[10:18:52] [PASSED] last_arg_test
[10:18:52] [PASSED] pick_arg_example
[10:18:52] [PASSED] if_args_example
[10:18:52] [PASSED] if_args_test
[10:18:52] [PASSED] sep_comma_example
[10:18:52] ====================== [PASSED] args =======================
[10:18:52] =================== xe_pci (3 subtests) ====================
[10:18:52] ==================== check_graphics_ip ====================
[10:18:52] [PASSED] 12.00 Xe_LP
[10:18:52] [PASSED] 12.10 Xe_LP+
[10:18:52] [PASSED] 12.55 Xe_HPG
[10:18:52] [PASSED] 12.60 Xe_HPC
[10:18:52] [PASSED] 12.70 Xe_LPG
[10:18:52] [PASSED] 12.71 Xe_LPG
[10:18:52] [PASSED] 12.74 Xe_LPG+
[10:18:52] [PASSED] 20.01 Xe2_HPG
[10:18:52] [PASSED] 20.02 Xe2_HPG
[10:18:52] [PASSED] 20.04 Xe2_LPG
[10:18:52] [PASSED] 30.00 Xe3_LPG
[10:18:52] [PASSED] 30.01 Xe3_LPG
[10:18:52] [PASSED] 30.03 Xe3_LPG
[10:18:52] [PASSED] 30.04 Xe3_LPG
[10:18:52] [PASSED] 30.05 Xe3_LPG
[10:18:52] [PASSED] 35.10 Xe3p_LPG
[10:18:52] [PASSED] 35.11 Xe3p_XPC
[10:18:52] ================ [PASSED] check_graphics_ip ================
[10:18:52] ===================== check_media_ip ======================
[10:18:52] [PASSED] 12.00 Xe_M
[10:18:52] [PASSED] 12.55 Xe_HPM
[10:18:52] [PASSED] 13.00 Xe_LPM+
[10:18:52] [PASSED] 13.01 Xe2_HPM
[10:18:52] [PASSED] 20.00 Xe2_LPM
[10:18:52] [PASSED] 30.00 Xe3_LPM
[10:18:52] [PASSED] 30.02 Xe3_LPM
[10:18:52] [PASSED] 35.00 Xe3p_LPM
[10:18:52] [PASSED] 35.03 Xe3p_HPM
[10:18:52] ================= [PASSED] check_media_ip ==================
[10:18:52] =================== check_platform_desc ===================
[10:18:52] [PASSED] 0x9A60 (TIGERLAKE)
[10:18:52] [PASSED] 0x9A68 (TIGERLAKE)
[10:18:52] [PASSED] 0x9A70 (TIGERLAKE)
[10:18:52] [PASSED] 0x9A40 (TIGERLAKE)
[10:18:52] [PASSED] 0x9A49 (TIGERLAKE)
[10:18:52] [PASSED] 0x9A59 (TIGERLAKE)
[10:18:52] [PASSED] 0x9A78 (TIGERLAKE)
[10:18:52] [PASSED] 0x9AC0 (TIGERLAKE)
[10:18:52] [PASSED] 0x9AC9 (TIGERLAKE)
[10:18:52] [PASSED] 0x9AD9 (TIGERLAKE)
[10:18:52] [PASSED] 0x9AF8 (TIGERLAKE)
[10:18:52] [PASSED] 0x4C80 (ROCKETLAKE)
[10:18:52] [PASSED] 0x4C8A (ROCKETLAKE)
[10:18:52] [PASSED] 0x4C8B (ROCKETLAKE)
[10:18:52] [PASSED] 0x4C8C (ROCKETLAKE)
[10:18:52] [PASSED] 0x4C90 (ROCKETLAKE)
[10:18:52] [PASSED] 0x4C9A (ROCKETLAKE)
[10:18:52] [PASSED] 0x4680 (ALDERLAKE_S)
[10:18:52] [PASSED] 0x4682 (ALDERLAKE_S)
[10:18:52] [PASSED] 0x4688 (ALDERLAKE_S)
[10:18:52] [PASSED] 0x468A (ALDERLAKE_S)
[10:18:52] [PASSED] 0x468B (ALDERLAKE_S)
[10:18:52] [PASSED] 0x4690 (ALDERLAKE_S)
[10:18:52] [PASSED] 0x4692 (ALDERLAKE_S)
[10:18:52] [PASSED] 0x4693 (ALDERLAKE_S)
[10:18:52] [PASSED] 0x46A0 (ALDERLAKE_P)
[10:18:52] [PASSED] 0x46A1 (ALDERLAKE_P)
[10:18:52] [PASSED] 0x46A2 (ALDERLAKE_P)
[10:18:52] [PASSED] 0x46A3 (ALDERLAKE_P)
[10:18:52] [PASSED] 0x46A6 (ALDERLAKE_P)
[10:18:52] [PASSED] 0x46A8 (ALDERLAKE_P)
[10:18:52] [PASSED] 0x46AA (ALDERLAKE_P)
[10:18:52] [PASSED] 0x462A (ALDERLAKE_P)
[10:18:52] [PASSED] 0x4626 (ALDERLAKE_P)
[10:18:52] [PASSED] 0x4628 (ALDERLAKE_P)
[10:18:52] [PASSED] 0x46B0 (ALDERLAKE_P)
[10:18:52] [PASSED] 0x46B1 (ALDERLAKE_P)
[10:18:52] [PASSED] 0x46B2 (ALDERLAKE_P)
[10:18:52] [PASSED] 0x46B3 (ALDERLAKE_P)
[10:18:52] [PASSED] 0x46C0 (ALDERLAKE_P)
[10:18:52] [PASSED] 0x46C1 (ALDERLAKE_P)
[10:18:52] [PASSED] 0x46C2 (ALDERLAKE_P)
[10:18:52] [PASSED] 0x46C3 (ALDERLAKE_P)
[10:18:52] [PASSED] 0x46D0 (ALDERLAKE_N)
[10:18:52] [PASSED] 0x46D1 (ALDERLAKE_N)
[10:18:52] [PASSED] 0x46D2 (ALDERLAKE_N)
[10:18:52] [PASSED] 0x46D3 (ALDERLAKE_N)
[10:18:52] [PASSED] 0x46D4 (ALDERLAKE_N)
[10:18:52] [PASSED] 0xA721 (ALDERLAKE_P)
[10:18:52] [PASSED] 0xA7A1 (ALDERLAKE_P)
[10:18:52] [PASSED] 0xA7A9 (ALDERLAKE_P)
[10:18:52] [PASSED] 0xA7AC (ALDERLAKE_P)
[10:18:52] [PASSED] 0xA7AD (ALDERLAKE_P)
[10:18:52] [PASSED] 0xA720 (ALDERLAKE_P)
[10:18:52] [PASSED] 0xA7A0 (ALDERLAKE_P)
[10:18:52] [PASSED] 0xA7A8 (ALDERLAKE_P)
[10:18:52] [PASSED] 0xA7AA (ALDERLAKE_P)
[10:18:52] [PASSED] 0xA7AB (ALDERLAKE_P)
[10:18:52] [PASSED] 0xA780 (ALDERLAKE_S)
[10:18:52] [PASSED] 0xA781 (ALDERLAKE_S)
[10:18:52] [PASSED] 0xA782 (ALDERLAKE_S)
[10:18:52] [PASSED] 0xA783 (ALDERLAKE_S)
[10:18:52] [PASSED] 0xA788 (ALDERLAKE_S)
[10:18:52] [PASSED] 0xA789 (ALDERLAKE_S)
[10:18:52] [PASSED] 0xA78A (ALDERLAKE_S)
[10:18:52] [PASSED] 0xA78B (ALDERLAKE_S)
[10:18:52] [PASSED] 0x4905 (DG1)
[10:18:52] [PASSED] 0x4906 (DG1)
[10:18:52] [PASSED] 0x4907 (DG1)
[10:18:52] [PASSED] 0x4908 (DG1)
[10:18:52] [PASSED] 0x4909 (DG1)
[10:18:52] [PASSED] 0x56C0 (DG2)
[10:18:52] [PASSED] 0x56C2 (DG2)
[10:18:52] [PASSED] 0x56C1 (DG2)
[10:18:52] [PASSED] 0x7D51 (METEORLAKE)
[10:18:52] [PASSED] 0x7DD1 (METEORLAKE)
[10:18:52] [PASSED] 0x7D41 (METEORLAKE)
[10:18:52] [PASSED] 0x7D67 (METEORLAKE)
[10:18:52] [PASSED] 0xB640 (METEORLAKE)
[10:18:52] [PASSED] 0x56A0 (DG2)
[10:18:52] [PASSED] 0x56A1 (DG2)
[10:18:52] [PASSED] 0x56A2 (DG2)
[10:18:52] [PASSED] 0x56BE (DG2)
[10:18:52] [PASSED] 0x56BF (DG2)
[10:18:52] [PASSED] 0x5690 (DG2)
[10:18:52] [PASSED] 0x5691 (DG2)
[10:18:52] [PASSED] 0x5692 (DG2)
[10:18:52] [PASSED] 0x56A5 (DG2)
[10:18:52] [PASSED] 0x56A6 (DG2)
[10:18:52] [PASSED] 0x56B0 (DG2)
[10:18:52] [PASSED] 0x56B1 (DG2)
[10:18:52] [PASSED] 0x56BA (DG2)
[10:18:52] [PASSED] 0x56BB (DG2)
[10:18:52] [PASSED] 0x56BC (DG2)
[10:18:52] [PASSED] 0x56BD (DG2)
[10:18:52] [PASSED] 0x5693 (DG2)
[10:18:52] [PASSED] 0x5694 (DG2)
[10:18:52] [PASSED] 0x5695 (DG2)
[10:18:52] [PASSED] 0x56A3 (DG2)
[10:18:52] [PASSED] 0x56A4 (DG2)
[10:18:52] [PASSED] 0x56B2 (DG2)
[10:18:52] [PASSED] 0x56B3 (DG2)
[10:18:52] [PASSED] 0x5696 (DG2)
[10:18:52] [PASSED] 0x5697 (DG2)
[10:18:52] [PASSED] 0xB69 (PVC)
[10:18:52] [PASSED] 0xB6E (PVC)
[10:18:52] [PASSED] 0xBD4 (PVC)
[10:18:52] [PASSED] 0xBD5 (PVC)
[10:18:52] [PASSED] 0xBD6 (PVC)
[10:18:52] [PASSED] 0xBD7 (PVC)
[10:18:52] [PASSED] 0xBD8 (PVC)
[10:18:52] [PASSED] 0xBD9 (PVC)
[10:18:52] [PASSED] 0xBDA (PVC)
[10:18:52] [PASSED] 0xBDB (PVC)
[10:18:52] [PASSED] 0xBE0 (PVC)
[10:18:52] [PASSED] 0xBE1 (PVC)
[10:18:52] [PASSED] 0xBE5 (PVC)
[10:18:52] [PASSED] 0x7D40 (METEORLAKE)
[10:18:52] [PASSED] 0x7D45 (METEORLAKE)
[10:18:52] [PASSED] 0x7D55 (METEORLAKE)
[10:18:52] [PASSED] 0x7D60 (METEORLAKE)
[10:18:52] [PASSED] 0x7DD5 (METEORLAKE)
[10:18:52] [PASSED] 0x6420 (LUNARLAKE)
[10:18:52] [PASSED] 0x64A0 (LUNARLAKE)
[10:18:52] [PASSED] 0x64B0 (LUNARLAKE)
[10:18:52] [PASSED] 0xE202 (BATTLEMAGE)
[10:18:52] [PASSED] 0xE209 (BATTLEMAGE)
[10:18:52] [PASSED] 0xE20B (BATTLEMAGE)
[10:18:52] [PASSED] 0xE20C (BATTLEMAGE)
[10:18:52] [PASSED] 0xE20D (BATTLEMAGE)
[10:18:52] [PASSED] 0xE210 (BATTLEMAGE)
[10:18:52] [PASSED] 0xE211 (BATTLEMAGE)
[10:18:52] [PASSED] 0xE212 (BATTLEMAGE)
[10:18:52] [PASSED] 0xE216 (BATTLEMAGE)
[10:18:52] [PASSED] 0xE220 (BATTLEMAGE)
[10:18:52] [PASSED] 0xE221 (BATTLEMAGE)
[10:18:52] [PASSED] 0xE222 (BATTLEMAGE)
[10:18:52] [PASSED] 0xE223 (BATTLEMAGE)
[10:18:52] [PASSED] 0xB080 (PANTHERLAKE)
[10:18:52] [PASSED] 0xB081 (PANTHERLAKE)
[10:18:52] [PASSED] 0xB082 (PANTHERLAKE)
[10:18:52] [PASSED] 0xB083 (PANTHERLAKE)
[10:18:52] [PASSED] 0xB084 (PANTHERLAKE)
[10:18:52] [PASSED] 0xB085 (PANTHERLAKE)
[10:18:52] [PASSED] 0xB086 (PANTHERLAKE)
[10:18:52] [PASSED] 0xB087 (PANTHERLAKE)
[10:18:52] [PASSED] 0xB08F (PANTHERLAKE)
[10:18:52] [PASSED] 0xB090 (PANTHERLAKE)
[10:18:52] [PASSED] 0xB0A0 (PANTHERLAKE)
[10:18:52] [PASSED] 0xB0B0 (PANTHERLAKE)
[10:18:52] [PASSED] 0xFD80 (PANTHERLAKE)
[10:18:52] [PASSED] 0xFD81 (PANTHERLAKE)
[10:18:52] [PASSED] 0xD740 (NOVALAKE_S)
[10:18:52] [PASSED] 0xD741 (NOVALAKE_S)
[10:18:52] [PASSED] 0xD742 (NOVALAKE_S)
[10:18:52] [PASSED] 0xD743 (NOVALAKE_S)
[10:18:52] [PASSED] 0xD745 (NOVALAKE_S)
[10:18:52] [PASSED] 0xD74A (NOVALAKE_S)
[10:18:52] [PASSED] 0xD74B (NOVALAKE_S)
[10:18:52] [PASSED] 0x674C (CRESCENTISLAND)
[10:18:52] [PASSED] 0x674D (CRESCENTISLAND)
[10:18:52] [PASSED] 0x674E (CRESCENTISLAND)
[10:18:52] [PASSED] 0x674F (CRESCENTISLAND)
[10:18:52] [PASSED] 0x6750 (CRESCENTISLAND)
[10:18:52] [PASSED] 0xD750 (NOVALAKE_P)
[10:18:52] [PASSED] 0xD751 (NOVALAKE_P)
[10:18:52] [PASSED] 0xD752 (NOVALAKE_P)
[10:18:52] [PASSED] 0xD753 (NOVALAKE_P)
[10:18:52] [PASSED] 0xD754 (NOVALAKE_P)
[10:18:52] [PASSED] 0xD755 (NOVALAKE_P)
[10:18:52] [PASSED] 0xD756 (NOVALAKE_P)
[10:18:52] [PASSED] 0xD757 (NOVALAKE_P)
[10:18:52] [PASSED] 0xD75F (NOVALAKE_P)
[10:18:52] =============== [PASSED] check_platform_desc ===============
[10:18:52] ===================== [PASSED] xe_pci ======================
[10:18:52] ============= xe_rtp_tables_test (5 subtests) ==============
[10:18:52] ================== xe_rtp_table_gt_test ===================
[10:18:52] [PASSED] gt_was/14011060649
[10:18:52] [PASSED] gt_was/14011059788
[10:18:52] [PASSED] gt_was/14015795083
[10:18:52] [PASSED] gt_was/16021867713
[10:18:52] [PASSED] gt_was/14019449301
[10:18:52] [PASSED] gt_was/16028005424
[10:18:52] [PASSED] gt_was/14026578760
[10:18:52] [PASSED] gt_was/1409420604
[10:18:52] [PASSED] gt_was/1408615072
[10:18:52] [PASSED] gt_was/22010523718
[10:18:52] [PASSED] gt_was/14011006942
[10:18:52] [PASSED] gt_was/14014830051
[10:18:52] [PASSED] gt_was/18018781329
[10:18:52] [PASSED] gt_was/1509235366
[10:18:52] [PASSED] gt_was/18018781329
[10:18:52] [PASSED] gt_was/16016694945
[10:18:52] [PASSED] gt_was/14018575942
[10:18:52] [PASSED] gt_was/22016670082
[10:18:52] [PASSED] gt_was/22016670082
[10:18:52] [PASSED] gt_was/14017421178
[10:18:52] [PASSED] gt_was/16025250150
[10:18:52] [PASSED] gt_was/14021871409
[10:18:52] [PASSED] gt_was/16021865536
[10:18:52] [PASSED] gt_was/14021486841
[10:18:52] [PASSED] gt_was/14025160223
[10:18:52] [PASSED] gt_was/14026144927, 16029437861, 14026127056
[10:18:52] [PASSED] gt_was/14025635424
[10:18:52] [PASSED] gt_was/16028005424
[10:18:52] ============== [PASSED] xe_rtp_table_gt_test ===============
[10:18:52] ================== xe_rtp_table_gt_test ===================
[10:18:52] [PASSED] gt_tunings/Tuning: Blend Fill Caching Optimization Disable
[10:18:52] [PASSED] gt_tunings/Tuning: 32B Access Enable
[10:18:52] [PASSED] gt_tunings/Tuning: L3 cache
[10:18:52] [PASSED] gt_tunings/Tuning: L3 cache - media
[10:18:52] [PASSED] gt_tunings/Tuning: Compression Overfetch
[10:18:52] [PASSED] gt_tunings/Tuning: Compression Overfetch - media
[10:18:52] [PASSED] gt_tunings/Tuning: Enable compressible partial write overfetch in L3
[10:18:52] [PASSED] gt_tunings/Tuning: Enable compressible partial write overfetch in L3 - media
[10:18:52] [PASSED] gt_tunings/Tuning: L2 Overfetch Compressible Only
[10:18:52] [PASSED] gt_tunings/Tuning: L2 Overfetch Compressible Only - media
[10:18:52] [PASSED] gt_tunings/Tuning: Stateless compression control
[10:18:52] [PASSED] gt_tunings/Tuning: Stateless compression control - media
[10:18:52] [PASSED] gt_tunings/Tuning: L3 RW flush all Cache
[10:18:52] [PASSED] gt_tunings/Tuning: L3 RW flush all cache - media
[10:18:52] [PASSED] gt_tunings/Tuning: Set STLB Bank Hash Mode to 4KB
[10:18:52] ============== [PASSED] xe_rtp_table_gt_test ===============
[10:18:52] ================== xe_rtp_table_oob_test ==================
[10:18:52] [PASSED] oob_was/1607983814
[10:18:52] [PASSED] oob_was/16010904313
[10:18:52] [PASSED] oob_was/18022495364
[10:18:52] [PASSED] oob_was/22012773006
[10:18:52] [PASSED] oob_was/14014475959
[10:18:52] [PASSED] oob_was/22011391025
[10:18:52] [PASSED] oob_was/22012727170
[10:18:52] [PASSED] oob_was/22012727685
[10:18:52] [PASSED] oob_was/22016596838
[10:18:52] [PASSED] oob_was/18020744125
[10:18:52] [PASSED] oob_was/1409600907
[10:18:52] [PASSED] oob_was/22014953428
[10:18:52] [PASSED] oob_was/16017236439
[10:18:52] [PASSED] oob_was/14019821291
[10:18:52] [PASSED] oob_was/14015076503
[10:18:52] [PASSED] oob_was/14018913170
[10:18:52] [PASSED] oob_was/14018094691
[10:18:52] [PASSED] oob_was/18024947630
[10:18:52] [PASSED] oob_was/16022287689
[10:18:52] [PASSED] oob_was/13011645652
[10:18:52] [PASSED] oob_was/14022293748
[10:18:52] [PASSED] oob_was/22019794406
[10:18:52] [PASSED] oob_was/22019338487
[10:18:52] [PASSED] oob_was/16023588340
[10:18:52] [PASSED] oob_was/14019789679
[10:18:52] [PASSED] oob_was/14022866841
[10:18:52] [PASSED] oob_was/16021333562
[10:18:52] [PASSED] oob_was/14016712196
[10:18:52] [PASSED] oob_was/14015568240
[10:18:52] [PASSED] oob_was/18013179988
[10:18:52] [PASSED] oob_was/1508761755
[10:18:52] [PASSED] oob_was/16023105232
[10:18:52] [PASSED] oob_was/16026508708
[10:18:52] [PASSED] oob_was/14020001231
[10:18:52] [PASSED] oob_was/16023683509
[10:18:52] [PASSED] oob_was/14025515070
[10:18:52] [PASSED] oob_was/15015404425_disable
[10:18:52] [PASSED] oob_was/16026007364
[10:18:52] [PASSED] oob_was/14020316580
[10:18:52] [PASSED] oob_was/14025883347
[10:18:52] [PASSED] oob_was/16029380221
[10:18:52] [PASSED] oob_was/22022079272
[10:18:52] [PASSED] oob_was/16029897822
[10:18:52] [PASSED] oob_was/14027054324
[10:18:52] ============== [PASSED] xe_rtp_table_oob_test ==============
[10:18:52] ================ xe_rtp_table_dev_oob_test ================
[10:18:52] [PASSED] device_oob_was/22010954014
[10:18:52] [PASSED] device_oob_was/15015404425
[10:18:52] [PASSED] device_oob_was/22019338487_display
[10:18:52] [PASSED] device_oob_was/14022085890
[10:18:52] [PASSED] device_oob_was/14026539277
[10:18:52] [PASSED] device_oob_was/14026633728
[10:18:52] [PASSED] device_oob_was/14026746987
[10:18:52] [PASSED] device_oob_was/14026779378
[10:18:52] ============ [PASSED] xe_rtp_table_dev_oob_test ============
[10:18:52] ========== xe_rtp_table_missing_upper_bound_test ==========
[10:18:52] [PASSED] register_whitelist/WaAllowPMDepthAndInvocationCountAccessFromUMD, 1408556865
[10:18:52] [PASSED] register_whitelist/1508744258, 14012131227, 1808121037
[10:18:52] [PASSED] register_whitelist/1806527549
[10:18:52] [PASSED] register_whitelist/allow_read_ctx_timestamp
[10:18:52] [PASSED] register_whitelist/allow_read_queue_timestamp
[10:18:52] [PASSED] register_whitelist/16014440446
[10:18:52] [PASSED] register_whitelist/16017236439
[10:18:52] [PASSED] register_whitelist/16020183090
[10:18:52] [PASSED] register_whitelist/14024997852
[10:18:52] [PASSED] register_whitelist/14024997852
[10:18:52] ====== [PASSED] xe_rtp_table_missing_upper_bound_test ======
[10:18:52] =============== [PASSED] xe_rtp_tables_test ================
[10:18:52] =================== xe_rtp (3 subtests) ====================
[10:18:52] =================== xe_rtp_rules_tests ====================
[10:18:52] [PASSED] no
[10:18:52] [PASSED] yes
[10:18:52] [PASSED] no-and-no
[10:18:52] [PASSED] no-and-yes
[10:18:52] [PASSED] yes-and-no
[10:18:52] [PASSED] yes-and-yes
[10:18:52] [PASSED] no-or-no
[10:18:52] [PASSED] no-or-yes
[10:18:52] [PASSED] yes-or-no
[10:18:52] [PASSED] yes-or-yes
[10:18:52] [PASSED] no-yes-or-yes-no
[10:18:52] [PASSED] no-yes-or-yes-yes
[10:18:52] [PASSED] yes-yes-or-no-yes
[10:18:52] [PASSED] yes-yes-or-yes-yes
[10:18:52] [PASSED] no-no-or-yes-or-no
[10:18:52] [PASSED] or
[10:18:52] [PASSED] or-yes
[10:18:52] [PASSED] or-no
[10:18:52] [PASSED] yes-or
[10:18:52] [PASSED] no-or
[10:18:52] [PASSED] no-or-or-yes
[10:18:52] [PASSED] yes-or-or-no
[10:18:52] [PASSED] no-or-or-no
[10:18:52] [PASSED] missing-context-engine-class
[10:18:52] [PASSED] missing-context-engine-class-or-yes
[10:18:52] [PASSED] missing-context-engine-class-or-or-yes
[10:18:52] =============== [PASSED] xe_rtp_rules_tests ================
[10:18:52] =============== xe_rtp_process_to_sr_tests ================
[10:18:52] [PASSED] coalesce-same-reg
[10:18:52] [PASSED] coalesce-same-reg-literal-and-func
[10:18:52] [PASSED] no-match-no-add
[10:18:52] [PASSED] two-regs-two-entries
[10:18:52] [PASSED] clr-one-set-other
[10:18:52] [PASSED] set-field
[10:18:52] [PASSED] conflict-duplicate
[10:18:52] [PASSED] conflict-not-disjoint
[10:18:52] [PASSED] conflict-not-disjoint-literal-and-func
[10:18:52] [PASSED] conflict-reg-type
[10:18:52] [PASSED] bad-mcr-reg-forced-to-regular
[10:18:52] [PASSED] bad-regular-reg-forced-to-mcr
[10:18:52] =========== [PASSED] xe_rtp_process_to_sr_tests ============
[10:18:52] ================== xe_rtp_process_tests ===================
[10:18:52] [PASSED] active1
[10:18:52] [PASSED] active2
[10:18:52] [PASSED] active-inactive
[10:18:52] [PASSED] inactive-active
[10:18:52] [PASSED] inactive-active-inactive
[10:18:52] [PASSED] inactive-inactive-inactive
[10:18:52] ============== [PASSED] xe_rtp_process_tests ===============
[10:18:52] ===================== [PASSED] xe_rtp ======================
[10:18:52] ==================== xe_wa (1 subtest) =====================
[10:18:52] ======================== xe_wa_gt =========================
[10:18:52] [PASSED] TIGERLAKE B0
[10:18:52] [PASSED] DG1 A0
[10:18:52] [PASSED] DG1 B0
[10:18:52] [PASSED] ALDERLAKE_S A0
[10:18:52] [PASSED] ALDERLAKE_S B0
[10:18:52] [PASSED] ALDERLAKE_S C0
[10:18:52] [PASSED] ALDERLAKE_S D0
[10:18:52] [PASSED] ALDERLAKE_P A0
[10:18:52] [PASSED] ALDERLAKE_P B0
[10:18:52] [PASSED] ALDERLAKE_P C0
[10:18:52] [PASSED] ALDERLAKE_S RPLS D0
[10:18:52] [PASSED] ALDERLAKE_P RPLU E0
[10:18:52] [PASSED] DG2 G10 C0
[10:18:52] [PASSED] DG2 G11 B1
[10:18:52] [PASSED] DG2 G12 A1
[10:18:52] [PASSED] METEORLAKE 12.70(Xe_LPG) A0 13.00(Xe_LPM+) A0
[10:18:52] [PASSED] METEORLAKE 12.71(Xe_LPG) A0 13.00(Xe_LPM+) A0
[10:18:52] [PASSED] METEORLAKE 12.74(Xe_LPG+) A0 13.00(Xe_LPM+) A0
[10:18:52] [PASSED] LUNARLAKE 20.04(Xe2_LPG) A0 20.00(Xe2_LPM) A0
[10:18:52] [PASSED] LUNARLAKE 20.04(Xe2_LPG) B0 20.00(Xe2_LPM) A0
[10:18:52] [PASSED] BATTLEMAGE 20.01(Xe2_HPG) A0 13.01(Xe2_HPM) A1
[10:18:52] [PASSED] PANTHERLAKE 30.00(Xe3_LPG) A0 30.00(Xe3_LPM) A0
[10:18:52] ==================== [PASSED] xe_wa_gt =====================
[10:18:52] ====================== [PASSED] xe_wa ======================
[10:18:52] ============================================================
[10:18:52] Testing complete. Ran 742 tests: passed: 724, skipped: 18
[10:18:52] Elapsed time: 37.309s total, 4.365s configuring, 32.278s building, 0.650s running
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/tests/.kunitconfig
[10:18:52] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[10:18:54] 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
[10:19:19] Starting KUnit Kernel (1/1)...
[10:19:19] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[10:19:19] ============ drm_test_pick_cmdline (2 subtests) ============
[10:19:19] [PASSED] drm_test_pick_cmdline_res_1920_1080_60
[10:19:19] =============== drm_test_pick_cmdline_named ===============
[10:19:19] [PASSED] NTSC
[10:19:19] [PASSED] NTSC-J
[10:19:19] [PASSED] PAL
[10:19:19] [PASSED] PAL-M
[10:19:19] =========== [PASSED] drm_test_pick_cmdline_named ===========
[10:19:19] ============== [PASSED] drm_test_pick_cmdline ==============
[10:19:19] == drm_test_atomic_get_connector_for_encoder (1 subtest) ===
[10:19:19] [PASSED] drm_test_drm_atomic_get_connector_for_encoder
[10:19:19] ==== [PASSED] drm_test_atomic_get_connector_for_encoder ====
[10:19:19] =========== drm_validate_clone_mode (2 subtests) ===========
[10:19:19] ============== drm_test_check_in_clone_mode ===============
[10:19:19] [PASSED] in_clone_mode
[10:19:19] [PASSED] not_in_clone_mode
[10:19:19] ========== [PASSED] drm_test_check_in_clone_mode ===========
[10:19:19] =============== drm_test_check_valid_clones ===============
[10:19:19] [PASSED] not_in_clone_mode
[10:19:19] [PASSED] valid_clone
[10:19:19] [PASSED] invalid_clone
[10:19:19] =========== [PASSED] drm_test_check_valid_clones ===========
[10:19:19] ============= [PASSED] drm_validate_clone_mode =============
[10:19:19] ============= drm_validate_modeset (1 subtest) =============
[10:19:19] [PASSED] drm_test_check_connector_changed_modeset
[10:19:19] ============== [PASSED] drm_validate_modeset ===============
[10:19:19] ====== drm_test_bridge_get_current_state (1 subtest) =======
[10:19:19] [PASSED] drm_test_drm_bridge_get_current_state_atomic
[10:19:19] ======== [PASSED] drm_test_bridge_get_current_state ========
[10:19:19] ====== drm_test_bridge_helper_reset_crtc (3 subtests) ======
[10:19:19] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic
[10:19:19] [PASSED] drm_test_drm_bridge_helper_reset_crtc_atomic_disabled
[10:19:19] [PASSED] drm_test_drm_bridge_helper_hdmi_output_bus_fmts
[10:19:19] ======== [PASSED] drm_test_bridge_helper_reset_crtc ========
[10:19:19] ============== drm_bridge_alloc (2 subtests) ===============
[10:19:19] [PASSED] drm_test_drm_bridge_alloc_basic
[10:19:19] [PASSED] drm_test_drm_bridge_alloc_get_put
[10:19:19] ================ [PASSED] drm_bridge_alloc =================
[10:19:19] ============= drm_bridge_bus_fmt (5 subtests) ==============
[10:19:19] [PASSED] drm_test_bridge_rgb_yuv_rgb
[10:19:19] [PASSED] drm_test_bridge_must_convert_to_yuv444
[10:19:19] [PASSED] drm_test_bridge_hdmi_auto_rgb
[10:19:19] [PASSED] drm_test_bridge_auto_first
[10:19:19] [PASSED] drm_test_bridge_rgb_yuv_no_path
[10:19:19] =============== [PASSED] drm_bridge_bus_fmt ================
[10:19:19] ============= drm_cmdline_parser (40 subtests) =============
[10:19:19] [PASSED] drm_test_cmdline_force_d_only
[10:19:19] [PASSED] drm_test_cmdline_force_D_only_dvi
[10:19:19] [PASSED] drm_test_cmdline_force_D_only_hdmi
[10:19:19] [PASSED] drm_test_cmdline_force_D_only_not_digital
[10:19:19] [PASSED] drm_test_cmdline_force_e_only
[10:19:19] [PASSED] drm_test_cmdline_res
[10:19:19] [PASSED] drm_test_cmdline_res_vesa
[10:19:19] [PASSED] drm_test_cmdline_res_vesa_rblank
[10:19:19] [PASSED] drm_test_cmdline_res_rblank
[10:19:19] [PASSED] drm_test_cmdline_res_bpp
[10:19:19] [PASSED] drm_test_cmdline_res_refresh
[10:19:19] [PASSED] drm_test_cmdline_res_bpp_refresh
[10:19:19] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced
[10:19:19] [PASSED] drm_test_cmdline_res_bpp_refresh_margins
[10:19:19] [PASSED] drm_test_cmdline_res_bpp_refresh_force_off
[10:19:19] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on
[10:19:19] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_analog
[10:19:19] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_digital
[10:19:19] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced_margins_force_on
[10:19:19] [PASSED] drm_test_cmdline_res_margins_force_on
[10:19:19] [PASSED] drm_test_cmdline_res_vesa_margins
[10:19:19] [PASSED] drm_test_cmdline_name
[10:19:19] [PASSED] drm_test_cmdline_name_bpp
[10:19:19] [PASSED] drm_test_cmdline_name_option
[10:19:19] [PASSED] drm_test_cmdline_name_bpp_option
[10:19:19] [PASSED] drm_test_cmdline_rotate_0
[10:19:19] [PASSED] drm_test_cmdline_rotate_90
[10:19:19] [PASSED] drm_test_cmdline_rotate_180
[10:19:19] [PASSED] drm_test_cmdline_rotate_270
[10:19:19] [PASSED] drm_test_cmdline_hmirror
[10:19:19] [PASSED] drm_test_cmdline_vmirror
[10:19:19] [PASSED] drm_test_cmdline_margin_options
[10:19:19] [PASSED] drm_test_cmdline_multiple_options
[10:19:19] [PASSED] drm_test_cmdline_bpp_extra_and_option
[10:19:19] [PASSED] drm_test_cmdline_extra_and_option
[10:19:19] [PASSED] drm_test_cmdline_freestanding_options
[10:19:19] [PASSED] drm_test_cmdline_freestanding_force_e_and_options
[10:19:19] [PASSED] drm_test_cmdline_panel_orientation
[10:19:19] ================ drm_test_cmdline_invalid =================
[10:19:19] [PASSED] margin_only
[10:19:19] [PASSED] interlace_only
[10:19:19] [PASSED] res_missing_x
[10:19:19] [PASSED] res_missing_y
[10:19:19] [PASSED] res_bad_y
[10:19:19] [PASSED] res_missing_y_bpp
[10:19:19] [PASSED] res_bad_bpp
[10:19:19] [PASSED] res_bad_refresh
[10:19:19] [PASSED] res_bpp_refresh_force_on_off
[10:19:19] [PASSED] res_invalid_mode
[10:19:19] [PASSED] res_bpp_wrong_place_mode
[10:19:19] [PASSED] name_bpp_refresh
[10:19:19] [PASSED] name_refresh
[10:19:19] [PASSED] name_refresh_wrong_mode
[10:19:19] [PASSED] name_refresh_invalid_mode
[10:19:19] [PASSED] rotate_multiple
[10:19:19] [PASSED] rotate_invalid_val
[10:19:19] [PASSED] rotate_truncated
[10:19:19] [PASSED] invalid_option
[10:19:19] [PASSED] invalid_tv_option
[10:19:19] [PASSED] truncated_tv_option
[10:19:19] ============ [PASSED] drm_test_cmdline_invalid =============
[10:19:19] =============== drm_test_cmdline_tv_options ===============
[10:19:19] [PASSED] NTSC
[10:19:19] [PASSED] NTSC_443
[10:19:19] [PASSED] NTSC_J
[10:19:19] [PASSED] PAL
[10:19:19] [PASSED] PAL_M
[10:19:19] [PASSED] PAL_N
[10:19:19] [PASSED] SECAM
[10:19:19] [PASSED] MONO_525
[10:19:19] [PASSED] MONO_625
[10:19:19] =========== [PASSED] drm_test_cmdline_tv_options ===========
[10:19:19] =============== [PASSED] drm_cmdline_parser ================
[10:19:19] ========== drmm_connector_hdmi_init (20 subtests) ==========
[10:19:19] [PASSED] drm_test_connector_hdmi_init_valid
[10:19:19] [PASSED] drm_test_connector_hdmi_init_bpc_8
[10:19:19] [PASSED] drm_test_connector_hdmi_init_bpc_10
[10:19:19] [PASSED] drm_test_connector_hdmi_init_bpc_12
[10:19:19] [PASSED] drm_test_connector_hdmi_init_bpc_invalid
[10:19:19] [PASSED] drm_test_connector_hdmi_init_bpc_null
[10:19:19] [PASSED] drm_test_connector_hdmi_init_formats_empty
[10:19:19] [PASSED] drm_test_connector_hdmi_init_formats_no_rgb
[10:19:19] === drm_test_connector_hdmi_init_formats_yuv420_allowed ===
[10:19:19] [PASSED] supported_formats=0x9 yuv420_allowed=1
[10:19:19] [PASSED] supported_formats=0x9 yuv420_allowed=0
[10:19:19] [PASSED] supported_formats=0x5 yuv420_allowed=1
[10:19:19] [PASSED] supported_formats=0x5 yuv420_allowed=0
[10:19:19] === [PASSED] drm_test_connector_hdmi_init_formats_yuv420_allowed ===
[10:19:19] [PASSED] drm_test_connector_hdmi_init_null_ddc
[10:19:19] [PASSED] drm_test_connector_hdmi_init_null_product
[10:19:19] [PASSED] drm_test_connector_hdmi_init_null_vendor
[10:19:19] [PASSED] drm_test_connector_hdmi_init_product_length_exact
[10:19:19] [PASSED] drm_test_connector_hdmi_init_product_length_too_long
[10:19:19] [PASSED] drm_test_connector_hdmi_init_product_valid
[10:19:19] [PASSED] drm_test_connector_hdmi_init_vendor_length_exact
[10:19:19] [PASSED] drm_test_connector_hdmi_init_vendor_length_too_long
[10:19:19] [PASSED] drm_test_connector_hdmi_init_vendor_valid
[10:19:19] ========= drm_test_connector_hdmi_init_type_valid =========
[10:19:19] [PASSED] HDMI-A
[10:19:19] [PASSED] HDMI-B
[10:19:19] ===== [PASSED] drm_test_connector_hdmi_init_type_valid =====
[10:19:19] ======== drm_test_connector_hdmi_init_type_invalid ========
[10:19:19] [PASSED] Unknown
[10:19:19] [PASSED] VGA
[10:19:19] [PASSED] DVI-I
[10:19:19] [PASSED] DVI-D
[10:19:19] [PASSED] DVI-A
[10:19:19] [PASSED] Composite
[10:19:19] [PASSED] SVIDEO
[10:19:19] [PASSED] LVDS
[10:19:19] [PASSED] Component
[10:19:19] [PASSED] DIN
[10:19:19] [PASSED] DP
[10:19:19] [PASSED] TV
[10:19:19] [PASSED] eDP
[10:19:19] [PASSED] Virtual
[10:19:19] [PASSED] DSI
[10:19:19] [PASSED] DPI
[10:19:19] [PASSED] Writeback
[10:19:19] [PASSED] SPI
[10:19:19] [PASSED] USB
[10:19:19] ==== [PASSED] drm_test_connector_hdmi_init_type_invalid ====
[10:19:19] ============ [PASSED] drmm_connector_hdmi_init =============
[10:19:19] ============= drmm_connector_init (3 subtests) =============
[10:19:19] [PASSED] drm_test_drmm_connector_init
[10:19:19] [PASSED] drm_test_drmm_connector_init_null_ddc
[10:19:19] ========= drm_test_drmm_connector_init_type_valid =========
[10:19:19] [PASSED] Unknown
[10:19:19] [PASSED] VGA
[10:19:19] [PASSED] DVI-I
[10:19:19] [PASSED] DVI-D
[10:19:19] [PASSED] DVI-A
[10:19:19] [PASSED] Composite
[10:19:19] [PASSED] SVIDEO
[10:19:19] [PASSED] LVDS
[10:19:19] [PASSED] Component
[10:19:19] [PASSED] DIN
[10:19:19] [PASSED] DP
[10:19:19] [PASSED] HDMI-A
[10:19:19] [PASSED] HDMI-B
[10:19:19] [PASSED] TV
[10:19:19] [PASSED] eDP
[10:19:19] [PASSED] Virtual
[10:19:19] [PASSED] DSI
[10:19:19] [PASSED] DPI
[10:19:19] [PASSED] Writeback
[10:19:19] [PASSED] SPI
[10:19:19] [PASSED] USB
[10:19:19] ===== [PASSED] drm_test_drmm_connector_init_type_valid =====
[10:19:19] =============== [PASSED] drmm_connector_init ===============
[10:19:19] ========= drm_connector_dynamic_init (6 subtests) ==========
[10:19:19] [PASSED] drm_test_drm_connector_dynamic_init
[10:19:19] [PASSED] drm_test_drm_connector_dynamic_init_null_ddc
[10:19:19] [PASSED] drm_test_drm_connector_dynamic_init_not_added
[10:19:19] [PASSED] drm_test_drm_connector_dynamic_init_properties
[10:19:19] ===== drm_test_drm_connector_dynamic_init_type_valid ======
[10:19:19] [PASSED] Unknown
[10:19:19] [PASSED] VGA
[10:19:19] [PASSED] DVI-I
[10:19:19] [PASSED] DVI-D
[10:19:19] [PASSED] DVI-A
[10:19:19] [PASSED] Composite
[10:19:19] [PASSED] SVIDEO
[10:19:19] [PASSED] LVDS
[10:19:19] [PASSED] Component
[10:19:19] [PASSED] DIN
[10:19:19] [PASSED] DP
[10:19:19] [PASSED] HDMI-A
[10:19:19] [PASSED] HDMI-B
[10:19:19] [PASSED] TV
[10:19:19] [PASSED] eDP
[10:19:19] [PASSED] Virtual
[10:19:19] [PASSED] DSI
[10:19:19] [PASSED] DPI
[10:19:19] [PASSED] Writeback
[10:19:19] [PASSED] SPI
[10:19:19] [PASSED] USB
[10:19:19] = [PASSED] drm_test_drm_connector_dynamic_init_type_valid ==
[10:19:19] ======== drm_test_drm_connector_dynamic_init_name =========
[10:19:19] [PASSED] Unknown
[10:19:19] [PASSED] VGA
[10:19:19] [PASSED] DVI-I
[10:19:19] [PASSED] DVI-D
[10:19:19] [PASSED] DVI-A
[10:19:19] [PASSED] Composite
[10:19:19] [PASSED] SVIDEO
[10:19:19] [PASSED] LVDS
[10:19:19] [PASSED] Component
[10:19:19] [PASSED] DIN
[10:19:19] [PASSED] DP
[10:19:19] [PASSED] HDMI-A
[10:19:19] [PASSED] HDMI-B
[10:19:19] [PASSED] TV
[10:19:19] [PASSED] eDP
[10:19:19] [PASSED] Virtual
[10:19:19] [PASSED] DSI
[10:19:19] [PASSED] DPI
[10:19:19] [PASSED] Writeback
[10:19:19] [PASSED] SPI
[10:19:19] [PASSED] USB
[10:19:19] ==== [PASSED] drm_test_drm_connector_dynamic_init_name =====
[10:19:19] =========== [PASSED] drm_connector_dynamic_init ============
[10:19:19] ==== drm_connector_dynamic_register_early (4 subtests) =====
[10:19:19] [PASSED] drm_test_drm_connector_dynamic_register_early_on_list
[10:19:19] [PASSED] drm_test_drm_connector_dynamic_register_early_defer
[10:19:19] [PASSED] drm_test_drm_connector_dynamic_register_early_no_init
[10:19:19] [PASSED] drm_test_drm_connector_dynamic_register_early_no_mode_object
[10:19:19] ====== [PASSED] drm_connector_dynamic_register_early =======
[10:19:19] ======= drm_connector_dynamic_register (7 subtests) ========
[10:19:19] [PASSED] drm_test_drm_connector_dynamic_register_on_list
[10:19:19] [PASSED] drm_test_drm_connector_dynamic_register_no_defer
[10:19:19] [PASSED] drm_test_drm_connector_dynamic_register_no_init
[10:19:19] [PASSED] drm_test_drm_connector_dynamic_register_mode_object
[10:19:19] [PASSED] drm_test_drm_connector_dynamic_register_sysfs
[10:19:19] [PASSED] drm_test_drm_connector_dynamic_register_sysfs_name
[10:19:19] [PASSED] drm_test_drm_connector_dynamic_register_debugfs
[10:19:19] ========= [PASSED] drm_connector_dynamic_register ==========
[10:19:19] = drm_connector_attach_broadcast_rgb_property (2 subtests) =
[10:19:19] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property
[10:19:19] [PASSED] drm_test_drm_connector_attach_broadcast_rgb_property_hdmi_connector
[10:19:19] === [PASSED] drm_connector_attach_broadcast_rgb_property ===
[10:19:19] ========== drm_get_tv_mode_from_name (2 subtests) ==========
[10:19:19] ========== drm_test_get_tv_mode_from_name_valid ===========
[10:19:19] [PASSED] NTSC
[10:19:19] [PASSED] NTSC-443
[10:19:19] [PASSED] NTSC-J
[10:19:19] [PASSED] PAL
[10:19:19] [PASSED] PAL-M
[10:19:19] [PASSED] PAL-N
[10:19:19] [PASSED] SECAM
[10:19:19] [PASSED] Mono
[10:19:19] ====== [PASSED] drm_test_get_tv_mode_from_name_valid =======
[10:19:19] [PASSED] drm_test_get_tv_mode_from_name_truncated
[10:19:19] ============ [PASSED] drm_get_tv_mode_from_name ============
[10:19:19] = drm_test_connector_hdmi_compute_mode_clock (12 subtests) =
[10:19:19] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb
[10:19:19] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc
[10:19:19] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_10bpc_vic_1
[10:19:19] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc
[10:19:19] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_12bpc_vic_1
[10:19:19] [PASSED] drm_test_drm_hdmi_compute_mode_clock_rgb_double
[10:19:19] = drm_test_connector_hdmi_compute_mode_clock_yuv420_valid =
[10:19:19] [PASSED] VIC 96
[10:19:19] [PASSED] VIC 97
[10:19:19] [PASSED] VIC 101
[10:19:19] [PASSED] VIC 102
[10:19:19] [PASSED] VIC 106
[10:19:19] [PASSED] VIC 107
[10:19:19] === [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_valid ===
[10:19:19] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_10_bpc
[10:19:19] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv420_12_bpc
[10:19:19] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_8_bpc
[10:19:19] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_10_bpc
[10:19:19] [PASSED] drm_test_connector_hdmi_compute_mode_clock_yuv422_12_bpc
[10:19:19] === [PASSED] drm_test_connector_hdmi_compute_mode_clock ====
[10:19:19] == drm_hdmi_connector_get_broadcast_rgb_name (2 subtests) ==
[10:19:19] === drm_test_drm_hdmi_connector_get_broadcast_rgb_name ====
[10:19:19] [PASSED] Automatic
[10:19:19] [PASSED] Full
[10:19:19] [PASSED] Limited 16:235
[10:19:19] === [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name ===
[10:19:19] [PASSED] drm_test_drm_hdmi_connector_get_broadcast_rgb_name_invalid
[10:19:19] ==== [PASSED] drm_hdmi_connector_get_broadcast_rgb_name ====
[10:19:19] == drm_hdmi_connector_get_output_format_name (2 subtests) ==
[10:19:19] === drm_test_drm_hdmi_connector_get_output_format_name ====
[10:19:19] [PASSED] RGB
[10:19:19] [PASSED] YUV 4:2:0
[10:19:19] [PASSED] YUV 4:2:2
[10:19:19] [PASSED] YUV 4:4:4
[10:19:19] === [PASSED] drm_test_drm_hdmi_connector_get_output_format_name ===
[10:19:19] [PASSED] drm_test_drm_hdmi_connector_get_output_format_name_invalid
[10:19:19] ==== [PASSED] drm_hdmi_connector_get_output_format_name ====
[10:19:19] ============= drm_damage_helper (21 subtests) ==============
[10:19:19] [PASSED] drm_test_damage_iter_no_damage
[10:19:19] [PASSED] drm_test_damage_iter_no_damage_fractional_src
[10:19:19] [PASSED] drm_test_damage_iter_no_damage_src_moved
[10:19:19] [PASSED] drm_test_damage_iter_no_damage_fractional_src_moved
[10:19:19] [PASSED] drm_test_damage_iter_no_damage_not_visible
[10:19:19] [PASSED] drm_test_damage_iter_no_damage_no_crtc
[10:19:19] [PASSED] drm_test_damage_iter_no_damage_no_fb
[10:19:19] [PASSED] drm_test_damage_iter_simple_damage
[10:19:19] [PASSED] drm_test_damage_iter_single_damage
[10:19:19] [PASSED] drm_test_damage_iter_single_damage_intersect_src
[10:19:19] [PASSED] drm_test_damage_iter_single_damage_outside_src
[10:19:19] [PASSED] drm_test_damage_iter_single_damage_fractional_src
[10:19:19] [PASSED] drm_test_damage_iter_single_damage_intersect_fractional_src
[10:19:19] [PASSED] drm_test_damage_iter_single_damage_outside_fractional_src
[10:19:19] [PASSED] drm_test_damage_iter_single_damage_src_moved
[10:19:19] [PASSED] drm_test_damage_iter_single_damage_fractional_src_moved
[10:19:19] [PASSED] drm_test_damage_iter_damage
[10:19:19] [PASSED] drm_test_damage_iter_damage_one_intersect
[10:19:19] [PASSED] drm_test_damage_iter_damage_one_outside
[10:19:19] [PASSED] drm_test_damage_iter_damage_src_moved
[10:19:19] [PASSED] drm_test_damage_iter_damage_not_visible
[10:19:19] ================ [PASSED] drm_damage_helper ================
[10:19:19] ============== drm_dp_mst_helper (3 subtests) ==============
[10:19:19] ============== drm_test_dp_mst_calc_pbn_mode ==============
[10:19:19] [PASSED] Clock 154000 BPP 30 DSC disabled
[10:19:19] [PASSED] Clock 234000 BPP 30 DSC disabled
[10:19:19] [PASSED] Clock 297000 BPP 24 DSC disabled
[10:19:19] [PASSED] Clock 332880 BPP 24 DSC enabled
[10:19:19] [PASSED] Clock 324540 BPP 24 DSC enabled
[10:19:19] ========== [PASSED] drm_test_dp_mst_calc_pbn_mode ==========
[10:19:19] ============== drm_test_dp_mst_calc_pbn_div ===============
[10:19:19] [PASSED] Link rate 2000000 lane count 4
[10:19:19] [PASSED] Link rate 2000000 lane count 2
[10:19:19] [PASSED] Link rate 2000000 lane count 1
[10:19:19] [PASSED] Link rate 1350000 lane count 4
[10:19:19] [PASSED] Link rate 1350000 lane count 2
[10:19:19] [PASSED] Link rate 1350000 lane count 1
[10:19:19] [PASSED] Link rate 1000000 lane count 4
[10:19:19] [PASSED] Link rate 1000000 lane count 2
[10:19:19] [PASSED] Link rate 1000000 lane count 1
[10:19:19] [PASSED] Link rate 810000 lane count 4
[10:19:19] [PASSED] Link rate 810000 lane count 2
[10:19:19] [PASSED] Link rate 810000 lane count 1
[10:19:19] [PASSED] Link rate 540000 lane count 4
[10:19:19] [PASSED] Link rate 540000 lane count 2
[10:19:19] [PASSED] Link rate 540000 lane count 1
[10:19:19] [PASSED] Link rate 270000 lane count 4
[10:19:19] [PASSED] Link rate 270000 lane count 2
[10:19:19] [PASSED] Link rate 270000 lane count 1
[10:19:19] [PASSED] Link rate 162000 lane count 4
[10:19:19] [PASSED] Link rate 162000 lane count 2
[10:19:19] [PASSED] Link rate 162000 lane count 1
[10:19:19] ========== [PASSED] drm_test_dp_mst_calc_pbn_div ===========
[10:19:19] ========= drm_test_dp_mst_sideband_msg_req_decode =========
[10:19:19] [PASSED] DP_ENUM_PATH_RESOURCES with port number
[10:19:19] [PASSED] DP_POWER_UP_PHY with port number
[10:19:19] [PASSED] DP_POWER_DOWN_PHY with port number
[10:19:19] [PASSED] DP_ALLOCATE_PAYLOAD with SDP stream sinks
[10:19:19] [PASSED] DP_ALLOCATE_PAYLOAD with port number
[10:19:19] [PASSED] DP_ALLOCATE_PAYLOAD with VCPI
[10:19:19] [PASSED] DP_ALLOCATE_PAYLOAD with PBN
[10:19:19] [PASSED] DP_QUERY_PAYLOAD with port number
[10:19:19] [PASSED] DP_QUERY_PAYLOAD with VCPI
[10:19:19] [PASSED] DP_REMOTE_DPCD_READ with port number
[10:19:19] [PASSED] DP_REMOTE_DPCD_READ with DPCD address
[10:19:19] [PASSED] DP_REMOTE_DPCD_READ with max number of bytes
[10:19:19] [PASSED] DP_REMOTE_DPCD_WRITE with port number
[10:19:19] [PASSED] DP_REMOTE_DPCD_WRITE with DPCD address
[10:19:19] [PASSED] DP_REMOTE_DPCD_WRITE with data array
[10:19:19] [PASSED] DP_REMOTE_I2C_READ with port number
[10:19:19] [PASSED] DP_REMOTE_I2C_READ with I2C device ID
[10:19:19] [PASSED] DP_REMOTE_I2C_READ with transactions array
[10:19:19] [PASSED] DP_REMOTE_I2C_WRITE with port number
[10:19:19] [PASSED] DP_REMOTE_I2C_WRITE with I2C device ID
[10:19:19] [PASSED] DP_REMOTE_I2C_WRITE with data array
[10:19:19] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream ID
[10:19:19] [PASSED] DP_QUERY_STREAM_ENC_STATUS with client ID
[10:19:19] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream event
[10:19:19] [PASSED] DP_QUERY_STREAM_ENC_STATUS with valid stream event
[10:19:19] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream behavior
[10:19:19] [PASSED] DP_QUERY_STREAM_ENC_STATUS with a valid stream behavior
[10:19:19] ===== [PASSED] drm_test_dp_mst_sideband_msg_req_decode =====
[10:19:19] ================ [PASSED] drm_dp_mst_helper ================
[10:19:19] ================== drm_exec (7 subtests) ===================
[10:19:19] [PASSED] sanitycheck
[10:19:19] [PASSED] test_lock
[10:19:19] [PASSED] test_lock_unlock
[10:19:19] [PASSED] test_duplicates
[10:19:19] [PASSED] test_prepare
[10:19:19] [PASSED] test_prepare_array
[10:19:19] [PASSED] test_multiple_loops
[10:19:19] ==================== [PASSED] drm_exec =====================
[10:19:19] =========== drm_format_helper_test (17 subtests) ===========
[10:19:19] ============== drm_test_fb_xrgb8888_to_gray8 ==============
[10:19:19] [PASSED] single_pixel_source_buffer
[10:19:19] [PASSED] single_pixel_clip_rectangle
[10:19:19] [PASSED] well_known_colors
[10:19:19] [PASSED] destination_pitch
[10:19:19] ========== [PASSED] drm_test_fb_xrgb8888_to_gray8 ==========
[10:19:19] ============= drm_test_fb_xrgb8888_to_rgb332 ==============
[10:19:19] [PASSED] single_pixel_source_buffer
[10:19:19] [PASSED] single_pixel_clip_rectangle
[10:19:19] [PASSED] well_known_colors
[10:19:19] [PASSED] destination_pitch
[10:19:19] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb332 ==========
[10:19:19] ============= drm_test_fb_xrgb8888_to_rgb565 ==============
[10:19:19] [PASSED] single_pixel_source_buffer
[10:19:19] [PASSED] single_pixel_clip_rectangle
[10:19:19] [PASSED] well_known_colors
[10:19:19] [PASSED] destination_pitch
[10:19:19] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb565 ==========
[10:19:19] ============ drm_test_fb_xrgb8888_to_xrgb1555 =============
[10:19:19] [PASSED] single_pixel_source_buffer
[10:19:19] [PASSED] single_pixel_clip_rectangle
[10:19:19] [PASSED] well_known_colors
[10:19:19] [PASSED] destination_pitch
[10:19:19] ======== [PASSED] drm_test_fb_xrgb8888_to_xrgb1555 =========
[10:19:19] ============ drm_test_fb_xrgb8888_to_argb1555 =============
[10:19:19] [PASSED] single_pixel_source_buffer
[10:19:19] [PASSED] single_pixel_clip_rectangle
[10:19:19] [PASSED] well_known_colors
[10:19:19] [PASSED] destination_pitch
[10:19:19] ======== [PASSED] drm_test_fb_xrgb8888_to_argb1555 =========
[10:19:19] ============ drm_test_fb_xrgb8888_to_rgba5551 =============
[10:19:19] [PASSED] single_pixel_source_buffer
[10:19:19] [PASSED] single_pixel_clip_rectangle
[10:19:19] [PASSED] well_known_colors
[10:19:19] [PASSED] destination_pitch
[10:19:19] ======== [PASSED] drm_test_fb_xrgb8888_to_rgba5551 =========
[10:19:19] ============= drm_test_fb_xrgb8888_to_rgb888 ==============
[10:19:19] [PASSED] single_pixel_source_buffer
[10:19:19] [PASSED] single_pixel_clip_rectangle
[10:19:19] [PASSED] well_known_colors
[10:19:19] [PASSED] destination_pitch
[10:19:19] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb888 ==========
[10:19:19] ============= drm_test_fb_xrgb8888_to_bgr888 ==============
[10:19:19] [PASSED] single_pixel_source_buffer
[10:19:19] [PASSED] single_pixel_clip_rectangle
[10:19:19] [PASSED] well_known_colors
[10:19:19] [PASSED] destination_pitch
[10:19:19] ========= [PASSED] drm_test_fb_xrgb8888_to_bgr888 ==========
[10:19:19] ============ drm_test_fb_xrgb8888_to_argb8888 =============
[10:19:19] [PASSED] single_pixel_source_buffer
[10:19:19] [PASSED] single_pixel_clip_rectangle
[10:19:19] [PASSED] well_known_colors
[10:19:19] [PASSED] destination_pitch
[10:19:19] ======== [PASSED] drm_test_fb_xrgb8888_to_argb8888 =========
[10:19:19] =========== drm_test_fb_xrgb8888_to_xrgb2101010 ===========
[10:19:19] [PASSED] single_pixel_source_buffer
[10:19:19] [PASSED] single_pixel_clip_rectangle
[10:19:19] [PASSED] well_known_colors
[10:19:19] [PASSED] destination_pitch
[10:19:19] ======= [PASSED] drm_test_fb_xrgb8888_to_xrgb2101010 =======
[10:19:19] =========== drm_test_fb_xrgb8888_to_argb2101010 ===========
[10:19:19] [PASSED] single_pixel_source_buffer
[10:19:19] [PASSED] single_pixel_clip_rectangle
[10:19:19] [PASSED] well_known_colors
[10:19:19] [PASSED] destination_pitch
[10:19:19] ======= [PASSED] drm_test_fb_xrgb8888_to_argb2101010 =======
[10:19:19] ============== drm_test_fb_xrgb8888_to_mono ===============
[10:19:19] [PASSED] single_pixel_source_buffer
[10:19:19] [PASSED] single_pixel_clip_rectangle
[10:19:19] [PASSED] well_known_colors
[10:19:19] [PASSED] destination_pitch
[10:19:19] ========== [PASSED] drm_test_fb_xrgb8888_to_mono ===========
[10:19:19] ==================== drm_test_fb_swab =====================
[10:19:19] [PASSED] single_pixel_source_buffer
[10:19:19] [PASSED] single_pixel_clip_rectangle
[10:19:19] [PASSED] well_known_colors
[10:19:19] [PASSED] destination_pitch
[10:19:19] ================ [PASSED] drm_test_fb_swab =================
[10:19:19] ============ drm_test_fb_xrgb8888_to_xbgr8888 =============
[10:19:19] [PASSED] single_pixel_source_buffer
[10:19:19] [PASSED] single_pixel_clip_rectangle
[10:19:19] [PASSED] well_known_colors
[10:19:19] [PASSED] destination_pitch
[10:19:19] ======== [PASSED] drm_test_fb_xrgb8888_to_xbgr8888 =========
[10:19:19] ============ drm_test_fb_xrgb8888_to_abgr8888 =============
[10:19:19] [PASSED] single_pixel_source_buffer
[10:19:19] [PASSED] single_pixel_clip_rectangle
[10:19:19] [PASSED] well_known_colors
[10:19:19] [PASSED] destination_pitch
[10:19:19] ======== [PASSED] drm_test_fb_xrgb8888_to_abgr8888 =========
[10:19:19] ================= drm_test_fb_clip_offset =================
[10:19:19] [PASSED] pass through
[10:19:19] [PASSED] horizontal offset
[10:19:19] [PASSED] vertical offset
[10:19:19] [PASSED] horizontal and vertical offset
[10:19:19] [PASSED] horizontal offset (custom pitch)
[10:19:19] [PASSED] vertical offset (custom pitch)
[10:19:19] [PASSED] horizontal and vertical offset (custom pitch)
[10:19:19] ============= [PASSED] drm_test_fb_clip_offset =============
[10:19:19] =================== drm_test_fb_memcpy ====================
[10:19:19] [PASSED] single_pixel_source_buffer: XR24 little-endian (0x34325258)
[10:19:19] [PASSED] single_pixel_source_buffer: XRA8 little-endian (0x38415258)
[10:19:19] [PASSED] single_pixel_source_buffer: YU24 little-endian (0x34325559)
[10:19:19] [PASSED] single_pixel_clip_rectangle: XB24 little-endian (0x34324258)
[10:19:19] [PASSED] single_pixel_clip_rectangle: XRA8 little-endian (0x38415258)
[10:19:19] [PASSED] single_pixel_clip_rectangle: YU24 little-endian (0x34325559)
[10:19:19] [PASSED] well_known_colors: XB24 little-endian (0x34324258)
[10:19:19] [PASSED] well_known_colors: XRA8 little-endian (0x38415258)
[10:19:19] [PASSED] well_known_colors: YU24 little-endian (0x34325559)
[10:19:19] [PASSED] destination_pitch: XB24 little-endian (0x34324258)
[10:19:19] [PASSED] destination_pitch: XRA8 little-endian (0x38415258)
[10:19:19] [PASSED] destination_pitch: YU24 little-endian (0x34325559)
[10:19:19] =============== [PASSED] drm_test_fb_memcpy ================
[10:19:19] ============= [PASSED] drm_format_helper_test ==============
[10:19:19] ================= drm_format (18 subtests) =================
[10:19:19] [PASSED] drm_test_format_block_width_invalid
[10:19:19] [PASSED] drm_test_format_block_width_one_plane
[10:19:19] [PASSED] drm_test_format_block_width_two_plane
[10:19:19] [PASSED] drm_test_format_block_width_three_plane
[10:19:19] [PASSED] drm_test_format_block_width_tiled
[10:19:19] [PASSED] drm_test_format_block_height_invalid
[10:19:19] [PASSED] drm_test_format_block_height_one_plane
[10:19:19] [PASSED] drm_test_format_block_height_two_plane
[10:19:19] [PASSED] drm_test_format_block_height_three_plane
[10:19:19] [PASSED] drm_test_format_block_height_tiled
[10:19:19] [PASSED] drm_test_format_min_pitch_invalid
[10:19:19] [PASSED] drm_test_format_min_pitch_one_plane_8bpp
[10:19:19] [PASSED] drm_test_format_min_pitch_one_plane_16bpp
[10:19:19] [PASSED] drm_test_format_min_pitch_one_plane_24bpp
[10:19:19] [PASSED] drm_test_format_min_pitch_one_plane_32bpp
[10:19:19] [PASSED] drm_test_format_min_pitch_two_plane
[10:19:19] [PASSED] drm_test_format_min_pitch_three_plane_8bpp
[10:19:19] [PASSED] drm_test_format_min_pitch_tiled
[10:19:19] =================== [PASSED] drm_format ====================
[10:19:19] ============== drm_framebuffer (10 subtests) ===============
[10:19:19] ========== drm_test_framebuffer_check_src_coords ==========
[10:19:19] [PASSED] Success: source fits into fb
[10:19:19] [PASSED] Fail: overflowing fb with x-axis coordinate
[10:19:19] [PASSED] Fail: overflowing fb with y-axis coordinate
[10:19:19] [PASSED] Fail: overflowing fb with source width
[10:19:19] [PASSED] Fail: overflowing fb with source height
[10:19:19] ====== [PASSED] drm_test_framebuffer_check_src_coords ======
[10:19:19] [PASSED] drm_test_framebuffer_cleanup
[10:19:19] =============== drm_test_framebuffer_create ===============
[10:19:19] [PASSED] ABGR8888 normal sizes
[10:19:19] [PASSED] ABGR8888 max sizes
[10:19:19] [PASSED] ABGR8888 pitch greater than min required
[10:19:19] [PASSED] ABGR8888 pitch less than min required
[10:19:19] [PASSED] ABGR8888 Invalid width
[10:19:19] [PASSED] ABGR8888 Invalid buffer handle
[10:19:19] [PASSED] No pixel format
[10:19:19] [PASSED] ABGR8888 Width 0
[10:19:19] [PASSED] ABGR8888 Height 0
[10:19:19] [PASSED] ABGR8888 Out of bound height * pitch combination
[10:19:19] [PASSED] ABGR8888 Large buffer offset
[10:19:19] [PASSED] ABGR8888 Buffer offset for inexistent plane
[10:19:19] [PASSED] ABGR8888 Invalid flag
[10:19:19] [PASSED] ABGR8888 Set DRM_MODE_FB_MODIFIERS without modifiers
[10:19:19] [PASSED] ABGR8888 Valid buffer modifier
[10:19:19] [PASSED] ABGR8888 Invalid buffer modifier(DRM_FORMAT_MOD_SAMSUNG_64_32_TILE)
[10:19:19] [PASSED] ABGR8888 Extra pitches without DRM_MODE_FB_MODIFIERS
[10:19:19] [PASSED] ABGR8888 Extra pitches with DRM_MODE_FB_MODIFIERS
[10:19:19] [PASSED] NV12 Normal sizes
[10:19:19] [PASSED] NV12 Max sizes
[10:19:19] [PASSED] NV12 Invalid pitch
[10:19:19] [PASSED] NV12 Invalid modifier/missing DRM_MODE_FB_MODIFIERS flag
[10:19:19] [PASSED] NV12 different modifier per-plane
[10:19:19] [PASSED] NV12 with DRM_FORMAT_MOD_SAMSUNG_64_32_TILE
[10:19:19] [PASSED] NV12 Valid modifiers without DRM_MODE_FB_MODIFIERS
[10:19:19] [PASSED] NV12 Modifier for inexistent plane
[10:19:19] [PASSED] NV12 Handle for inexistent plane
[10:19:19] [PASSED] NV12 Handle for inexistent plane without DRM_MODE_FB_MODIFIERS
[10:19:19] [PASSED] YVU420 DRM_MODE_FB_MODIFIERS set without modifier
[10:19:19] [PASSED] YVU420 Normal sizes
[10:19:19] [PASSED] YVU420 Max sizes
[10:19:19] [PASSED] YVU420 Invalid pitch
[10:19:19] [PASSED] YVU420 Different pitches
[10:19:19] [PASSED] YVU420 Different buffer offsets/pitches
[10:19:19] [PASSED] YVU420 Modifier set just for plane 0, without DRM_MODE_FB_MODIFIERS
[10:19:19] [PASSED] YVU420 Modifier set just for planes 0, 1, without DRM_MODE_FB_MODIFIERS
[10:19:19] [PASSED] YVU420 Modifier set just for plane 0, 1, with DRM_MODE_FB_MODIFIERS
[10:19:19] [PASSED] YVU420 Valid modifier
[10:19:19] [PASSED] YVU420 Different modifiers per plane
[10:19:19] [PASSED] YVU420 Modifier for inexistent plane
[10:19:19] [PASSED] YUV420_10BIT Invalid modifier(DRM_FORMAT_MOD_LINEAR)
[10:19:19] [PASSED] X0L2 Normal sizes
[10:19:19] [PASSED] X0L2 Max sizes
[10:19:19] [PASSED] X0L2 Invalid pitch
[10:19:19] [PASSED] X0L2 Pitch greater than minimum required
[10:19:19] [PASSED] X0L2 Handle for inexistent plane
[10:19:19] [PASSED] X0L2 Offset for inexistent plane, without DRM_MODE_FB_MODIFIERS set
[10:19:19] [PASSED] X0L2 Modifier without DRM_MODE_FB_MODIFIERS set
[10:19:19] [PASSED] X0L2 Valid modifier
[10:19:19] [PASSED] X0L2 Modifier for inexistent plane
[10:19:19] =========== [PASSED] drm_test_framebuffer_create ===========
[10:19:19] [PASSED] drm_test_framebuffer_free
[10:19:19] [PASSED] drm_test_framebuffer_init
[10:19:19] [PASSED] drm_test_framebuffer_init_bad_format
[10:19:19] [PASSED] drm_test_framebuffer_init_dev_mismatch
[10:19:19] [PASSED] drm_test_framebuffer_lookup
[10:19:19] [PASSED] drm_test_framebuffer_lookup_inexistent
[10:19:19] [PASSED] drm_test_framebuffer_modifiers_not_supported
[10:19:19] ================= [PASSED] drm_framebuffer =================
[10:19:19] ================ drm_gem_shmem (8 subtests) ================
[10:19:19] [PASSED] drm_gem_shmem_test_obj_create
[10:19:19] [PASSED] drm_gem_shmem_test_obj_create_private
[10:19:19] [PASSED] drm_gem_shmem_test_pin_pages
[10:19:19] [PASSED] drm_gem_shmem_test_vmap
[10:19:19] [PASSED] drm_gem_shmem_test_get_sg_table
[10:19:19] [PASSED] drm_gem_shmem_test_get_pages_sgt
[10:19:19] [PASSED] drm_gem_shmem_test_madvise
[10:19:19] [PASSED] drm_gem_shmem_test_purge
[10:19:19] ================== [PASSED] drm_gem_shmem ==================
[10:19:19] === drm_atomic_helper_connector_hdmi_check (29 subtests) ===
[10:19:19] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode
[10:19:19] [PASSED] drm_test_check_broadcast_rgb_auto_cea_mode_vic_1
[10:19:19] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode
[10:19:19] [PASSED] drm_test_check_broadcast_rgb_full_cea_mode_vic_1
[10:19:19] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode
[10:19:19] [PASSED] drm_test_check_broadcast_rgb_limited_cea_mode_vic_1
[10:19:19] ====== drm_test_check_broadcast_rgb_cea_mode_yuv420 =======
[10:19:19] [PASSED] Automatic
[10:19:19] [PASSED] Full
[10:19:19] [PASSED] Limited 16:235
[10:19:19] == [PASSED] drm_test_check_broadcast_rgb_cea_mode_yuv420 ===
[10:19:19] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_changed
[10:19:19] [PASSED] drm_test_check_broadcast_rgb_crtc_mode_not_changed
[10:19:19] [PASSED] drm_test_check_disable_connector
[10:19:19] [PASSED] drm_test_check_hdmi_funcs_reject_rate
[10:19:19] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_rgb
[10:19:19] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_yuv420
[10:19:19] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv422
[10:19:19] [PASSED] drm_test_check_max_tmds_rate_bpc_fallback_ignore_yuv420
[10:19:19] [PASSED] drm_test_check_driver_unsupported_fallback_yuv420
[10:19:19] [PASSED] drm_test_check_output_bpc_crtc_mode_changed
[10:19:19] [PASSED] drm_test_check_output_bpc_crtc_mode_not_changed
[10:19:19] [PASSED] drm_test_check_output_bpc_dvi
[10:19:19] [PASSED] drm_test_check_output_bpc_format_vic_1
[10:19:19] [PASSED] drm_test_check_output_bpc_format_display_8bpc_only
[10:19:19] [PASSED] drm_test_check_output_bpc_format_display_rgb_only
[10:19:19] [PASSED] drm_test_check_output_bpc_format_driver_8bpc_only
[10:19:19] [PASSED] drm_test_check_output_bpc_format_driver_rgb_only
[10:19:19] [PASSED] drm_test_check_tmds_char_rate_rgb_8bpc
[10:19:19] [PASSED] drm_test_check_tmds_char_rate_rgb_10bpc
[10:19:19] [PASSED] drm_test_check_tmds_char_rate_rgb_12bpc
[10:19:19] ============ drm_test_check_hdmi_color_format =============
[10:19:19] [PASSED] AUTO -> RGB
[10:19:19] [PASSED] YCBCR422 -> YUV422
[10:19:19] [PASSED] YCBCR420 -> YUV420
[10:19:19] [PASSED] YCBCR444 -> YUV444
[10:19:19] [PASSED] RGB -> RGB
[10:19:19] ======== [PASSED] drm_test_check_hdmi_color_format =========
[10:19:19] ======== drm_test_check_hdmi_color_format_420_only ========
[10:19:19] [PASSED] RGB should fail
[10:19:19] [PASSED] YUV444 should fail
[10:19:19] [PASSED] YUV422 should fail
[10:19:19] [PASSED] YUV420 should work
[10:19:19] ==== [PASSED] drm_test_check_hdmi_color_format_420_only ====
[10:19:19] ===== [PASSED] drm_atomic_helper_connector_hdmi_check ======
[10:19:19] === drm_atomic_helper_connector_hdmi_reset (6 subtests) ====
[10:19:19] [PASSED] drm_test_check_broadcast_rgb_value
[10:19:19] [PASSED] drm_test_check_bpc_8_value
[10:19:19] [PASSED] drm_test_check_bpc_10_value
[10:19:19] [PASSED] drm_test_check_bpc_12_value
[10:19:19] [PASSED] drm_test_check_format_value
[10:19:19] [PASSED] drm_test_check_tmds_char_value
[10:19:19] ===== [PASSED] drm_atomic_helper_connector_hdmi_reset ======
[10:19:19] = drm_atomic_helper_connector_hdmi_mode_valid (7 subtests) =
[10:19:19] [PASSED] drm_test_check_mode_valid
[10:19:19] [PASSED] drm_test_check_mode_valid_reject
[10:19:19] [PASSED] drm_test_check_mode_valid_reject_rate
[10:19:19] [PASSED] drm_test_check_mode_valid_reject_max_clock
[10:19:19] [PASSED] drm_test_check_mode_valid_yuv420_only_max_clock
[10:19:19] [PASSED] drm_test_check_mode_valid_reject_yuv420_only_connector
[10:19:19] [PASSED] drm_test_check_mode_valid_accept_yuv420_also_connector_rgb
[10:19:19] === [PASSED] drm_atomic_helper_connector_hdmi_mode_valid ===
[10:19:19] = drm_atomic_helper_connector_hdmi_infoframes (5 subtests) =
[10:19:19] [PASSED] drm_test_check_infoframes
[10:19:19] [PASSED] drm_test_check_reject_avi_infoframe
[10:19:19] [PASSED] drm_test_check_reject_hdr_infoframe_bpc_8
[10:19:19] [PASSED] drm_test_check_reject_hdr_infoframe_bpc_10
[10:19:19] [PASSED] drm_test_check_reject_audio_infoframe
[10:19:19] === [PASSED] drm_atomic_helper_connector_hdmi_infoframes ===
[10:19:19] ================= drm_managed (2 subtests) =================
[10:19:19] [PASSED] drm_test_managed_release_action
[10:19:19] [PASSED] drm_test_managed_run_action
[10:19:19] =================== [PASSED] drm_managed ===================
[10:19:19] =================== drm_mm (6 subtests) ====================
[10:19:19] [PASSED] drm_test_mm_init
[10:19:19] [PASSED] drm_test_mm_debug
[10:19:19] [PASSED] drm_test_mm_align32
[10:19:19] [PASSED] drm_test_mm_align64
[10:19:19] [PASSED] drm_test_mm_lowest
[10:19:19] [PASSED] drm_test_mm_highest
[10:19:19] ===================== [PASSED] drm_mm ======================
[10:19:19] ============= drm_modes_analog_tv (5 subtests) =============
[10:19:19] [PASSED] drm_test_modes_analog_tv_mono_576i
[10:19:19] [PASSED] drm_test_modes_analog_tv_ntsc_480i
[10:19:19] [PASSED] drm_test_modes_analog_tv_ntsc_480i_inlined
[10:19:19] [PASSED] drm_test_modes_analog_tv_pal_576i
[10:19:19] [PASSED] drm_test_modes_analog_tv_pal_576i_inlined
[10:19:19] =============== [PASSED] drm_modes_analog_tv ===============
[10:19:19] ============== drm_plane_helper (2 subtests) ===============
[10:19:19] =============== drm_test_check_plane_state ================
[10:19:19] [PASSED] clipping_simple
[10:19:19] [PASSED] clipping_rotate_reflect
[10:19:19] [PASSED] positioning_simple
[10:19:19] [PASSED] upscaling
[10:19:19] [PASSED] downscaling
[10:19:19] [PASSED] rounding1
[10:19:19] [PASSED] rounding2
[10:19:19] [PASSED] rounding3
[10:19:19] [PASSED] rounding4
[10:19:19] =========== [PASSED] drm_test_check_plane_state ============
[10:19:19] =========== drm_test_check_invalid_plane_state ============
[10:19:19] [PASSED] positioning_invalid
[10:19:19] [PASSED] upscaling_invalid
[10:19:19] [PASSED] downscaling_invalid
[10:19:19] ======= [PASSED] drm_test_check_invalid_plane_state ========
[10:19:19] ================ [PASSED] drm_plane_helper =================
[10:19:19] ====== drm_connector_helper_tv_get_modes (1 subtest) =======
[10:19:19] ====== drm_test_connector_helper_tv_get_modes_check =======
[10:19:19] [PASSED] None
[10:19:19] [PASSED] PAL
[10:19:19] [PASSED] NTSC
[10:19:19] [PASSED] Both, NTSC Default
[10:19:19] [PASSED] Both, PAL Default
[10:19:19] [PASSED] Both, NTSC Default, with PAL on command-line
[10:19:19] [PASSED] Both, PAL Default, with NTSC on command-line
[10:19:19] == [PASSED] drm_test_connector_helper_tv_get_modes_check ===
[10:19:19] ======== [PASSED] drm_connector_helper_tv_get_modes ========
[10:19:19] ================== drm_rect (9 subtests) ===================
[10:19:19] [PASSED] drm_test_rect_clip_scaled_div_by_zero
[10:19:19] [PASSED] drm_test_rect_clip_scaled_not_clipped
[10:19:19] [PASSED] drm_test_rect_clip_scaled_clipped
[10:19:19] [PASSED] drm_test_rect_clip_scaled_signed_vs_unsigned
[10:19:19] ================= drm_test_rect_intersect =================
[10:19:19] [PASSED] top-left x bottom-right: 2x2+1+1 x 2x2+0+0
[10:19:19] [PASSED] top-right x bottom-left: 2x2+0+0 x 2x2+1-1
[10:19:19] [PASSED] bottom-left x top-right: 2x2+1-1 x 2x2+0+0
[10:19:19] [PASSED] bottom-right x top-left: 2x2+0+0 x 2x2+1+1
[10:19:19] [PASSED] right x left: 2x1+0+0 x 3x1+1+0
[10:19:19] [PASSED] left x right: 3x1+1+0 x 2x1+0+0
[10:19:19] [PASSED] up x bottom: 1x2+0+0 x 1x3+0-1
[10:19:19] [PASSED] bottom x up: 1x3+0-1 x 1x2+0+0
[10:19:19] [PASSED] touching corner: 1x1+0+0 x 2x2+1+1
[10:19:19] [PASSED] touching side: 1x1+0+0 x 1x1+1+0
[10:19:19] [PASSED] equal rects: 2x2+0+0 x 2x2+0+0
[10:19:19] [PASSED] inside another: 2x2+0+0 x 1x1+1+1
[10:19:19] [PASSED] far away: 1x1+0+0 x 1x1+3+6
[10:19:19] [PASSED] points intersecting: 0x0+5+10 x 0x0+5+10
[10:19:19] [PASSED] points not intersecting: 0x0+0+0 x 0x0+5+10
[10:19:19] ============= [PASSED] drm_test_rect_intersect =============
[10:19:19] ================ drm_test_rect_calc_hscale ================
[10:19:19] [PASSED] normal use
[10:19:19] [PASSED] out of max range
[10:19:19] [PASSED] out of min range
[10:19:19] [PASSED] zero dst
[10:19:19] [PASSED] negative src
[10:19:19] [PASSED] negative dst
[10:19:19] ============ [PASSED] drm_test_rect_calc_hscale ============
[10:19:19] ================ drm_test_rect_calc_vscale ================
[10:19:19] [PASSED] normal use
[10:19:19] [PASSED] out of max range
[10:19:19] [PASSED] out of min range
[10:19:19] [PASSED] zero dst
[10:19:19] [PASSED] negative src
[10:19:19] [PASSED] negative dst
[10:19:19] ============ [PASSED] drm_test_rect_calc_vscale ============
[10:19:19] ================== drm_test_rect_rotate ===================
[10:19:19] [PASSED] reflect-x
[10:19:19] [PASSED] reflect-y
[10:19:19] [PASSED] rotate-0
[10:19:19] [PASSED] rotate-90
[10:19:19] [PASSED] rotate-180
[10:19:19] [PASSED] rotate-270
[10:19:19] ============== [PASSED] drm_test_rect_rotate ===============
[10:19:19] ================ drm_test_rect_rotate_inv =================
[10:19:19] [PASSED] reflect-x
[10:19:19] [PASSED] reflect-y
[10:19:19] [PASSED] rotate-0
[10:19:19] [PASSED] rotate-90
[10:19:19] [PASSED] rotate-180
[10:19:19] [PASSED] rotate-270
[10:19:19] ============ [PASSED] drm_test_rect_rotate_inv =============
[10:19:19] ==================== [PASSED] drm_rect =====================
[10:19:19] ============ drm_sysfb_modeset_test (1 subtest) ============
[10:19:19] ============ drm_test_sysfb_build_fourcc_list =============
[10:19:19] [PASSED] no native formats
[10:19:19] [PASSED] XRGB8888 as native format
[10:19:19] [PASSED] remove duplicates
[10:19:19] [PASSED] convert alpha formats
[10:19:19] [PASSED] random formats
[10:19:19] ======== [PASSED] drm_test_sysfb_build_fourcc_list =========
[10:19:19] ============= [PASSED] drm_sysfb_modeset_test ==============
[10:19:19] ================== drm_fixp (2 subtests) ===================
[10:19:19] [PASSED] drm_test_int2fixp
[10:19:19] [PASSED] drm_test_sm2fixp
[10:19:19] ==================== [PASSED] drm_fixp =====================
[10:19:19] ============================================================
[10:19:19] Testing complete. Ran 637 tests: passed: 637
[10:19:19] Elapsed time: 27.311s total, 1.799s configuring, 25.346s building, 0.153s running
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/ttm/tests/.kunitconfig
[10:19:20] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[10:19:21] 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
[10:19:32] Starting KUnit Kernel (1/1)...
[10:19:32] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[10:19:32] ================= ttm_device (5 subtests) ==================
[10:19:32] [PASSED] ttm_device_init_basic
[10:19:32] [PASSED] ttm_device_init_multiple
[10:19:32] [PASSED] ttm_device_fini_basic
[10:19:32] [PASSED] ttm_device_init_no_vma_man
[10:19:32] ================== ttm_device_init_pools ==================
[10:19:32] [PASSED] No DMA allocations, no DMA32 required
[10:19:32] [PASSED] DMA allocations, DMA32 required
[10:19:32] [PASSED] No DMA allocations, DMA32 required
[10:19:32] [PASSED] DMA allocations, no DMA32 required
[10:19:32] ============== [PASSED] ttm_device_init_pools ==============
[10:19:32] =================== [PASSED] ttm_device ====================
[10:19:32] ================== ttm_pool (8 subtests) ===================
[10:19:32] ================== ttm_pool_alloc_basic ===================
[10:19:32] [PASSED] One page
[10:19:32] [PASSED] More than one page
[10:19:32] [PASSED] Above the allocation limit
[10:19:32] [PASSED] One page, with coherent DMA mappings enabled
[10:19:32] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[10:19:32] ============== [PASSED] ttm_pool_alloc_basic ===============
[10:19:32] ============== ttm_pool_alloc_basic_dma_addr ==============
[10:19:32] [PASSED] One page
[10:19:32] [PASSED] More than one page
[10:19:32] [PASSED] Above the allocation limit
[10:19:32] [PASSED] One page, with coherent DMA mappings enabled
[10:19:32] [PASSED] Above the allocation limit, with coherent DMA mappings enabled
[10:19:32] ========== [PASSED] ttm_pool_alloc_basic_dma_addr ==========
[10:19:32] [PASSED] ttm_pool_alloc_order_caching_match
[10:19:32] [PASSED] ttm_pool_alloc_caching_mismatch
[10:19:32] [PASSED] ttm_pool_alloc_order_mismatch
[10:19:32] [PASSED] ttm_pool_free_dma_alloc
[10:19:32] [PASSED] ttm_pool_free_no_dma_alloc
[10:19:32] [PASSED] ttm_pool_fini_basic
[10:19:32] ==================== [PASSED] ttm_pool =====================
[10:19:32] ================ ttm_resource (8 subtests) =================
[10:19:32] ================= ttm_resource_init_basic =================
[10:19:32] [PASSED] Init resource in TTM_PL_SYSTEM
[10:19:32] [PASSED] Init resource in TTM_PL_VRAM
[10:19:32] [PASSED] Init resource in a private placement
[10:19:32] [PASSED] Init resource in TTM_PL_SYSTEM, set placement flags
[10:19:32] ============= [PASSED] ttm_resource_init_basic =============
[10:19:32] [PASSED] ttm_resource_init_pinned
[10:19:32] [PASSED] ttm_resource_fini_basic
[10:19:32] [PASSED] ttm_resource_manager_init_basic
[10:19:32] [PASSED] ttm_resource_manager_usage_basic
[10:19:32] [PASSED] ttm_resource_manager_set_used_basic
[10:19:32] [PASSED] ttm_sys_man_alloc_basic
[10:19:32] [PASSED] ttm_sys_man_free_basic
[10:19:32] ================== [PASSED] ttm_resource ===================
[10:19:32] =================== ttm_tt (15 subtests) ===================
[10:19:32] ==================== ttm_tt_init_basic ====================
[10:19:32] [PASSED] Page-aligned size
[10:19:32] [PASSED] Extra pages requested
[10:19:32] ================ [PASSED] ttm_tt_init_basic ================
[10:19:32] [PASSED] ttm_tt_init_misaligned
[10:19:32] [PASSED] ttm_tt_fini_basic
[10:19:32] [PASSED] ttm_tt_fini_sg
[10:19:32] [PASSED] ttm_tt_fini_shmem
[10:19:32] [PASSED] ttm_tt_create_basic
[10:19:32] [PASSED] ttm_tt_create_invalid_bo_type
[10:19:32] [PASSED] ttm_tt_create_ttm_exists
[10:19:32] [PASSED] ttm_tt_create_failed
[10:19:32] [PASSED] ttm_tt_destroy_basic
[10:19:32] [PASSED] ttm_tt_populate_null_ttm
[10:19:32] [PASSED] ttm_tt_populate_populated_ttm
[10:19:32] [PASSED] ttm_tt_unpopulate_basic
[10:19:32] [PASSED] ttm_tt_unpopulate_empty_ttm
[10:19:32] [PASSED] ttm_tt_swapin_basic
[10:19:32] ===================== [PASSED] ttm_tt ======================
[10:19:32] =================== ttm_bo (14 subtests) ===================
[10:19:32] =========== ttm_bo_reserve_optimistic_no_ticket ===========
[10:19:32] [PASSED] Cannot be interrupted and sleeps
[10:19:32] [PASSED] Cannot be interrupted, locks straight away
[10:19:32] [PASSED] Can be interrupted, sleeps
[10:19:32] ======= [PASSED] ttm_bo_reserve_optimistic_no_ticket =======
[10:19:32] [PASSED] ttm_bo_reserve_locked_no_sleep
[10:19:32] [PASSED] ttm_bo_reserve_no_wait_ticket
[10:19:32] [PASSED] ttm_bo_reserve_double_resv
[10:19:32] [PASSED] ttm_bo_reserve_interrupted
[10:19:32] [PASSED] ttm_bo_reserve_deadlock
[10:19:32] [PASSED] ttm_bo_unreserve_basic
[10:19:32] [PASSED] ttm_bo_unreserve_pinned
[10:19:32] [PASSED] ttm_bo_unreserve_bulk
[10:19:32] [PASSED] ttm_bo_fini_basic
[10:19:32] [PASSED] ttm_bo_fini_shared_resv
[10:19:32] [PASSED] ttm_bo_pin_basic
[10:19:32] [PASSED] ttm_bo_pin_unpin_resource
[10:19:32] [PASSED] ttm_bo_multiple_pin_one_unpin
[10:19:32] ===================== [PASSED] ttm_bo ======================
[10:19:32] ============== ttm_bo_validate (22 subtests) ===============
[10:19:32] ============== ttm_bo_init_reserved_sys_man ===============
[10:19:32] [PASSED] Buffer object for userspace
[10:19:32] [PASSED] Kernel buffer object
[10:19:32] [PASSED] Shared buffer object
[10:19:32] ========== [PASSED] ttm_bo_init_reserved_sys_man ===========
[10:19:32] ============== ttm_bo_init_reserved_mock_man ==============
[10:19:32] [PASSED] Buffer object for userspace
[10:19:32] [PASSED] Kernel buffer object
[10:19:32] [PASSED] Shared buffer object
[10:19:32] ========== [PASSED] ttm_bo_init_reserved_mock_man ==========
[10:19:32] [PASSED] ttm_bo_init_reserved_resv
[10:19:32] ================== ttm_bo_validate_basic ==================
[10:19:32] [PASSED] Buffer object for userspace
[10:19:32] [PASSED] Kernel buffer object
[10:19:32] [PASSED] Shared buffer object
[10:19:32] ============== [PASSED] ttm_bo_validate_basic ==============
[10:19:32] [PASSED] ttm_bo_validate_invalid_placement
[10:19:32] ============= ttm_bo_validate_same_placement ==============
[10:19:32] [PASSED] System manager
[10:19:32] [PASSED] VRAM manager
[10:19:32] ========= [PASSED] ttm_bo_validate_same_placement ==========
[10:19:32] [PASSED] ttm_bo_validate_failed_alloc
[10:19:32] [PASSED] ttm_bo_validate_pinned
[10:19:32] [PASSED] ttm_bo_validate_busy_placement
[10:19:32] ================ ttm_bo_validate_multihop =================
[10:19:32] [PASSED] Buffer object for userspace
[10:19:32] [PASSED] Kernel buffer object
[10:19:32] [PASSED] Shared buffer object
[10:19:32] ============ [PASSED] ttm_bo_validate_multihop =============
[10:19:32] ========== ttm_bo_validate_no_placement_signaled ==========
[10:19:32] [PASSED] Buffer object in system domain, no page vector
[10:19:32] [PASSED] Buffer object in system domain with an existing page vector
[10:19:32] ====== [PASSED] ttm_bo_validate_no_placement_signaled ======
[10:19:32] ======== ttm_bo_validate_no_placement_not_signaled ========
[10:19:32] [PASSED] Buffer object for userspace
[10:19:32] [PASSED] Kernel buffer object
[10:19:32] [PASSED] Shared buffer object
[10:19:32] ==== [PASSED] ttm_bo_validate_no_placement_not_signaled ====
[10:19:32] [PASSED] ttm_bo_validate_move_fence_signaled
[10:19:32] ========= ttm_bo_validate_move_fence_not_signaled =========
[10:19:32] [PASSED] Waits for GPU
[10:19:32] [PASSED] Tries to lock straight away
[10:19:32] ===== [PASSED] ttm_bo_validate_move_fence_not_signaled =====
[10:19:32] [PASSED] ttm_bo_validate_swapout
[10:19:32] [PASSED] ttm_bo_validate_happy_evict
[10:19:32] [PASSED] ttm_bo_validate_all_pinned_evict
[10:19:32] [PASSED] ttm_bo_validate_allowed_only_evict
[10:19:32] [PASSED] ttm_bo_validate_deleted_evict
[10:19:32] [PASSED] ttm_bo_validate_busy_domain_evict
[10:19:32] [PASSED] ttm_bo_validate_evict_gutting
[10:19:32] [PASSED] ttm_bo_validate_recrusive_evict
[10:19:32] ================= [PASSED] ttm_bo_validate =================
[10:19:32] ============================================================
[10:19:32] Testing complete. Ran 102 tests: passed: 102
[10:19:32] Elapsed time: 12.309s total, 1.829s configuring, 10.265s building, 0.184s running
+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel
^ permalink raw reply [flat|nested] 17+ messages in thread
* ✓ Xe.CI.BAT: success for Add memory page offlining support (rev16)
2026-07-30 10:11 [PATCH V14 0/9] Add memory page offlining support Tejas Upadhyay
` (10 preceding siblings ...)
2026-07-30 10:19 ` ✓ CI.KUnit: success " Patchwork
@ 2026-07-30 11:04 ` Patchwork
2026-07-30 12:10 ` ✓ Xe.CI.FULL: " Patchwork
12 siblings, 0 replies; 17+ messages in thread
From: Patchwork @ 2026-07-30 11:04 UTC (permalink / raw)
To: Tejas Upadhyay; +Cc: intel-xe
[-- Attachment #1: Type: text/plain, Size: 4642 bytes --]
== Series Details ==
Series: Add memory page offlining support (rev16)
URL : https://patchwork.freedesktop.org/series/161473/
State : success
== Summary ==
CI Bug Log - changes from xe-5507-593120331e000d147d0c405b446c82de0740c57e_BAT -> xe-pw-161473v16_BAT
====================================================
Summary
-------
**SUCCESS**
No regressions found.
Participating hosts (13 -> 12)
------------------------------
Missing (1): bat-bmg-2
Known issues
------------
Here are the changes found in xe-pw-161473v16_BAT that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@kms_addfb_basic@addfb25-y-tiled-small-legacy:
- bat-wcl-1: NOTRUN -> [SKIP][1] ([Intel XE#7245])
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/bat-wcl-1/igt@kms_addfb_basic@addfb25-y-tiled-small-legacy.html
* igt@kms_dsc@dsc-basic:
- bat-wcl-1: NOTRUN -> [SKIP][2] ([Intel XE#8265])
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/bat-wcl-1/igt@kms_dsc@dsc-basic.html
* igt@xe_evict@evict-small-multi-vm:
- bat-wcl-1: NOTRUN -> [SKIP][3] ([Intel XE#7238]) +11 other tests skip
[3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/bat-wcl-1/igt@xe_evict@evict-small-multi-vm.html
* igt@xe_exec_balancer@twice-virtual-rebind:
- bat-wcl-1: NOTRUN -> [SKIP][4] ([Intel XE#7482]) +17 other tests skip
[4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/bat-wcl-1/igt@xe_exec_balancer@twice-virtual-rebind.html
* igt@xe_exec_multi_queue@many-queues-priority:
- bat-wcl-1: NOTRUN -> [SKIP][5] ([Intel XE#8364]) +13 other tests skip
[5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/bat-wcl-1/igt@xe_exec_multi_queue@many-queues-priority.html
* igt@xe_live_ktest@xe_migrate@xe_validate_ccs_kunit:
- bat-wcl-1: NOTRUN -> [SKIP][6] ([Intel XE#7239]) +2 other tests skip
[6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/bat-wcl-1/igt@xe_live_ktest@xe_migrate@xe_validate_ccs_kunit.html
* igt@xe_mmap@vram:
- bat-wcl-1: NOTRUN -> [SKIP][7] ([Intel XE#7243])
[7]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/bat-wcl-1/igt@xe_mmap@vram.html
* igt@xe_pat@pat-index-xehpc:
- bat-wcl-1: NOTRUN -> [SKIP][8] ([Intel XE#7247] / [Intel XE#7590])
[8]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/bat-wcl-1/igt@xe_pat@pat-index-xehpc.html
* igt@xe_pat@pat-index-xelp:
- bat-wcl-1: NOTRUN -> [SKIP][9] ([Intel XE#7242] / [Intel XE#7590])
[9]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/bat-wcl-1/igt@xe_pat@pat-index-xelp.html
* igt@xe_pat@pat-index-xelpg:
- bat-wcl-1: NOTRUN -> [SKIP][10] ([Intel XE#7248] / [Intel XE#7590])
[10]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/bat-wcl-1/igt@xe_pat@pat-index-xelpg.html
#### Possible fixes ####
* igt@xe_module_load@load:
- bat-wcl-1: [ABORT][11] ([Intel XE#8717]) -> [PASS][12]
[11]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/bat-wcl-1/igt@xe_module_load@load.html
[12]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/bat-wcl-1/igt@xe_module_load@load.html
[Intel XE#7238]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7238
[Intel XE#7239]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7239
[Intel XE#7242]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7242
[Intel XE#7243]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7243
[Intel XE#7245]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7245
[Intel XE#7247]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7247
[Intel XE#7248]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7248
[Intel XE#7482]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7482
[Intel XE#7590]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7590
[Intel XE#8265]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8265
[Intel XE#8364]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8364
[Intel XE#8717]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8717
Build changes
-------------
* IGT: IGT_9032 -> IGT_9033
* Linux: xe-5507-593120331e000d147d0c405b446c82de0740c57e -> xe-pw-161473v16
IGT_9032: 9032
IGT_9033: 9033
xe-5507-593120331e000d147d0c405b446c82de0740c57e: 593120331e000d147d0c405b446c82de0740c57e
xe-pw-161473v16: 161473v16
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/index.html
[-- Attachment #2: Type: text/html, Size: 5593 bytes --]
^ permalink raw reply [flat|nested] 17+ messages in thread
* ✓ Xe.CI.FULL: success for Add memory page offlining support (rev16)
2026-07-30 10:11 [PATCH V14 0/9] Add memory page offlining support Tejas Upadhyay
` (11 preceding siblings ...)
2026-07-30 11:04 ` ✓ Xe.CI.BAT: " Patchwork
@ 2026-07-30 12:10 ` Patchwork
12 siblings, 0 replies; 17+ messages in thread
From: Patchwork @ 2026-07-30 12:10 UTC (permalink / raw)
To: Tejas Upadhyay; +Cc: intel-xe
[-- Attachment #1: Type: text/plain, Size: 90516 bytes --]
== Series Details ==
Series: Add memory page offlining support (rev16)
URL : https://patchwork.freedesktop.org/series/161473/
State : success
== Summary ==
CI Bug Log - changes from xe-5507-593120331e000d147d0c405b446c82de0740c57e_FULL -> xe-pw-161473v16_FULL
====================================================
Summary
-------
**SUCCESS**
No regressions found.
Participating hosts (2 -> 2)
------------------------------
No changes in participating hosts
Known issues
------------
Here are the changes found in xe-pw-161473v16_FULL that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@core_getversion@all-cards:
- shard-bmg: [PASS][1] -> [FAIL][2] ([Intel XE#8711] / [Intel XE#8714])
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-6/igt@core_getversion@all-cards.html
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@core_getversion@all-cards.html
* igt@core_getversion@basic:
- shard-bmg: NOTRUN -> [FAIL][3] ([Intel XE#8714])
[3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@core_getversion@basic.html
* igt@core_setmaster@master-drop-set-user:
- shard-bmg: [PASS][4] -> [FAIL][5] ([Intel XE#8599] / [Intel XE#8714])
[4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-9/igt@core_setmaster@master-drop-set-user.html
[5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@core_setmaster@master-drop-set-user.html
* igt@fbdev@unaligned-read:
- shard-bmg: [PASS][6] -> [SKIP][7] ([Intel XE#2134]) +1 other test skip
[6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-10/igt@fbdev@unaligned-read.html
[7]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@fbdev@unaligned-read.html
* igt@kms_big_fb@linear-8bpp-rotate-90:
- shard-bmg: NOTRUN -> [SKIP][8] ([Intel XE#2327]) +2 other tests skip
[8]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-1/igt@kms_big_fb@linear-8bpp-rotate-90.html
* igt@kms_big_fb@y-tiled-addfb-size-overflow:
- shard-bmg: NOTRUN -> [SKIP][9] ([Intel XE#610] / [Intel XE#7387])
[9]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-3/igt@kms_big_fb@y-tiled-addfb-size-overflow.html
* igt@kms_big_fb@yf-tiled-8bpp-rotate-0:
- shard-bmg: NOTRUN -> [SKIP][10] ([Intel XE#1124]) +1 other test skip
[10]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-1/igt@kms_big_fb@yf-tiled-8bpp-rotate-0.html
* igt@kms_ccs@crc-primary-basic-4-tiled-dg2-rc-ccs-cc:
- shard-bmg: NOTRUN -> [SKIP][11] ([Intel XE#2887]) +4 other tests skip
[11]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-3/igt@kms_ccs@crc-primary-basic-4-tiled-dg2-rc-ccs-cc.html
* igt@kms_cdclk@mode-transition:
- shard-bmg: NOTRUN -> [SKIP][12] ([Intel XE#2724] / [Intel XE#7449])
[12]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@kms_cdclk@mode-transition.html
* igt@kms_chamelium_edid@dp-edid-change-during-hibernate:
- shard-bmg: NOTRUN -> [SKIP][13] ([Intel XE#2252])
[13]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-3/igt@kms_chamelium_edid@dp-edid-change-during-hibernate.html
* igt@kms_content_protection@atomic-hdcp14:
- shard-bmg: NOTRUN -> [FAIL][14] ([Intel XE#1178] / [Intel XE#3304] / [Intel XE#7374]) +3 other tests fail
[14]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@kms_content_protection@atomic-hdcp14.html
* igt@kms_content_protection@dp-mst-type-0:
- shard-bmg: NOTRUN -> [SKIP][15] ([Intel XE#2390] / [Intel XE#6974])
[15]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-6/igt@kms_content_protection@dp-mst-type-0.html
* igt@kms_content_protection@dp-mst-type-0-hdcp14:
- shard-bmg: NOTRUN -> [SKIP][16] ([Intel XE#6974]) +1 other test skip
[16]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@kms_content_protection@dp-mst-type-0-hdcp14.html
* igt@kms_cursor_crc@cursor-onscreen-64x21:
- shard-bmg: NOTRUN -> [SKIP][17] ([Intel XE#2320]) +2 other tests skip
[17]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-2/igt@kms_cursor_crc@cursor-onscreen-64x21.html
* igt@kms_cursor_crc@cursor-rapid-movement-512x512:
- shard-bmg: NOTRUN -> [SKIP][18] ([Intel XE#2321] / [Intel XE#7355])
[18]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-4/igt@kms_cursor_crc@cursor-rapid-movement-512x512.html
* igt@kms_dsc@dsc-with-formats:
- shard-bmg: NOTRUN -> [SKIP][19] ([Intel XE#8265])
[19]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-5/igt@kms_dsc@dsc-with-formats.html
* igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-dirtyfb-tests:
- shard-bmg: NOTRUN -> [SKIP][20] ([Intel XE#4422] / [Intel XE#7442]) +1 other test skip
[20]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-dirtyfb-tests.html
* igt@kms_flip@2x-plain-flip-ts-check-interruptible@bd-dp2-hdmi-a3:
- shard-bmg: NOTRUN -> [FAIL][21] ([Intel XE#5408] / [Intel XE#6266])
[21]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@kms_flip@2x-plain-flip-ts-check-interruptible@bd-dp2-hdmi-a3.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1:
- shard-lnl: [PASS][22] -> [FAIL][23] ([Intel XE#301]) +2 other tests fail
[22]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-lnl-8/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1.html
[23]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-lnl-6/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-edp1.html
* igt@kms_flip@flip-vs-expired-vblank@c-edp1:
- shard-lnl: [PASS][24] -> [FAIL][25] ([Intel XE#301] / [Intel XE#3149])
[24]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-lnl-7/igt@kms_flip@flip-vs-expired-vblank@c-edp1.html
[25]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-lnl-3/igt@kms_flip@flip-vs-expired-vblank@c-edp1.html
* igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-pgflip-blt:
- shard-bmg: NOTRUN -> [SKIP][26] ([Intel XE#4141]) +6 other tests skip
[26]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-2/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-shrfb-pgflip-blt.html
* igt@kms_frontbuffer_tracking@fbcdrrshdr-2p-primscrn-pri-shrfb-draw-mmap-wc:
- shard-bmg: NOTRUN -> [SKIP][27] ([Intel XE#2311]) +32 other tests skip
[27]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-1/igt@kms_frontbuffer_tracking@fbcdrrshdr-2p-primscrn-pri-shrfb-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-render:
- shard-bmg: NOTRUN -> [SKIP][28] ([Intel XE#2313]) +23 other tests skip
[28]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-6/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-render.html
* igt@kms_frontbuffer_tracking@psr-abgr161616f-draw-blt:
- shard-bmg: NOTRUN -> [SKIP][29] ([Intel XE#7061] / [Intel XE#7356]) +3 other tests skip
[29]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@kms_frontbuffer_tracking@psr-abgr161616f-draw-blt.html
* igt@kms_frontbuffer_tracking@psrhdr-argb161616f-draw-render:
- shard-bmg: NOTRUN -> [SKIP][30] ([Intel XE#7061]) +3 other tests skip
[30]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-9/igt@kms_frontbuffer_tracking@psrhdr-argb161616f-draw-render.html
* igt@kms_plane@pixel-format-4-tiled-dg2-rc-ccs-cc-modifier-source-clamping:
- shard-bmg: NOTRUN -> [SKIP][31] ([Intel XE#7283]) +2 other tests skip
[31]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-5/igt@kms_plane@pixel-format-4-tiled-dg2-rc-ccs-cc-modifier-source-clamping.html
* igt@kms_plane@pixel-format-x-tiled-modifier@pipe-b-plane-5:
- shard-bmg: NOTRUN -> [SKIP][32] ([Intel XE#8303]) +1 other test skip
[32]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-5/igt@kms_plane@pixel-format-x-tiled-modifier@pipe-b-plane-5.html
* igt@kms_plane@pixel-format-y-tiled-ccs-modifier-source-clamping:
- shard-bmg: NOTRUN -> [SKIP][33] ([Intel XE#8714]) +143 other tests skip
[33]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_plane@pixel-format-y-tiled-ccs-modifier-source-clamping.html
* igt@kms_pm_backlight@bad-brightness:
- shard-bmg: NOTRUN -> [SKIP][34] ([Intel XE#7376] / [Intel XE#7760] / [Intel XE#870])
[34]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@kms_pm_backlight@bad-brightness.html
* igt@kms_pm_dc@dc3co-after-dc6@pr-xrgb8888:
- shard-bmg: NOTRUN -> [SKIP][35] ([Intel XE#8395] / [Intel XE#8396])
[35]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-4/igt@kms_pm_dc@dc3co-after-dc6@pr-xrgb8888.html
* igt@kms_pm_dc@dc3co-after-dc6@psr2-xrgb8888:
- shard-bmg: NOTRUN -> [SKIP][36] ([Intel XE#8396]) +1 other test skip
[36]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-4/igt@kms_pm_dc@dc3co-after-dc6@psr2-xrgb8888.html
* igt@kms_pm_dc@dc5-psr:
- shard-lnl: [PASS][37] -> [FAIL][38] ([Intel XE#8399])
[37]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-lnl-3/igt@kms_pm_dc@dc5-psr.html
[38]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-lnl-1/igt@kms_pm_dc@dc5-psr.html
- shard-bmg: NOTRUN -> [SKIP][39] ([Intel XE#7794])
[39]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-4/igt@kms_pm_dc@dc5-psr.html
* igt@kms_pm_lpsp@kms-lpsp:
- shard-bmg: NOTRUN -> [SKIP][40] ([Intel XE#2499])
[40]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-4/igt@kms_pm_lpsp@kms-lpsp.html
* igt@kms_psr2_sf@psr2-plane-move-sf-dmg-area:
- shard-bmg: NOTRUN -> [SKIP][41] ([Intel XE#1489]) +3 other tests skip
[41]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@kms_psr2_sf@psr2-plane-move-sf-dmg-area.html
* igt@kms_psr2_su@frontbuffer-xrgb8888:
- shard-bmg: NOTRUN -> [SKIP][42] ([Intel XE#2387] / [Intel XE#7429])
[42]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-1/igt@kms_psr2_su@frontbuffer-xrgb8888.html
* igt@kms_psr@psr2-cursor-plane-onoff:
- shard-bmg: NOTRUN -> [SKIP][43] ([Intel XE#2234] / [Intel XE#2850]) +2 other tests skip
[43]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-3/igt@kms_psr@psr2-cursor-plane-onoff.html
* igt@kms_sharpness_filter@invalid-plane-with-filter:
- shard-bmg: NOTRUN -> [SKIP][44] ([Intel XE#6503])
[44]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-10/igt@kms_sharpness_filter@invalid-plane-with-filter.html
* igt@kms_vrr@max-min:
- shard-bmg: NOTRUN -> [SKIP][45] ([Intel XE#1499]) +2 other tests skip
[45]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-9/igt@kms_vrr@max-min.html
* igt@xe_exec_balancer@many-execqueues-cm-virtual-userptr-rebind:
- shard-bmg: [PASS][46] -> [SKIP][47] ([Intel XE#8714]) +624 other tests skip
[46]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-6/igt@xe_exec_balancer@many-execqueues-cm-virtual-userptr-rebind.html
[47]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@xe_exec_balancer@many-execqueues-cm-virtual-userptr-rebind.html
* igt@xe_exec_basic@multigpu-once-userptr-rebind:
- shard-bmg: NOTRUN -> [SKIP][48] ([Intel XE#2322] / [Intel XE#7372]) +3 other tests skip
[48]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-5/igt@xe_exec_basic@multigpu-once-userptr-rebind.html
* igt@xe_exec_fault_mode@twice-multi-queue-userptr-rebind-prefetch:
- shard-bmg: NOTRUN -> [SKIP][49] ([Intel XE#8374]) +5 other tests skip
[49]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-2/igt@xe_exec_fault_mode@twice-multi-queue-userptr-rebind-prefetch.html
* igt@xe_exec_multi_queue@many-queues-basic-smem:
- shard-bmg: NOTRUN -> [SKIP][50] ([Intel XE#8364]) +13 other tests skip
[50]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-9/igt@xe_exec_multi_queue@many-queues-basic-smem.html
* igt@xe_exec_reset@long-spin-reuse-many-preempt-gt0-threads:
- shard-bmg: [PASS][51] -> [FAIL][52] ([Intel XE#7850]) +1 other test fail
[51]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-1/igt@xe_exec_reset@long-spin-reuse-many-preempt-gt0-threads.html
[52]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-9/igt@xe_exec_reset@long-spin-reuse-many-preempt-gt0-threads.html
* igt@xe_exec_reset@multi-queue-cat-error:
- shard-bmg: NOTRUN -> [SKIP][53] ([Intel XE#8369])
[53]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-6/igt@xe_exec_reset@multi-queue-cat-error.html
* igt@xe_exec_system_allocator@many-stride-new-prefetch:
- shard-bmg: NOTRUN -> [INCOMPLETE][54] ([Intel XE#7098] / [Intel XE#8159])
[54]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-6/igt@xe_exec_system_allocator@many-stride-new-prefetch.html
* igt@xe_exec_threads@threads-multi-queue-fd-userptr-invalidate-race:
- shard-bmg: NOTRUN -> [SKIP][55] ([Intel XE#8378]) +2 other tests skip
[55]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-9/igt@xe_exec_threads@threads-multi-queue-fd-userptr-invalidate-race.html
* igt@xe_fault_injection@inject-fault-probe-function-guc_wait_ucode:
- shard-bmg: [PASS][56] -> [ABORT][57] ([Intel XE#8007])
[56]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-8/igt@xe_fault_injection@inject-fault-probe-function-guc_wait_ucode.html
[57]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-3/igt@xe_fault_injection@inject-fault-probe-function-guc_wait_ucode.html
* igt@xe_multigpu_svm@mgpu-pagefault-prefetch:
- shard-bmg: NOTRUN -> [SKIP][58] ([Intel XE#6964])
[58]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@xe_multigpu_svm@mgpu-pagefault-prefetch.html
* igt@xe_page_reclaim@binds-1g-partial:
- shard-bmg: NOTRUN -> [SKIP][59] ([Intel XE#7793])
[59]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-2/igt@xe_page_reclaim@binds-1g-partial.html
* igt@xe_pat@pat-sw-hw-suspend:
- shard-bmg: NOTRUN -> [FAIL][60] ([Intel XE#7695])
[60]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-10/igt@xe_pat@pat-sw-hw-suspend.html
* igt@xe_pm@d3cold-multiple-execs:
- shard-bmg: NOTRUN -> [SKIP][61] ([Intel XE#2284] / [Intel XE#7370])
[61]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-6/igt@xe_pm@d3cold-multiple-execs.html
* igt@xe_query@multigpu-query-hwconfig:
- shard-bmg: NOTRUN -> [SKIP][62] ([Intel XE#944]) +1 other test skip
[62]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-10/igt@xe_query@multigpu-query-hwconfig.html
* igt@xe_wedged@wedged-at-any-timeout:
- shard-bmg: NOTRUN -> [DMESG-WARN][63] ([Intel XE#5545])
[63]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-10/igt@xe_wedged@wedged-at-any-timeout.html
#### Possible fixes ####
* igt@core_hotunplug@hotrebind:
- shard-bmg: [ABORT][64] ([Intel XE#8007]) -> [PASS][65] +1 other test pass
[64]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-2/igt@core_hotunplug@hotrebind.html
[65]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@core_hotunplug@hotrebind.html
* igt@core_setmaster@master-drop-set-root:
- shard-bmg: [FAIL][66] ([Intel XE#8714]) -> [PASS][67]
[66]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@core_setmaster@master-drop-set-root.html
[67]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-3/igt@core_setmaster@master-drop-set-root.html
* igt@fbdev@eof:
- shard-bmg: [SKIP][68] ([Intel XE#2134]) -> [PASS][69]
[68]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@fbdev@eof.html
[69]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@fbdev@eof.html
* igt@intel_hwmon@hwmon-write:
- shard-bmg: [SKIP][70] ([Intel XE#5177]) -> [PASS][71]
[70]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@intel_hwmon@hwmon-write.html
[71]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-5/igt@intel_hwmon@hwmon-write.html
* igt@kms_cursor_legacy@flip-vs-cursor-atomic:
- shard-bmg: [FAIL][72] ([Intel XE#7571]) -> [PASS][73]
[72]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-1/igt@kms_cursor_legacy@flip-vs-cursor-atomic.html
[73]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-10/igt@kms_cursor_legacy@flip-vs-cursor-atomic.html
* igt@xe_evict@evict-beng-mixed-many-threads-small:
- shard-bmg: [INCOMPLETE][74] ([Intel XE#6321] / [Intel XE#8355]) -> [PASS][75]
[74]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-10/igt@xe_evict@evict-beng-mixed-many-threads-small.html
[75]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-5/igt@xe_evict@evict-beng-mixed-many-threads-small.html
* igt@xe_pmu@engine-activity-accuracy-50:
- shard-bmg: [FAIL][76] ([Intel XE#8555]) -> [PASS][77] +4 other tests pass
[76]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-1/igt@xe_pmu@engine-activity-accuracy-50.html
[77]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-1/igt@xe_pmu@engine-activity-accuracy-50.html
* igt@xe_sriov_vram@vf-access-provisioned:
- shard-bmg: [SKIP][78] ([Intel XE#8714]) -> [PASS][79] +651 other tests pass
[78]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@xe_sriov_vram@vf-access-provisioned.html
[79]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-3/igt@xe_sriov_vram@vf-access-provisioned.html
#### Warnings ####
* igt@kms_big_fb@4-tiled-64bpp-rotate-90:
- shard-bmg: [SKIP][80] ([Intel XE#2327]) -> [SKIP][81] ([Intel XE#8714]) +2 other tests skip
[80]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-3/igt@kms_big_fb@4-tiled-64bpp-rotate-90.html
[81]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_big_fb@4-tiled-64bpp-rotate-90.html
* igt@kms_big_fb@linear-32bpp-rotate-270:
- shard-bmg: [SKIP][82] ([Intel XE#8714]) -> [SKIP][83] ([Intel XE#2327]) +3 other tests skip
[82]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_big_fb@linear-32bpp-rotate-270.html
[83]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-6/igt@kms_big_fb@linear-32bpp-rotate-270.html
* igt@kms_big_fb@linear-max-hw-stride-32bpp-rotate-0-hflip:
- shard-bmg: [SKIP][84] ([Intel XE#8714]) -> [SKIP][85] ([Intel XE#7059] / [Intel XE#7085]) +1 other test skip
[84]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_big_fb@linear-max-hw-stride-32bpp-rotate-0-hflip.html
[85]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-4/igt@kms_big_fb@linear-max-hw-stride-32bpp-rotate-0-hflip.html
* igt@kms_big_fb@y-tiled-8bpp-rotate-90:
- shard-bmg: [SKIP][86] ([Intel XE#1124]) -> [SKIP][87] ([Intel XE#8714]) +9 other tests skip
[86]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-10/igt@kms_big_fb@y-tiled-8bpp-rotate-90.html
[87]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_big_fb@y-tiled-8bpp-rotate-90.html
* igt@kms_big_fb@y-tiled-addfb:
- shard-bmg: [SKIP][88] ([Intel XE#2328] / [Intel XE#7367]) -> [SKIP][89] ([Intel XE#8714])
[88]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-9/igt@kms_big_fb@y-tiled-addfb.html
[89]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_big_fb@y-tiled-addfb.html
* igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180:
- shard-bmg: [SKIP][90] ([Intel XE#8714]) -> [SKIP][91] ([Intel XE#1124]) +9 other tests skip
[90]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180.html
[91]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-5/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180.html
* igt@kms_bw@connected-linear-tiling-3-displays-target-1920x1080p:
- shard-bmg: [SKIP][92] ([Intel XE#8714]) -> [SKIP][93] ([Intel XE#7679])
[92]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_bw@connected-linear-tiling-3-displays-target-1920x1080p.html
[93]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-2/igt@kms_bw@connected-linear-tiling-3-displays-target-1920x1080p.html
* igt@kms_bw@connected-linear-tiling-4-displays-target-3840x2160p:
- shard-bmg: [SKIP][94] ([Intel XE#7679]) -> [SKIP][95] ([Intel XE#8714]) +2 other tests skip
[94]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-2/igt@kms_bw@connected-linear-tiling-4-displays-target-3840x2160p.html
[95]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_bw@connected-linear-tiling-4-displays-target-3840x2160p.html
* igt@kms_bw@linear-tiling-1-displays-target-2560x1440p:
- shard-bmg: [SKIP][96] ([Intel XE#8714]) -> [SKIP][97] ([Intel XE#367]) +3 other tests skip
[96]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_bw@linear-tiling-1-displays-target-2560x1440p.html
[97]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@kms_bw@linear-tiling-1-displays-target-2560x1440p.html
* igt@kms_bw@linear-tiling-2-displays-target-3840x2160p:
- shard-bmg: [SKIP][98] ([Intel XE#367]) -> [SKIP][99] ([Intel XE#8714]) +1 other test skip
[98]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-1/igt@kms_bw@linear-tiling-2-displays-target-3840x2160p.html
[99]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_bw@linear-tiling-2-displays-target-3840x2160p.html
* igt@kms_ccs@bad-aux-stride-yf-tiled-ccs:
- shard-bmg: [SKIP][100] ([Intel XE#8714]) -> [SKIP][101] ([Intel XE#2887]) +13 other tests skip
[100]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_ccs@bad-aux-stride-yf-tiled-ccs.html
[101]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-3/igt@kms_ccs@bad-aux-stride-yf-tiled-ccs.html
* igt@kms_ccs@bad-rotation-90-4-tiled-dg2-mc-ccs:
- shard-bmg: [SKIP][102] ([Intel XE#2887]) -> [SKIP][103] ([Intel XE#8714]) +12 other tests skip
[102]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-1/igt@kms_ccs@bad-rotation-90-4-tiled-dg2-mc-ccs.html
[103]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_ccs@bad-rotation-90-4-tiled-dg2-mc-ccs.html
* igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs:
- shard-bmg: [SKIP][104] ([Intel XE#8714]) -> [SKIP][105] ([Intel XE#3432])
[104]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs.html
[105]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-4/igt@kms_ccs@crc-primary-suspend-4-tiled-dg2-rc-ccs.html
* igt@kms_cdclk@mode-transition-all-outputs:
- shard-bmg: [SKIP][106] ([Intel XE#8714]) -> [SKIP][107] ([Intel XE#2724] / [Intel XE#7449])
[106]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_cdclk@mode-transition-all-outputs.html
[107]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-5/igt@kms_cdclk@mode-transition-all-outputs.html
* igt@kms_chamelium_color@ctm-limited-range:
- shard-bmg: [SKIP][108] ([Intel XE#2325] / [Intel XE#7358]) -> [SKIP][109] ([Intel XE#8714])
[108]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-6/igt@kms_chamelium_color@ctm-limited-range.html
[109]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_chamelium_color@ctm-limited-range.html
* igt@kms_chamelium_color@degamma:
- shard-bmg: [SKIP][110] ([Intel XE#8714]) -> [SKIP][111] ([Intel XE#2325] / [Intel XE#7358]) +1 other test skip
[110]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_chamelium_color@degamma.html
[111]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-4/igt@kms_chamelium_color@degamma.html
* igt@kms_chamelium_color_pipeline@plane-lut1d-lut1d:
- shard-bmg: [SKIP][112] ([Intel XE#7358]) -> [SKIP][113] ([Intel XE#8714]) +2 other tests skip
[112]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-2/igt@kms_chamelium_color_pipeline@plane-lut1d-lut1d.html
[113]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_chamelium_color_pipeline@plane-lut1d-lut1d.html
* igt@kms_chamelium_hpd@common-hpd-after-suspend:
- shard-bmg: [SKIP][114] ([Intel XE#8714]) -> [SKIP][115] ([Intel XE#2252]) +12 other tests skip
[114]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_chamelium_hpd@common-hpd-after-suspend.html
[115]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-4/igt@kms_chamelium_hpd@common-hpd-after-suspend.html
* igt@kms_chamelium_hpd@dp-hpd-with-enabled-mode:
- shard-bmg: [SKIP][116] ([Intel XE#2252]) -> [SKIP][117] ([Intel XE#8714]) +8 other tests skip
[116]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-9/igt@kms_chamelium_hpd@dp-hpd-with-enabled-mode.html
[117]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_chamelium_hpd@dp-hpd-with-enabled-mode.html
* igt@kms_color_pipeline@plane-lut3d-green-only:
- shard-bmg: [SKIP][118] ([Intel XE#6969] / [Intel XE#7006]) -> [SKIP][119] ([Intel XE#8714])
[118]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-4/igt@kms_color_pipeline@plane-lut3d-green-only.html
[119]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_color_pipeline@plane-lut3d-green-only.html
* igt@kms_content_protection@dp-mst-lic-type-0-hdcp14:
- shard-bmg: [SKIP][120] ([Intel XE#8714]) -> [SKIP][121] ([Intel XE#6974])
[120]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_content_protection@dp-mst-lic-type-0-hdcp14.html
[121]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-3/igt@kms_content_protection@dp-mst-lic-type-0-hdcp14.html
* igt@kms_content_protection@dp-mst-lic-type-1:
- shard-bmg: [SKIP][122] ([Intel XE#2390] / [Intel XE#6974]) -> [SKIP][123] ([Intel XE#8714]) +1 other test skip
[122]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-10/igt@kms_content_protection@dp-mst-lic-type-1.html
[123]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_content_protection@dp-mst-lic-type-1.html
* igt@kms_content_protection@dp-mst-type-1:
- shard-bmg: [SKIP][124] ([Intel XE#8714]) -> [SKIP][125] ([Intel XE#2390] / [Intel XE#6974])
[124]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_content_protection@dp-mst-type-1.html
[125]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-6/igt@kms_content_protection@dp-mst-type-1.html
* igt@kms_content_protection@legacy:
- shard-bmg: [FAIL][126] ([Intel XE#1178] / [Intel XE#3304] / [Intel XE#7374]) -> [SKIP][127] ([Intel XE#8714])
[126]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-4/igt@kms_content_protection@legacy.html
[127]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_content_protection@legacy.html
* igt@kms_content_protection@legacy-hdcp14:
- shard-bmg: [SKIP][128] ([Intel XE#8714]) -> [FAIL][129] ([Intel XE#1178] / [Intel XE#3304] / [Intel XE#7374]) +1 other test fail
[128]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_content_protection@legacy-hdcp14.html
[129]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-2/igt@kms_content_protection@legacy-hdcp14.html
* igt@kms_content_protection@lic-type-1:
- shard-bmg: [SKIP][130] ([Intel XE#7642]) -> [SKIP][131] ([Intel XE#8714])
[130]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-1/igt@kms_content_protection@lic-type-1.html
[131]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_content_protection@lic-type-1.html
* igt@kms_content_protection@type1:
- shard-bmg: [SKIP][132] ([Intel XE#8714]) -> [SKIP][133] ([Intel XE#7642])
[132]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_content_protection@type1.html
[133]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-1/igt@kms_content_protection@type1.html
* igt@kms_cursor_crc@cursor-offscreen-128x42:
- shard-bmg: [SKIP][134] ([Intel XE#8714]) -> [SKIP][135] ([Intel XE#2320]) +3 other tests skip
[134]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_cursor_crc@cursor-offscreen-128x42.html
[135]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@kms_cursor_crc@cursor-offscreen-128x42.html
* igt@kms_cursor_crc@cursor-offscreen-32x32:
- shard-bmg: [SKIP][136] ([Intel XE#2320]) -> [SKIP][137] ([Intel XE#8714]) +7 other tests skip
[136]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-10/igt@kms_cursor_crc@cursor-offscreen-32x32.html
[137]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_cursor_crc@cursor-offscreen-32x32.html
* igt@kms_cursor_crc@cursor-offscreen-512x170:
- shard-bmg: [SKIP][138] ([Intel XE#2321] / [Intel XE#7355]) -> [SKIP][139] ([Intel XE#8714])
[138]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-6/igt@kms_cursor_crc@cursor-offscreen-512x170.html
[139]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_cursor_crc@cursor-offscreen-512x170.html
* igt@kms_cursor_crc@cursor-sliding-512x170:
- shard-bmg: [SKIP][140] ([Intel XE#8714]) -> [SKIP][141] ([Intel XE#2321] / [Intel XE#7355])
[140]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_cursor_crc@cursor-sliding-512x170.html
[141]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-5/igt@kms_cursor_crc@cursor-sliding-512x170.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions:
- shard-bmg: [SKIP][142] ([Intel XE#8714]) -> [SKIP][143] ([Intel XE#2286] / [Intel XE#6035])
[142]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions.html
[143]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-6/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle:
- shard-bmg: [SKIP][144] ([Intel XE#2286] / [Intel XE#6035]) -> [SKIP][145] ([Intel XE#8714])
[144]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-1/igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle.html
[145]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_cursor_legacy@short-busy-flip-before-cursor-toggle.html
* igt@kms_dirtyfb@psr-dirtyfb-ioctl:
- shard-bmg: [SKIP][146] ([Intel XE#1508]) -> [SKIP][147] ([Intel XE#8714])
[146]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-3/igt@kms_dirtyfb@psr-dirtyfb-ioctl.html
[147]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_dirtyfb@psr-dirtyfb-ioctl.html
* igt@kms_dp_link_training@non-uhbr-mst:
- shard-bmg: [SKIP][148] ([Intel XE#8714]) -> [SKIP][149] ([Intel XE#4354] / [Intel XE#5882])
[148]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_dp_link_training@non-uhbr-mst.html
[149]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-10/igt@kms_dp_link_training@non-uhbr-mst.html
* igt@kms_dp_linktrain_fallback@dsc-fallback:
- shard-bmg: [SKIP][150] ([Intel XE#8714]) -> [SKIP][151] ([Intel XE#4331] / [Intel XE#7227])
[150]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_dp_linktrain_fallback@dsc-fallback.html
[151]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-4/igt@kms_dp_linktrain_fallback@dsc-fallback.html
* igt@kms_dsc@dsc-fractional-bpp-with-bpc-bigjoiner:
- shard-bmg: [SKIP][152] ([Intel XE#8265]) -> [SKIP][153] ([Intel XE#8714]) +3 other tests skip
[152]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-6/igt@kms_dsc@dsc-fractional-bpp-with-bpc-bigjoiner.html
[153]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_dsc@dsc-fractional-bpp-with-bpc-bigjoiner.html
* igt@kms_dsc@dsc-with-output-formats-with-bpc-ultrajoiner:
- shard-bmg: [SKIP][154] ([Intel XE#8714]) -> [SKIP][155] ([Intel XE#8265]) +2 other tests skip
[154]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_dsc@dsc-with-output-formats-with-bpc-ultrajoiner.html
[155]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-2/igt@kms_dsc@dsc-with-output-formats-with-bpc-ultrajoiner.html
* igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-out-visible-area:
- shard-bmg: [SKIP][156] ([Intel XE#8714]) -> [SKIP][157] ([Intel XE#4422] / [Intel XE#7442])
[156]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-out-visible-area.html
[157]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-3/igt@kms_fbc_dirty_rect@fbc-dirty-rectangle-out-visible-area.html
* igt@kms_fbcon_fbt@psr:
- shard-bmg: [SKIP][158] ([Intel XE#8714]) -> [SKIP][159] ([Intel XE#8680])
[158]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_fbcon_fbt@psr.html
[159]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-4/igt@kms_fbcon_fbt@psr.html
* igt@kms_fbcon_fbt@psr-suspend:
- shard-bmg: [SKIP][160] ([Intel XE#8680]) -> [SKIP][161] ([Intel XE#8714])
[160]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-10/igt@kms_fbcon_fbt@psr-suspend.html
[161]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_fbcon_fbt@psr-suspend.html
* igt@kms_feature_discovery@display-3x:
- shard-bmg: [SKIP][162] ([Intel XE#8714]) -> [SKIP][163] ([Intel XE#2373] / [Intel XE#7448])
[162]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_feature_discovery@display-3x.html
[163]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-4/igt@kms_feature_discovery@display-3x.html
* igt@kms_feature_discovery@dsc:
- shard-bmg: [SKIP][164] ([Intel XE#8586]) -> [SKIP][165] ([Intel XE#8714])
[164]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-1/igt@kms_feature_discovery@dsc.html
[165]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_feature_discovery@dsc.html
* igt@kms_feature_discovery@psr1:
- shard-bmg: [SKIP][166] ([Intel XE#8714]) -> [SKIP][167] ([Intel XE#2374] / [Intel XE#6127])
[166]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_feature_discovery@psr1.html
[167]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-3/igt@kms_feature_discovery@psr1.html
* igt@kms_flip@2x-plain-flip-ts-check-interruptible:
- shard-bmg: [SKIP][168] ([Intel XE#8714]) -> [FAIL][169] ([Intel XE#5408] / [Intel XE#6266])
[168]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_flip@2x-plain-flip-ts-check-interruptible.html
[169]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@kms_flip@2x-plain-flip-ts-check-interruptible.html
* igt@kms_flip@flip-vs-expired-vblank:
- shard-lnl: [FAIL][170] ([Intel XE#301]) -> [FAIL][171] ([Intel XE#301] / [Intel XE#3149])
[170]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-lnl-7/igt@kms_flip@flip-vs-expired-vblank.html
[171]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-lnl-3/igt@kms_flip@flip-vs-expired-vblank.html
* igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling:
- shard-bmg: [SKIP][172] ([Intel XE#8714]) -> [SKIP][173] ([Intel XE#7178] / [Intel XE#7349])
[172]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling.html
[173]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@kms_flip_scaled_crc@flip-64bpp-4tile-to-32bpp-4tiledg2rcccs-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling:
- shard-bmg: [SKIP][174] ([Intel XE#7178] / [Intel XE#7351]) -> [SKIP][175] ([Intel XE#8714]) +3 other tests skip
[174]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-4/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling.html
[175]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-downscaling.html
* igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-upscaling:
- shard-bmg: [SKIP][176] ([Intel XE#8714]) -> [SKIP][177] ([Intel XE#7178] / [Intel XE#7351]) +5 other tests skip
[176]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-upscaling.html
[177]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-2/igt@kms_flip_scaled_crc@flip-64bpp-ytile-to-16bpp-ytile-upscaling.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt:
- shard-bmg: [SKIP][178] ([Intel XE#4141]) -> [SKIP][179] ([Intel XE#8714]) +11 other tests skip
[178]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-10/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt.html
[179]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-blt:
- shard-bmg: [SKIP][180] ([Intel XE#8714]) -> [SKIP][181] ([Intel XE#4141]) +7 other tests skip
[180]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-blt.html
[181]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-3/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbc-argb161616f-draw-blt:
- shard-bmg: [SKIP][182] ([Intel XE#7061] / [Intel XE#7356]) -> [SKIP][183] ([Intel XE#8714]) +1 other test skip
[182]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-10/igt@kms_frontbuffer_tracking@fbc-argb161616f-draw-blt.html
[183]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_frontbuffer_tracking@fbc-argb161616f-draw-blt.html
* igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-render:
- shard-bmg: [SKIP][184] ([Intel XE#8714]) -> [SKIP][185] ([Intel XE#2311]) +60 other tests skip
[184]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-render.html
[185]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-3/igt@kms_frontbuffer_tracking@fbcdrrs-2p-scndscrn-pri-shrfb-draw-render.html
* igt@kms_frontbuffer_tracking@fbcdrrs-argb161616f-draw-render:
- shard-bmg: [SKIP][186] ([Intel XE#8714]) -> [SKIP][187] ([Intel XE#7061] / [Intel XE#7356]) +4 other tests skip
[186]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_frontbuffer_tracking@fbcdrrs-argb161616f-draw-render.html
[187]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-5/igt@kms_frontbuffer_tracking@fbcdrrs-argb161616f-draw-render.html
* igt@kms_frontbuffer_tracking@fbcdrrshdr-2p-scndscrn-shrfb-pgflip-blt:
- shard-bmg: [SKIP][188] ([Intel XE#2311]) -> [SKIP][189] ([Intel XE#8714]) +60 other tests skip
[188]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-10/igt@kms_frontbuffer_tracking@fbcdrrshdr-2p-scndscrn-shrfb-pgflip-blt.html
[189]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_frontbuffer_tracking@fbcdrrshdr-2p-scndscrn-shrfb-pgflip-blt.html
* igt@kms_frontbuffer_tracking@fbchdr-tiling-y:
- shard-bmg: [SKIP][190] ([Intel XE#7399]) -> [SKIP][191] ([Intel XE#8714])
[190]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-3/igt@kms_frontbuffer_tracking@fbchdr-tiling-y.html
[191]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_frontbuffer_tracking@fbchdr-tiling-y.html
* igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-indfb-msflip-blt:
- shard-bmg: [SKIP][192] ([Intel XE#2313]) -> [SKIP][193] ([Intel XE#8714]) +62 other tests skip
[192]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-10/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-indfb-msflip-blt.html
[193]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-indfb-msflip-blt.html
* igt@kms_frontbuffer_tracking@fbcpsrhdr-tiling-y:
- shard-bmg: [SKIP][194] ([Intel XE#8714]) -> [SKIP][195] ([Intel XE#7399])
[194]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_frontbuffer_tracking@fbcpsrhdr-tiling-y.html
[195]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-4/igt@kms_frontbuffer_tracking@fbcpsrhdr-tiling-y.html
* igt@kms_frontbuffer_tracking@hdr-abgr161616f-draw-mmap-wc:
- shard-bmg: [SKIP][196] ([Intel XE#8714]) -> [SKIP][197] ([Intel XE#7061]) +8 other tests skip
[196]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_frontbuffer_tracking@hdr-abgr161616f-draw-mmap-wc.html
[197]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-9/igt@kms_frontbuffer_tracking@hdr-abgr161616f-draw-mmap-wc.html
* igt@kms_frontbuffer_tracking@hdr-argb161616f-draw-blt:
- shard-bmg: [SKIP][198] ([Intel XE#7061]) -> [SKIP][199] ([Intel XE#8714]) +2 other tests skip
[198]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-10/igt@kms_frontbuffer_tracking@hdr-argb161616f-draw-blt.html
[199]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_frontbuffer_tracking@hdr-argb161616f-draw-blt.html
* igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-plflip-blt:
- shard-bmg: [SKIP][200] ([Intel XE#8714]) -> [SKIP][201] ([Intel XE#2313]) +54 other tests skip
[200]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-plflip-blt.html
[201]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-3/igt@kms_frontbuffer_tracking@psr-2p-primscrn-indfb-plflip-blt.html
* igt@kms_hdmi_inject@inject-audio:
- shard-bmg: [SKIP][202] ([Intel XE#8714]) -> [SKIP][203] ([Intel XE#7308])
[202]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_hdmi_inject@inject-audio.html
[203]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@kms_hdmi_inject@inject-audio.html
* igt@kms_hdr@invalid-hdr:
- shard-bmg: [SKIP][204] ([Intel XE#1503]) -> [SKIP][205] ([Intel XE#8714])
[204]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-5/igt@kms_hdr@invalid-hdr.html
[205]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_hdr@invalid-hdr.html
* igt@kms_joiner@basic-max-non-joiner:
- shard-bmg: [SKIP][206] ([Intel XE#4298] / [Intel XE#5873]) -> [SKIP][207] ([Intel XE#8714])
[206]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-6/igt@kms_joiner@basic-max-non-joiner.html
[207]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_joiner@basic-max-non-joiner.html
* igt@kms_joiner@invalid-modeset-big-joiner:
- shard-bmg: [SKIP][208] ([Intel XE#6901]) -> [SKIP][209] ([Intel XE#8714])
[208]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-3/igt@kms_joiner@invalid-modeset-big-joiner.html
[209]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_joiner@invalid-modeset-big-joiner.html
* igt@kms_joiner@switch-modeset-ultra-joiner-big-joiner:
- shard-bmg: [SKIP][210] ([Intel XE#8714]) -> [SKIP][211] ([Intel XE#4090] / [Intel XE#7443])
[210]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_joiner@switch-modeset-ultra-joiner-big-joiner.html
[211]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-1/igt@kms_joiner@switch-modeset-ultra-joiner-big-joiner.html
* igt@kms_multipipe_modeset@basic-max-pipe-crc-check:
- shard-bmg: [SKIP][212] ([Intel XE#7591]) -> [SKIP][213] ([Intel XE#8714])
[212]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-2/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
[213]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
* igt@kms_pipe_stress@stress-xrgb8888-yftiled:
- shard-bmg: [SKIP][214] ([Intel XE#6912] / [Intel XE#7375]) -> [SKIP][215] ([Intel XE#8714])
[214]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-9/igt@kms_pipe_stress@stress-xrgb8888-yftiled.html
[215]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_pipe_stress@stress-xrgb8888-yftiled.html
* igt@kms_plane@pixel-format-4-tiled-mtl-mc-ccs-modifier:
- shard-bmg: [SKIP][216] ([Intel XE#7283]) -> [SKIP][217] ([Intel XE#8714]) +1 other test skip
[216]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-9/igt@kms_plane@pixel-format-4-tiled-mtl-mc-ccs-modifier.html
[217]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_plane@pixel-format-4-tiled-mtl-mc-ccs-modifier.html
* igt@kms_plane@pixel-format-yf-tiled-modifier-source-clamping:
- shard-bmg: [SKIP][218] ([Intel XE#8714]) -> [SKIP][219] ([Intel XE#7283]) +5 other tests skip
[218]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_plane@pixel-format-yf-tiled-modifier-source-clamping.html
[219]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-1/igt@kms_plane@pixel-format-yf-tiled-modifier-source-clamping.html
* igt@kms_plane_lowres@tiling-yf:
- shard-bmg: [SKIP][220] ([Intel XE#8714]) -> [SKIP][221] ([Intel XE#2393])
[220]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_plane_lowres@tiling-yf.html
[221]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-1/igt@kms_plane_lowres@tiling-yf.html
* igt@kms_plane_multiple@tiling-y:
- shard-bmg: [SKIP][222] ([Intel XE#5020] / [Intel XE#7348]) -> [SKIP][223] ([Intel XE#8714])
[222]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-1/igt@kms_plane_multiple@tiling-y.html
[223]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_plane_multiple@tiling-y.html
* igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5:
- shard-bmg: [SKIP][224] ([Intel XE#2763] / [Intel XE#6886]) -> [SKIP][225] ([Intel XE#8714]) +1 other test skip
[224]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-4/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5.html
[225]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_plane_scaling@planes-upscale-factor-0-25-downscale-factor-0-5.html
* igt@kms_pm_backlight@brightness-with-dpms:
- shard-bmg: [SKIP][226] ([Intel XE#2938] / [Intel XE#7376] / [Intel XE#7760]) -> [SKIP][227] ([Intel XE#8714])
[226]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-4/igt@kms_pm_backlight@brightness-with-dpms.html
[227]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_pm_backlight@brightness-with-dpms.html
* igt@kms_pm_backlight@fade:
- shard-bmg: [SKIP][228] ([Intel XE#8714]) -> [SKIP][229] ([Intel XE#7376] / [Intel XE#7760] / [Intel XE#870]) +1 other test skip
[228]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_pm_backlight@fade.html
[229]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-6/igt@kms_pm_backlight@fade.html
* igt@kms_pm_dc@dc3co-after-dc6:
- shard-bmg: [SKIP][230] ([Intel XE#8714]) -> [SKIP][231] ([Intel XE#8395] / [Intel XE#8396])
[230]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_pm_dc@dc3co-after-dc6.html
[231]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-4/igt@kms_pm_dc@dc3co-after-dc6.html
* igt@kms_pm_dc@dc3co-framedrop-check:
- shard-bmg: [SKIP][232] ([Intel XE#8395] / [Intel XE#8396]) -> [SKIP][233] ([Intel XE#8714]) +1 other test skip
[232]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-2/igt@kms_pm_dc@dc3co-framedrop-check.html
[233]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_pm_dc@dc3co-framedrop-check.html
* igt@kms_pm_dc@dc5-retention-flops:
- shard-bmg: [SKIP][234] ([Intel XE#8714]) -> [SKIP][235] ([Intel XE#3309] / [Intel XE#7368])
[234]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_pm_dc@dc5-retention-flops.html
[235]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-2/igt@kms_pm_dc@dc5-retention-flops.html
* igt@kms_pm_dc@dc6-psr:
- shard-bmg: [SKIP][236] ([Intel XE#7794]) -> [SKIP][237] ([Intel XE#8714])
[236]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-6/igt@kms_pm_dc@dc6-psr.html
[237]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_pm_dc@dc6-psr.html
* igt@kms_pm_rpm@dpms-mode-unset-lpsp:
- shard-bmg: [SKIP][238] ([Intel XE#8714]) -> [SKIP][239] ([Intel XE#1439] / [Intel XE#7402] / [Intel XE#836])
[238]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_pm_rpm@dpms-mode-unset-lpsp.html
[239]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@kms_pm_rpm@dpms-mode-unset-lpsp.html
* igt@kms_pm_rpm@modeset-lpsp:
- shard-bmg: [SKIP][240] ([Intel XE#8714]) -> [SKIP][241] ([Intel XE#1439] / [Intel XE#3141] / [Intel XE#7383] / [Intel XE#836])
[240]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_pm_rpm@modeset-lpsp.html
[241]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-2/igt@kms_pm_rpm@modeset-lpsp.html
* igt@kms_pm_rpm@modeset-lpsp-stress:
- shard-bmg: [SKIP][242] ([Intel XE#1439] / [Intel XE#3141] / [Intel XE#7383] / [Intel XE#836]) -> [SKIP][243] ([Intel XE#8714])
[242]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-4/igt@kms_pm_rpm@modeset-lpsp-stress.html
[243]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_pm_rpm@modeset-lpsp-stress.html
* igt@kms_pm_rpm@package-g7:
- shard-bmg: [SKIP][244] ([Intel XE#6814] / [Intel XE#7428]) -> [SKIP][245] ([Intel XE#8714])
[244]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-9/igt@kms_pm_rpm@package-g7.html
[245]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_pm_rpm@package-g7.html
* igt@kms_psr2_sf@pr-overlay-plane-move-continuous-sf:
- shard-bmg: [SKIP][246] ([Intel XE#8714]) -> [SKIP][247] ([Intel XE#1489]) +9 other tests skip
[246]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_psr2_sf@pr-overlay-plane-move-continuous-sf.html
[247]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-6/igt@kms_psr2_sf@pr-overlay-plane-move-continuous-sf.html
* igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-exceed-fully-sf:
- shard-bmg: [SKIP][248] ([Intel XE#1489]) -> [SKIP][249] ([Intel XE#8714]) +14 other tests skip
[248]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-1/igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-exceed-fully-sf.html
[249]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_psr2_sf@psr2-overlay-plane-move-continuous-exceed-fully-sf.html
* igt@kms_psr2_su@page_flip-nv12:
- shard-bmg: [SKIP][250] ([Intel XE#8714]) -> [SKIP][251] ([Intel XE#2387] / [Intel XE#7429])
[250]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_psr2_su@page_flip-nv12.html
[251]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-10/igt@kms_psr2_su@page_flip-nv12.html
* igt@kms_psr@fbc-psr2-cursor-plane-move:
- shard-bmg: [SKIP][252] ([Intel XE#8714]) -> [SKIP][253] ([Intel XE#2234] / [Intel XE#2850]) +10 other tests skip
[252]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_psr@fbc-psr2-cursor-plane-move.html
[253]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-3/igt@kms_psr@fbc-psr2-cursor-plane-move.html
* igt@kms_psr@pr-sprite-plane-onoff:
- shard-bmg: [SKIP][254] ([Intel XE#2234] / [Intel XE#2850]) -> [SKIP][255] ([Intel XE#8714]) +7 other tests skip
[254]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-5/igt@kms_psr@pr-sprite-plane-onoff.html
[255]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_psr@pr-sprite-plane-onoff.html
* igt@kms_psr@psr2-primary-render:
- shard-bmg: [SKIP][256] ([Intel XE#8714]) -> [SKIP][257] ([Intel XE#2234])
[256]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_psr@psr2-primary-render.html
[257]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-3/igt@kms_psr@psr2-primary-render.html
* igt@kms_psr_stress_test@invalidate-primary-flip-overlay:
- shard-bmg: [SKIP][258] ([Intel XE#8714]) -> [SKIP][259] ([Intel XE#7795])
[258]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html
[259]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-3/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html
* igt@kms_rotation_crc@primary-rotation-90:
- shard-bmg: [SKIP][260] ([Intel XE#8714]) -> [SKIP][261] ([Intel XE#3904] / [Intel XE#7342]) +1 other test skip
[260]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_rotation_crc@primary-rotation-90.html
[261]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-10/igt@kms_rotation_crc@primary-rotation-90.html
* igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0:
- shard-bmg: [SKIP][262] ([Intel XE#2330] / [Intel XE#5813]) -> [SKIP][263] ([Intel XE#8714])
[262]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-3/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0.html
[263]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0.html
* igt@kms_rotation_crc@sprite-rotation-90-pos-100-0:
- shard-bmg: [SKIP][264] ([Intel XE#3904] / [Intel XE#7342]) -> [SKIP][265] ([Intel XE#8714])
[264]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-1/igt@kms_rotation_crc@sprite-rotation-90-pos-100-0.html
[265]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_rotation_crc@sprite-rotation-90-pos-100-0.html
* igt@kms_scaling_modes@scaling-mode-full:
- shard-bmg: [SKIP][266] ([Intel XE#8714]) -> [SKIP][267] ([Intel XE#2413])
[266]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_scaling_modes@scaling-mode-full.html
[267]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-2/igt@kms_scaling_modes@scaling-mode-full.html
* igt@kms_setmode@invalid-clone-exclusive-crtc:
- shard-bmg: [SKIP][268] ([Intel XE#8714]) -> [SKIP][269] ([Intel XE#1435] / [Intel XE#8695])
[268]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_setmode@invalid-clone-exclusive-crtc.html
[269]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-10/igt@kms_setmode@invalid-clone-exclusive-crtc.html
* igt@kms_sharpness_filter@filter-basic:
- shard-bmg: [SKIP][270] ([Intel XE#6503]) -> [SKIP][271] ([Intel XE#8714]) +1 other test skip
[270]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-2/igt@kms_sharpness_filter@filter-basic.html
[271]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_sharpness_filter@filter-basic.html
* igt@kms_sharpness_filter@invalid-filter-with-scaler:
- shard-bmg: [SKIP][272] ([Intel XE#8714]) -> [SKIP][273] ([Intel XE#6503]) +1 other test skip
[272]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_sharpness_filter@invalid-filter-with-scaler.html
[273]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-4/igt@kms_sharpness_filter@invalid-filter-with-scaler.html
* igt@kms_tiled_display@basic-test-pattern:
- shard-bmg: [SKIP][274] ([Intel XE#2426] / [Intel XE#5848]) -> [SKIP][275] ([Intel XE#8714])
[274]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-6/igt@kms_tiled_display@basic-test-pattern.html
[275]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_tiled_display@basic-test-pattern.html
* igt@kms_vrr@lobf:
- shard-bmg: [SKIP][276] ([Intel XE#2168] / [Intel XE#7444]) -> [SKIP][277] ([Intel XE#8714])
[276]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-8/igt@kms_vrr@lobf.html
[277]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_vrr@lobf.html
* igt@kms_vrr@seamless-rr-switch-drrs:
- shard-bmg: [SKIP][278] ([Intel XE#8714]) -> [SKIP][279] ([Intel XE#1499]) +1 other test skip
[278]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@kms_vrr@seamless-rr-switch-drrs.html
[279]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-6/igt@kms_vrr@seamless-rr-switch-drrs.html
* igt@kms_vrr@seamless-rr-switch-virtual:
- shard-bmg: [SKIP][280] ([Intel XE#1499]) -> [SKIP][281] ([Intel XE#8714])
[280]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-3/igt@kms_vrr@seamless-rr-switch-virtual.html
[281]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@kms_vrr@seamless-rr-switch-virtual.html
* igt@xe_create@multigpu-create-massive-size:
- shard-bmg: [SKIP][282] ([Intel XE#2504] / [Intel XE#7319] / [Intel XE#7350]) -> [SKIP][283] ([Intel XE#8714])
[282]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-10/igt@xe_create@multigpu-create-massive-size.html
[283]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@xe_create@multigpu-create-massive-size.html
* igt@xe_evict@evict-small-external-multi-queue-cm:
- shard-bmg: [SKIP][284] ([Intel XE#8370]) -> [SKIP][285] ([Intel XE#8714]) +1 other test skip
[284]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-9/igt@xe_evict@evict-small-external-multi-queue-cm.html
[285]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@xe_evict@evict-small-external-multi-queue-cm.html
* igt@xe_evict@evict-small-multi-queue-cm:
- shard-bmg: [SKIP][286] ([Intel XE#8714]) -> [SKIP][287] ([Intel XE#8370])
[286]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@xe_evict@evict-small-multi-queue-cm.html
[287]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-9/igt@xe_evict@evict-small-multi-queue-cm.html
* igt@xe_exec_basic@multigpu-many-execqueues-many-vm-userptr-invalidate:
- shard-bmg: [SKIP][288] ([Intel XE#8714]) -> [SKIP][289] ([Intel XE#2322] / [Intel XE#7372]) +6 other tests skip
[288]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@xe_exec_basic@multigpu-many-execqueues-many-vm-userptr-invalidate.html
[289]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@xe_exec_basic@multigpu-many-execqueues-many-vm-userptr-invalidate.html
* igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate:
- shard-bmg: [SKIP][290] ([Intel XE#2322] / [Intel XE#7372]) -> [SKIP][291] ([Intel XE#8714]) +8 other tests skip
[290]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-4/igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate.html
[291]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@xe_exec_basic@multigpu-once-bindexecqueue-userptr-invalidate.html
* igt@xe_exec_fault_mode@many-execqueues-multi-queue-userptr:
- shard-bmg: [SKIP][292] ([Intel XE#8714]) -> [SKIP][293] ([Intel XE#8374]) +12 other tests skip
[292]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@xe_exec_fault_mode@many-execqueues-multi-queue-userptr.html
[293]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-10/igt@xe_exec_fault_mode@many-execqueues-multi-queue-userptr.html
* igt@xe_exec_fault_mode@many-multi-queue-invalid-fault:
- shard-bmg: [SKIP][294] ([Intel XE#8374]) -> [SKIP][295] ([Intel XE#8714]) +9 other tests skip
[294]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-6/igt@xe_exec_fault_mode@many-multi-queue-invalid-fault.html
[295]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@xe_exec_fault_mode@many-multi-queue-invalid-fault.html
* igt@xe_exec_multi_queue@many-execs-preempt-mode-fault-userptr-invalidate:
- shard-bmg: [SKIP][296] ([Intel XE#8364]) -> [SKIP][297] ([Intel XE#8714]) +26 other tests skip
[296]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-4/igt@xe_exec_multi_queue@many-execs-preempt-mode-fault-userptr-invalidate.html
[297]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@xe_exec_multi_queue@many-execs-preempt-mode-fault-userptr-invalidate.html
* igt@xe_exec_multi_queue@two-queues-preempt-mode-fault-priority:
- shard-bmg: [SKIP][298] ([Intel XE#8714]) -> [SKIP][299] ([Intel XE#8364]) +28 other tests skip
[298]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@xe_exec_multi_queue@two-queues-preempt-mode-fault-priority.html
[299]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-1/igt@xe_exec_multi_queue@two-queues-preempt-mode-fault-priority.html
* igt@xe_exec_reset@multi-queue-cat-error-on-secondary:
- shard-bmg: [SKIP][300] ([Intel XE#8714]) -> [SKIP][301] ([Intel XE#8369]) +1 other test skip
[300]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@xe_exec_reset@multi-queue-cat-error-on-secondary.html
[301]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@xe_exec_reset@multi-queue-cat-error-on-secondary.html
* igt@xe_exec_threads@threads-multi-queue-cm-fd-userptr-rebind:
- shard-bmg: [SKIP][302] ([Intel XE#8714]) -> [SKIP][303] ([Intel XE#8378]) +13 other tests skip
[302]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@xe_exec_threads@threads-multi-queue-cm-fd-userptr-rebind.html
[303]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-1/igt@xe_exec_threads@threads-multi-queue-cm-fd-userptr-rebind.html
* igt@xe_exec_threads@threads-multi-queue-mixed-fd-rebind:
- shard-bmg: [SKIP][304] ([Intel XE#8378]) -> [SKIP][305] ([Intel XE#8714]) +6 other tests skip
[304]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-1/igt@xe_exec_threads@threads-multi-queue-mixed-fd-rebind.html
[305]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@xe_exec_threads@threads-multi-queue-mixed-fd-rebind.html
* igt@xe_fault_injection@exec-queue-create-fail-xe_pxp_exec_queue_add:
- shard-bmg: [SKIP][306] ([Intel XE#6281] / [Intel XE#7426]) -> [SKIP][307] ([Intel XE#8714])
[306]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-9/igt@xe_fault_injection@exec-queue-create-fail-xe_pxp_exec_queue_add.html
[307]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@xe_fault_injection@exec-queue-create-fail-xe_pxp_exec_queue_add.html
* igt@xe_fault_injection@inject-fault-probe-function-xe_guc_relay_init:
- shard-bmg: [SKIP][308] ([Intel XE#8714]) -> [ABORT][309] ([Intel XE#8007])
[308]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@xe_fault_injection@inject-fault-probe-function-xe_guc_relay_init.html
[309]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-5/igt@xe_fault_injection@inject-fault-probe-function-xe_guc_relay_init.html
* igt@xe_gpgpu_fill@offset-4x4:
- shard-bmg: [SKIP][310] ([Intel XE#8714]) -> [SKIP][311] ([Intel XE#7954])
[310]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@xe_gpgpu_fill@offset-4x4.html
[311]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-2/igt@xe_gpgpu_fill@offset-4x4.html
* igt@xe_multigpu_svm@mgpu-concurrent-access-prefetch:
- shard-bmg: [SKIP][312] ([Intel XE#6964]) -> [SKIP][313] ([Intel XE#6964] / [Intel XE#8714]) +6 other tests skip
[312]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@xe_multigpu_svm@mgpu-concurrent-access-prefetch.html
[313]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@xe_multigpu_svm@mgpu-concurrent-access-prefetch.html
* igt@xe_oa@oa-tlb-invalidate:
- shard-bmg: [SKIP][314] ([Intel XE#2248] / [Intel XE#7325] / [Intel XE#7393]) -> [SKIP][315] ([Intel XE#8714])
[314]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-10/igt@xe_oa@oa-tlb-invalidate.html
[315]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@xe_oa@oa-tlb-invalidate.html
* igt@xe_page_reclaim@basic-mixed:
- shard-bmg: [SKIP][316] ([Intel XE#8714]) -> [SKIP][317] ([Intel XE#7793]) +1 other test skip
[316]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@xe_page_reclaim@basic-mixed.html
[317]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-5/igt@xe_page_reclaim@basic-mixed.html
* igt@xe_page_reclaim@prl-max-entries:
- shard-bmg: [SKIP][318] ([Intel XE#7793]) -> [SKIP][319] ([Intel XE#8714]) +2 other tests skip
[318]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-3/igt@xe_page_reclaim@prl-max-entries.html
[319]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@xe_page_reclaim@prl-max-entries.html
* igt@xe_pat@pat-index-xelpg:
- shard-bmg: [SKIP][320] ([Intel XE#8714]) -> [SKIP][321] ([Intel XE#2236] / [Intel XE#7590])
[320]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@xe_pat@pat-index-xelpg.html
[321]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-2/igt@xe_pat@pat-index-xelpg.html
* igt@xe_peer2peer@read:
- shard-bmg: [SKIP][322] ([Intel XE#2427] / [Intel XE#6953] / [Intel XE#7326] / [Intel XE#7353]) -> [SKIP][323] ([Intel XE#2427] / [Intel XE#6953] / [Intel XE#7326] / [Intel XE#7353] / [Intel XE#8714])
[322]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-1/igt@xe_peer2peer@read.html
[323]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@xe_peer2peer@read.html
* igt@xe_pm@d3cold-basic:
- shard-bmg: [SKIP][324] ([Intel XE#8714]) -> [SKIP][325] ([Intel XE#2284] / [Intel XE#7370])
[324]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@xe_pm@d3cold-basic.html
[325]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-8/igt@xe_pm@d3cold-basic.html
* igt@xe_pm@d3cold-i2c:
- shard-bmg: [SKIP][326] ([Intel XE#8714]) -> [SKIP][327] ([Intel XE#5694] / [Intel XE#7370])
[326]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@xe_pm@d3cold-i2c.html
[327]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-2/igt@xe_pm@d3cold-i2c.html
* igt@xe_pm@s3-d3cold-basic-exec:
- shard-bmg: [SKIP][328] ([Intel XE#2284] / [Intel XE#7370]) -> [SKIP][329] ([Intel XE#8714])
[328]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-1/igt@xe_pm@s3-d3cold-basic-exec.html
[329]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@xe_pm@s3-d3cold-basic-exec.html
* igt@xe_pxp@pxp-stale-bo-bind-post-termination-irq:
- shard-bmg: [SKIP][330] ([Intel XE#8714]) -> [SKIP][331] ([Intel XE#4733] / [Intel XE#7417]) +3 other tests skip
[330]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@xe_pxp@pxp-stale-bo-bind-post-termination-irq.html
[331]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-6/igt@xe_pxp@pxp-stale-bo-bind-post-termination-irq.html
* igt@xe_pxp@pxp-termination-key-update-post-suspend:
- shard-bmg: [SKIP][332] ([Intel XE#4733] / [Intel XE#7417]) -> [SKIP][333] ([Intel XE#8714]) +3 other tests skip
[332]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-10/igt@xe_pxp@pxp-termination-key-update-post-suspend.html
[333]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@xe_pxp@pxp-termination-key-update-post-suspend.html
* igt@xe_query@multigpu-query-invalid-cs-cycles:
- shard-bmg: [SKIP][334] ([Intel XE#944]) -> [SKIP][335] ([Intel XE#8714]) +2 other tests skip
[334]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-8/igt@xe_query@multigpu-query-invalid-cs-cycles.html
[335]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-7/igt@xe_query@multigpu-query-invalid-cs-cycles.html
* igt@xe_query@multigpu-query-invalid-uc-fw-version-mbz:
- shard-bmg: [SKIP][336] ([Intel XE#8714]) -> [SKIP][337] ([Intel XE#944]) +1 other test skip
[336]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-5507-593120331e000d147d0c405b446c82de0740c57e/shard-bmg-7/igt@xe_query@multigpu-query-invalid-uc-fw-version-mbz.html
[337]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/shard-bmg-2/igt@xe_query@multigpu-query-invalid-uc-fw-version-mbz.html
[Intel XE#1124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1124
[Intel XE#1178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1178
[Intel XE#1435]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1435
[Intel XE#1439]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1439
[Intel XE#1489]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1489
[Intel XE#1499]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1499
[Intel XE#1503]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1503
[Intel XE#1508]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1508
[Intel XE#2134]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2134
[Intel XE#2168]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2168
[Intel XE#2234]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2234
[Intel XE#2236]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2236
[Intel XE#2248]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2248
[Intel XE#2252]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2252
[Intel XE#2284]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2284
[Intel XE#2286]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2286
[Intel XE#2311]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2311
[Intel XE#2313]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2313
[Intel XE#2320]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2320
[Intel XE#2321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2321
[Intel XE#2322]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2322
[Intel XE#2325]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2325
[Intel XE#2327]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2327
[Intel XE#2328]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2328
[Intel XE#2330]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2330
[Intel XE#2373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2373
[Intel XE#2374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2374
[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#2393]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2393
[Intel XE#2413]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2413
[Intel XE#2426]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2426
[Intel XE#2427]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2427
[Intel XE#2499]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2499
[Intel XE#2504]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2504
[Intel XE#2724]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2724
[Intel XE#2763]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2763
[Intel XE#2850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2850
[Intel XE#2887]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2887
[Intel XE#2938]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/2938
[Intel XE#301]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/301
[Intel XE#3141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3141
[Intel XE#3149]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3149
[Intel XE#3304]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3304
[Intel XE#3309]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3309
[Intel XE#3432]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3432
[Intel XE#367]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/367
[Intel XE#3904]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/3904
[Intel XE#4090]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4090
[Intel XE#4141]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4141
[Intel XE#4298]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4298
[Intel XE#4331]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4331
[Intel XE#4354]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4354
[Intel XE#4422]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4422
[Intel XE#4733]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/4733
[Intel XE#5020]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5020
[Intel XE#5177]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5177
[Intel XE#5408]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5408
[Intel XE#5545]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5545
[Intel XE#5694]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5694
[Intel XE#5813]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5813
[Intel XE#5848]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5848
[Intel XE#5873]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5873
[Intel XE#5882]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/5882
[Intel XE#6035]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6035
[Intel XE#610]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/610
[Intel XE#6127]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6127
[Intel XE#6266]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6266
[Intel XE#6281]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6281
[Intel XE#6321]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6321
[Intel XE#6503]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6503
[Intel XE#6814]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6814
[Intel XE#6886]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6886
[Intel XE#6901]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6901
[Intel XE#6912]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6912
[Intel XE#6953]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6953
[Intel XE#6964]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6964
[Intel XE#6969]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6969
[Intel XE#6974]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/6974
[Intel XE#7006]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7006
[Intel XE#7059]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7059
[Intel XE#7061]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7061
[Intel XE#7085]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7085
[Intel XE#7098]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7098
[Intel XE#7178]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7178
[Intel XE#7227]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7227
[Intel XE#7283]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7283
[Intel XE#7308]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7308
[Intel XE#7319]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7319
[Intel XE#7325]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7325
[Intel XE#7326]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7326
[Intel XE#7342]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7342
[Intel XE#7348]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7348
[Intel XE#7349]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7349
[Intel XE#7350]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7350
[Intel XE#7351]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7351
[Intel XE#7353]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7353
[Intel XE#7355]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7355
[Intel XE#7356]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7356
[Intel XE#7358]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7358
[Intel XE#7367]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7367
[Intel XE#7368]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7368
[Intel XE#7370]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7370
[Intel XE#7372]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7372
[Intel XE#7374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7374
[Intel XE#7375]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7375
[Intel XE#7376]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7376
[Intel XE#7383]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7383
[Intel XE#7387]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7387
[Intel XE#7393]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7393
[Intel XE#7399]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7399
[Intel XE#7402]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7402
[Intel XE#7417]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7417
[Intel XE#7426]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7426
[Intel XE#7428]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7428
[Intel XE#7429]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7429
[Intel XE#7442]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7442
[Intel XE#7443]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7443
[Intel XE#7444]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7444
[Intel XE#7448]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7448
[Intel XE#7449]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7449
[Intel XE#7571]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7571
[Intel XE#7590]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7590
[Intel XE#7591]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7591
[Intel XE#7642]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7642
[Intel XE#7679]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7679
[Intel XE#7695]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7695
[Intel XE#7760]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7760
[Intel XE#7793]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7793
[Intel XE#7794]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7794
[Intel XE#7795]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7795
[Intel XE#7850]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7850
[Intel XE#7954]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/7954
[Intel XE#8007]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8007
[Intel XE#8159]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8159
[Intel XE#8265]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8265
[Intel XE#8303]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8303
[Intel XE#8355]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8355
[Intel XE#836]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/836
[Intel XE#8364]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8364
[Intel XE#8369]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8369
[Intel XE#8370]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8370
[Intel XE#8374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8374
[Intel XE#8378]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8378
[Intel XE#8395]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8395
[Intel XE#8396]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8396
[Intel XE#8399]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8399
[Intel XE#8555]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8555
[Intel XE#8586]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8586
[Intel XE#8599]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8599
[Intel XE#8680]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8680
[Intel XE#8695]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8695
[Intel XE#870]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/870
[Intel XE#8711]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8711
[Intel XE#8714]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/8714
[Intel XE#944]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/944
Build changes
-------------
* IGT: IGT_9032 -> IGT_9033
* Linux: xe-5507-593120331e000d147d0c405b446c82de0740c57e -> xe-pw-161473v16
IGT_9032: 9032
IGT_9033: 9033
xe-5507-593120331e000d147d0c405b446c82de0740c57e: 593120331e000d147d0c405b446c82de0740c57e
xe-pw-161473v16: 161473v16
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-161473v16/index.html
[-- Attachment #2: Type: text/html, Size: 114319 bytes --]
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH V14 1/9] drm/xe: Link VRAM object with gpu buddy
2026-07-30 10:11 ` [PATCH V14 1/9] drm/xe: Link VRAM object with gpu buddy Tejas Upadhyay
@ 2026-08-11 11:04 ` Ghimiray, Himal Prasad
0 siblings, 0 replies; 17+ messages in thread
From: Ghimiray, Himal Prasad @ 2026-08-11 11:04 UTC (permalink / raw)
To: Tejas Upadhyay, intel-xe; +Cc: Matthew Brost
On 30-07-2026 15:41, Tejas Upadhyay wrote:
> Setup to link TTM buffer object inside gpu buddy. This functionality
> is critical for supporting the memory page offline feature on CRI,
> where identified faulty pages must be traced back to their
> originating buffer for safe removal.
>
> V2(MattB): Clear block->private in xe_ttm_vram_mgr_del as well
>
> Reviewed-by: Matthew Brost <matthew.brost@intel.com>
> Signed-off-by: Tejas Upadhyay <tejas.upadhyay@intel.com>
> ---
> drivers/gpu/drm/xe/xe_ttm_vram_mgr.c | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
> index b518f7dec680..5ab5dfdb183c 100644
> --- a/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
> +++ b/drivers/gpu/drm/xe/xe_ttm_vram_mgr.c
> @@ -54,6 +54,7 @@ static int xe_ttm_vram_mgr_new(struct ttm_resource_manager *man,
> struct xe_ttm_vram_mgr *mgr = to_xe_ttm_vram_mgr(man);
> struct xe_ttm_vram_mgr_resource *vres;
> struct gpu_buddy *mm = &mgr->mm;
> + struct gpu_buddy_block *block;
> u64 size, min_page_size;
> unsigned long lpfn;
> int err;
> @@ -138,6 +139,8 @@ static int xe_ttm_vram_mgr_new(struct ttm_resource_manager *man,
> }
>
> mgr->visible_avail -= vres->used_visible_size;
> + list_for_each_entry(block, &vres->blocks, link)
> + block->private = tbo;
> mutex_unlock(&mgr->lock);
>
> if (!(vres->base.placement & TTM_PL_FLAG_CONTIGUOUS) &&
> @@ -176,8 +179,11 @@ static void xe_ttm_vram_mgr_del(struct ttm_resource_manager *man,
> to_xe_ttm_vram_mgr_resource(res);
> struct xe_ttm_vram_mgr *mgr = to_xe_ttm_vram_mgr(man);
> struct gpu_buddy *mm = &mgr->mm;
> + struct gpu_buddy_block *block;
>
> mutex_lock(&mgr->lock);
> + list_for_each_entry(block, &vres->blocks, link)
> + block->private = NULL;
Reviewed-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
> gpu_buddy_free_list(mm, &vres->blocks, 0);
> mgr->visible_avail += vres->used_visible_size;
> mutex_unlock(&mgr->lock);
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH V14 3/9] drm/xe: Link LRC BO and its execution Queue
2026-07-30 10:11 ` [PATCH V14 3/9] drm/xe: Link LRC BO and its execution Queue Tejas Upadhyay
@ 2026-08-11 11:05 ` Ghimiray, Himal Prasad
0 siblings, 0 replies; 17+ messages in thread
From: Ghimiray, Himal Prasad @ 2026-08-11 11:05 UTC (permalink / raw)
To: Tejas Upadhyay, intel-xe
On 30-07-2026 15:41, Tejas Upadhyay wrote:
> To establish a link between an LRC BO (Logical Ring Context
> Buffer Object) and its corresponding execution Queue in the
> drm/xe driver, you need to store a back-pointer to the queue
> within the BO's private data structure. This allows the
> driver to identify and take corrective action on the specific
> queue if the LRC BO encounters an error (e.g., memory
> corruption or eviction issues).
>
> V3(Sashiko):
> - Placeholder of 8 byte for non-lrc bo is acceptable
> - Assign bo-q is safe just use READ_ONCE/WRITE_ONCE
> V2(MattB):
> - Handle multiqueue
>
> Signed-off-by: Tejas Upadhyay <tejas.upadhyay@intel.com>
> ---
> drivers/gpu/drm/xe/xe_bo_types.h | 3 +++
> drivers/gpu/drm/xe/xe_exec_queue.c | 6 ++++++
> drivers/gpu/drm/xe/xe_lrc.c | 1 +
> 3 files changed, 10 insertions(+)
>
> diff --git a/drivers/gpu/drm/xe/xe_bo_types.h b/drivers/gpu/drm/xe/xe_bo_types.h
> index e45f24301050..a9c48e440669 100644
> --- a/drivers/gpu/drm/xe/xe_bo_types.h
> +++ b/drivers/gpu/drm/xe/xe_bo_types.h
> @@ -20,6 +20,7 @@
> struct xe_device;
> struct xe_mem_pool_node;
> struct xe_vm;
> +struct xe_exec_queue;
>
> #define XE_BO_MAX_PLACEMENTS 3
>
> @@ -42,6 +43,8 @@ struct xe_bo {
> u32 flags;
> /** @vm: VM this BO is attached to, for extobj this will be NULL */
> struct xe_vm *vm;
> + /** @q: Queue this BO is attached to, mostly for LRC BO, NULL otherwise */
> + struct xe_exec_queue *q;
> /** @tile: Tile this BO is attached to (kernel BO only) */
> struct xe_tile *tile;
> /** @placements: valid placements for this BO */
> diff --git a/drivers/gpu/drm/xe/xe_exec_queue.c b/drivers/gpu/drm/xe/xe_exec_queue.c
> index 38972b6e6d37..ab81a512fb41 100644
> --- a/drivers/gpu/drm/xe/xe_exec_queue.c
> +++ b/drivers/gpu/drm/xe/xe_exec_queue.c
> @@ -390,6 +390,12 @@ static int __xe_exec_queue_init(struct xe_exec_queue *q, u32 exec_queue_flags)
> goto err_lrc;
> }
>
> + /*
> + * The queue ref counts the LRCs, thus it safe for the LRC BO to hold a
> + * pointer to queue without reference. The reader holds dma_resv (
> + * xe_bo_lock) which serializes with xe_lrc_finish().
> + */
> + WRITE_ONCE(lrc->bo->q, xe_exec_queue_multi_queue_primary(q));
> xe_exec_queue_set_lrc(q, lrc, i);
Reviewed-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
>
> if (__lrc)
> diff --git a/drivers/gpu/drm/xe/xe_lrc.c b/drivers/gpu/drm/xe/xe_lrc.c
> index 3e7c995085d0..ee77106b06bc 100644
> --- a/drivers/gpu/drm/xe/xe_lrc.c
> +++ b/drivers/gpu/drm/xe/xe_lrc.c
> @@ -1066,6 +1066,7 @@ static void xe_lrc_set_ppgtt(struct xe_lrc *lrc, struct xe_vm *vm)
> static void xe_lrc_finish(struct xe_lrc *lrc)
> {
> xe_hw_fence_ctx_finish(&lrc->fence_ctx);
> + WRITE_ONCE(lrc->bo->q, NULL);
> xe_bo_unpin_map_no_vm(lrc->bo);
> xe_bo_unpin_map_no_vm(lrc->seqno_bo);
> }
^ permalink raw reply [flat|nested] 17+ messages in thread
* Re: [PATCH V14 4/9] drm/xe: Extend BO purge to handle vram pages as well
2026-07-30 10:11 ` [PATCH V14 4/9] drm/xe: Extend BO purge to handle vram pages as well Tejas Upadhyay
@ 2026-08-11 11:06 ` Ghimiray, Himal Prasad
0 siblings, 0 replies; 17+ messages in thread
From: Ghimiray, Himal Prasad @ 2026-08-11 11:06 UTC (permalink / raw)
To: Tejas Upadhyay, intel-xe; +Cc: Arvind Yadav
On 30-07-2026 15:41, Tejas Upadhyay wrote:
> Recent driver update introduce support for purgeable buffer
> objects (BOs), extending the API to include VRAM pages to
> better manage memory pressure and enable memory offlining.
>
> Signed-off-by: Tejas Upadhyay <tejas.upadhyay@intel.com>
> Reviewed-by: Arvind Yadav <arvind.yadav@intel.com>
> ---
> drivers/gpu/drm/xe/xe_bo.c | 5 +----
> drivers/gpu/drm/xe/xe_bo.h | 1 +
> 2 files changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/xe/xe_bo.c b/drivers/gpu/drm/xe/xe_bo.c
> index dde309821237..52f81e972ada 100644
> --- a/drivers/gpu/drm/xe/xe_bo.c
> +++ b/drivers/gpu/drm/xe/xe_bo.c
> @@ -921,7 +921,7 @@ void xe_bo_set_purgeable_state(struct xe_bo *bo,
> *
> * Return: 0 on success, negative error code on failure
> */
> -static int xe_ttm_bo_purge(struct ttm_buffer_object *ttm_bo, struct ttm_operation_ctx *ctx)
> +int xe_ttm_bo_purge(struct ttm_buffer_object *ttm_bo, struct ttm_operation_ctx *ctx)
> {
> struct xe_bo *bo = ttm_to_xe_bo(ttm_bo);
> struct ttm_placement place = {};
> @@ -929,9 +929,6 @@ static int xe_ttm_bo_purge(struct ttm_buffer_object *ttm_bo, struct ttm_operatio
>
> xe_bo_assert_held(bo);
>
> - if (!ttm_bo->ttm)
> - return 0;
> -
Reviewed-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com>
> if (!xe_bo_madv_is_dontneed(bo))
> return 0;
>
> diff --git a/drivers/gpu/drm/xe/xe_bo.h b/drivers/gpu/drm/xe/xe_bo.h
> index c6d80e1bd6e7..659e2888d419 100644
> --- a/drivers/gpu/drm/xe/xe_bo.h
> +++ b/drivers/gpu/drm/xe/xe_bo.h
> @@ -586,6 +586,7 @@ struct xe_bo_shrink_flags {
> long xe_bo_shrink(struct ttm_operation_ctx *ctx, struct ttm_buffer_object *bo,
> const struct xe_bo_shrink_flags flags,
> unsigned long *scanned);
> +int xe_ttm_bo_purge(struct ttm_buffer_object *ttm_bo, struct ttm_operation_ctx *ctx);
>
> /**
> * xe_bo_is_mem_type - Whether the bo currently resides in the given
^ permalink raw reply [flat|nested] 17+ messages in thread
end of thread, other threads:[~2026-08-11 11:06 UTC | newest]
Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-30 10:11 [PATCH V14 0/9] Add memory page offlining support Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 1/9] drm/xe: Link VRAM object with gpu buddy Tejas Upadhyay
2026-08-11 11:04 ` Ghimiray, Himal Prasad
2026-07-30 10:11 ` [PATCH V14 2/9] [DO NOT MERGE]drm/gpu: Add gpu_buddy_allocated_addr_to_block helper Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 3/9] drm/xe: Link LRC BO and its execution Queue Tejas Upadhyay
2026-08-11 11:05 ` Ghimiray, Himal Prasad
2026-07-30 10:11 ` [PATCH V14 4/9] drm/xe: Extend BO purge to handle vram pages as well Tejas Upadhyay
2026-08-11 11:06 ` Ghimiray, Himal Prasad
2026-07-30 10:11 ` [PATCH V14 5/9] drm/xe: Handle physical memory address error Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 6/9] drm/xe/configfs: Add vram bad page reservation policy Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 7/9] drm/xe/cri: Add sysfs interface for bad gpu vram pages Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 8/9] drm/xe/uapi: Expose ban reason in EXEC_QUEUE_GET_PROPERTY_BAN Tejas Upadhyay
2026-07-30 10:11 ` [PATCH V14 9/9] drm/xe: Add fault-inject based VRAM page offline injection Tejas Upadhyay
2026-07-30 10:18 ` ✗ CI.checkpatch: warning for Add memory page offlining support (rev16) Patchwork
2026-07-30 10:19 ` ✓ CI.KUnit: success " Patchwork
2026-07-30 11:04 ` ✓ Xe.CI.BAT: " Patchwork
2026-07-30 12:10 ` ✓ Xe.CI.FULL: " Patchwork
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.