* [PATCH v4 1/5] drm/xe: Decouple job seqno and lrc seqno
2024-05-27 13:59 [PATCH v4 0/5] drm/xe: Allow migrate vm gpu submissions from reclaim context Thomas Hellström
@ 2024-05-27 13:59 ` Thomas Hellström
2024-05-27 13:59 ` [PATCH v4 2/5] drm/xe: Split lrc seqno fence creation up Thomas Hellström
` (11 subsequent siblings)
12 siblings, 0 replies; 16+ messages in thread
From: Thomas Hellström @ 2024-05-27 13:59 UTC (permalink / raw)
To: intel-xe; +Cc: Matthew Brost, Thomas Hellström, Rodrigo Vivi
From: Matthew Brost <matthew.brost@intel.com>
Tightly coupling these seqno presents problems if alternative fences for
jobs are used. Decouple these for correctness.
v2:
- Slightly reword commit message (Thomas)
- Make sure the lrc fence ops are used in comparison (Thomas)
- Assume seqno is unsigned rather than signed in format string (Thomas)
Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Signed-off-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
---
drivers/gpu/drm/xe/xe_exec_queue.c | 2 +-
drivers/gpu/drm/xe/xe_guc_submit.c | 5 +++--
drivers/gpu/drm/xe/xe_ring_ops.c | 12 ++++++------
drivers/gpu/drm/xe/xe_sched_job.c | 16 ++++++++--------
drivers/gpu/drm/xe/xe_sched_job.h | 5 +++++
drivers/gpu/drm/xe/xe_sched_job_types.h | 2 ++
drivers/gpu/drm/xe/xe_trace.h | 7 +++++--
7 files changed, 30 insertions(+), 19 deletions(-)
diff --git a/drivers/gpu/drm/xe/xe_exec_queue.c b/drivers/gpu/drm/xe/xe_exec_queue.c
index 0fd61fb4d104..e8bf250f5b6a 100644
--- a/drivers/gpu/drm/xe/xe_exec_queue.c
+++ b/drivers/gpu/drm/xe/xe_exec_queue.c
@@ -98,7 +98,7 @@ static struct xe_exec_queue *__xe_exec_queue_alloc(struct xe_device *xe,
if (xe_exec_queue_is_parallel(q)) {
q->parallel.composite_fence_ctx = dma_fence_context_alloc(1);
- q->parallel.composite_fence_seqno = XE_FENCE_INITIAL_SEQNO;
+ q->parallel.composite_fence_seqno = 0;
}
return q;
diff --git a/drivers/gpu/drm/xe/xe_guc_submit.c b/drivers/gpu/drm/xe/xe_guc_submit.c
index 54778189cfd5..53ab98c5ef5e 100644
--- a/drivers/gpu/drm/xe/xe_guc_submit.c
+++ b/drivers/gpu/drm/xe/xe_guc_submit.c
@@ -940,8 +940,9 @@ guc_exec_queue_timedout_job(struct drm_sched_job *drm_job)
return DRM_GPU_SCHED_STAT_NOMINAL;
}
- drm_notice(&xe->drm, "Timedout job: seqno=%u, guc_id=%d, flags=0x%lx",
- xe_sched_job_seqno(job), q->guc->id, q->flags);
+ drm_notice(&xe->drm, "Timedout job: seqno=%u, lrc_seqno=%u, guc_id=%d, flags=0x%lx",
+ xe_sched_job_seqno(job), xe_sched_job_lrc_seqno(job),
+ q->guc->id, q->flags);
xe_gt_WARN(q->gt, q->flags & EXEC_QUEUE_FLAG_KERNEL,
"Kernel-submitted job timed out\n");
xe_gt_WARN(q->gt, q->flags & EXEC_QUEUE_FLAG_VM && !exec_queue_killed(q),
diff --git a/drivers/gpu/drm/xe/xe_ring_ops.c b/drivers/gpu/drm/xe/xe_ring_ops.c
index a3ca718456f6..2705d1f9d572 100644
--- a/drivers/gpu/drm/xe/xe_ring_ops.c
+++ b/drivers/gpu/drm/xe/xe_ring_ops.c
@@ -398,7 +398,7 @@ static void emit_job_gen12_gsc(struct xe_sched_job *job)
__emit_job_gen12_simple(job, job->q->lrc,
job->batch_addr[0],
- xe_sched_job_seqno(job));
+ xe_sched_job_lrc_seqno(job));
}
static void emit_job_gen12_copy(struct xe_sched_job *job)
@@ -407,14 +407,14 @@ static void emit_job_gen12_copy(struct xe_sched_job *job)
if (xe_sched_job_is_migration(job->q)) {
emit_migration_job_gen12(job, job->q->lrc,
- xe_sched_job_seqno(job));
+ xe_sched_job_lrc_seqno(job));
return;
}
for (i = 0; i < job->q->width; ++i)
__emit_job_gen12_simple(job, job->q->lrc + i,
- job->batch_addr[i],
- xe_sched_job_seqno(job));
+ job->batch_addr[i],
+ xe_sched_job_lrc_seqno(job));
}
static void emit_job_gen12_video(struct xe_sched_job *job)
@@ -425,7 +425,7 @@ static void emit_job_gen12_video(struct xe_sched_job *job)
for (i = 0; i < job->q->width; ++i)
__emit_job_gen12_video(job, job->q->lrc + i,
job->batch_addr[i],
- xe_sched_job_seqno(job));
+ xe_sched_job_lrc_seqno(job));
}
static void emit_job_gen12_render_compute(struct xe_sched_job *job)
@@ -435,7 +435,7 @@ static void emit_job_gen12_render_compute(struct xe_sched_job *job)
for (i = 0; i < job->q->width; ++i)
__emit_job_gen12_render_compute(job, job->q->lrc + i,
job->batch_addr[i],
- xe_sched_job_seqno(job));
+ xe_sched_job_lrc_seqno(job));
}
static const struct xe_ring_ops ring_ops_gen12_gsc = {
diff --git a/drivers/gpu/drm/xe/xe_sched_job.c b/drivers/gpu/drm/xe/xe_sched_job.c
index a4e030f5e019..874450be327e 100644
--- a/drivers/gpu/drm/xe/xe_sched_job.c
+++ b/drivers/gpu/drm/xe/xe_sched_job.c
@@ -117,6 +117,7 @@ struct xe_sched_job *xe_sched_job_create(struct xe_exec_queue *q,
err = PTR_ERR(job->fence);
goto err_sched_job;
}
+ job->lrc_seqno = job->fence->seqno;
} else {
struct dma_fence_array *cf;
@@ -132,6 +133,8 @@ struct xe_sched_job *xe_sched_job_create(struct xe_exec_queue *q,
err = PTR_ERR(fences[j]);
goto err_fences;
}
+ if (!j)
+ job->lrc_seqno = fences[0]->seqno;
}
cf = dma_fence_array_create(q->width, fences,
@@ -144,10 +147,6 @@ struct xe_sched_job *xe_sched_job_create(struct xe_exec_queue *q,
goto err_fences;
}
- /* Sanity check */
- for (j = 0; j < q->width; ++j)
- xe_assert(job_to_xe(job), cf->base.seqno == fences[j]->seqno);
-
job->fence = &cf->base;
}
@@ -229,9 +228,9 @@ bool xe_sched_job_started(struct xe_sched_job *job)
{
struct xe_lrc *lrc = job->q->lrc;
- return !__dma_fence_is_later(xe_sched_job_seqno(job),
+ return !__dma_fence_is_later(xe_sched_job_lrc_seqno(job),
xe_lrc_start_seqno(lrc),
- job->fence->ops);
+ dma_fence_array_first(job->fence)->ops);
}
bool xe_sched_job_completed(struct xe_sched_job *job)
@@ -243,8 +242,9 @@ bool xe_sched_job_completed(struct xe_sched_job *job)
* parallel handshake is done.
*/
- return !__dma_fence_is_later(xe_sched_job_seqno(job), xe_lrc_seqno(lrc),
- job->fence->ops);
+ return !__dma_fence_is_later(xe_sched_job_lrc_seqno(job),
+ xe_lrc_seqno(lrc),
+ dma_fence_array_first(job->fence)->ops);
}
void xe_sched_job_arm(struct xe_sched_job *job)
diff --git a/drivers/gpu/drm/xe/xe_sched_job.h b/drivers/gpu/drm/xe/xe_sched_job.h
index c75018f4660d..002c3b5c0a5c 100644
--- a/drivers/gpu/drm/xe/xe_sched_job.h
+++ b/drivers/gpu/drm/xe/xe_sched_job.h
@@ -73,6 +73,11 @@ static inline u32 xe_sched_job_seqno(struct xe_sched_job *job)
return job->fence->seqno;
}
+static inline u32 xe_sched_job_lrc_seqno(struct xe_sched_job *job)
+{
+ return job->lrc_seqno;
+}
+
static inline void
xe_sched_job_add_migrate_flush(struct xe_sched_job *job, u32 flags)
{
diff --git a/drivers/gpu/drm/xe/xe_sched_job_types.h b/drivers/gpu/drm/xe/xe_sched_job_types.h
index 5e12724219fd..990ddac55ed6 100644
--- a/drivers/gpu/drm/xe/xe_sched_job_types.h
+++ b/drivers/gpu/drm/xe/xe_sched_job_types.h
@@ -37,6 +37,8 @@ struct xe_sched_job {
/** @user_fence.value: write back value */
u64 value;
} user_fence;
+ /** @lrc_seqno: LRC seqno */
+ u32 lrc_seqno;
/** @migrate_flush_flags: Additional flush flags for migration jobs */
u32 migrate_flush_flags;
/** @ring_ops_flush_tlb: The ring ops need to flush TLB before payload. */
diff --git a/drivers/gpu/drm/xe/xe_trace.h b/drivers/gpu/drm/xe/xe_trace.h
index 2d56cfc09e42..6c6cecc58f63 100644
--- a/drivers/gpu/drm/xe/xe_trace.h
+++ b/drivers/gpu/drm/xe/xe_trace.h
@@ -254,6 +254,7 @@ DECLARE_EVENT_CLASS(xe_sched_job,
TP_STRUCT__entry(
__field(u32, seqno)
+ __field(u32, lrc_seqno)
__field(u16, guc_id)
__field(u32, guc_state)
__field(u32, flags)
@@ -264,6 +265,7 @@ DECLARE_EVENT_CLASS(xe_sched_job,
TP_fast_assign(
__entry->seqno = xe_sched_job_seqno(job);
+ __entry->lrc_seqno = xe_sched_job_lrc_seqno(job);
__entry->guc_id = job->q->guc->id;
__entry->guc_state =
atomic_read(&job->q->guc->state);
@@ -273,8 +275,9 @@ DECLARE_EVENT_CLASS(xe_sched_job,
__entry->batch_addr = (u64)job->batch_addr[0];
),
- TP_printk("fence=%p, seqno=%u, guc_id=%d, batch_addr=0x%012llx, guc_state=0x%x, flags=0x%x, error=%d",
- __entry->fence, __entry->seqno, __entry->guc_id,
+ TP_printk("fence=%p, seqno=%u, lrc_seqno=%u, guc_id=%d, batch_addr=0x%012llx, guc_state=0x%x, flags=0x%x, error=%d",
+ __entry->fence, __entry->seqno,
+ __entry->lrc_seqno, __entry->guc_id,
__entry->batch_addr, __entry->guc_state,
__entry->flags, __entry->error)
);
--
2.44.0
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH v4 2/5] drm/xe: Split lrc seqno fence creation up
2024-05-27 13:59 [PATCH v4 0/5] drm/xe: Allow migrate vm gpu submissions from reclaim context Thomas Hellström
2024-05-27 13:59 ` [PATCH v4 1/5] drm/xe: Decouple job seqno and lrc seqno Thomas Hellström
@ 2024-05-27 13:59 ` Thomas Hellström
2024-05-27 13:59 ` [PATCH v4 3/5] drm/xe: Don't initialize fences at xe_sched_job_create() Thomas Hellström
` (10 subsequent siblings)
12 siblings, 0 replies; 16+ messages in thread
From: Thomas Hellström @ 2024-05-27 13:59 UTC (permalink / raw)
To: intel-xe; +Cc: Thomas Hellström, Matthew Brost, Rodrigo Vivi
Since sometimes a lock is required to initialize a seqno fence,
and it might be desirable not to hold that lock while performing
memory allocations, split the lrc seqno fence creation up into an
allocation phase and an initialization phase.
Since lrc seqno fences under the hood are hw_fences, do the same
for these and remove the xe_hw_fence_create() function since it
is not used anymore.
Signed-off-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Reviewed-by: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
---
drivers/gpu/drm/xe/xe_hw_fence.c | 59 +++++++++++++++++++++++++-------
drivers/gpu/drm/xe/xe_hw_fence.h | 7 ++--
drivers/gpu/drm/xe/xe_lrc.c | 48 ++++++++++++++++++++++++--
drivers/gpu/drm/xe/xe_lrc.h | 3 ++
4 files changed, 101 insertions(+), 16 deletions(-)
diff --git a/drivers/gpu/drm/xe/xe_hw_fence.c b/drivers/gpu/drm/xe/xe_hw_fence.c
index f872ef103127..35c0063a831a 100644
--- a/drivers/gpu/drm/xe/xe_hw_fence.c
+++ b/drivers/gpu/drm/xe/xe_hw_fence.c
@@ -208,23 +208,58 @@ static struct xe_hw_fence *to_xe_hw_fence(struct dma_fence *fence)
return container_of(fence, struct xe_hw_fence, dma);
}
-struct xe_hw_fence *xe_hw_fence_create(struct xe_hw_fence_ctx *ctx,
- struct iosys_map seqno_map)
+/**
+ * xe_hw_fence_alloc() - Allocate an hw fence.
+ *
+ * Allocate but don't initialize an hw fence.
+ *
+ * Return: Pointer to the allocated fence or
+ * negative error pointer on error.
+ */
+struct dma_fence *xe_hw_fence_alloc(void)
{
- struct xe_hw_fence *fence;
+ struct xe_hw_fence *hw_fence = fence_alloc();
- fence = fence_alloc();
- if (!fence)
+ if (!hw_fence)
return ERR_PTR(-ENOMEM);
- fence->ctx = ctx;
- fence->seqno_map = seqno_map;
- INIT_LIST_HEAD(&fence->irq_link);
+ return &hw_fence->dma;
+}
- dma_fence_init(&fence->dma, &xe_hw_fence_ops, &ctx->irq->lock,
- ctx->dma_fence_ctx, ctx->next_seqno++);
+/**
+ * xe_hw_fence_free() - Free an hw fence.
+ * @fence: Pointer to the fence to free.
+ *
+ * Frees an hw fence that hasn't yet been
+ * initialized.
+ */
+void xe_hw_fence_free(struct dma_fence *fence)
+{
+ fence_free(&fence->rcu);
+}
- trace_xe_hw_fence_create(fence);
+/**
+ * xe_hw_fence_init() - Initialize an hw fence.
+ * @fence: Pointer to the fence to initialize.
+ * @ctx: Pointer to the struct xe_hw_fence_ctx fence context.
+ * @seqno_map: Pointer to the map into where the seqno is blitted.
+ *
+ * Initializes a pre-allocated hw fence.
+ * After initialization, the fence is subject to normal
+ * dma-fence refcounting.
+ */
+void xe_hw_fence_init(struct dma_fence *fence, struct xe_hw_fence_ctx *ctx,
+ struct iosys_map seqno_map)
+{
+ struct xe_hw_fence *hw_fence =
+ container_of(fence, typeof(*hw_fence), dma);
+
+ hw_fence->ctx = ctx;
+ hw_fence->seqno_map = seqno_map;
+ INIT_LIST_HEAD(&hw_fence->irq_link);
+
+ dma_fence_init(fence, &xe_hw_fence_ops, &ctx->irq->lock,
+ ctx->dma_fence_ctx, ctx->next_seqno++);
- return fence;
+ trace_xe_hw_fence_create(hw_fence);
}
diff --git a/drivers/gpu/drm/xe/xe_hw_fence.h b/drivers/gpu/drm/xe/xe_hw_fence.h
index cfe5fd603787..f13a1c4982c7 100644
--- a/drivers/gpu/drm/xe/xe_hw_fence.h
+++ b/drivers/gpu/drm/xe/xe_hw_fence.h
@@ -24,7 +24,10 @@ void xe_hw_fence_ctx_init(struct xe_hw_fence_ctx *ctx, struct xe_gt *gt,
struct xe_hw_fence_irq *irq, const char *name);
void xe_hw_fence_ctx_finish(struct xe_hw_fence_ctx *ctx);
-struct xe_hw_fence *xe_hw_fence_create(struct xe_hw_fence_ctx *ctx,
- struct iosys_map seqno_map);
+struct dma_fence *xe_hw_fence_alloc(void);
+void xe_hw_fence_free(struct dma_fence *fence);
+
+void xe_hw_fence_init(struct dma_fence *fence, struct xe_hw_fence_ctx *ctx,
+ struct iosys_map seqno_map);
#endif
diff --git a/drivers/gpu/drm/xe/xe_lrc.c b/drivers/gpu/drm/xe/xe_lrc.c
index f679cb9aaea7..c28796cfaa03 100644
--- a/drivers/gpu/drm/xe/xe_lrc.c
+++ b/drivers/gpu/drm/xe/xe_lrc.c
@@ -1033,10 +1033,54 @@ u32 xe_lrc_seqno_ggtt_addr(struct xe_lrc *lrc)
return __xe_lrc_seqno_ggtt_addr(lrc);
}
+/**
+ * xe_lrc_alloc_seqno_fence() - Allocate an lrc seqno fence.
+ *
+ * Allocate but don't initialize an lrc seqno fence.
+ *
+ * Return: Pointer to the allocated fence or
+ * negative error pointer on error.
+ */
+struct dma_fence *xe_lrc_alloc_seqno_fence(void)
+{
+ return xe_hw_fence_alloc();
+}
+
+/**
+ * xe_lrc_free_seqno_fence() - Free an lrc seqno fence.
+ * @fence: Pointer to the fence to free.
+ *
+ * Frees an lrc seqno fence that hasn't yet been
+ * initialized.
+ */
+void xe_lrc_free_seqno_fence(struct dma_fence *fence)
+{
+ xe_hw_fence_free(fence);
+}
+
+/**
+ * xe_lrc_init_seqno_fence() - Initialize an lrc seqno fence.
+ * @lrc: Pointer to the lrc.
+ * @fence: Pointer to the fence to initialize.
+ *
+ * Initializes a pre-allocated lrc seqno fence.
+ * After initialization, the fence is subject to normal
+ * dma-fence refcounting.
+ */
+void xe_lrc_init_seqno_fence(struct xe_lrc *lrc, struct dma_fence *fence)
+{
+ xe_hw_fence_init(fence, &lrc->fence_ctx, __xe_lrc_seqno_map(lrc));
+}
+
struct dma_fence *xe_lrc_create_seqno_fence(struct xe_lrc *lrc)
{
- return &xe_hw_fence_create(&lrc->fence_ctx,
- __xe_lrc_seqno_map(lrc))->dma;
+ struct dma_fence *fence = xe_lrc_alloc_seqno_fence();
+
+ if (IS_ERR(fence))
+ return fence;
+
+ xe_lrc_init_seqno_fence(lrc, fence);
+ return fence;
}
s32 xe_lrc_seqno(struct xe_lrc *lrc)
diff --git a/drivers/gpu/drm/xe/xe_lrc.h b/drivers/gpu/drm/xe/xe_lrc.h
index b9da1031083b..7a8752fd8484 100644
--- a/drivers/gpu/drm/xe/xe_lrc.h
+++ b/drivers/gpu/drm/xe/xe_lrc.h
@@ -44,6 +44,9 @@ void xe_lrc_write_ctx_reg(struct xe_lrc *lrc, int reg_nr, u32 val);
u64 xe_lrc_descriptor(struct xe_lrc *lrc);
u32 xe_lrc_seqno_ggtt_addr(struct xe_lrc *lrc);
+struct dma_fence *xe_lrc_alloc_seqno_fence(void);
+void xe_lrc_free_seqno_fence(struct dma_fence *fence);
+void xe_lrc_init_seqno_fence(struct xe_lrc *lrc, struct dma_fence *fence);
struct dma_fence *xe_lrc_create_seqno_fence(struct xe_lrc *lrc);
s32 xe_lrc_seqno(struct xe_lrc *lrc);
--
2.44.0
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH v4 3/5] drm/xe: Don't initialize fences at xe_sched_job_create()
2024-05-27 13:59 [PATCH v4 0/5] drm/xe: Allow migrate vm gpu submissions from reclaim context Thomas Hellström
2024-05-27 13:59 ` [PATCH v4 1/5] drm/xe: Decouple job seqno and lrc seqno Thomas Hellström
2024-05-27 13:59 ` [PATCH v4 2/5] drm/xe: Split lrc seqno fence creation up Thomas Hellström
@ 2024-05-27 13:59 ` Thomas Hellström
2024-05-27 13:59 ` [PATCH v4 4/5] drm/xe: Remove xe_lrc_create_seqno_fence() Thomas Hellström
` (9 subsequent siblings)
12 siblings, 0 replies; 16+ messages in thread
From: Thomas Hellström @ 2024-05-27 13:59 UTC (permalink / raw)
To: intel-xe; +Cc: Thomas Hellström, Matthew Brost, Rodrigo Vivi
Pre-allocate but don't initialize fences at xe_sched_job_create(),
and initialize / arm them instead at xe_sched_job_arm(). This
makes it possible to move xe_sched_job_create() with its memory
allocation out of any lock that is required for fence
initialization, and that may not allow memory allocation under it.
Replaces the struct dma_fence_array for parallell jobs with a
struct dma_fence_chain, since the former doesn't allow
a split-up between allocation and initialization.
v2:
- Rebase.
- Don't always use the first lrc when initializing parallel
lrc fences.
- Use dma_fence_chain_contained() to access the lrc fences.
v4:
- Add an assert that job->lrc_seqno == fence->seqno.
(Matthew Brost)
Signed-off-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Reviewed-by: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com> #v2
---
drivers/gpu/drm/xe/xe_exec_queue.c | 5 -
drivers/gpu/drm/xe/xe_exec_queue_types.h | 10 --
drivers/gpu/drm/xe/xe_ring_ops.c | 12 +-
drivers/gpu/drm/xe/xe_sched_job.c | 161 +++++++++++++----------
drivers/gpu/drm/xe/xe_sched_job_types.h | 18 ++-
drivers/gpu/drm/xe/xe_trace.h | 2 +-
6 files changed, 115 insertions(+), 93 deletions(-)
diff --git a/drivers/gpu/drm/xe/xe_exec_queue.c b/drivers/gpu/drm/xe/xe_exec_queue.c
index e8bf250f5b6a..e3cebec3de24 100644
--- a/drivers/gpu/drm/xe/xe_exec_queue.c
+++ b/drivers/gpu/drm/xe/xe_exec_queue.c
@@ -96,11 +96,6 @@ static struct xe_exec_queue *__xe_exec_queue_alloc(struct xe_device *xe,
}
}
- if (xe_exec_queue_is_parallel(q)) {
- q->parallel.composite_fence_ctx = dma_fence_context_alloc(1);
- q->parallel.composite_fence_seqno = 0;
- }
-
return q;
}
diff --git a/drivers/gpu/drm/xe/xe_exec_queue_types.h b/drivers/gpu/drm/xe/xe_exec_queue_types.h
index ee78d497d838..f0c40e8ad80a 100644
--- a/drivers/gpu/drm/xe/xe_exec_queue_types.h
+++ b/drivers/gpu/drm/xe/xe_exec_queue_types.h
@@ -103,16 +103,6 @@ struct xe_exec_queue {
struct xe_guc_exec_queue *guc;
};
- /**
- * @parallel: parallel submission state
- */
- struct {
- /** @parallel.composite_fence_ctx: context composite fence */
- u64 composite_fence_ctx;
- /** @parallel.composite_fence_seqno: seqno for composite fence */
- u32 composite_fence_seqno;
- } parallel;
-
/** @sched_props: scheduling properties */
struct {
/** @sched_props.timeslice_us: timeslice period in micro-seconds */
diff --git a/drivers/gpu/drm/xe/xe_ring_ops.c b/drivers/gpu/drm/xe/xe_ring_ops.c
index 2705d1f9d572..f75756e7a87b 100644
--- a/drivers/gpu/drm/xe/xe_ring_ops.c
+++ b/drivers/gpu/drm/xe/xe_ring_ops.c
@@ -366,7 +366,7 @@ static void emit_migration_job_gen12(struct xe_sched_job *job,
dw[i++] = MI_ARB_ON_OFF | MI_ARB_DISABLE; /* Enabled again below */
- i = emit_bb_start(job->batch_addr[0], BIT(8), dw, i);
+ i = emit_bb_start(job->ptrs[0].batch_addr, BIT(8), dw, i);
if (!IS_SRIOV_VF(gt_to_xe(job->q->gt))) {
/* XXX: Do we need this? Leaving for now. */
@@ -375,7 +375,7 @@ static void emit_migration_job_gen12(struct xe_sched_job *job,
dw[i++] = preparser_disable(false);
}
- i = emit_bb_start(job->batch_addr[1], BIT(8), dw, i);
+ i = emit_bb_start(job->ptrs[1].batch_addr, BIT(8), dw, i);
dw[i++] = MI_FLUSH_DW | MI_INVALIDATE_TLB | job->migrate_flush_flags |
MI_FLUSH_DW_OP_STOREDW | MI_FLUSH_IMM_DW;
@@ -397,7 +397,7 @@ static void emit_job_gen12_gsc(struct xe_sched_job *job)
xe_gt_assert(gt, job->q->width <= 1); /* no parallel submission for GSCCS */
__emit_job_gen12_simple(job, job->q->lrc,
- job->batch_addr[0],
+ job->ptrs[0].batch_addr,
xe_sched_job_lrc_seqno(job));
}
@@ -413,7 +413,7 @@ static void emit_job_gen12_copy(struct xe_sched_job *job)
for (i = 0; i < job->q->width; ++i)
__emit_job_gen12_simple(job, job->q->lrc + i,
- job->batch_addr[i],
+ job->ptrs[i].batch_addr,
xe_sched_job_lrc_seqno(job));
}
@@ -424,7 +424,7 @@ static void emit_job_gen12_video(struct xe_sched_job *job)
/* FIXME: Not doing parallel handshake for now */
for (i = 0; i < job->q->width; ++i)
__emit_job_gen12_video(job, job->q->lrc + i,
- job->batch_addr[i],
+ job->ptrs[i].batch_addr,
xe_sched_job_lrc_seqno(job));
}
@@ -434,7 +434,7 @@ static void emit_job_gen12_render_compute(struct xe_sched_job *job)
for (i = 0; i < job->q->width; ++i)
__emit_job_gen12_render_compute(job, job->q->lrc + i,
- job->batch_addr[i],
+ job->ptrs[i].batch_addr,
xe_sched_job_lrc_seqno(job));
}
diff --git a/drivers/gpu/drm/xe/xe_sched_job.c b/drivers/gpu/drm/xe/xe_sched_job.c
index 874450be327e..29f3201d7dfa 100644
--- a/drivers/gpu/drm/xe/xe_sched_job.c
+++ b/drivers/gpu/drm/xe/xe_sched_job.c
@@ -6,7 +6,7 @@
#include "xe_sched_job.h"
#include <drm/xe_drm.h>
-#include <linux/dma-fence-array.h>
+#include <linux/dma-fence-chain.h>
#include <linux/slab.h>
#include "xe_device.h"
@@ -29,7 +29,7 @@ int __init xe_sched_job_module_init(void)
xe_sched_job_slab =
kmem_cache_create("xe_sched_job",
sizeof(struct xe_sched_job) +
- sizeof(u64), 0,
+ sizeof(struct xe_job_ptrs), 0,
SLAB_HWCACHE_ALIGN, NULL);
if (!xe_sched_job_slab)
return -ENOMEM;
@@ -37,7 +37,7 @@ int __init xe_sched_job_module_init(void)
xe_sched_job_parallel_slab =
kmem_cache_create("xe_sched_job_parallel",
sizeof(struct xe_sched_job) +
- sizeof(u64) *
+ sizeof(struct xe_job_ptrs) *
XE_HW_ENGINE_MAX_INSTANCE, 0,
SLAB_HWCACHE_ALIGN, NULL);
if (!xe_sched_job_parallel_slab) {
@@ -79,26 +79,33 @@ static struct xe_device *job_to_xe(struct xe_sched_job *job)
return gt_to_xe(job->q->gt);
}
+/* Free unused pre-allocated fences */
+static void xe_sched_job_free_fences(struct xe_sched_job *job)
+{
+ int i;
+
+ for (i = 0; i < job->q->width; ++i) {
+ struct xe_job_ptrs *ptrs = &job->ptrs[i];
+
+ if (ptrs->lrc_fence)
+ xe_lrc_free_seqno_fence(ptrs->lrc_fence);
+ if (ptrs->chain_fence)
+ dma_fence_chain_free(ptrs->chain_fence);
+ }
+}
+
struct xe_sched_job *xe_sched_job_create(struct xe_exec_queue *q,
u64 *batch_addr)
{
- struct xe_sched_job *job;
- struct dma_fence **fences;
bool is_migration = xe_sched_job_is_migration(q);
+ struct xe_sched_job *job;
int err;
- int i, j;
+ int i;
u32 width;
/* only a kernel context can submit a vm-less job */
XE_WARN_ON(!q->vm && !(q->flags & EXEC_QUEUE_FLAG_KERNEL));
- /* Migration and kernel engines have their own locking */
- if (!(q->flags & (EXEC_QUEUE_FLAG_KERNEL | EXEC_QUEUE_FLAG_VM))) {
- lockdep_assert_held(&q->vm->lock);
- if (!xe_vm_in_lr_mode(q->vm))
- xe_vm_assert_held(q->vm);
- }
-
job = job_alloc(xe_exec_queue_is_parallel(q) || is_migration);
if (!job)
return ERR_PTR(-ENOMEM);
@@ -111,43 +118,25 @@ struct xe_sched_job *xe_sched_job_create(struct xe_exec_queue *q,
if (err)
goto err_free;
- if (!xe_exec_queue_is_parallel(q)) {
- job->fence = xe_lrc_create_seqno_fence(q->lrc);
- if (IS_ERR(job->fence)) {
- err = PTR_ERR(job->fence);
- goto err_sched_job;
- }
- job->lrc_seqno = job->fence->seqno;
- } else {
- struct dma_fence_array *cf;
+ for (i = 0; i < q->width; ++i) {
+ struct dma_fence *fence = xe_lrc_alloc_seqno_fence();
+ struct dma_fence_chain *chain;
- fences = kmalloc_array(q->width, sizeof(*fences), GFP_KERNEL);
- if (!fences) {
- err = -ENOMEM;
+ if (IS_ERR(fence)) {
+ err = PTR_ERR(fence);
goto err_sched_job;
}
+ job->ptrs[i].lrc_fence = fence;
- for (j = 0; j < q->width; ++j) {
- fences[j] = xe_lrc_create_seqno_fence(q->lrc + j);
- if (IS_ERR(fences[j])) {
- err = PTR_ERR(fences[j]);
- goto err_fences;
- }
- if (!j)
- job->lrc_seqno = fences[0]->seqno;
- }
+ if (i + 1 == q->width)
+ continue;
- cf = dma_fence_array_create(q->width, fences,
- q->parallel.composite_fence_ctx,
- q->parallel.composite_fence_seqno++,
- false);
- if (!cf) {
- --q->parallel.composite_fence_seqno;
+ chain = dma_fence_chain_alloc();
+ if (!chain) {
err = -ENOMEM;
- goto err_fences;
+ goto err_sched_job;
}
-
- job->fence = &cf->base;
+ job->ptrs[i].chain_fence = chain;
}
width = q->width;
@@ -155,19 +144,14 @@ struct xe_sched_job *xe_sched_job_create(struct xe_exec_queue *q,
width = 2;
for (i = 0; i < width; ++i)
- job->batch_addr[i] = batch_addr[i];
+ job->ptrs[i].batch_addr = batch_addr[i];
xe_pm_runtime_get_noresume(job_to_xe(job));
trace_xe_sched_job_create(job);
return job;
-err_fences:
- for (j = j - 1; j >= 0; --j) {
- --q->lrc[j].fence_ctx.next_seqno;
- dma_fence_put(fences[j]);
- }
- kfree(fences);
err_sched_job:
+ xe_sched_job_free_fences(job);
drm_sched_job_cleanup(&job->drm);
err_free:
xe_exec_queue_put(q);
@@ -188,6 +172,7 @@ void xe_sched_job_destroy(struct kref *ref)
container_of(ref, struct xe_sched_job, refcount);
struct xe_device *xe = job_to_xe(job);
+ xe_sched_job_free_fences(job);
xe_exec_queue_put(job->q);
dma_fence_put(job->fence);
drm_sched_job_cleanup(&job->drm);
@@ -195,27 +180,32 @@ void xe_sched_job_destroy(struct kref *ref)
xe_pm_runtime_put(xe);
}
-void xe_sched_job_set_error(struct xe_sched_job *job, int error)
+/* Set the error status under the fence to avoid racing with signaling */
+static bool xe_fence_set_error(struct dma_fence *fence, int error)
{
- if (test_bit(DMA_FENCE_FLAG_SIGNALED_BIT, &job->fence->flags))
- return;
+ unsigned long irq_flags;
+ bool signaled;
+
+ spin_lock_irqsave(fence->lock, irq_flags);
+ signaled = test_bit(DMA_FENCE_FLAG_SIGNALED_BIT, &fence->flags);
+ if (!signaled)
+ dma_fence_set_error(fence, error);
+ spin_unlock_irqrestore(fence->lock, irq_flags);
- dma_fence_set_error(job->fence, error);
+ return signaled;
+}
- if (dma_fence_is_array(job->fence)) {
- struct dma_fence_array *array =
- to_dma_fence_array(job->fence);
- struct dma_fence **child = array->fences;
- unsigned int nchild = array->num_fences;
+void xe_sched_job_set_error(struct xe_sched_job *job, int error)
+{
+ if (xe_fence_set_error(job->fence, error))
+ return;
- do {
- struct dma_fence *current_fence = *child++;
+ if (dma_fence_is_chain(job->fence)) {
+ struct dma_fence *iter;
- if (test_bit(DMA_FENCE_FLAG_SIGNALED_BIT,
- ¤t_fence->flags))
- continue;
- dma_fence_set_error(current_fence, error);
- } while (--nchild);
+ dma_fence_chain_for_each(iter, job->fence)
+ xe_fence_set_error(dma_fence_chain_contained(iter),
+ error);
}
trace_xe_sched_job_set_error(job);
@@ -230,7 +220,7 @@ bool xe_sched_job_started(struct xe_sched_job *job)
return !__dma_fence_is_later(xe_sched_job_lrc_seqno(job),
xe_lrc_start_seqno(lrc),
- dma_fence_array_first(job->fence)->ops);
+ dma_fence_chain_contained(job->fence)->ops);
}
bool xe_sched_job_completed(struct xe_sched_job *job)
@@ -244,13 +234,24 @@ bool xe_sched_job_completed(struct xe_sched_job *job)
return !__dma_fence_is_later(xe_sched_job_lrc_seqno(job),
xe_lrc_seqno(lrc),
- dma_fence_array_first(job->fence)->ops);
+ dma_fence_chain_contained(job->fence)->ops);
}
void xe_sched_job_arm(struct xe_sched_job *job)
{
struct xe_exec_queue *q = job->q;
+ struct dma_fence *fence, *prev;
struct xe_vm *vm = q->vm;
+ u64 seqno = 0;
+ int i;
+
+ /* Migration and kernel engines have their own locking */
+ if (IS_ENABLED(CONFIG_LOCKDEP) &&
+ !(q->flags & (EXEC_QUEUE_FLAG_KERNEL | EXEC_QUEUE_FLAG_VM))) {
+ lockdep_assert_held(&q->vm->lock);
+ if (!xe_vm_in_lr_mode(q->vm))
+ xe_vm_assert_held(q->vm);
+ }
if (vm && !xe_sched_job_is_migration(q) && !xe_vm_in_lr_mode(vm) &&
(vm->batch_invalidate_tlb || vm->tlb_flush_seqno != q->tlb_flush_seqno)) {
@@ -259,6 +260,27 @@ void xe_sched_job_arm(struct xe_sched_job *job)
job->ring_ops_flush_tlb = true;
}
+ /* Arm the pre-allocated fences */
+ for (i = 0; i < q->width; prev = fence, ++i) {
+ struct dma_fence_chain *chain;
+
+ fence = job->ptrs[i].lrc_fence;
+ xe_lrc_init_seqno_fence(&q->lrc[i], fence);
+ job->ptrs[i].lrc_fence = NULL;
+ if (!i) {
+ job->lrc_seqno = fence->seqno;
+ continue;
+ } else {
+ xe_assert(gt_to_xe(q->gt), job->lrc_seqno == fence->seqno);
+ }
+
+ chain = job->ptrs[i - 1].chain_fence;
+ dma_fence_chain_init(chain, prev, fence, seqno++);
+ job->ptrs[i - 1].chain_fence = NULL;
+ fence = &chain->base;
+ }
+
+ job->fence = fence;
drm_sched_job_arm(&job->drm);
}
@@ -318,7 +340,8 @@ xe_sched_job_snapshot_capture(struct xe_sched_job *job)
snapshot->batch_addr_len = q->width;
for (i = 0; i < q->width; i++)
- snapshot->batch_addr[i] = xe_device_uncanonicalize_addr(xe, job->batch_addr[i]);
+ snapshot->batch_addr[i] =
+ xe_device_uncanonicalize_addr(xe, job->ptrs[i].batch_addr);
return snapshot;
}
diff --git a/drivers/gpu/drm/xe/xe_sched_job_types.h b/drivers/gpu/drm/xe/xe_sched_job_types.h
index 990ddac55ed6..0d3f76fb05ce 100644
--- a/drivers/gpu/drm/xe/xe_sched_job_types.h
+++ b/drivers/gpu/drm/xe/xe_sched_job_types.h
@@ -11,6 +11,20 @@
#include <drm/gpu_scheduler.h>
struct xe_exec_queue;
+struct dma_fence;
+struct dma_fence_chain;
+
+/**
+ * struct xe_job_ptrs - Per hw engine instance data
+ */
+struct xe_job_ptrs {
+ /** @lrc_fence: Pre-allocated uinitialized lrc fence.*/
+ struct dma_fence *lrc_fence;
+ /** @chain_fence: Pre-allocated ninitialized fence chain node. */
+ struct dma_fence_chain *chain_fence;
+ /** @batch_addr: Batch buffer address. */
+ u64 batch_addr;
+};
/**
* struct xe_sched_job - XE schedule job (batch buffer tracking)
@@ -43,8 +57,8 @@ struct xe_sched_job {
u32 migrate_flush_flags;
/** @ring_ops_flush_tlb: The ring ops need to flush TLB before payload. */
bool ring_ops_flush_tlb;
- /** @batch_addr: batch buffer address of job */
- u64 batch_addr[];
+ /** @ptrs: per instance pointers. */
+ struct xe_job_ptrs ptrs[];
};
struct xe_sched_job_snapshot {
diff --git a/drivers/gpu/drm/xe/xe_trace.h b/drivers/gpu/drm/xe/xe_trace.h
index 6c6cecc58f63..450f407c66e8 100644
--- a/drivers/gpu/drm/xe/xe_trace.h
+++ b/drivers/gpu/drm/xe/xe_trace.h
@@ -272,7 +272,7 @@ DECLARE_EVENT_CLASS(xe_sched_job,
__entry->flags = job->q->flags;
__entry->error = job->fence->error;
__entry->fence = job->fence;
- __entry->batch_addr = (u64)job->batch_addr[0];
+ __entry->batch_addr = (u64)job->ptrs[0].batch_addr;
),
TP_printk("fence=%p, seqno=%u, lrc_seqno=%u, guc_id=%d, batch_addr=0x%012llx, guc_state=0x%x, flags=0x%x, error=%d",
--
2.44.0
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH v4 4/5] drm/xe: Remove xe_lrc_create_seqno_fence()
2024-05-27 13:59 [PATCH v4 0/5] drm/xe: Allow migrate vm gpu submissions from reclaim context Thomas Hellström
` (2 preceding siblings ...)
2024-05-27 13:59 ` [PATCH v4 3/5] drm/xe: Don't initialize fences at xe_sched_job_create() Thomas Hellström
@ 2024-05-27 13:59 ` Thomas Hellström
2024-05-27 13:59 ` [PATCH v4 5/5] drm/xe: Move job creation out of the struct xe_migrate::job_mutex Thomas Hellström
` (8 subsequent siblings)
12 siblings, 0 replies; 16+ messages in thread
From: Thomas Hellström @ 2024-05-27 13:59 UTC (permalink / raw)
To: intel-xe; +Cc: Thomas Hellström, Matthew Brost, Rodrigo Vivi
It's not used anymore.
Signed-off-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Reviewed-by: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
---
drivers/gpu/drm/xe/xe_lrc.c | 11 -----------
drivers/gpu/drm/xe/xe_lrc.h | 1 -
2 files changed, 12 deletions(-)
diff --git a/drivers/gpu/drm/xe/xe_lrc.c b/drivers/gpu/drm/xe/xe_lrc.c
index c28796cfaa03..e91967070478 100644
--- a/drivers/gpu/drm/xe/xe_lrc.c
+++ b/drivers/gpu/drm/xe/xe_lrc.c
@@ -1072,17 +1072,6 @@ void xe_lrc_init_seqno_fence(struct xe_lrc *lrc, struct dma_fence *fence)
xe_hw_fence_init(fence, &lrc->fence_ctx, __xe_lrc_seqno_map(lrc));
}
-struct dma_fence *xe_lrc_create_seqno_fence(struct xe_lrc *lrc)
-{
- struct dma_fence *fence = xe_lrc_alloc_seqno_fence();
-
- if (IS_ERR(fence))
- return fence;
-
- xe_lrc_init_seqno_fence(lrc, fence);
- return fence;
-}
-
s32 xe_lrc_seqno(struct xe_lrc *lrc)
{
struct iosys_map map = __xe_lrc_seqno_map(lrc);
diff --git a/drivers/gpu/drm/xe/xe_lrc.h b/drivers/gpu/drm/xe/xe_lrc.h
index 7a8752fd8484..c2df6bfd1889 100644
--- a/drivers/gpu/drm/xe/xe_lrc.h
+++ b/drivers/gpu/drm/xe/xe_lrc.h
@@ -47,7 +47,6 @@ u32 xe_lrc_seqno_ggtt_addr(struct xe_lrc *lrc);
struct dma_fence *xe_lrc_alloc_seqno_fence(void);
void xe_lrc_free_seqno_fence(struct dma_fence *fence);
void xe_lrc_init_seqno_fence(struct xe_lrc *lrc, struct dma_fence *fence);
-struct dma_fence *xe_lrc_create_seqno_fence(struct xe_lrc *lrc);
s32 xe_lrc_seqno(struct xe_lrc *lrc);
u32 xe_lrc_start_seqno_ggtt_addr(struct xe_lrc *lrc);
--
2.44.0
^ permalink raw reply related [flat|nested] 16+ messages in thread* [PATCH v4 5/5] drm/xe: Move job creation out of the struct xe_migrate::job_mutex
2024-05-27 13:59 [PATCH v4 0/5] drm/xe: Allow migrate vm gpu submissions from reclaim context Thomas Hellström
` (3 preceding siblings ...)
2024-05-27 13:59 ` [PATCH v4 4/5] drm/xe: Remove xe_lrc_create_seqno_fence() Thomas Hellström
@ 2024-05-27 13:59 ` Thomas Hellström
2024-05-27 14:05 ` ✓ CI.Patch_applied: success for drm/xe: Allow migrate vm gpu submissions from reclaim context Patchwork
` (7 subsequent siblings)
12 siblings, 0 replies; 16+ messages in thread
From: Thomas Hellström @ 2024-05-27 13:59 UTC (permalink / raw)
To: intel-xe; +Cc: Thomas Hellström, Rodrigo Vivi, Matthew Brost
In order to be able to run gpu jobs from reclaim context,
move job creation (where allocation takes place) out of the
struct xe_migrate::job_mutex, and prime that mutex as reclaim
tainted.
Jobs that may need to run from reclaim context include
CCS metadata extraction at shrinking time.
Signed-off-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
---
drivers/gpu/drm/xe/xe_migrate.c | 17 ++++++++---------
1 file changed, 8 insertions(+), 9 deletions(-)
diff --git a/drivers/gpu/drm/xe/xe_migrate.c b/drivers/gpu/drm/xe/xe_migrate.c
index bacb23de411b..cccffaf3db06 100644
--- a/drivers/gpu/drm/xe/xe_migrate.c
+++ b/drivers/gpu/drm/xe/xe_migrate.c
@@ -383,6 +383,9 @@ struct xe_migrate *xe_migrate_init(struct xe_tile *tile)
}
mutex_init(&m->job_mutex);
+ fs_reclaim_acquire(GFP_KERNEL);
+ might_lock(&m->job_mutex);
+ fs_reclaim_release(GFP_KERNEL);
err = drmm_add_action_or_reset(&xe->drm, xe_migrate_fini, m);
if (err)
@@ -807,7 +810,6 @@ struct dma_fence *xe_migrate_copy(struct xe_migrate *m,
IS_DGFX(xe) ? dst_is_vram : dst_is_pltt,
src_L0, ccs_ofs, copy_ccs);
- mutex_lock(&m->job_mutex);
job = xe_bb_create_migration_job(m->q, bb,
xe_migrate_batch_base(m, usm),
update_idx);
@@ -827,6 +829,7 @@ struct dma_fence *xe_migrate_copy(struct xe_migrate *m,
goto err_job;
}
+ mutex_lock(&m->job_mutex);
xe_sched_job_arm(job);
dma_fence_put(fence);
fence = dma_fence_get(&job->drm.s_fence->finished);
@@ -844,7 +847,6 @@ struct dma_fence *xe_migrate_copy(struct xe_migrate *m,
err_job:
xe_sched_job_put(job);
err:
- mutex_unlock(&m->job_mutex);
xe_bb_free(bb, NULL);
err_sync:
@@ -1044,7 +1046,6 @@ struct dma_fence *xe_migrate_clear(struct xe_migrate *m,
flush_flags = MI_FLUSH_DW_CCS;
}
- mutex_lock(&m->job_mutex);
job = xe_bb_create_migration_job(m->q, bb,
xe_migrate_batch_base(m, usm),
update_idx);
@@ -1067,6 +1068,7 @@ struct dma_fence *xe_migrate_clear(struct xe_migrate *m,
goto err_job;
}
+ mutex_lock(&m->job_mutex);
xe_sched_job_arm(job);
dma_fence_put(fence);
fence = dma_fence_get(&job->drm.s_fence->finished);
@@ -1083,7 +1085,6 @@ struct dma_fence *xe_migrate_clear(struct xe_migrate *m,
err_job:
xe_sched_job_put(job);
err:
- mutex_unlock(&m->job_mutex);
xe_bb_free(bb, NULL);
err_sync:
/* Sync partial copies if any. FIXME: job_mutex? */
@@ -1377,9 +1378,6 @@ xe_migrate_update_pgtables(struct xe_migrate *m,
write_pgtable(tile, bb, 0, &updates[i], pt_update);
}
- if (!q)
- mutex_lock(&m->job_mutex);
-
job = xe_bb_create_migration_job(q ?: m->q, bb,
xe_migrate_batch_base(m, usm),
update_idx);
@@ -1420,6 +1418,9 @@ xe_migrate_update_pgtables(struct xe_migrate *m,
if (err)
goto err_job;
}
+ if (!q)
+ mutex_lock(&m->job_mutex);
+
xe_sched_job_arm(job);
fence = dma_fence_get(&job->drm.s_fence->finished);
xe_sched_job_push(job);
@@ -1435,8 +1436,6 @@ xe_migrate_update_pgtables(struct xe_migrate *m,
err_job:
xe_sched_job_put(job);
err_bb:
- if (!q)
- mutex_unlock(&m->job_mutex);
xe_bb_free(bb, NULL);
err:
drm_suballoc_free(sa_bo, NULL);
--
2.44.0
^ permalink raw reply related [flat|nested] 16+ messages in thread* ✓ CI.Patch_applied: success for drm/xe: Allow migrate vm gpu submissions from reclaim context
2024-05-27 13:59 [PATCH v4 0/5] drm/xe: Allow migrate vm gpu submissions from reclaim context Thomas Hellström
` (4 preceding siblings ...)
2024-05-27 13:59 ` [PATCH v4 5/5] drm/xe: Move job creation out of the struct xe_migrate::job_mutex Thomas Hellström
@ 2024-05-27 14:05 ` Patchwork
2024-05-27 14:06 ` ✓ CI.checkpatch: " Patchwork
` (6 subsequent siblings)
12 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2024-05-27 14:05 UTC (permalink / raw)
To: Thomas Hellström; +Cc: intel-xe
== Series Details ==
Series: drm/xe: Allow migrate vm gpu submissions from reclaim context
URL : https://patchwork.freedesktop.org/series/134087/
State : success
== Summary ==
=== Applying kernel patches on branch 'drm-tip' with base: ===
Base commit: f2c37d7fd878 drm-tip: 2024y-05m-27d-11h-40m-38s UTC integration manifest
=== git am output follows ===
Applying: drm/xe: Decouple job seqno and lrc seqno
Applying: drm/xe: Split lrc seqno fence creation up
Applying: drm/xe: Don't initialize fences at xe_sched_job_create()
Applying: drm/xe: Remove xe_lrc_create_seqno_fence()
Applying: drm/xe: Move job creation out of the struct xe_migrate::job_mutex
^ permalink raw reply [flat|nested] 16+ messages in thread* ✓ CI.checkpatch: success for drm/xe: Allow migrate vm gpu submissions from reclaim context
2024-05-27 13:59 [PATCH v4 0/5] drm/xe: Allow migrate vm gpu submissions from reclaim context Thomas Hellström
` (5 preceding siblings ...)
2024-05-27 14:05 ` ✓ CI.Patch_applied: success for drm/xe: Allow migrate vm gpu submissions from reclaim context Patchwork
@ 2024-05-27 14:06 ` Patchwork
2024-05-27 14:07 ` ✓ CI.KUnit: " Patchwork
` (5 subsequent siblings)
12 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2024-05-27 14:06 UTC (permalink / raw)
To: Thomas Hellström; +Cc: intel-xe
== Series Details ==
Series: drm/xe: Allow migrate vm gpu submissions from reclaim context
URL : https://patchwork.freedesktop.org/series/134087/
State : success
== 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
51ce9f6cd981d42d7467409d7dbc559a450abc1e
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ git log -n1
commit 81044b5bd81dc66c9552cd7bd5ced4afaca4fd97
Author: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Date: Mon May 27 15:59:12 2024 +0200
drm/xe: Move job creation out of the struct xe_migrate::job_mutex
In order to be able to run gpu jobs from reclaim context,
move job creation (where allocation takes place) out of the
struct xe_migrate::job_mutex, and prime that mutex as reclaim
tainted.
Jobs that may need to run from reclaim context include
CCS metadata extraction at shrinking time.
Signed-off-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Reviewed-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
+ /mt/dim checkpatch f2c37d7fd878c82ea57075948d614f60a168128c drm-intel
30b307b89956 drm/xe: Decouple job seqno and lrc seqno
c103d7d6b259 drm/xe: Split lrc seqno fence creation up
61e22870531d drm/xe: Don't initialize fences at xe_sched_job_create()
ae8aa4180f0b drm/xe: Remove xe_lrc_create_seqno_fence()
81044b5bd81d drm/xe: Move job creation out of the struct xe_migrate::job_mutex
^ permalink raw reply [flat|nested] 16+ messages in thread* ✓ CI.KUnit: success for drm/xe: Allow migrate vm gpu submissions from reclaim context
2024-05-27 13:59 [PATCH v4 0/5] drm/xe: Allow migrate vm gpu submissions from reclaim context Thomas Hellström
` (6 preceding siblings ...)
2024-05-27 14:06 ` ✓ CI.checkpatch: " Patchwork
@ 2024-05-27 14:07 ` Patchwork
2024-05-27 14:18 ` ✓ CI.Build: " Patchwork
` (4 subsequent siblings)
12 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2024-05-27 14:07 UTC (permalink / raw)
To: Thomas Hellström; +Cc: intel-xe
== Series Details ==
Series: drm/xe: Allow migrate vm gpu submissions from reclaim context
URL : https://patchwork.freedesktop.org/series/134087/
State : success
== Summary ==
+ trap cleanup EXIT
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/xe/.kunitconfig
[14:06:06] Configuring KUnit Kernel ...
Generating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[14:06:11] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make ARCH=um O=.kunit --jobs=48
../lib/iomap.c:156:5: warning: no previous prototype for ‘ioread64_lo_hi’ [-Wmissing-prototypes]
156 | u64 ioread64_lo_hi(const void __iomem *addr)
| ^~~~~~~~~~~~~~
../lib/iomap.c:163:5: warning: no previous prototype for ‘ioread64_hi_lo’ [-Wmissing-prototypes]
163 | u64 ioread64_hi_lo(const void __iomem *addr)
| ^~~~~~~~~~~~~~
../lib/iomap.c:170:5: warning: no previous prototype for ‘ioread64be_lo_hi’ [-Wmissing-prototypes]
170 | u64 ioread64be_lo_hi(const void __iomem *addr)
| ^~~~~~~~~~~~~~~~
../lib/iomap.c:178:5: warning: no previous prototype for ‘ioread64be_hi_lo’ [-Wmissing-prototypes]
178 | u64 ioread64be_hi_lo(const void __iomem *addr)
| ^~~~~~~~~~~~~~~~
../lib/iomap.c:264:6: warning: no previous prototype for ‘iowrite64_lo_hi’ [-Wmissing-prototypes]
264 | void iowrite64_lo_hi(u64 val, void __iomem *addr)
| ^~~~~~~~~~~~~~~
../lib/iomap.c:272:6: warning: no previous prototype for ‘iowrite64_hi_lo’ [-Wmissing-prototypes]
272 | void iowrite64_hi_lo(u64 val, void __iomem *addr)
| ^~~~~~~~~~~~~~~
../lib/iomap.c:280:6: warning: no previous prototype for ‘iowrite64be_lo_hi’ [-Wmissing-prototypes]
280 | void iowrite64be_lo_hi(u64 val, void __iomem *addr)
| ^~~~~~~~~~~~~~~~~
../lib/iomap.c:288:6: warning: no previous prototype for ‘iowrite64be_hi_lo’ [-Wmissing-prototypes]
288 | void iowrite64be_hi_lo(u64 val, void __iomem *addr)
| ^~~~~~~~~~~~~~~~~
[14:06:37] Starting KUnit Kernel (1/1)...
[14:06:37] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[14:06:37] =================== guc_dbm (7 subtests) ===================
[14:06:37] [PASSED] test_empty
[14:06:37] [PASSED] test_default
[14:06:37] ======================== test_size ========================
[14:06:37] [PASSED] 4
[14:06:37] [PASSED] 8
[14:06:37] [PASSED] 32
[14:06:37] [PASSED] 256
[14:06:37] ==================== [PASSED] test_size ====================
[14:06:37] ======================= test_reuse ========================
[14:06:37] [PASSED] 4
[14:06:37] [PASSED] 8
[14:06:37] [PASSED] 32
[14:06:37] [PASSED] 256
[14:06:37] =================== [PASSED] test_reuse ====================
[14:06:37] =================== test_range_overlap ====================
[14:06:37] [PASSED] 4
[14:06:37] [PASSED] 8
[14:06:37] [PASSED] 32
[14:06:37] [PASSED] 256
[14:06:37] =============== [PASSED] test_range_overlap ================
[14:06:37] =================== test_range_compact ====================
[14:06:37] [PASSED] 4
[14:06:37] [PASSED] 8
[14:06:37] [PASSED] 32
[14:06:37] [PASSED] 256
[14:06:37] =============== [PASSED] test_range_compact ================
[14:06:37] ==================== test_range_spare =====================
[14:06:37] [PASSED] 4
[14:06:37] [PASSED] 8
[14:06:37] [PASSED] 32
[14:06:37] [PASSED] 256
[14:06:37] ================ [PASSED] test_range_spare =================
[14:06:37] ===================== [PASSED] guc_dbm =====================
[14:06:37] =================== guc_idm (6 subtests) ===================
[14:06:37] [PASSED] bad_init
[14:06:37] [PASSED] no_init
[14:06:37] [PASSED] init_fini
[14:06:37] [PASSED] check_used
[14:06:37] [PASSED] check_quota
[14:06:37] [PASSED] check_all
[14:06:37] ===================== [PASSED] guc_idm =====================
[14:06:37] ================== no_relay (3 subtests) ===================
[14:06:37] [PASSED] xe_drops_guc2pf_if_not_ready
[14:06:37] [PASSED] xe_drops_guc2vf_if_not_ready
[14:06:37] [PASSED] xe_rejects_send_if_not_ready
[14:06:37] ==================== [PASSED] no_relay =====================
[14:06:37] ================== pf_relay (14 subtests) ==================
[14:06:37] [PASSED] pf_rejects_guc2pf_too_short
[14:06:37] [PASSED] pf_rejects_guc2pf_too_long
[14:06:37] [PASSED] pf_rejects_guc2pf_no_payload
[14:06:37] [PASSED] pf_fails_no_payload
[14:06:37] [PASSED] pf_fails_bad_origin
[14:06:37] [PASSED] pf_fails_bad_type
[14:06:37] [PASSED] pf_txn_reports_error
[14:06:37] [PASSED] pf_txn_sends_pf2guc
[14:06:37] [PASSED] pf_sends_pf2guc
[14:06:37] [SKIPPED] pf_loopback_nop
[14:06:37] [SKIPPED] pf_loopback_echo
[14:06:37] [SKIPPED] pf_loopback_fail
[14:06:37] [SKIPPED] pf_loopback_busy
[14:06:37] [SKIPPED] pf_loopback_retry
[14:06:37] ==================== [PASSED] pf_relay =====================
[14:06:37] ================== vf_relay (3 subtests) ===================
[14:06:37] [PASSED] vf_rejects_guc2vf_too_short
[14:06:37] [PASSED] vf_rejects_guc2vf_too_long
[14:06:37] [PASSED] vf_rejects_guc2vf_no_payload
[14:06:37] ==================== [PASSED] vf_relay =====================
[14:06:37] ================= pf_service (11 subtests) =================
[14:06:37] [PASSED] pf_negotiate_any
[14:06:37] [PASSED] pf_negotiate_base_match
[14:06:37] [PASSED] pf_negotiate_base_newer
[14:06:37] [PASSED] pf_negotiate_base_next
[14:06:37] [SKIPPED] pf_negotiate_base_older
[14:06:37] [PASSED] pf_negotiate_base_prev
[14:06:37] [PASSED] pf_negotiate_latest_match
[14:06:37] [PASSED] pf_negotiate_latest_newer
[14:06:37] [PASSED] pf_negotiate_latest_next
[14:06:37] [SKIPPED] pf_negotiate_latest_older
[14:06:37] [SKIPPED] pf_negotiate_latest_prev
[14:06:37] =================== [PASSED] pf_service ====================
[14:06:37] ===================== lmtt (1 subtest) =====================
[14:06:37] ======================== test_ops =========================
[14:06:37] [PASSED] 2-level
[14:06:37] [PASSED] multi-level
[14:06:37] ==================== [PASSED] test_ops =====================
[14:06:37] ====================== [PASSED] lmtt =======================
[14:06:37] ==================== xe_bo (2 subtests) ====================
[14:06:37] [SKIPPED] xe_ccs_migrate_kunit
[14:06:37] [SKIPPED] xe_bo_evict_kunit
[14:06:37] ===================== [SKIPPED] xe_bo ======================
[14:06:37] ================== xe_dma_buf (1 subtest) ==================
[14:06:37] [SKIPPED] xe_dma_buf_kunit
[14:06:37] =================== [SKIPPED] xe_dma_buf ===================
[14:06:37] ================== xe_migrate (1 subtest) ==================
[14:06:37] [SKIPPED] xe_migrate_sanity_kunit
[14:06:37] =================== [SKIPPED] xe_migrate ===================
[14:06:37] =================== xe_mocs (2 subtests) ===================
[14:06:37] [SKIPPED] xe_live_mocs_kernel_kunit
[14:06:37] [SKIPPED] xe_live_mocs_reset_kunit
[14:06:37] ==================== [SKIPPED] xe_mocs =====================
[14:06:37] ==================== args (11 subtests) ====================
[14:06:37] [PASSED] count_args_test
[14:06:37] [PASSED] call_args_example
[14:06:37] [PASSED] call_args_test
[14:06:37] [PASSED] drop_first_arg_example
[14:06:37] [PASSED] drop_first_arg_test
[14:06:37] [PASSED] first_arg_example
[14:06:37] [PASSED] first_arg_test
[14:06:37] [PASSED] last_arg_example
[14:06:37] [PASSED] last_arg_test
[14:06:37] [PASSED] pick_arg_example
[14:06:37] [PASSED] sep_comma_example
[14:06:37] ====================== [PASSED] args =======================
[14:06:37] =================== xe_pci (2 subtests) ====================
[14:06:37] [PASSED] xe_gmdid_graphics_ip
[14:06:37] [PASSED] xe_gmdid_media_ip
[14:06:37] ===================== [PASSED] xe_pci ======================
[14:06:37] ==================== xe_rtp (1 subtest) ====================
[14:06:37] ================== xe_rtp_process_tests ===================
[14:06:37] [PASSED] coalesce-same-reg
[14:06:37] [PASSED] no-match-no-add
[14:06:37] [PASSED] no-match-no-add-multiple-rules
[14:06:37] [PASSED] two-regs-two-entries
[14:06:37] [PASSED] clr-one-set-other
[14:06:37] [PASSED] set-field
[14:06:37] [PASSED] conflict-duplicate
[14:06:37] [PASSED] conflict-not-disjoint
[14:06:37] [PASSED] conflict-reg-type
[14:06:37] ============== [PASSED] xe_rtp_process_tests ===============
stty: 'standard input': Inappropriate ioctl for device
[14:06:37] ===================== [PASSED] xe_rtp ======================
[14:06:37] ==================== xe_wa (1 subtest) =====================
[14:06:37] ======================== xe_wa_gt =========================
[14:06:37] [PASSED] TIGERLAKE (B0)
[14:06:37] [PASSED] DG1 (A0)
[14:06:37] [PASSED] DG1 (B0)
[14:06:37] [PASSED] ALDERLAKE_S (A0)
[14:06:37] [PASSED] ALDERLAKE_S (B0)
[14:06:37] [PASSED] ALDERLAKE_S (C0)
[14:06:37] [PASSED] ALDERLAKE_S (D0)
[14:06:37] [PASSED] ALDERLAKE_P (A0)
[14:06:37] [PASSED] ALDERLAKE_P (B0)
[14:06:37] [PASSED] ALDERLAKE_P (C0)
[14:06:37] [PASSED] ALDERLAKE_S_RPLS (D0)
[14:06:37] [PASSED] ALDERLAKE_P_RPLU (E0)
[14:06:37] [PASSED] DG2_G10 (C0)
[14:06:37] [PASSED] DG2_G11 (B1)
[14:06:37] [PASSED] DG2_G12 (A1)
[14:06:37] [PASSED] METEORLAKE (g:A0, m:A0)
[14:06:37] [PASSED] METEORLAKE (g:A0, m:A0)
[14:06:37] [PASSED] METEORLAKE (g:A0, m:A0)
[14:06:37] [PASSED] LUNARLAKE (g:A0, m:A0)
[14:06:37] [PASSED] LUNARLAKE (g:B0, m:A0)
[14:06:37] ==================== [PASSED] xe_wa_gt =====================
[14:06:37] ====================== [PASSED] xe_wa ======================
[14:06:37] ============================================================
[14:06:37] Testing complete. Ran 109 tests: passed: 95, skipped: 14
[14:06:37] Elapsed time: 30.771s total, 4.284s configuring, 26.267s building, 0.174s running
+ /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/tests/.kunitconfig
[14:06:37] Configuring KUnit Kernel ...
Regenerating .config ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
[14:06:39] Building KUnit Kernel ...
Populating config with:
$ make ARCH=um O=.kunit olddefconfig
Building with:
$ make ARCH=um O=.kunit --jobs=48
../lib/iomap.c:156:5: warning: no previous prototype for ‘ioread64_lo_hi’ [-Wmissing-prototypes]
156 | u64 ioread64_lo_hi(const void __iomem *addr)
| ^~~~~~~~~~~~~~
../lib/iomap.c:163:5: warning: no previous prototype for ‘ioread64_hi_lo’ [-Wmissing-prototypes]
163 | u64 ioread64_hi_lo(const void __iomem *addr)
| ^~~~~~~~~~~~~~
../lib/iomap.c:170:5: warning: no previous prototype for ‘ioread64be_lo_hi’ [-Wmissing-prototypes]
170 | u64 ioread64be_lo_hi(const void __iomem *addr)
| ^~~~~~~~~~~~~~~~
../lib/iomap.c:178:5: warning: no previous prototype for ‘ioread64be_hi_lo’ [-Wmissing-prototypes]
178 | u64 ioread64be_hi_lo(const void __iomem *addr)
| ^~~~~~~~~~~~~~~~
../lib/iomap.c:264:6: warning: no previous prototype for ‘iowrite64_lo_hi’ [-Wmissing-prototypes]
264 | void iowrite64_lo_hi(u64 val, void __iomem *addr)
| ^~~~~~~~~~~~~~~
../lib/iomap.c:272:6: warning: no previous prototype for ‘iowrite64_hi_lo’ [-Wmissing-prototypes]
272 | void iowrite64_hi_lo(u64 val, void __iomem *addr)
| ^~~~~~~~~~~~~~~
../lib/iomap.c:280:6: warning: no previous prototype for ‘iowrite64be_lo_hi’ [-Wmissing-prototypes]
280 | void iowrite64be_lo_hi(u64 val, void __iomem *addr)
| ^~~~~~~~~~~~~~~~~
../lib/iomap.c:288:6: warning: no previous prototype for ‘iowrite64be_hi_lo’ [-Wmissing-prototypes]
288 | void iowrite64be_hi_lo(u64 val, void __iomem *addr)
| ^~~~~~~~~~~~~~~~~
[14:07:00] Starting KUnit Kernel (1/1)...
[14:07:00] ============================================================
Running tests with:
$ .kunit/linux kunit.enable=1 mem=1G console=tty kunit_shutdown=halt
[14:07:00] ============ drm_test_pick_cmdline (2 subtests) ============
[14:07:00] [PASSED] drm_test_pick_cmdline_res_1920_1080_60
[14:07:00] =============== drm_test_pick_cmdline_named ===============
[14:07:00] [PASSED] NTSC
[14:07:00] [PASSED] NTSC-J
[14:07:00] [PASSED] PAL
[14:07:00] [PASSED] PAL-M
[14:07:00] =========== [PASSED] drm_test_pick_cmdline_named ===========
[14:07:00] ============== [PASSED] drm_test_pick_cmdline ==============
[14:07:00] ================== drm_buddy (7 subtests) ==================
[14:07:00] [PASSED] drm_test_buddy_alloc_limit
[14:07:00] [PASSED] drm_test_buddy_alloc_optimistic
[14:07:00] [PASSED] drm_test_buddy_alloc_pessimistic
[14:07:00] [PASSED] drm_test_buddy_alloc_pathological
[14:07:00] [PASSED] drm_test_buddy_alloc_contiguous
[14:07:00] [PASSED] drm_test_buddy_alloc_clear
[14:07:00] [PASSED] drm_test_buddy_alloc_range_bias
[14:07:00] ==================== [PASSED] drm_buddy ====================
[14:07:00] ============= drm_cmdline_parser (40 subtests) =============
[14:07:00] [PASSED] drm_test_cmdline_force_d_only
[14:07:00] [PASSED] drm_test_cmdline_force_D_only_dvi
[14:07:00] [PASSED] drm_test_cmdline_force_D_only_hdmi
[14:07:00] [PASSED] drm_test_cmdline_force_D_only_not_digital
[14:07:00] [PASSED] drm_test_cmdline_force_e_only
[14:07:00] [PASSED] drm_test_cmdline_res
[14:07:00] [PASSED] drm_test_cmdline_res_vesa
[14:07:00] [PASSED] drm_test_cmdline_res_vesa_rblank
[14:07:00] [PASSED] drm_test_cmdline_res_rblank
[14:07:00] [PASSED] drm_test_cmdline_res_bpp
[14:07:00] [PASSED] drm_test_cmdline_res_refresh
[14:07:00] [PASSED] drm_test_cmdline_res_bpp_refresh
[14:07:00] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced
[14:07:00] [PASSED] drm_test_cmdline_res_bpp_refresh_margins
[14:07:00] [PASSED] drm_test_cmdline_res_bpp_refresh_force_off
[14:07:00] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on
[14:07:00] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_analog
[14:07:00] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_digital
[14:07:00] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced_margins_force_on
[14:07:00] [PASSED] drm_test_cmdline_res_margins_force_on
[14:07:00] [PASSED] drm_test_cmdline_res_vesa_margins
[14:07:00] [PASSED] drm_test_cmdline_name
[14:07:00] [PASSED] drm_test_cmdline_name_bpp
[14:07:00] [PASSED] drm_test_cmdline_name_option
[14:07:00] [PASSED] drm_test_cmdline_name_bpp_option
[14:07:00] [PASSED] drm_test_cmdline_rotate_0
[14:07:00] [PASSED] drm_test_cmdline_rotate_90
[14:07:00] [PASSED] drm_test_cmdline_rotate_180
[14:07:00] [PASSED] drm_test_cmdline_rotate_270
[14:07:00] [PASSED] drm_test_cmdline_hmirror
[14:07:00] [PASSED] drm_test_cmdline_vmirror
[14:07:00] [PASSED] drm_test_cmdline_margin_options
[14:07:00] [PASSED] drm_test_cmdline_multiple_options
[14:07:00] [PASSED] drm_test_cmdline_bpp_extra_and_option
[14:07:00] [PASSED] drm_test_cmdline_extra_and_option
[14:07:00] [PASSED] drm_test_cmdline_freestanding_options
[14:07:00] [PASSED] drm_test_cmdline_freestanding_force_e_and_options
[14:07:00] [PASSED] drm_test_cmdline_panel_orientation
[14:07:00] ================ drm_test_cmdline_invalid =================
[14:07:00] [PASSED] margin_only
[14:07:00] [PASSED] interlace_only
[14:07:00] [PASSED] res_missing_x
[14:07:00] [PASSED] res_missing_y
[14:07:00] [PASSED] res_bad_y
[14:07:00] [PASSED] res_missing_y_bpp
[14:07:00] [PASSED] res_bad_bpp
[14:07:00] [PASSED] res_bad_refresh
[14:07:00] [PASSED] res_bpp_refresh_force_on_off
[14:07:00] [PASSED] res_invalid_mode
[14:07:00] [PASSED] res_bpp_wrong_place_mode
[14:07:00] [PASSED] name_bpp_refresh
[14:07:00] [PASSED] name_refresh
[14:07:00] [PASSED] name_refresh_wrong_mode
[14:07:00] [PASSED] name_refresh_invalid_mode
[14:07:00] [PASSED] rotate_multiple
[14:07:00] [PASSED] rotate_invalid_val
[14:07:00] [PASSED] rotate_truncated
[14:07:00] [PASSED] invalid_option
[14:07:00] [PASSED] invalid_tv_option
[14:07:00] [PASSED] truncated_tv_option
[14:07:00] ============ [PASSED] drm_test_cmdline_invalid =============
[14:07:00] =============== drm_test_cmdline_tv_options ===============
[14:07:00] [PASSED] NTSC
[14:07:00] [PASSED] NTSC_443
[14:07:00] [PASSED] NTSC_J
[14:07:00] [PASSED] PAL
[14:07:00] [PASSED] PAL_M
[14:07:00] [PASSED] PAL_N
[14:07:00] [PASSED] SECAM
[14:07:00] =========== [PASSED] drm_test_cmdline_tv_options ===========
[14:07:00] =============== [PASSED] drm_cmdline_parser ================
[14:07:00] ============= drmm_connector_init (3 subtests) =============
[14:07:00] [PASSED] drm_test_drmm_connector_init
[14:07:00] [PASSED] drm_test_drmm_connector_init_null_ddc
[14:07:00] ========= drm_test_drmm_connector_init_type_valid =========
[14:07:00] [PASSED] Unknown
[14:07:00] [PASSED] VGA
[14:07:00] [PASSED] DVI-I
[14:07:00] [PASSED] DVI-D
[14:07:00] [PASSED] DVI-A
[14:07:00] [PASSED] Composite
[14:07:00] [PASSED] SVIDEO
[14:07:00] [PASSED] LVDS
[14:07:00] [PASSED] Component
[14:07:00] [PASSED] DIN
[14:07:00] [PASSED] DP
[14:07:00] [PASSED] HDMI-A
[14:07:00] [PASSED] HDMI-B
[14:07:00] [PASSED] TV
[14:07:00] [PASSED] eDP
[14:07:00] [PASSED] Virtual
[14:07:00] [PASSED] DSI
[14:07:00] [PASSED] DPI
[14:07:00] [PASSED] Writeback
[14:07:00] [PASSED] SPI
[14:07:00] [PASSED] USB
[14:07:00] ===== [PASSED] drm_test_drmm_connector_init_type_valid =====
[14:07:00] =============== [PASSED] drmm_connector_init ===============
[14:07:00] ========== drm_get_tv_mode_from_name (2 subtests) ==========
[14:07:00] ========== drm_test_get_tv_mode_from_name_valid ===========
[14:07:00] [PASSED] NTSC
[14:07:00] [PASSED] NTSC-443
[14:07:00] [PASSED] NTSC-J
[14:07:00] [PASSED] PAL
[14:07:00] [PASSED] PAL-M
[14:07:00] [PASSED] PAL-N
[14:07:00] [PASSED] SECAM
[14:07:00] ====== [PASSED] drm_test_get_tv_mode_from_name_valid =======
[14:07:00] [PASSED] drm_test_get_tv_mode_from_name_truncated
[14:07:00] ============ [PASSED] drm_get_tv_mode_from_name ============
[14:07:00] ============= drm_damage_helper (21 subtests) ==============
[14:07:00] [PASSED] drm_test_damage_iter_no_damage
[14:07:00] [PASSED] drm_test_damage_iter_no_damage_fractional_src
[14:07:00] [PASSED] drm_test_damage_iter_no_damage_src_moved
[14:07:00] [PASSED] drm_test_damage_iter_no_damage_fractional_src_moved
[14:07:00] [PASSED] drm_test_damage_iter_no_damage_not_visible
[14:07:00] [PASSED] drm_test_damage_iter_no_damage_no_crtc
[14:07:00] [PASSED] drm_test_damage_iter_no_damage_no_fb
[14:07:00] [PASSED] drm_test_damage_iter_simple_damage
[14:07:00] [PASSED] drm_test_damage_iter_single_damage
[14:07:00] [PASSED] drm_test_damage_iter_single_damage_intersect_src
[14:07:00] [PASSED] drm_test_damage_iter_single_damage_outside_src
[14:07:00] [PASSED] drm_test_damage_iter_single_damage_fractional_src
[14:07:00] [PASSED] drm_test_damage_iter_single_damage_intersect_fractional_src
[14:07:00] [PASSED] drm_test_damage_iter_single_damage_outside_fractional_src
[14:07:00] [PASSED] drm_test_damage_iter_single_damage_src_moved
[14:07:00] [PASSED] drm_test_damage_iter_single_damage_fractional_src_moved
[14:07:00] [PASSED] drm_test_damage_iter_damage
[14:07:00] [PASSED] drm_test_damage_iter_damage_one_intersect
[14:07:00] [PASSED] drm_test_damage_iter_damage_one_outside
[14:07:00] [PASSED] drm_test_damage_iter_damage_src_moved
[14:07:00] [PASSED] drm_test_damage_iter_damage_not_visible
[14:07:00] ================ [PASSED] drm_damage_helper ================
[14:07:00] ============== drm_dp_mst_helper (3 subtests) ==============
[14:07:00] ============== drm_test_dp_mst_calc_pbn_mode ==============
[14:07:00] [PASSED] Clock 154000 BPP 30 DSC disabled
[14:07:00] [PASSED] Clock 234000 BPP 30 DSC disabled
[14:07:00] [PASSED] Clock 297000 BPP 24 DSC disabled
[14:07:00] [PASSED] Clock 332880 BPP 24 DSC enabled
[14:07:00] [PASSED] Clock 324540 BPP 24 DSC enabled
[14:07:00] ========== [PASSED] drm_test_dp_mst_calc_pbn_mode ==========
[14:07:00] ============== drm_test_dp_mst_calc_pbn_div ===============
[14:07:00] [PASSED] Link rate 2000000 lane count 4
[14:07:00] [PASSED] Link rate 2000000 lane count 2
[14:07:00] [PASSED] Link rate 2000000 lane count 1
[14:07:00] [PASSED] Link rate 1350000 lane count 4
[14:07:00] [PASSED] Link rate 1350000 lane count 2
[14:07:00] [PASSED] Link rate 1350000 lane count 1
[14:07:00] [PASSED] Link rate 1000000 lane count 4
[14:07:00] [PASSED] Link rate 1000000 lane count 2
[14:07:00] [PASSED] Link rate 1000000 lane count 1
[14:07:00] [PASSED] Link rate 810000 lane count 4
[14:07:00] [PASSED] Link rate 810000 lane count 2
[14:07:00] [PASSED] Link rate 810000 lane count 1
[14:07:00] [PASSED] Link rate 540000 lane count 4
[14:07:00] [PASSED] Link rate 540000 lane count 2
[14:07:00] [PASSED] Link rate 540000 lane count 1
[14:07:00] [PASSED] Link rate 270000 lane count 4
[14:07:00] [PASSED] Link rate 270000 lane count 2
[14:07:00] [PASSED] Link rate 270000 lane count 1
[14:07:00] [PASSED] Link rate 162000 lane count 4
[14:07:00] [PASSED] Link rate 162000 lane count 2
[14:07:00] [PASSED] Link rate 162000 lane count 1
[14:07:00] ========== [PASSED] drm_test_dp_mst_calc_pbn_div ===========
[14:07:00] ========= drm_test_dp_mst_sideband_msg_req_decode =========
[14:07:00] [PASSED] DP_ENUM_PATH_RESOURCES with port number
[14:07:00] [PASSED] DP_POWER_UP_PHY with port number
[14:07:00] [PASSED] DP_POWER_DOWN_PHY with port number
[14:07:00] [PASSED] DP_ALLOCATE_PAYLOAD with SDP stream sinks
[14:07:00] [PASSED] DP_ALLOCATE_PAYLOAD with port number
[14:07:00] [PASSED] DP_ALLOCATE_PAYLOAD with VCPI
[14:07:00] [PASSED] DP_ALLOCATE_PAYLOAD with PBN
[14:07:00] [PASSED] DP_QUERY_PAYLOAD with port number
[14:07:00] [PASSED] DP_QUERY_PAYLOAD with VCPI
[14:07:00] [PASSED] DP_REMOTE_DPCD_READ with port number
[14:07:00] [PASSED] DP_REMOTE_DPCD_READ with DPCD address
[14:07:00] [PASSED] DP_REMOTE_DPCD_READ with max number of bytes
[14:07:00] [PASSED] DP_REMOTE_DPCD_WRITE with port number
[14:07:00] [PASSED] DP_REMOTE_DPCD_WRITE with DPCD address
[14:07:00] [PASSED] DP_REMOTE_DPCD_WRITE with data array
[14:07:00] [PASSED] DP_REMOTE_I2C_READ with port number
[14:07:00] [PASSED] DP_REMOTE_I2C_READ with I2C device ID
[14:07:00] [PASSED] DP_REMOTE_I2C_READ with transactions array
[14:07:00] [PASSED] DP_REMOTE_I2C_WRITE with port number
[14:07:00] [PASSED] DP_REMOTE_I2C_WRITE with I2C device ID
[14:07:00] [PASSED] DP_REMOTE_I2C_WRITE with data array
[14:07:00] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream ID
[14:07:00] [PASSED] DP_QUERY_STREAM_ENC_STATUS with client ID
[14:07:00] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream event
[14:07:00] [PASSED] DP_QUERY_STREAM_ENC_STATUS with valid stream event
[14:07:00] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream behavior
[14:07:00] [PASSED] DP_QUERY_STREAM_ENC_STATUS with a valid stream behavior
[14:07:00] ===== [PASSED] drm_test_dp_mst_sideband_msg_req_decode =====
[14:07:00] ================ [PASSED] drm_dp_mst_helper ================
[14:07:00] ================== drm_exec (7 subtests) ===================
[14:07:00] [PASSED] sanitycheck
[14:07:00] [PASSED] test_lock
[14:07:00] [PASSED] test_lock_unlock
[14:07:00] [PASSED] test_duplicates
[14:07:00] [PASSED] test_prepare
[14:07:00] [PASSED] test_prepare_array
[14:07:00] [PASSED] test_multiple_loops
[14:07:00] ==================== [PASSED] drm_exec =====================
[14:07:00] =========== drm_format_helper_test (17 subtests) ===========
[14:07:00] ============== drm_test_fb_xrgb8888_to_gray8 ==============
[14:07:00] [PASSED] single_pixel_source_buffer
[14:07:00] [PASSED] single_pixel_clip_rectangle
[14:07:00] [PASSED] well_known_colors
[14:07:00] [PASSED] destination_pitch
[14:07:00] ========== [PASSED] drm_test_fb_xrgb8888_to_gray8 ==========
[14:07:00] ============= drm_test_fb_xrgb8888_to_rgb332 ==============
[14:07:00] [PASSED] single_pixel_source_buffer
[14:07:00] [PASSED] single_pixel_clip_rectangle
[14:07:00] [PASSED] well_known_colors
[14:07:00] [PASSED] destination_pitch
[14:07:00] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb332 ==========
[14:07:00] ============= drm_test_fb_xrgb8888_to_rgb565 ==============
[14:07:00] [PASSED] single_pixel_source_buffer
[14:07:00] [PASSED] single_pixel_clip_rectangle
[14:07:00] [PASSED] well_known_colors
[14:07:00] [PASSED] destination_pitch
[14:07:00] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb565 ==========
[14:07:00] ============ drm_test_fb_xrgb8888_to_xrgb1555 =============
[14:07:00] [PASSED] single_pixel_source_buffer
[14:07:00] [PASSED] single_pixel_clip_rectangle
[14:07:00] [PASSED] well_known_colors
[14:07:00] [PASSED] destination_pitch
[14:07:00] ======== [PASSED] drm_test_fb_xrgb8888_to_xrgb1555 =========
[14:07:00] ============ drm_test_fb_xrgb8888_to_argb1555 =============
[14:07:00] [PASSED] single_pixel_source_buffer
[14:07:00] [PASSED] single_pixel_clip_rectangle
[14:07:00] [PASSED] well_known_colors
[14:07:00] [PASSED] destination_pitch
[14:07:00] ======== [PASSED] drm_test_fb_xrgb8888_to_argb1555 =========
[14:07:00] ============ drm_test_fb_xrgb8888_to_rgba5551 =============
[14:07:00] [PASSED] single_pixel_source_buffer
[14:07:00] [PASSED] single_pixel_clip_rectangle
[14:07:00] [PASSED] well_known_colors
[14:07:00] [PASSED] destination_pitch
[14:07:00] ======== [PASSED] drm_test_fb_xrgb8888_to_rgba5551 =========
[14:07:00] ============= drm_test_fb_xrgb8888_to_rgb888 ==============
[14:07:00] [PASSED] single_pixel_source_buffer
[14:07:00] [PASSED] single_pixel_clip_rectangle
[14:07:00] [PASSED] well_known_colors
[14:07:00] [PASSED] destination_pitch
[14:07:00] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb888 ==========
[14:07:00] ============ drm_test_fb_xrgb8888_to_argb8888 =============
[14:07:00] [PASSED] single_pixel_source_buffer
[14:07:00] [PASSED] single_pixel_clip_rectangle
[14:07:00] [PASSED] well_known_colors
[14:07:00] [PASSED] destination_pitch
[14:07:00] ======== [PASSED] drm_test_fb_xrgb8888_to_argb8888 =========
[14:07:00] =========== drm_test_fb_xrgb8888_to_xrgb2101010 ===========
[14:07:00] [PASSED] single_pixel_source_buffer
[14:07:00] [PASSED] single_pixel_clip_rectangle
[14:07:00] [PASSED] well_known_colors
[14:07:00] [PASSED] destination_pitch
[14:07:00] ======= [PASSED] drm_test_fb_xrgb8888_to_xrgb2101010 =======
[14:07:00] =========== drm_test_fb_xrgb8888_to_argb2101010 ===========
[14:07:00] [PASSED] single_pixel_source_buffer
[14:07:00] [PASSED] single_pixel_clip_rectangle
[14:07:00] [PASSED] well_known_colors
[14:07:00] [PASSED] destination_pitch
[14:07:00] ======= [PASSED] drm_test_fb_xrgb8888_to_argb2101010 =======
[14:07:00] ============== drm_test_fb_xrgb8888_to_mono ===============
[14:07:00] [PASSED] single_pixel_source_buffer
[14:07:00] [PASSED] single_pixel_clip_rectangle
[14:07:00] [PASSED] well_known_colors
[14:07:00] [PASSED] destination_pitch
[14:07:00] ========== [PASSED] drm_test_fb_xrgb8888_to_mono ===========
[14:07:00] ==================== drm_test_fb_swab =====================
[14:07:00] [PASSED] single_pixel_source_buffer
[14:07:00] [PASSED] single_pixel_clip_rectangle
[14:07:00] [PASSED] well_known_colors
[14:07:00] [PASSED] destination_pitch
[14:07:00] ================ [PASSED] drm_test_fb_swab =================
[14:07:00] ============ drm_test_fb_xrgb8888_to_xbgr8888 =============
[14:07:00] [PASSED] single_pixel_source_buffer
[14:07:00] [PASSED] single_pixel_clip_rectangle
[14:07:00] [PASSED] well_known_colors
[14:07:00] [PASSED] destination_pitch
[14:07:00] ======== [PASSED] drm_test_fb_xrgb8888_to_xbgr8888 =========
[14:07:00] ============ drm_test_fb_xrgb8888_to_abgr8888 =============
[14:07:00] [PASSED] single_pixel_source_buffer
[14:07:00] [PASSED] single_pixel_clip_rectangle
[14:07:00] [PASSED] well_known_colors
[14:07:00] [PASSED] destination_pitch
[14:07:00] ======== [PASSED] drm_test_fb_xrgb8888_to_abgr8888 =========
[14:07:00] ================= drm_test_fb_clip_offset =================
[14:07:00] [PASSED] pass through
[14:07:00] [PASSED] horizontal offset
[14:07:00] [PASSED] vertical offset
[14:07:00] [PASSED] horizontal and vertical offset
[14:07:00] [PASSED] horizontal offset (custom pitch)
[14:07:00] [PASSED] vertical offset (custom pitch)
[14:07:00] [PASSED] horizontal and vertical offset (custom pitch)
[14:07:00] ============= [PASSED] drm_test_fb_clip_offset =============
[14:07:00] ============== drm_test_fb_build_fourcc_list ==============
[14:07:00] [PASSED] no native formats
[14:07:00] [PASSED] XRGB8888 as native format
[14:07:00] [PASSED] remove duplicates
[14:07:00] [PASSED] convert alpha formats
[14:07:00] [PASSED] random formats
[14:07:00] ========== [PASSED] drm_test_fb_build_fourcc_list ==========
[14:07:00] =================== drm_test_fb_memcpy ====================
[14:07:00] [PASSED] single_pixel_source_buffer: XR24 little-endian (0x34325258)
[14:07:00] [PASSED] single_pixel_source_buffer: XRA8 little-endian (0x38415258)
[14:07:00] [PASSED] single_pixel_source_buffer: YU24 little-endian (0x34325559)
[14:07:00] [PASSED] single_pixel_clip_rectangle: XB24 little-endian (0x34324258)
[14:07:00] [PASSED] single_pixel_clip_rectangle: XRA8 little-endian (0x38415258)
[14:07:00] [PASSED] single_pixel_clip_rectangle: YU24 little-endian (0x34325559)
[14:07:00] [PASSED] well_known_colors: XB24 little-endian (0x34324258)
[14:07:00] [PASSED] well_known_colors: XRA8 little-endian (0x38415258)
[14:07:00] [PASSED] well_known_colors: YU24 little-endian (0x34325559)
[14:07:00] [PASSED] destination_pitch: XB24 little-endian (0x34324258)
[14:07:00] [PASSED] destination_pitch: XRA8 little-endian (0x38415258)
[14:07:00] [PASSED] destination_pitch: YU24 little-endian (0x34325559)
[14:07:00] =============== [PASSED] drm_test_fb_memcpy ================
[14:07:00] ============= [PASSED] drm_format_helper_test ==============
[14:07:00] ================= drm_format (18 subtests) =================
[14:07:00] [PASSED] drm_test_format_block_width_invalid
[14:07:00] [PASSED] drm_test_format_block_width_one_plane
[14:07:00] [PASSED] drm_test_format_block_width_two_plane
[14:07:00] [PASSED] drm_test_format_block_width_three_plane
[14:07:00] [PASSED] drm_test_format_block_width_tiled
[14:07:00] [PASSED] drm_test_format_block_height_invalid
[14:07:00] [PASSED] drm_test_format_block_height_one_plane
[14:07:00] [PASSED] drm_test_format_block_height_two_plane
[14:07:00] [PASSED] drm_test_format_block_height_three_plane
[14:07:00] [PASSED] drm_test_format_block_height_tiled
[14:07:00] [PASSED] drm_test_format_min_pitch_invalid
[14:07:00] [PASSED] drm_test_format_min_pitch_one_plane_8bpp
[14:07:00] [PASSED] drm_test_format_min_pitch_one_plane_16bpp
[14:07:00] [PASSED] drm_test_format_min_pitch_one_plane_24bpp
[14:07:00] [PASSED] drm_test_format_min_pitch_one_plane_32bpp
[14:07:00] [PASSED] drm_test_format_min_pitch_two_plane
[14:07:00] [PASSED] drm_test_format_min_pitch_three_plane_8bpp
[14:07:00] [PASSED] drm_test_format_min_pitch_tiled
[14:07:00] =================== [PASSED] drm_format ====================
[14:07:00] =============== drm_framebuffer (1 subtest) ================
[14:07:00] =============== drm_test_framebuffer_create ===============
[14:07:00] [PASSED] ABGR8888 normal sizes
[14:07:00] [PASSED] ABGR8888 max sizes
[14:07:00] [PASSED] ABGR8888 pitch greater than min required
[14:07:00] [PASSED] ABGR8888 pitch less than min required
[14:07:00] [PASSED] ABGR8888 Invalid width
[14:07:00] [PASSED] ABGR8888 Invalid buffer handle
[14:07:00] [PASSED] No pixel format
[14:07:00] [PASSED] ABGR8888 Width 0
[14:07:00] [PASSED] ABGR8888 Height 0
[14:07:00] [PASSED] ABGR8888 Out of bound height * pitch combination
[14:07:00] [PASSED] ABGR8888 Large buffer offset
[14:07:00] [PASSED] ABGR8888 Set DRM_MODE_FB_MODIFIERS without modifiers
[14:07:00] [PASSED] ABGR8888 Valid buffer modifier
[14:07:00] [PASSED] ABGR8888 Invalid buffer modifier(DRM_FORMAT_MOD_SAMSUNG_64_32_TILE)
[14:07:00] [PASSED] ABGR8888 Extra pitches without DRM_MODE_FB_MODIFIERS
[14:07:00] [PASSED] ABGR8888 Extra pitches with DRM_MODE_FB_MODIFIERS
[14:07:00] [PASSED] NV12 Normal sizes
[14:07:00] [PASSED] NV12 Max sizes
[14:07:00] [PASSED] NV12 Invalid pitch
[14:07:00] [PASSED] NV12 Invalid modifier/missing DRM_MODE_FB_MODIFIERS flag
[14:07:00] [PASSED] NV12 different modifier per-plane
[14:07:00] [PASSED] NV12 with DRM_FORMAT_MOD_SAMSUNG_64_32_TILE
[14:07:00] [PASSED] NV12 Valid modifiers without DRM_MODE_FB_MODIFIERS
[14:07:00] [PASSED] NV12 Modifier for inexistent plane
[14:07:00] [PASSED] NV12 Handle for inexistent plane
[14:07:00] [PASSED] NV12 Handle for inexistent plane without DRM_MODE_FB_MODIFIERS
[14:07:00] [PASSED] YVU420 DRM_MODE_FB_MODIFIERS set without modifier
[14:07:00] [PASSED] YVU420 Normal sizes
[14:07:00] [PASSED] YVU420 Max sizes
[14:07:00] [PASSED] YVU420 Invalid pitch
[14:07:00] [PASSED] YVU420 Different pitches
[14:07:00] [PASSED] YVU420 Different buffer offsets/pitches
[14:07:00] [PASSED] YVU420 Modifier set just for plane 0, without DRM_MODE_FB_MODIFIERS
[14:07:00] [PASSED] YVU420 Modifier set just for planes 0, 1, without DRM_MODE_FB_MODIFIERS
[14:07:00] [PASSED] YVU420 Modifier set just for plane 0, 1, with DRM_MODE_FB_MODIFIERS
[14:07:00] [PASSED] YVU420 Valid modifier
[14:07:00] [PASSED] YVU420 Different modifiers per plane
[14:07:00] [PASSED] YVU420 Modifier for inexistent plane
[14:07:00] [PASSED] X0L2 Normal sizes
[14:07:00] [PASSED] X0L2 Max sizes
[14:07:00] [PASSED] X0L2 Invalid pitch
[14:07:00] [PASSED] X0L2 Pitch greater than minimum required
[14:07:00] [PASSED] X0L2 Handle for inexistent plane
[14:07:00] [PASSED] X0L2 Offset for inexistent plane, without DRM_MODE_FB_MODIFIERS set
[14:07:00] [PASSED] X0L2 Modifier without DRM_MODE_FB_MODIFIERS set
[14:07:00] [PASSED] X0L2 Valid modifier
[14:07:00] [PASSED] X0L2 Modifier for inexistent plane
[14:07:00] =========== [PASSED] drm_test_framebuffer_create ===========
[14:07:00] ================= [PASSED] drm_framebuffer =================
[14:07:00] ================ drm_gem_shmem (8 subtests) ================
[14:07:00] [PASSED] drm_gem_shmem_test_obj_create
[14:07:00] [PASSED] drm_gem_shmem_test_obj_create_private
[14:07:00] [PASSED] drm_gem_shmem_test_pin_pages
[14:07:00] [PASSED] drm_gem_shmem_test_vmap
[14:07:00] [PASSED] drm_gem_shmem_test_get_pages_sgt
[14:07:00] [PASSED] drm_gem_shmem_test_get_sg_table
[14:07:00] [PASSED] drm_gem_shmem_test_madvise
[14:07:00] [PASSED] drm_gem_shmem_test_purge
[14:07:00] ================== [PASSED] drm_gem_shmem ==================
[14:07:00] ================= drm_managed (2 subtests) =================
[14:07:00] [PASSED] drm_test_managed_release_action
[14:07:00] [PASSED] drm_test_managed_run_action
[14:07:00] =================== [PASSED] drm_managed ===================
stty: 'standard input': Inappropriate ioctl for device
[14:07:00] =================== drm_mm (6 subtests) ====================
[14:07:00] [PASSED] drm_test_mm_init
[14:07:00] [PASSED] drm_test_mm_debug
[14:07:00] [PASSED] drm_test_mm_align32
[14:07:00] [PASSED] drm_test_mm_align64
[14:07:00] [PASSED] drm_test_mm_lowest
[14:07:00] [PASSED] drm_test_mm_highest
[14:07:00] ===================== [PASSED] drm_mm ======================
[14:07:00] ============= drm_modes_analog_tv (4 subtests) =============
[14:07:00] [PASSED] drm_test_modes_analog_tv_ntsc_480i
[14:07:00] [PASSED] drm_test_modes_analog_tv_ntsc_480i_inlined
[14:07:00] [PASSED] drm_test_modes_analog_tv_pal_576i
[14:07:00] [PASSED] drm_test_modes_analog_tv_pal_576i_inlined
[14:07:00] =============== [PASSED] drm_modes_analog_tv ===============
[14:07:00] ============== drm_plane_helper (2 subtests) ===============
[14:07:00] =============== drm_test_check_plane_state ================
[14:07:00] [PASSED] clipping_simple
[14:07:00] [PASSED] clipping_rotate_reflect
[14:07:00] [PASSED] positioning_simple
[14:07:00] [PASSED] upscaling
[14:07:00] [PASSED] downscaling
[14:07:00] [PASSED] rounding1
[14:07:00] [PASSED] rounding2
[14:07:00] [PASSED] rounding3
[14:07:00] [PASSED] rounding4
[14:07:00] =========== [PASSED] drm_test_check_plane_state ============
[14:07:00] =========== drm_test_check_invalid_plane_state ============
[14:07:00] [PASSED] positioning_invalid
[14:07:00] [PASSED] upscaling_invalid
[14:07:00] [PASSED] downscaling_invalid
[14:07:00] ======= [PASSED] drm_test_check_invalid_plane_state ========
[14:07:00] ================ [PASSED] drm_plane_helper =================
[14:07:00] ====== drm_connector_helper_tv_get_modes (1 subtest) =======
[14:07:00] ====== drm_test_connector_helper_tv_get_modes_check =======
[14:07:00] [PASSED] None
[14:07:00] [PASSED] PAL
[14:07:00] [PASSED] NTSC
[14:07:00] [PASSED] Both, NTSC Default
[14:07:00] [PASSED] Both, PAL Default
[14:07:00] [PASSED] Both, NTSC Default, with PAL on command-line
[14:07:00] [PASSED] Both, PAL Default, with NTSC on command-line
[14:07:00] == [PASSED] drm_test_connector_helper_tv_get_modes_check ===
[14:07:00] ======== [PASSED] drm_connector_helper_tv_get_modes ========
[14:07:00] ================== drm_rect (9 subtests) ===================
[14:07:00] [PASSED] drm_test_rect_clip_scaled_div_by_zero
[14:07:00] [PASSED] drm_test_rect_clip_scaled_not_clipped
[14:07:00] [PASSED] drm_test_rect_clip_scaled_clipped
[14:07:00] [PASSED] drm_test_rect_clip_scaled_signed_vs_unsigned
[14:07:00] ================= drm_test_rect_intersect =================
[14:07:00] [PASSED] top-left x bottom-right: 2x2+1+1 x 2x2+0+0
[14:07:00] [PASSED] top-right x bottom-left: 2x2+0+0 x 2x2+1-1
[14:07:00] [PASSED] bottom-left x top-right: 2x2+1-1 x 2x2+0+0
[14:07:00] [PASSED] bottom-right x top-left: 2x2+0+0 x 2x2+1+1
[14:07:00] [PASSED] right x left: 2x1+0+0 x 3x1+1+0
[14:07:00] [PASSED] left x right: 3x1+1+0 x 2x1+0+0
[14:07:00] [PASSED] up x bottom: 1x2+0+0 x 1x3+0-1
[14:07:00] [PASSED] bottom x up: 1x3+0-1 x 1x2+0+0
[14:07:00] [PASSED] touching corner: 1x1+0+0 x 2x2+1+1
[14:07:00] [PASSED] touching side: 1x1+0+0 x 1x1+1+0
[14:07:00] [PASSED] equal rects: 2x2+0+0 x 2x2+0+0
[14:07:00] [PASSED] inside another: 2x2+0+0 x 1x1+1+1
[14:07:00] [PASSED] far away: 1x1+0+0 x 1x1+3+6
[14:07:00] [PASSED] points intersecting: 0x0+5+10 x 0x0+5+10
[14:07:00] [PASSED] points not intersecting: 0x0+0+0 x 0x0+5+10
[14:07:00] ============= [PASSED] drm_test_rect_intersect =============
[14:07:00] ================ drm_test_rect_calc_hscale ================
[14:07:00] [PASSED] normal use
[14:07:00] [PASSED] out of max range
[14:07:00] [PASSED] out of min range
[14:07:00] [PASSED] zero dst
[14:07:00] [PASSED] negative src
[14:07:00] [PASSED] negative dst
[14:07:00] ============ [PASSED] drm_test_rect_calc_hscale ============
[14:07:00] ================ drm_test_rect_calc_vscale ================
[14:07:00] [PASSED] normal use
[14:07:00] [PASSED] out of max range
[14:07:00] [PASSED] out of min range
[14:07:00] [PASSED] zero dst
[14:07:00] [PASSED] negative src
[14:07:00] [PASSED] negative dst
[14:07:00] ============ [PASSED] drm_test_rect_calc_vscale ============
[14:07:00] ================== drm_test_rect_rotate ===================
[14:07:00] [PASSED] reflect-x
[14:07:00] [PASSED] reflect-y
[14:07:00] [PASSED] rotate-0
[14:07:00] [PASSED] rotate-90
[14:07:00] [PASSED] rotate-180
[14:07:00] [PASSED] rotate-270
[14:07:00] ============== [PASSED] drm_test_rect_rotate ===============
[14:07:00] ================ drm_test_rect_rotate_inv =================
[14:07:00] [PASSED] reflect-x
[14:07:00] [PASSED] reflect-y
[14:07:00] [PASSED] rotate-0
[14:07:00] [PASSED] rotate-90
[14:07:00] [PASSED] rotate-180
[14:07:00] [PASSED] rotate-270
[14:07:00] ============ [PASSED] drm_test_rect_rotate_inv =============
[14:07:00] ==================== [PASSED] drm_rect =====================
[14:07:00] ============================================================
[14:07:00] Testing complete. Ran 417 tests: passed: 417
[14:07:00] Elapsed time: 23.055s total, 1.712s configuring, 21.194s building, 0.147s running
+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel
^ permalink raw reply [flat|nested] 16+ messages in thread* ✓ CI.Build: success for drm/xe: Allow migrate vm gpu submissions from reclaim context
2024-05-27 13:59 [PATCH v4 0/5] drm/xe: Allow migrate vm gpu submissions from reclaim context Thomas Hellström
` (7 preceding siblings ...)
2024-05-27 14:07 ` ✓ CI.KUnit: " Patchwork
@ 2024-05-27 14:18 ` Patchwork
2024-05-27 14:19 ` ✗ CI.Hooks: failure " Patchwork
` (3 subsequent siblings)
12 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2024-05-27 14:18 UTC (permalink / raw)
To: Thomas Hellström; +Cc: intel-xe
== Series Details ==
Series: drm/xe: Allow migrate vm gpu submissions from reclaim context
URL : https://patchwork.freedesktop.org/series/134087/
State : success
== Summary ==
lib/modules/6.10.0-rc1-xe/kernel/sound/core/seq/
lib/modules/6.10.0-rc1-xe/kernel/sound/core/seq/snd-seq.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/core/snd-seq-device.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/core/snd-hwdep.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/core/snd.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/core/snd-pcm.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/core/snd-compress.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/core/snd-timer.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soundcore.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/intel/
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/intel/atom/
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/intel/atom/snd-soc-sst-atom-hifi2-platform.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/intel/atom/sst/
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/intel/atom/sst/snd-intel-sst-acpi.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/intel/atom/sst/snd-intel-sst-core.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/intel/common/
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/intel/common/snd-soc-acpi-intel-match.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/amd/
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/amd/snd-acp-config.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/intel/
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/intel/snd-sof-pci-intel-tgl.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/intel/snd-sof-intel-hda-mlink.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/intel/snd-sof-pci-intel-cnl.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/intel/snd-sof-pci-intel-lnl.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/intel/snd-sof-intel-hda-common.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/intel/snd-sof-intel-hda-generic.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/intel/snd-sof-intel-hda.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/intel/snd-sof-pci-intel-mtl.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/amd/
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/amd/snd-sof-amd-renoir.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/amd/snd-sof-amd-acp.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/snd-sof-utils.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/snd-sof-pci.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/snd-sof.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/snd-sof-probes.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/xtensa/
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/sof/xtensa/snd-sof-xtensa-dsp.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/snd-soc-core.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/snd-soc-acpi.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/codecs/
lib/modules/6.10.0-rc1-xe/kernel/sound/soc/codecs/snd-soc-hdac-hda.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/hda/
lib/modules/6.10.0-rc1-xe/kernel/sound/hda/snd-intel-sdw-acpi.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/hda/ext/
lib/modules/6.10.0-rc1-xe/kernel/sound/hda/ext/snd-hda-ext-core.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/hda/snd-intel-dspcfg.ko
lib/modules/6.10.0-rc1-xe/kernel/sound/hda/snd-hda-core.ko
lib/modules/6.10.0-rc1-xe/kernel/arch/
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/kernel/
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/kernel/msr.ko
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/kernel/cpuid.ko
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/crypto/
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/crypto/sha512-ssse3.ko
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/crypto/crct10dif-pclmul.ko
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/crypto/ghash-clmulni-intel.ko
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/crypto/sha1-ssse3.ko
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/crypto/crc32-pclmul.ko
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/crypto/sha256-ssse3.ko
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/crypto/aesni-intel.ko
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/crypto/polyval-clmulni.ko
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/events/
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/events/intel/
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/events/intel/intel-cstate.ko
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/events/rapl.ko
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/kvm/
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/kvm/kvm.ko
lib/modules/6.10.0-rc1-xe/kernel/arch/x86/kvm/kvm-intel.ko
lib/modules/6.10.0-rc1-xe/kernel/crypto/
lib/modules/6.10.0-rc1-xe/kernel/crypto/crypto_simd.ko
lib/modules/6.10.0-rc1-xe/kernel/crypto/cmac.ko
lib/modules/6.10.0-rc1-xe/kernel/crypto/ccm.ko
lib/modules/6.10.0-rc1-xe/kernel/crypto/cryptd.ko
lib/modules/6.10.0-rc1-xe/kernel/crypto/polyval-generic.ko
lib/modules/6.10.0-rc1-xe/kernel/crypto/async_tx/
lib/modules/6.10.0-rc1-xe/kernel/crypto/async_tx/async_xor.ko
lib/modules/6.10.0-rc1-xe/kernel/crypto/async_tx/async_tx.ko
lib/modules/6.10.0-rc1-xe/kernel/crypto/async_tx/async_memcpy.ko
lib/modules/6.10.0-rc1-xe/kernel/crypto/async_tx/async_pq.ko
lib/modules/6.10.0-rc1-xe/kernel/crypto/async_tx/async_raid6_recov.ko
lib/modules/6.10.0-rc1-xe/build
lib/modules/6.10.0-rc1-xe/modules.alias.bin
lib/modules/6.10.0-rc1-xe/modules.builtin
lib/modules/6.10.0-rc1-xe/modules.softdep
lib/modules/6.10.0-rc1-xe/modules.alias
lib/modules/6.10.0-rc1-xe/modules.order
lib/modules/6.10.0-rc1-xe/modules.symbols
lib/modules/6.10.0-rc1-xe/modules.dep.bin
+ mv kernel-nodebug.tar.gz ..
+ cd ..
+ rm -rf archive
++ date +%s
+ echo -e '\e[0Ksection_end:1716819514:package_x86_64_nodebug\r\e[0K'
+ sync
^[[0Ksection_end:1716819514:package_x86_64_nodebug
^[[0K
+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel
^ permalink raw reply [flat|nested] 16+ messages in thread* ✗ CI.Hooks: failure for drm/xe: Allow migrate vm gpu submissions from reclaim context
2024-05-27 13:59 [PATCH v4 0/5] drm/xe: Allow migrate vm gpu submissions from reclaim context Thomas Hellström
` (8 preceding siblings ...)
2024-05-27 14:18 ` ✓ CI.Build: " Patchwork
@ 2024-05-27 14:19 ` Patchwork
2024-05-27 14:20 ` ✓ CI.checksparse: success " Patchwork
` (2 subsequent siblings)
12 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2024-05-27 14:19 UTC (permalink / raw)
To: Thomas Hellström; +Cc: intel-xe
== Series Details ==
Series: drm/xe: Allow migrate vm gpu submissions from reclaim context
URL : https://patchwork.freedesktop.org/series/134087/
State : failure
== Summary ==
run-parts: executing /workspace/ci/hooks/00-showenv
+ export
+ grep -Ei '(^|\W)CI_'
declare -x CI_KERNEL_BUILD_DIR="/workspace/kernel/build64-default"
declare -x CI_KERNEL_SRC_DIR="/workspace/kernel"
declare -x CI_TOOLS_SRC_DIR="/workspace/ci"
declare -x CI_WORKSPACE_DIR="/workspace"
run-parts: executing /workspace/ci/hooks/10-build-W1
+ SRC_DIR=/workspace/kernel
+ RESTORE_DISPLAY_CONFIG=0
+ '[' -n /workspace/kernel/build64-default ']'
+ BUILD_DIR=/workspace/kernel/build64-default
+ cd /workspace/kernel
++ nproc
+ make -j48 O=/workspace/kernel/build64-default modules_prepare
make[1]: Entering directory '/workspace/kernel/build64-default'
GEN Makefile
UPD include/generated/compile.h
UPD include/config/kernel.release
mkdir -p /workspace/kernel/build64-default/tools/objtool && make O=/workspace/kernel/build64-default subdir=tools/objtool --no-print-directory -C objtool
UPD include/generated/utsrelease.h
HOSTCC /workspace/kernel/build64-default/tools/objtool/fixdep.o
CALL ../scripts/checksyscalls.sh
HOSTLD /workspace/kernel/build64-default/tools/objtool/fixdep-in.o
LINK /workspace/kernel/build64-default/tools/objtool/fixdep
INSTALL libsubcmd_headers
CC /workspace/kernel/build64-default/tools/objtool/libsubcmd/exec-cmd.o
CC /workspace/kernel/build64-default/tools/objtool/libsubcmd/help.o
CC /workspace/kernel/build64-default/tools/objtool/libsubcmd/pager.o
CC /workspace/kernel/build64-default/tools/objtool/libsubcmd/parse-options.o
CC /workspace/kernel/build64-default/tools/objtool/libsubcmd/run-command.o
CC /workspace/kernel/build64-default/tools/objtool/libsubcmd/sigchain.o
CC /workspace/kernel/build64-default/tools/objtool/libsubcmd/subcmd-config.o
LD /workspace/kernel/build64-default/tools/objtool/libsubcmd/libsubcmd-in.o
AR /workspace/kernel/build64-default/tools/objtool/libsubcmd/libsubcmd.a
CC /workspace/kernel/build64-default/tools/objtool/weak.o
CC /workspace/kernel/build64-default/tools/objtool/check.o
CC /workspace/kernel/build64-default/tools/objtool/special.o
CC /workspace/kernel/build64-default/tools/objtool/builtin-check.o
CC /workspace/kernel/build64-default/tools/objtool/elf.o
CC /workspace/kernel/build64-default/tools/objtool/objtool.o
CC /workspace/kernel/build64-default/tools/objtool/orc_gen.o
CC /workspace/kernel/build64-default/tools/objtool/orc_dump.o
CC /workspace/kernel/build64-default/tools/objtool/libstring.o
CC /workspace/kernel/build64-default/tools/objtool/libctype.o
CC /workspace/kernel/build64-default/tools/objtool/str_error_r.o
CC /workspace/kernel/build64-default/tools/objtool/librbtree.o
CC /workspace/kernel/build64-default/tools/objtool/arch/x86/special.o
CC /workspace/kernel/build64-default/tools/objtool/arch/x86/decode.o
CC /workspace/kernel/build64-default/tools/objtool/arch/x86/orc.o
LD /workspace/kernel/build64-default/tools/objtool/arch/x86/objtool-in.o
LD /workspace/kernel/build64-default/tools/objtool/objtool-in.o
LINK /workspace/kernel/build64-default/tools/objtool/objtool
make[1]: Leaving directory '/workspace/kernel/build64-default'
++ nproc
+ make -j48 O=/workspace/kernel/build64-default M=drivers/gpu/drm/xe W=1
make[1]: Entering directory '/workspace/kernel/build64-default'
../scripts/Makefile.build:41: drivers/gpu/drm/xe/Makefile: No such file or directory
make[3]: *** No rule to make target 'drivers/gpu/drm/xe/Makefile'. Stop.
make[2]: *** [/workspace/kernel/Makefile:1934: drivers/gpu/drm/xe] Error 2
make[1]: *** [/workspace/kernel/Makefile:240: __sub-make] Error 2
make[1]: Leaving directory '/workspace/kernel/build64-default'
make: *** [Makefile:240: __sub-make] Error 2
run-parts: /workspace/ci/hooks/10-build-W1 exited with return code 2
^ permalink raw reply [flat|nested] 16+ messages in thread* ✓ CI.checksparse: success for drm/xe: Allow migrate vm gpu submissions from reclaim context
2024-05-27 13:59 [PATCH v4 0/5] drm/xe: Allow migrate vm gpu submissions from reclaim context Thomas Hellström
` (9 preceding siblings ...)
2024-05-27 14:19 ` ✗ CI.Hooks: failure " Patchwork
@ 2024-05-27 14:20 ` Patchwork
2024-05-27 14:43 ` ✓ CI.BAT: " Patchwork
2024-05-27 15:35 ` ✗ CI.FULL: failure " Patchwork
12 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2024-05-27 14:20 UTC (permalink / raw)
To: Thomas Hellström; +Cc: intel-xe
== Series Details ==
Series: drm/xe: Allow migrate vm gpu submissions from reclaim context
URL : https://patchwork.freedesktop.org/series/134087/
State : success
== Summary ==
+ trap cleanup EXIT
+ KERNEL=/kernel
+ MT=/root/linux/maintainer-tools
+ git clone https://gitlab.freedesktop.org/drm/maintainer-tools /root/linux/maintainer-tools
Cloning into '/root/linux/maintainer-tools'...
warning: redirecting to https://gitlab.freedesktop.org/drm/maintainer-tools.git/
+ make -C /root/linux/maintainer-tools
make: Entering directory '/root/linux/maintainer-tools'
cc -O2 -g -Wextra -o remap-log remap-log.c
make: Leaving directory '/root/linux/maintainer-tools'
+ cd /kernel
+ git config --global --add safe.directory /kernel
+ /root/linux/maintainer-tools/dim sparse --fast f2c37d7fd878c82ea57075948d614f60a168128c
Sparse version: 0.6.1 (Ubuntu: 0.6.1-2build1)
Fast mode used, each commit won't be checked separately.
Okay!
+ cleanup
++ stat -c %u:%g /kernel
+ chown -R 1003:1003 /kernel
^ permalink raw reply [flat|nested] 16+ messages in thread* ✓ CI.BAT: success for drm/xe: Allow migrate vm gpu submissions from reclaim context
2024-05-27 13:59 [PATCH v4 0/5] drm/xe: Allow migrate vm gpu submissions from reclaim context Thomas Hellström
` (10 preceding siblings ...)
2024-05-27 14:20 ` ✓ CI.checksparse: success " Patchwork
@ 2024-05-27 14:43 ` Patchwork
2024-05-27 15:35 ` ✗ CI.FULL: failure " Patchwork
12 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2024-05-27 14:43 UTC (permalink / raw)
To: Thomas Hellström; +Cc: intel-xe
[-- Attachment #1: Type: text/plain, Size: 2564 bytes --]
== Series Details ==
Series: drm/xe: Allow migrate vm gpu submissions from reclaim context
URL : https://patchwork.freedesktop.org/series/134087/
State : success
== Summary ==
CI Bug Log - changes from xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c_BAT -> xe-pw-134087v1_BAT
====================================================
Summary
-------
**SUCCESS**
No regressions found.
Participating hosts (5 -> 5)
------------------------------
No changes in participating hosts
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in xe-pw-134087v1_BAT:
### IGT changes ###
#### Suppressed ####
The following results come from untrusted machines, tests, or statuses.
They do not affect the overall result.
* igt@kms_cursor_legacy@basic-flip-before-cursor-varying-size:
- {bat-lnl-1}: [PASS][1] -> [FAIL][2]
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c/bat-lnl-1/igt@kms_cursor_legacy@basic-flip-before-cursor-varying-size.html
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/bat-lnl-1/igt@kms_cursor_legacy@basic-flip-before-cursor-varying-size.html
Known issues
------------
Here are the changes found in xe-pw-134087v1_BAT that come from known issues:
### IGT changes ###
#### Possible fixes ####
* igt@xe_exec_threads@threads-mixed-userptr-invalidate:
- bat-dg2-oem2: [ABORT][3] ([Intel XE#1908] / [Intel XE#1939]) -> [PASS][4]
[3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c/bat-dg2-oem2/igt@xe_exec_threads@threads-mixed-userptr-invalidate.html
[4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/bat-dg2-oem2/igt@xe_exec_threads@threads-mixed-userptr-invalidate.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[Intel XE#1908]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1908
[Intel XE#1939]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1939
Build changes
-------------
* Linux: xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c -> xe-pw-134087v1
IGT_7871: 1d7b961235e345db20933c057f265898e2e96fd2 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c: f2c37d7fd878c82ea57075948d614f60a168128c
xe-pw-134087v1: 134087v1
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/index.html
[-- Attachment #2: Type: text/html, Size: 3163 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread* ✗ CI.FULL: failure for drm/xe: Allow migrate vm gpu submissions from reclaim context
2024-05-27 13:59 [PATCH v4 0/5] drm/xe: Allow migrate vm gpu submissions from reclaim context Thomas Hellström
` (11 preceding siblings ...)
2024-05-27 14:43 ` ✓ CI.BAT: " Patchwork
@ 2024-05-27 15:35 ` Patchwork
2024-05-27 15:53 ` Thomas Hellström
12 siblings, 1 reply; 16+ messages in thread
From: Patchwork @ 2024-05-27 15:35 UTC (permalink / raw)
To: Thomas Hellström; +Cc: intel-xe
[-- Attachment #1: Type: text/plain, Size: 33551 bytes --]
== Series Details ==
Series: drm/xe: Allow migrate vm gpu submissions from reclaim context
URL : https://patchwork.freedesktop.org/series/134087/
State : failure
== Summary ==
CI Bug Log - changes from xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c_full -> xe-pw-134087v1_full
====================================================
Summary
-------
**FAILURE**
Serious unknown changes coming with xe-pw-134087v1_full absolutely need to be
verified manually.
If you think the reported changes have nothing to do with the changes
introduced in xe-pw-134087v1_full, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them
to document this new failure mode, which will reduce false positives in CI.
Participating hosts (3 -> 3)
------------------------------
No changes in participating hosts
Possible new issues
-------------------
Here are the unknown changes that may have been introduced in xe-pw-134087v1_full:
### IGT changes ###
#### Possible regressions ####
* igt@xe_pm@d3hot-mmap-system:
- shard-adlp: NOTRUN -> [FAIL][1]
[1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-2/igt@xe_pm@d3hot-mmap-system.html
Known issues
------------
Here are the changes found in xe-pw-134087v1_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@kms_addfb_basic@invalid-smem-bo-on-discrete:
- shard-adlp: NOTRUN -> [SKIP][2] ([Intel XE#1201] / [Intel XE#660])
[2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@kms_addfb_basic@invalid-smem-bo-on-discrete.html
* igt@kms_big_fb@4-tiled-64bpp-rotate-270:
- shard-adlp: NOTRUN -> [SKIP][3] ([Intel XE#1124] / [Intel XE#1201]) +18 other tests skip
[3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@kms_big_fb@4-tiled-64bpp-rotate-270.html
* igt@kms_big_fb@x-tiled-64bpp-rotate-180:
- shard-adlp: NOTRUN -> [FAIL][4] ([Intel XE#1874]) +7 other tests fail
[4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-1/igt@kms_big_fb@x-tiled-64bpp-rotate-180.html
* igt@kms_big_fb@y-tiled-32bpp-rotate-270:
- shard-adlp: NOTRUN -> [SKIP][5] ([Intel XE#1201] / [Intel XE#316]) +9 other tests skip
[5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@kms_big_fb@y-tiled-32bpp-rotate-270.html
* igt@kms_bw@linear-tiling-4-displays-2560x1440p:
- shard-adlp: NOTRUN -> [SKIP][6] ([Intel XE#1201] / [Intel XE#367]) +2 other tests skip
[6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@kms_bw@linear-tiling-4-displays-2560x1440p.html
* igt@kms_ccs@crc-primary-basic-4-tiled-mtl-rc-ccs-cc@pipe-a-hdmi-a-1:
- shard-adlp: NOTRUN -> [SKIP][7] ([Intel XE#1201] / [Intel XE#787]) +74 other tests skip
[7]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@kms_ccs@crc-primary-basic-4-tiled-mtl-rc-ccs-cc@pipe-a-hdmi-a-1.html
* igt@kms_ccs@crc-primary-basic-4-tiled-mtl-rc-ccs@pipe-d-hdmi-a-1:
- shard-adlp: NOTRUN -> [SKIP][8] ([Intel XE#1201] / [Intel XE#455] / [Intel XE#787]) +49 other tests skip
[8]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@kms_ccs@crc-primary-basic-4-tiled-mtl-rc-ccs@pipe-d-hdmi-a-1.html
* igt@kms_cdclk@mode-transition-all-outputs:
- shard-adlp: NOTRUN -> [SKIP][9] ([Intel XE#1201] / [Intel XE#314])
[9]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@kms_cdclk@mode-transition-all-outputs.html
* igt@kms_chamelium_color@gamma:
- shard-adlp: NOTRUN -> [SKIP][10] ([Intel XE#1201] / [Intel XE#306]) +3 other tests skip
[10]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@kms_chamelium_color@gamma.html
* igt@kms_chamelium_frames@hdmi-crc-nonplanar-formats:
- shard-adlp: NOTRUN -> [SKIP][11] ([Intel XE#1201] / [Intel XE#373]) +11 other tests skip
[11]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-2/igt@kms_chamelium_frames@hdmi-crc-nonplanar-formats.html
* igt@kms_content_protection@dp-mst-type-0:
- shard-adlp: NOTRUN -> [SKIP][12] ([Intel XE#1201] / [Intel XE#307]) +1 other test skip
[12]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@kms_content_protection@dp-mst-type-0.html
* igt@kms_cursor_crc@cursor-offscreen-512x170:
- shard-adlp: NOTRUN -> [SKIP][13] ([Intel XE#1201] / [Intel XE#308]) +2 other tests skip
[13]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-1/igt@kms_cursor_crc@cursor-offscreen-512x170.html
* igt@kms_cursor_crc@cursor-suspend@pipe-a-hdmi-a-1:
- shard-adlp: NOTRUN -> [DMESG-WARN][14] ([Intel XE#1191] / [Intel XE#1214] / [Intel XE#1608]) +5 other tests dmesg-warn
[14]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@kms_cursor_crc@cursor-suspend@pipe-a-hdmi-a-1.html
* igt@kms_cursor_legacy@2x-cursor-vs-flip-atomic:
- shard-adlp: NOTRUN -> [SKIP][15] ([Intel XE#1201] / [Intel XE#309]) +7 other tests skip
[15]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@kms_cursor_legacy@2x-cursor-vs-flip-atomic.html
* igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions:
- shard-adlp: NOTRUN -> [SKIP][16] ([Intel XE#1201] / [Intel XE#323])
[16]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@kms_cursor_legacy@short-busy-flip-before-cursor-atomic-transitions.html
* igt@kms_feature_discovery@display-3x:
- shard-adlp: NOTRUN -> [SKIP][17] ([Intel XE#1201] / [Intel XE#703])
[17]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@kms_feature_discovery@display-3x.html
* igt@kms_feature_discovery@display-4x:
- shard-adlp: NOTRUN -> [SKIP][18] ([Intel XE#1138] / [Intel XE#1201])
[18]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@kms_feature_discovery@display-4x.html
* igt@kms_feature_discovery@psr1:
- shard-adlp: NOTRUN -> [SKIP][19] ([Intel XE#1135] / [Intel XE#1201]) +1 other test skip
[19]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-2/igt@kms_feature_discovery@psr1.html
* igt@kms_flip@2x-plain-flip-interruptible:
- shard-adlp: NOTRUN -> [SKIP][20] ([Intel XE#1201] / [Intel XE#310]) +11 other tests skip
[20]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@kms_flip@2x-plain-flip-interruptible.html
* igt@kms_flip@flip-vs-suspend-interruptible@b-hdmi-a1:
- shard-adlp: NOTRUN -> [DMESG-WARN][21] ([Intel XE#1214] / [Intel XE#1608]) +5 other tests dmesg-warn
[21]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-2/igt@kms_flip@flip-vs-suspend-interruptible@b-hdmi-a1.html
* igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-upscaling@pipe-a-valid-mode:
- shard-adlp: NOTRUN -> [ABORT][22] ([Intel XE#1939]) +2 other tests abort
[22]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@kms_flip_scaled_crc@flip-64bpp-xtile-to-32bpp-xtile-upscaling@pipe-a-valid-mode.html
* igt@kms_frontbuffer_tracking@drrs-2p-pri-indfb-multidraw:
- shard-adlp: NOTRUN -> [SKIP][23] ([Intel XE#1201] / [Intel XE#656]) +66 other tests skip
[23]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-1/igt@kms_frontbuffer_tracking@drrs-2p-pri-indfb-multidraw.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-blt:
- shard-adlp: NOTRUN -> [FAIL][24] ([Intel XE#1861])
[24]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-pri-shrfb-draw-blt.html
* igt@kms_frontbuffer_tracking@fbc-suspend:
- shard-adlp: NOTRUN -> [INCOMPLETE][25] ([Intel XE#1195] / [Intel XE#927])
[25]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-1/igt@kms_frontbuffer_tracking@fbc-suspend.html
* igt@kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-cur-indfb-draw-blt:
- shard-adlp: NOTRUN -> [SKIP][26] ([Intel XE#1201] / [Intel XE#651]) +19 other tests skip
[26]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@kms_frontbuffer_tracking@fbcdrrs-1p-primscrn-cur-indfb-draw-blt.html
* igt@kms_frontbuffer_tracking@plane-fbc-rte:
- shard-adlp: NOTRUN -> [SKIP][27] ([Intel XE#1158] / [Intel XE#1201])
[27]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@kms_frontbuffer_tracking@plane-fbc-rte.html
* igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-mmap-wc:
- shard-adlp: NOTRUN -> [SKIP][28] ([Intel XE#1201] / [Intel XE#653]) +20 other tests skip
[28]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-1/igt@kms_frontbuffer_tracking@psr-1p-primscrn-cur-indfb-draw-mmap-wc.html
* igt@kms_multipipe_modeset@basic-max-pipe-crc-check:
- shard-adlp: NOTRUN -> [SKIP][29] ([Intel XE#1201] / [Intel XE#356])
[29]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-2/igt@kms_multipipe_modeset@basic-max-pipe-crc-check.html
* igt@kms_plane@pixel-format-source-clamping:
- shard-adlp: NOTRUN -> [FAIL][30] ([Intel XE#1331]) +2 other tests fail
[30]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-2/igt@kms_plane@pixel-format-source-clamping.html
* igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-1:
- shard-adlp: NOTRUN -> [FAIL][31] ([Intel XE#361]) +1 other test fail
[31]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@kms_plane_scaling@intel-max-src-size@pipe-a-hdmi-a-1.html
* igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25:
- shard-adlp: NOTRUN -> [SKIP][32] ([Intel XE#1201] / [Intel XE#305] / [Intel XE#455]) +1 other test skip
[32]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25.html
* igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25@pipe-b-hdmi-a-1:
- shard-adlp: NOTRUN -> [SKIP][33] ([Intel XE#1201] / [Intel XE#305]) +2 other tests skip
[33]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@kms_plane_scaling@planes-upscale-20x20-downscale-factor-0-25@pipe-b-hdmi-a-1.html
* igt@kms_pm_backlight@bad-brightness:
- shard-adlp: NOTRUN -> [SKIP][34] ([Intel XE#1201] / [Intel XE#870]) +2 other tests skip
[34]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-2/igt@kms_pm_backlight@bad-brightness.html
* igt@kms_pm_rpm@dpms-lpsp:
- shard-adlp: NOTRUN -> [SKIP][35] ([Intel XE#1201] / [Intel XE#1211])
[35]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-2/igt@kms_pm_rpm@dpms-lpsp.html
* igt@kms_psr2_sf@fbc-overlay-plane-move-continuous-sf:
- shard-adlp: NOTRUN -> [SKIP][36] ([Intel XE#1201]) +8 other tests skip
[36]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@kms_psr2_sf@fbc-overlay-plane-move-continuous-sf.html
* igt@kms_psr2_su@page_flip-nv12:
- shard-adlp: NOTRUN -> [SKIP][37] ([Intel XE#1122] / [Intel XE#1201]) +1 other test skip
[37]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-2/igt@kms_psr2_su@page_flip-nv12.html
* igt@kms_psr@psr2-basic:
- shard-adlp: NOTRUN -> [SKIP][38] ([Intel XE#1201] / [Intel XE#929]) +21 other tests skip
[38]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-1/igt@kms_psr@psr2-basic.html
* igt@kms_psr_stress_test@invalidate-primary-flip-overlay:
- shard-adlp: NOTRUN -> [SKIP][39] ([Intel XE#1149] / [Intel XE#1201])
[39]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-2/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html
* igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0:
- shard-adlp: NOTRUN -> [SKIP][40] ([Intel XE#1127] / [Intel XE#1201])
[40]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@kms_rotation_crc@primary-yf-tiled-reflect-x-0.html
* igt@kms_rotation_crc@sprite-rotation-90:
- shard-adlp: NOTRUN -> [SKIP][41] ([Intel XE#1201] / [Intel XE#327]) +2 other tests skip
[41]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@kms_rotation_crc@sprite-rotation-90.html
* igt@kms_sysfs_edid_timing:
- shard-adlp: NOTRUN -> [FAIL][42] ([Intel XE#1174])
[42]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@kms_sysfs_edid_timing.html
* igt@kms_vblank@ts-continuation-dpms-suspend@pipe-a-hdmi-a-1:
- shard-adlp: NOTRUN -> [DMESG-WARN][43] ([Intel XE#1191] / [Intel XE#1214]) +1 other test dmesg-warn
[43]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@kms_vblank@ts-continuation-dpms-suspend@pipe-a-hdmi-a-1.html
* igt@kms_vrr@flip-suspend:
- shard-adlp: NOTRUN -> [SKIP][44] ([Intel XE#1201] / [Intel XE#455]) +34 other tests skip
[44]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@kms_vrr@flip-suspend.html
* igt@kms_writeback@writeback-fb-id-xrgb2101010:
- shard-adlp: NOTRUN -> [SKIP][45] ([Intel XE#1201] / [Intel XE#756]) +1 other test skip
[45]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@kms_writeback@writeback-fb-id-xrgb2101010.html
* igt@sriov_basic@bind-unbind-vf:
- shard-adlp: NOTRUN -> [SKIP][46] ([Intel XE#1201] / [Intel XE#1932])
[46]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@sriov_basic@bind-unbind-vf.html
* igt@xe_ccs@suspend-resume:
- shard-adlp: NOTRUN -> [SKIP][47] ([Intel XE#1201] / [Intel XE#455] / [Intel XE#488]) +1 other test skip
[47]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-2/igt@xe_ccs@suspend-resume.html
* igt@xe_create@create-big-vram:
- shard-adlp: NOTRUN -> [SKIP][48] ([Intel XE#1062] / [Intel XE#1201])
[48]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@xe_create@create-big-vram.html
* igt@xe_evict@evict-small-multi-vm-cm:
- shard-adlp: NOTRUN -> [SKIP][49] ([Intel XE#1201] / [Intel XE#261] / [Intel XE#688]) +5 other tests skip
[49]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@xe_evict@evict-small-multi-vm-cm.html
* igt@xe_evict@evict-threads-large:
- shard-adlp: NOTRUN -> [SKIP][50] ([Intel XE#1201] / [Intel XE#261]) +6 other tests skip
[50]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@xe_evict@evict-threads-large.html
* igt@xe_evict_ccs@evict-overcommit-standalone-nofree-samefd:
- shard-adlp: NOTRUN -> [SKIP][51] ([Intel XE#1201] / [Intel XE#688]) +3 other tests skip
[51]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-2/igt@xe_evict_ccs@evict-overcommit-standalone-nofree-samefd.html
* igt@xe_exec_basic@multigpu-many-execqueues-many-vm-null-defer-mmap:
- shard-adlp: NOTRUN -> [SKIP][52] ([Intel XE#1201] / [Intel XE#1392]) +16 other tests skip
[52]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@xe_exec_basic@multigpu-many-execqueues-many-vm-null-defer-mmap.html
* igt@xe_exec_fault_mode@twice-bindexecqueue-userptr-imm:
- shard-adlp: NOTRUN -> [SKIP][53] ([Intel XE#1201] / [Intel XE#288]) +40 other tests skip
[53]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@xe_exec_fault_mode@twice-bindexecqueue-userptr-imm.html
* igt@xe_exec_reset@gt-reset-stress:
- shard-adlp: NOTRUN -> [DMESG-WARN][54] ([Intel XE#1214] / [Intel XE#1638])
[54]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@xe_exec_reset@gt-reset-stress.html
* igt@xe_gt_freq@freq_reset_multiple:
- shard-adlp: NOTRUN -> [DMESG-WARN][55] ([Intel XE#1214]) +1 other test dmesg-warn
[55]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-2/igt@xe_gt_freq@freq_reset_multiple.html
* igt@xe_live_ktest@xe_migrate:
- shard-adlp: NOTRUN -> [SKIP][56] ([Intel XE#1192] / [Intel XE#1201])
[56]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@xe_live_ktest@xe_migrate.html
* igt@xe_mmap@small-bar:
- shard-adlp: NOTRUN -> [SKIP][57] ([Intel XE#1201] / [Intel XE#512])
[57]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@xe_mmap@small-bar.html
* igt@xe_mmap@vram:
- shard-adlp: NOTRUN -> [SKIP][58] ([Intel XE#1008] / [Intel XE#1201])
[58]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@xe_mmap@vram.html
* igt@xe_module_load@load:
- shard-adlp: NOTRUN -> [SKIP][59] ([Intel XE#1201] / [Intel XE#378]) +1 other test skip
[59]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@xe_module_load@load.html
* igt@xe_pat@pat-index-xe2:
- shard-adlp: NOTRUN -> [SKIP][60] ([Intel XE#1201] / [Intel XE#977])
[60]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-1/igt@xe_pat@pat-index-xe2.html
* igt@xe_pm@d3cold-multiple-execs:
- shard-adlp: NOTRUN -> [SKIP][61] ([Intel XE#1201] / [Intel XE#366]) +1 other test skip
[61]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@xe_pm@d3cold-multiple-execs.html
* igt@xe_pm@s4-vm-bind-userptr:
- shard-adlp: [PASS][62] -> [DMESG-WARN][63] ([Intel XE#1214])
[62]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c/shard-adlp-6/igt@xe_pm@s4-vm-bind-userptr.html
[63]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@xe_pm@s4-vm-bind-userptr.html
* igt@xe_pm@vram-d3cold-threshold:
- shard-adlp: NOTRUN -> [SKIP][64] ([Intel XE#1201] / [Intel XE#579])
[64]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@xe_pm@vram-d3cold-threshold.html
* igt@xe_query@multigpu-query-uc-fw-version-huc:
- shard-adlp: NOTRUN -> [SKIP][65] ([Intel XE#1201] / [Intel XE#944]) +2 other tests skip
[65]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-1/igt@xe_query@multigpu-query-uc-fw-version-huc.html
#### Possible fixes ####
* igt@kms_async_flips@async-flip-with-page-flip-events@pipe-b-hdmi-a-1-x:
- shard-adlp: [DMESG-WARN][66] ([Intel XE#1214] / [Intel XE#324]) -> [PASS][67]
[66]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c/shard-adlp-1/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-b-hdmi-a-1-x.html
[67]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-1/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-b-hdmi-a-1-x.html
* igt@kms_async_flips@async-flip-with-page-flip-events@pipe-b-hdmi-a-1-y:
- shard-adlp: [DMESG-WARN][68] ([Intel XE#1033] / [Intel XE#1214]) -> [PASS][69] +1 other test pass
[68]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c/shard-adlp-1/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-b-hdmi-a-1-y.html
[69]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-1/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-b-hdmi-a-1-y.html
* igt@kms_big_fb@linear-8bpp-rotate-180:
- {shard-lnl}: [INCOMPLETE][70] -> [PASS][71]
[70]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c/shard-lnl-8/igt@kms_big_fb@linear-8bpp-rotate-180.html
[71]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-lnl-7/igt@kms_big_fb@linear-8bpp-rotate-180.html
* igt@kms_cursor_crc@cursor-suspend:
- {shard-lnl}: [DMESG-WARN][72] ([Intel XE#1830]) -> [PASS][73] +1 other test pass
[72]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c/shard-lnl-1/igt@kms_cursor_crc@cursor-suspend.html
[73]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-lnl-5/igt@kms_cursor_crc@cursor-suspend.html
* igt@kms_flip@plain-flip-fb-recreate:
- {shard-lnl}: [ABORT][74] ([Intel XE#1939]) -> [PASS][75] +3 other tests pass
[74]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c/shard-lnl-5/igt@kms_flip@plain-flip-fb-recreate.html
[75]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-lnl-5/igt@kms_flip@plain-flip-fb-recreate.html
* igt@xe_exec_threads@threads-bal-mixed-userptr-rebind:
- shard-adlp: [DMESG-FAIL][76] ([Intel XE#1069] / [Intel XE#1638]) -> [PASS][77]
[76]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c/shard-adlp-2/igt@xe_exec_threads@threads-bal-mixed-userptr-rebind.html
[77]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@xe_exec_threads@threads-bal-mixed-userptr-rebind.html
* igt@xe_pm@s4-d3hot-basic-exec:
- {shard-lnl}: [ABORT][78] ([Intel XE#1358] / [Intel XE#1607]) -> [PASS][79]
[78]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c/shard-lnl-2/igt@xe_pm@s4-d3hot-basic-exec.html
[79]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-lnl-6/igt@xe_pm@s4-d3hot-basic-exec.html
#### Warnings ####
* igt@kms_async_flips@async-flip-with-page-flip-events:
- shard-adlp: [DMESG-WARN][80] ([Intel XE#1033] / [Intel XE#1214] / [Intel XE#324]) -> [DMESG-WARN][81] ([Intel XE#1033] / [Intel XE#1214])
[80]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c/shard-adlp-1/igt@kms_async_flips@async-flip-with-page-flip-events.html
[81]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-1/igt@kms_async_flips@async-flip-with-page-flip-events.html
* igt@kms_async_flips@async-flip-with-page-flip-events@pipe-d-hdmi-a-1-x:
- shard-adlp: [DMESG-WARN][82] ([Intel XE#1214] / [Intel XE#324]) -> [DMESG-WARN][83] ([Intel XE#1033] / [Intel XE#1214])
[82]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c/shard-adlp-1/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-d-hdmi-a-1-x.html
[83]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-1/igt@kms_async_flips@async-flip-with-page-flip-events@pipe-d-hdmi-a-1-x.html
* igt@xe_pm@s2idle-exec-after:
- shard-adlp: [DMESG-WARN][84] ([Intel XE#1191] / [Intel XE#1214]) -> [INCOMPLETE][85] ([Intel XE#1044] / [Intel XE#1195] / [Intel XE#1358])
[84]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c/shard-adlp-6/igt@xe_pm@s2idle-exec-after.html
[85]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-9/igt@xe_pm@s2idle-exec-after.html
* igt@xe_pm@s2idle-vm-bind-unbind-all:
- shard-adlp: [DMESG-WARN][86] ([Intel XE#1214] / [Intel XE#1608]) -> [INCOMPLETE][87] ([Intel XE#1195] / [Intel XE#1694])
[86]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c/shard-adlp-8/igt@xe_pm@s2idle-vm-bind-unbind-all.html
[87]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-9/igt@xe_pm@s2idle-vm-bind-unbind-all.html
* igt@xe_pm@s3-mocs:
- shard-adlp: [INCOMPLETE][88] ([Intel XE#1195]) -> [DMESG-WARN][89] ([Intel XE#1214])
[88]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c/shard-adlp-1/igt@xe_pm@s3-mocs.html
[89]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@xe_pm@s3-mocs.html
* igt@xe_pm@s4-vm-bind-prefetch:
- shard-adlp: [DMESG-WARN][90] ([Intel XE#1214]) -> [ABORT][91] ([Intel XE#1794])
[90]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c/shard-adlp-8/igt@xe_pm@s4-vm-bind-prefetch.html
[91]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-9/igt@xe_pm@s4-vm-bind-prefetch.html
* igt@xe_pm@s4-vm-bind-unbind-all:
- shard-adlp: [ABORT][92] ([Intel XE#1794]) -> [DMESG-WARN][93] ([Intel XE#1214])
[92]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c/shard-adlp-9/igt@xe_pm@s4-vm-bind-unbind-all.html
[93]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-8/igt@xe_pm@s4-vm-bind-unbind-all.html
* igt@xe_pm_residency@gt-c6-freeze:
- shard-adlp: [INCOMPLETE][94] ([Intel XE#1195] / [Intel XE#1349]) -> [DMESG-WARN][95] ([Intel XE#1191] / [Intel XE#1214] / [Intel XE#1941])
[94]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c/shard-adlp-1/igt@xe_pm_residency@gt-c6-freeze.html
[95]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/shard-adlp-6/igt@xe_pm_residency@gt-c6-freeze.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[Intel XE#1008]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1008
[Intel XE#1033]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1033
[Intel XE#1044]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1044
[Intel XE#1062]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1062
[Intel XE#1069]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1069
[Intel XE#1122]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1122
[Intel XE#1124]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1124
[Intel XE#1125]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1125
[Intel XE#1127]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1127
[Intel XE#1135]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1135
[Intel XE#1138]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1138
[Intel XE#1149]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1149
[Intel XE#1152]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1152
[Intel XE#1158]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1158
[Intel XE#1174]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1174
[Intel XE#1191]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1191
[Intel XE#1192]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1192
[Intel XE#1195]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1195
[Intel XE#1201]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1201
[Intel XE#1211]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1211
[Intel XE#1214]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1214
[Intel XE#1330]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1330
[Intel XE#1331]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1331
[Intel XE#1349]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1349
[Intel XE#1358]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1358
[Intel XE#1392]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1392
[Intel XE#1397]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1397
[Intel XE#1399]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1399
[Intel XE#1401]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1401
[Intel XE#1406]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1406
[Intel XE#1407]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1407
[Intel XE#1413]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1413
[Intel XE#1420]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1420
[Intel XE#1421]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1421
[Intel XE#1424]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1424
[Intel XE#1428]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1428
[Intel XE#1435]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1435
[Intel XE#1437]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1437
[Intel XE#1446]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1446
[Intel XE#1488]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1488
[Intel XE#1512]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1512
[Intel XE#1607]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1607
[Intel XE#1608]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1608
[Intel XE#1638]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1638
[Intel XE#1659]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1659
[Intel XE#1694]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1694
[Intel XE#1745]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1745
[Intel XE#1760]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1760
[Intel XE#1794]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1794
[Intel XE#1830]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1830
[Intel XE#1861]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1861
[Intel XE#1874]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1874
[Intel XE#1908]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1908
[Intel XE#1932]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1932
[Intel XE#1939]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1939
[Intel XE#1941]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1941
[Intel XE#261]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/261
[Intel XE#288]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/288
[Intel XE#305]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/305
[Intel XE#306]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/306
[Intel XE#307]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/307
[Intel XE#308]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/308
[Intel XE#309]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/309
[Intel XE#310]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/310
[Intel XE#314]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/314
[Intel XE#316]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/316
[Intel XE#323]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/323
[Intel XE#324]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/324
[Intel XE#327]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/327
[Intel XE#352]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/352
[Intel XE#356]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/356
[Intel XE#361]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/361
[Intel XE#366]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/366
[Intel XE#367]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/367
[Intel XE#373]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/373
[Intel XE#374]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/374
[Intel XE#378]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/378
[Intel XE#455]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/455
[Intel XE#488]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/488
[Intel XE#498]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/498
[Intel XE#512]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/512
[Intel XE#560]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/560
[Intel XE#579]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/579
[Intel XE#584]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/584
[Intel XE#599]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/599
[Intel XE#651]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/651
[Intel XE#653]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/653
[Intel XE#656]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/656
[Intel XE#660]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/660
[Intel XE#688]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/688
[Intel XE#702]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/702
[Intel XE#703]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/703
[Intel XE#756]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/756
[Intel XE#787]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/787
[Intel XE#870]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/870
[Intel XE#927]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/927
[Intel XE#929]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/929
[Intel XE#944]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/944
[Intel XE#958]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/958
[Intel XE#977]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/977
Build changes
-------------
* Linux: xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c -> xe-pw-134087v1
IGT_7871: 1d7b961235e345db20933c057f265898e2e96fd2 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
xe-1348-f2c37d7fd878c82ea57075948d614f60a168128c: f2c37d7fd878c82ea57075948d614f60a168128c
xe-pw-134087v1: 134087v1
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-134087v1/index.html
[-- Attachment #2: Type: text/html, Size: 39976 bytes --]
^ permalink raw reply [flat|nested] 16+ messages in thread