* [PATCH v3] drm/xe/uapi: Uniform async vs sync handling
@ 2023-12-13 22:29 Matthew Brost
2023-12-13 22:35 ` ✓ CI.Patch_applied: success for drm/xe/uapi: Uniform async vs sync handling (rev3) Patchwork
` (8 more replies)
0 siblings, 9 replies; 14+ messages in thread
From: Matthew Brost @ 2023-12-13 22:29 UTC (permalink / raw)
To: intel-xe; +Cc: Francois Dugast, Rodrigo Vivi
Remove concept of async vs sync VM bind queues, rather make async vs
sync a per IOCTL choice. Since this is per IOCTL, it makes sense to have
a singular flag IOCTL rather than per VM bind op flag too. Add
DRM_XE_SYNCS_FLAG_WAIT_FOR_OP which is an input sync flag to support
this. Support this new flag for both the VM bind IOCTL only with a path
to support this for execs too.
v2: Add cookie, move sync wait outside of any locks.
v3: Skip bind operations if *cookie non-zero, check reserved bits zero
Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com>
Cc: Francois Dugast <francois.dugast@intel.com>
Signed-off-by: Matthew Brost <matthew.brost@intel.com>
---
drivers/gpu/drm/xe/xe_exec.c | 13 ++-
drivers/gpu/drm/xe/xe_exec_queue.c | 7 +-
drivers/gpu/drm/xe/xe_exec_queue_types.h | 2 -
drivers/gpu/drm/xe/xe_vm.c | 140 ++++++++++++-----------
drivers/gpu/drm/xe/xe_vm_types.h | 13 +--
include/uapi/drm/xe_drm.h | 65 +++++++----
6 files changed, 131 insertions(+), 109 deletions(-)
diff --git a/drivers/gpu/drm/xe/xe_exec.c b/drivers/gpu/drm/xe/xe_exec.c
index ba92e5619da3..af2b676c8eef 100644
--- a/drivers/gpu/drm/xe/xe_exec.c
+++ b/drivers/gpu/drm/xe/xe_exec.c
@@ -104,7 +104,7 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
struct xe_device *xe = to_xe_device(dev);
struct xe_file *xef = to_xe_file(file);
struct drm_xe_exec *args = data;
- struct drm_xe_sync __user *syncs_user = u64_to_user_ptr(args->syncs);
+ struct drm_xe_sync __user *syncs_user = u64_to_user_ptr(args->syncs.syncs);
u64 __user *addresses_user = u64_to_user_ptr(args->address);
struct xe_exec_queue *q;
struct xe_sync_entry *syncs = NULL;
@@ -120,7 +120,10 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
int err = 0;
if (XE_IOCTL_DBG(xe, args->extensions) ||
- XE_IOCTL_DBG(xe, args->pad[0] || args->pad[1] || args->pad[2]) ||
+ XE_IOCTL_DBG(xe, args->pad || args->pad2[0] || args->pad2[1] || args->pad2[2]) ||
+ XE_IOCTL_DBG(xe, args->syncs.flags) ||
+ XE_IOCTL_DBG(xe, args->syncs.cookie) ||
+ XE_IOCTL_DBG(xe, args->syncs.reserved[0] || args->syncs.reserved[1]) ||
XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1]))
return -EINVAL;
@@ -140,8 +143,8 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
goto err_exec_queue;
}
- if (args->num_syncs) {
- syncs = kcalloc(args->num_syncs, sizeof(*syncs), GFP_KERNEL);
+ if (args->syncs.num_syncs) {
+ syncs = kcalloc(args->syncs.num_syncs, sizeof(*syncs), GFP_KERNEL);
if (!syncs) {
err = -ENOMEM;
goto err_exec_queue;
@@ -150,7 +153,7 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
vm = q->vm;
- for (i = 0; i < args->num_syncs; i++) {
+ for (i = 0; i < args->syncs.num_syncs; i++) {
err = xe_sync_entry_parse(xe, xef, &syncs[num_syncs++],
&syncs_user[i], SYNC_PARSE_FLAG_EXEC |
(xe_vm_in_lr_mode(vm) ?
diff --git a/drivers/gpu/drm/xe/xe_exec_queue.c b/drivers/gpu/drm/xe/xe_exec_queue.c
index eeb9605dd45f..a25d67971fdd 100644
--- a/drivers/gpu/drm/xe/xe_exec_queue.c
+++ b/drivers/gpu/drm/xe/xe_exec_queue.c
@@ -625,10 +625,7 @@ int xe_exec_queue_create_ioctl(struct drm_device *dev, void *data,
if (XE_IOCTL_DBG(xe, eci[0].gt_id >= xe->info.gt_count))
return -EINVAL;
- if (eci[0].engine_class >= DRM_XE_ENGINE_CLASS_VM_BIND_ASYNC) {
- bool sync = eci[0].engine_class ==
- DRM_XE_ENGINE_CLASS_VM_BIND_SYNC;
-
+ if (eci[0].engine_class == DRM_XE_ENGINE_CLASS_VM_BIND) {
for_each_gt(gt, xe, id) {
struct xe_exec_queue *new;
@@ -654,8 +651,6 @@ int xe_exec_queue_create_ioctl(struct drm_device *dev, void *data,
args->width, hwe,
EXEC_QUEUE_FLAG_PERSISTENT |
EXEC_QUEUE_FLAG_VM |
- (sync ? 0 :
- EXEC_QUEUE_FLAG_VM_ASYNC) |
(id ?
EXEC_QUEUE_FLAG_BIND_ENGINE_CHILD :
0));
diff --git a/drivers/gpu/drm/xe/xe_exec_queue_types.h b/drivers/gpu/drm/xe/xe_exec_queue_types.h
index c7aefa1c8c31..0f7f6cded4a3 100644
--- a/drivers/gpu/drm/xe/xe_exec_queue_types.h
+++ b/drivers/gpu/drm/xe/xe_exec_queue_types.h
@@ -84,8 +84,6 @@ struct xe_exec_queue {
#define EXEC_QUEUE_FLAG_VM BIT(4)
/* child of VM queue for multi-tile VM jobs */
#define EXEC_QUEUE_FLAG_BIND_ENGINE_CHILD BIT(5)
-/* VM jobs for this queue are asynchronous */
-#define EXEC_QUEUE_FLAG_VM_ASYNC BIT(6)
/**
* @flags: flags for this exec queue, should statically setup aside from ban
diff --git a/drivers/gpu/drm/xe/xe_vm.c b/drivers/gpu/drm/xe/xe_vm.c
index 2f3df9ee67c9..8407c4d54a45 100644
--- a/drivers/gpu/drm/xe/xe_vm.c
+++ b/drivers/gpu/drm/xe/xe_vm.c
@@ -1343,9 +1343,7 @@ struct xe_vm *xe_vm_create(struct xe_device *xe, u32 flags)
struct xe_gt *gt = tile->primary_gt;
struct xe_vm *migrate_vm;
struct xe_exec_queue *q;
- u32 create_flags = EXEC_QUEUE_FLAG_VM |
- ((flags & XE_VM_FLAG_ASYNC_DEFAULT) ?
- EXEC_QUEUE_FLAG_VM_ASYNC : 0);
+ u32 create_flags = EXEC_QUEUE_FLAG_VM;
if (!vm->pt_root[id])
continue;
@@ -1712,12 +1710,6 @@ xe_vm_bind_vma(struct xe_vma *vma, struct xe_exec_queue *q,
return ERR_PTR(err);
}
-static bool xe_vm_sync_mode(struct xe_vm *vm, struct xe_exec_queue *q)
-{
- return q ? !(q->flags & EXEC_QUEUE_FLAG_VM_ASYNC) :
- !(vm->flags & XE_VM_FLAG_ASYNC_DEFAULT);
-}
-
static int __xe_vm_bind(struct xe_vm *vm, struct xe_vma *vma,
struct xe_exec_queue *q, struct xe_sync_entry *syncs,
u32 num_syncs, bool immediate, bool first_op,
@@ -1747,8 +1739,6 @@ static int __xe_vm_bind(struct xe_vm *vm, struct xe_vma *vma,
if (last_op)
xe_exec_queue_last_fence_set(wait_exec_queue, vm, fence);
- if (last_op && xe_vm_sync_mode(vm, q))
- dma_fence_wait(fence, true);
dma_fence_put(fence);
return 0;
@@ -1791,8 +1781,6 @@ static int xe_vm_unbind(struct xe_vm *vm, struct xe_vma *vma,
xe_vma_destroy(vma, fence);
if (last_op)
xe_exec_queue_last_fence_set(wait_exec_queue, vm, fence);
- if (last_op && xe_vm_sync_mode(vm, q))
- dma_fence_wait(fence, true);
dma_fence_put(fence);
return 0;
@@ -1800,7 +1788,6 @@ static int xe_vm_unbind(struct xe_vm *vm, struct xe_vma *vma,
#define ALL_DRM_XE_VM_CREATE_FLAGS (DRM_XE_VM_CREATE_FLAG_SCRATCH_PAGE | \
DRM_XE_VM_CREATE_FLAG_LR_MODE | \
- DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT | \
DRM_XE_VM_CREATE_FLAG_FAULT_MODE)
int xe_vm_create_ioctl(struct drm_device *dev, void *data,
@@ -1854,8 +1841,6 @@ int xe_vm_create_ioctl(struct drm_device *dev, void *data,
flags |= XE_VM_FLAG_SCRATCH_PAGE;
if (args->flags & DRM_XE_VM_CREATE_FLAG_LR_MODE)
flags |= XE_VM_FLAG_LR_MODE;
- if (args->flags & DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT)
- flags |= XE_VM_FLAG_ASYNC_DEFAULT;
if (args->flags & DRM_XE_VM_CREATE_FLAG_FAULT_MODE)
flags |= XE_VM_FLAG_FAULT_MODE;
@@ -2263,8 +2248,7 @@ static int xe_vma_op_commit(struct xe_vm *vm, struct xe_vma_op *op)
static int vm_bind_ioctl_ops_parse(struct xe_vm *vm, struct xe_exec_queue *q,
struct drm_gpuva_ops *ops,
struct xe_sync_entry *syncs, u32 num_syncs,
- struct list_head *ops_list, bool last,
- bool async)
+ struct list_head *ops_list, bool last)
{
struct xe_vma_op *last_op = NULL;
struct drm_gpuva_op *__op;
@@ -2696,28 +2680,28 @@ static int vm_bind_ioctl_ops_execute(struct xe_vm *vm,
#ifdef TEST_VM_ASYNC_OPS_ERROR
#define SUPPORTED_FLAGS \
- (FORCE_ASYNC_OP_ERROR | DRM_XE_VM_BIND_FLAG_ASYNC | \
- DRM_XE_VM_BIND_FLAG_READONLY | DRM_XE_VM_BIND_FLAG_IMMEDIATE | \
- DRM_XE_VM_BIND_FLAG_NULL | 0xffff)
+ (FORCE_ASYNC_OP_ERROR | DRM_XE_VM_BIND_FLAG_READONLY | \
+ DRM_XE_VM_BIND_FLAG_IMMEDIATE | DRM_XE_VM_BIND_FLAG_NULL | 0xffff)
#else
#define SUPPORTED_FLAGS \
- (DRM_XE_VM_BIND_FLAG_ASYNC | DRM_XE_VM_BIND_FLAG_READONLY | \
+ (DRM_XE_VM_BIND_FLAG_READONLY | \
DRM_XE_VM_BIND_FLAG_IMMEDIATE | DRM_XE_VM_BIND_FLAG_NULL | \
0xffff)
#endif
#define XE_64K_PAGE_MASK 0xffffull
+#define ALL_DRM_XE_SYNCS_FLAGS (DRM_XE_SYNCS_FLAG_WAIT_FOR_OP)
#define MAX_BINDS 512 /* FIXME: Picking random upper limit */
static int vm_bind_ioctl_check_args(struct xe_device *xe,
struct drm_xe_vm_bind *args,
struct drm_xe_vm_bind_op **bind_ops,
- bool *async)
+ bool *async, bool *skip_ops)
{
int err;
int i;
- if (XE_IOCTL_DBG(xe, args->pad || args->pad2) ||
+ if (XE_IOCTL_DBG(xe, args->pad) ||
XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1]))
return -EINVAL;
@@ -2745,6 +2729,30 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe,
*bind_ops = &args->bind;
}
+ *async = !(args->syncs.flags & DRM_XE_SYNCS_FLAG_WAIT_FOR_OP);
+ *skip_ops = false;
+
+ if (XE_IOCTL_DBG(xe, args->syncs.flags & ~ALL_DRM_XE_SYNCS_FLAGS) ||
+ XE_IOCTL_DBG(xe, *async && args->syncs.cookie) ||
+ XE_IOCTL_DBG(xe, args->syncs.reserved[0] || args->syncs.reserved[1]) ||
+ XE_IOCTL_DBG(xe, !*async && args->syncs.num_syncs)) {
+ err = -EINVAL;
+ goto free_bind_ops;
+ }
+
+ if (!*async) {
+ u64 __user *cookie = u64_to_user_ptr(args->syncs.cookie);
+ u64 value;
+
+ err = __copy_from_user(&value, cookie, sizeof(u64));
+ if (XE_IOCTL_DBG(xe, err)) {
+ err = -EFAULT;
+ goto free_bind_ops;
+ }
+ if (value)
+ *skip_ops = true;
+ }
+
for (i = 0; i < args->num_binds; ++i) {
u64 range = (*bind_ops)[i].range;
u64 addr = (*bind_ops)[i].addr;
@@ -2775,18 +2783,6 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe,
goto free_bind_ops;
}
- if (i == 0) {
- *async = !!(flags & DRM_XE_VM_BIND_FLAG_ASYNC);
- if (XE_IOCTL_DBG(xe, !*async && args->num_syncs)) {
- err = -EINVAL;
- goto free_bind_ops;
- }
- } else if (XE_IOCTL_DBG(xe, *async !=
- !!(flags & DRM_XE_VM_BIND_FLAG_ASYNC))) {
- err = -EINVAL;
- goto free_bind_ops;
- }
-
if (XE_IOCTL_DBG(xe, op > DRM_XE_VM_BIND_OP_PREFETCH) ||
XE_IOCTL_DBG(xe, flags & ~SUPPORTED_FLAGS) ||
XE_IOCTL_DBG(xe, obj && is_null) ||
@@ -2854,12 +2850,25 @@ static int vm_bind_ioctl_signal_fences(struct xe_vm *vm,
xe_exec_queue_last_fence_set(to_wait_exec_queue(vm, q), vm,
fence);
+ dma_fence_put(fence);
- if (xe_vm_sync_mode(vm, q)) {
- long timeout = dma_fence_wait(fence, true);
+ return err;
+}
+
+static int vm_bind_ioctl_sync_wait(struct xe_vm *vm,
+ struct dma_fence *fence,
+ u64 __user *cookie)
+{
+ long timeout;
+ int err = 0;
+
+ timeout = dma_fence_wait(fence, true);
+ if (timeout < 0) {
+ u64 value = 1;
- if (timeout < 0)
- err = -EINTR;
+ err = -ERESTARTSYS;
+ if (copy_to_user(cookie, &value, sizeof(value)))
+ err = -EFAULT;
}
dma_fence_put(fence);
@@ -2875,21 +2884,22 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
struct drm_xe_sync __user *syncs_user;
struct xe_bo **bos = NULL;
struct drm_gpuva_ops **ops = NULL;
+ struct dma_fence *fence = NULL;
struct xe_vm *vm;
struct xe_exec_queue *q = NULL;
u32 num_syncs;
struct xe_sync_entry *syncs = NULL;
struct drm_xe_vm_bind_op *bind_ops;
LIST_HEAD(ops_list);
- bool async;
+ bool async, skip_ops;
int err;
int i;
- err = vm_bind_ioctl_check_args(xe, args, &bind_ops, &async);
+ err = vm_bind_ioctl_check_args(xe, args, &bind_ops, &async, &skip_ops);
if (err)
return err;
- if (XE_IOCTL_DBG(xe, args->pad || args->pad2) ||
+ if (XE_IOCTL_DBG(xe, args->pad) ||
XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1]))
return -EINVAL;
@@ -2904,12 +2914,6 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
err = -EINVAL;
goto put_exec_queue;
}
-
- if (XE_IOCTL_DBG(xe, args->num_binds && async !=
- !!(q->flags & EXEC_QUEUE_FLAG_VM_ASYNC))) {
- err = -EINVAL;
- goto put_exec_queue;
- }
}
vm = xe_vm_lookup(xef, args->vm_id);
@@ -2918,14 +2922,6 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
goto put_exec_queue;
}
- if (!args->exec_queue_id) {
- if (XE_IOCTL_DBG(xe, args->num_binds && async !=
- !!(vm->flags & XE_VM_FLAG_ASYNC_DEFAULT))) {
- err = -EINVAL;
- goto put_vm;
- }
- }
-
err = down_write_killable(&vm->lock);
if (err)
goto put_vm;
@@ -3015,16 +3011,16 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
}
}
- if (args->num_syncs) {
- syncs = kcalloc(args->num_syncs, sizeof(*syncs), GFP_KERNEL);
+ if (args->syncs.num_syncs) {
+ syncs = kcalloc(args->syncs.num_syncs, sizeof(*syncs), GFP_KERNEL);
if (!syncs) {
err = -ENOMEM;
goto put_obj;
}
}
- syncs_user = u64_to_user_ptr(args->syncs);
- for (num_syncs = 0; num_syncs < args->num_syncs; num_syncs++) {
+ syncs_user = u64_to_user_ptr(args->syncs.syncs);
+ for (num_syncs = 0; num_syncs < args->syncs.num_syncs; num_syncs++) {
err = xe_sync_entry_parse(xe, xef, &syncs[num_syncs],
&syncs_user[num_syncs],
(xe_vm_in_lr_mode(vm) ?
@@ -3035,7 +3031,7 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
goto free_syncs;
}
- if (!args->num_binds) {
+ if (!args->num_binds || skip_ops) {
err = -ENODATA;
goto free_syncs;
}
@@ -3060,8 +3056,7 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
err = vm_bind_ioctl_ops_parse(vm, q, ops[i], syncs, num_syncs,
&ops_list,
- i == args->num_binds - 1,
- async);
+ i == args->num_binds - 1);
if (err)
goto unwind_ops;
}
@@ -3077,7 +3072,10 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
xe_exec_queue_get(q);
err = vm_bind_ioctl_ops_execute(vm, &ops_list);
-
+ if (!err && !async) {
+ fence = xe_exec_queue_last_fence_get(to_wait_exec_queue(vm, q), vm);
+ dma_fence_get(fence);
+ }
up_write(&vm->lock);
if (q)
@@ -3092,13 +3090,19 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
if (args->num_binds > 1)
kfree(bind_ops);
- return err;
+ return fence ? vm_bind_ioctl_sync_wait(vm, fence, u64_to_user_ptr(args->syncs.cookie)) :
+ err;
unwind_ops:
vm_bind_ioctl_ops_unwind(vm, ops, args->num_binds);
free_syncs:
- if (err == -ENODATA)
+ if (err == -ENODATA) {
err = vm_bind_ioctl_signal_fences(vm, q, syncs, num_syncs);
+ if (!async) {
+ fence = xe_exec_queue_last_fence_get(to_wait_exec_queue(vm, q), vm);
+ dma_fence_get(fence);
+ }
+ }
while (num_syncs--)
xe_sync_entry_cleanup(&syncs[num_syncs]);
@@ -3108,6 +3112,8 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file)
xe_bo_put(bos[i]);
release_vm_lock:
up_write(&vm->lock);
+ if (fence)
+ err = vm_bind_ioctl_sync_wait(vm, fence, u64_to_user_ptr(args->syncs.cookie));
put_vm:
xe_vm_put(vm);
put_exec_queue:
diff --git a/drivers/gpu/drm/xe/xe_vm_types.h b/drivers/gpu/drm/xe/xe_vm_types.h
index 2e023596cb15..63e8a50b88e9 100644
--- a/drivers/gpu/drm/xe/xe_vm_types.h
+++ b/drivers/gpu/drm/xe/xe_vm_types.h
@@ -138,13 +138,12 @@ struct xe_vm {
*/
#define XE_VM_FLAG_64K BIT(0)
#define XE_VM_FLAG_LR_MODE BIT(1)
-#define XE_VM_FLAG_ASYNC_DEFAULT BIT(2)
-#define XE_VM_FLAG_MIGRATION BIT(3)
-#define XE_VM_FLAG_SCRATCH_PAGE BIT(4)
-#define XE_VM_FLAG_FAULT_MODE BIT(5)
-#define XE_VM_FLAG_BANNED BIT(6)
-#define XE_VM_FLAG_TILE_ID(flags) FIELD_GET(GENMASK(8, 7), flags)
-#define XE_VM_FLAG_SET_TILE_ID(tile) FIELD_PREP(GENMASK(8, 7), (tile)->id)
+#define XE_VM_FLAG_MIGRATION BIT(2)
+#define XE_VM_FLAG_SCRATCH_PAGE BIT(3)
+#define XE_VM_FLAG_FAULT_MODE BIT(4)
+#define XE_VM_FLAG_BANNED BIT(5)
+#define XE_VM_FLAG_TILE_ID(flags) FIELD_GET(GENMASK(7, 6), flags)
+#define XE_VM_FLAG_SET_TILE_ID(tile) FIELD_PREP(GENMASK(7, 6), (tile)->id)
unsigned long flags;
/** @composite_fence_ctx: context composite fence */
diff --git a/include/uapi/drm/xe_drm.h b/include/uapi/drm/xe_drm.h
index 0895e4d2a981..8cbe7ca6fe57 100644
--- a/include/uapi/drm/xe_drm.h
+++ b/include/uapi/drm/xe_drm.h
@@ -140,8 +140,7 @@ struct drm_xe_engine_class_instance {
* Kernel only classes (not actual hardware engine class). Used for
* creating ordered queues of VM bind operations.
*/
-#define DRM_XE_ENGINE_CLASS_VM_BIND_ASYNC 5
-#define DRM_XE_ENGINE_CLASS_VM_BIND_SYNC 6
+#define DRM_XE_ENGINE_CLASS_VM_BIND 5
/** @engine_class: engine class id */
__u16 engine_class;
/** @engine_instance: engine instance id */
@@ -661,7 +660,6 @@ struct drm_xe_vm_create {
* still enable recoverable pagefaults if supported by the device.
*/
#define DRM_XE_VM_CREATE_FLAG_LR_MODE (1 << 1)
-#define DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT (1 << 2)
/*
* DRM_XE_VM_CREATE_FLAG_FAULT_MODE requires also
* DRM_XE_VM_CREATE_FLAG_LR_MODE. It allows memory to be allocated
@@ -669,7 +667,7 @@ struct drm_xe_vm_create {
* The xe driver internally uses recoverable pagefaults to implement
* this.
*/
-#define DRM_XE_VM_CREATE_FLAG_FAULT_MODE (1 << 3)
+#define DRM_XE_VM_CREATE_FLAG_FAULT_MODE (1 << 2)
/** @flags: Flags */
__u32 flags;
@@ -777,12 +775,11 @@ struct drm_xe_vm_bind_op {
__u32 op;
#define DRM_XE_VM_BIND_FLAG_READONLY (1 << 0)
-#define DRM_XE_VM_BIND_FLAG_ASYNC (1 << 1)
/*
* Valid on a faulting VM only, do the MAP operation immediately rather
* than deferring the MAP to the page fault handler.
*/
-#define DRM_XE_VM_BIND_FLAG_IMMEDIATE (1 << 2)
+#define DRM_XE_VM_BIND_FLAG_IMMEDIATE (1 << 1)
/*
* When the NULL flag is set, the page tables are setup with a special
* bit which indicates writes are dropped and all reads return zero. In
@@ -790,7 +787,7 @@ struct drm_xe_vm_bind_op {
* operations, the BO handle MBZ, and the BO offset MBZ. This flag is
* intended to implement VK sparse bindings.
*/
-#define DRM_XE_VM_BIND_FLAG_NULL (1 << 3)
+#define DRM_XE_VM_BIND_FLAG_NULL (1 << 2)
/** @flags: Bind flags */
__u32 flags;
@@ -808,6 +805,36 @@ struct drm_xe_vm_bind_op {
__u64 reserved[3];
};
+/**
+ * struct drm_xe_syncs - In / out syncs for IOCTLs.
+ */
+struct drm_xe_syncs {
+ /** @num_syncs: amount of syncs to wait on */
+ __u32 num_syncs;
+
+ /*
+ * Block in IOCTL until operation complete, num_syncs MBZ if set.
+ */
+#define DRM_XE_SYNCS_FLAG_WAIT_FOR_OP (1 << 0)
+ /** @flags: Sync flags */
+ __u32 flags;
+
+ /**
+ * @cookie: pointer which is written with an non-zero value if IOCTL
+ * operation has been committed but the wait for completion
+ * (DRM_XE_SYNCS_FLAG_WAIT_FOR_OP is set) is interrupted. Value of
+ * *cookie MBZ for IOCTL operations to be executed, if non-zero
+ * operations are skipped and blocks until exec queue for IOCTL is idle.
+ */
+ __u64 cookie;
+
+ /** @syncs: pointer to struct drm_xe_sync array */
+ __u64 syncs;
+
+ /** @reserved: Reserved */
+ __u64 reserved[2];
+};
+
struct drm_xe_vm_bind {
/** @extensions: Pointer to the first extension struct, if any */
__u64 extensions;
@@ -839,14 +866,8 @@ struct drm_xe_vm_bind {
__u64 vector_of_binds;
};
- /** @pad: MBZ */
- __u32 pad2;
-
- /** @num_syncs: amount of syncs to wait on */
- __u32 num_syncs;
-
- /** @syncs: pointer to struct drm_xe_sync array */
- __u64 syncs;
+ /** @syncs: syncs for bind */
+ struct drm_xe_syncs syncs;
/** @reserved: Reserved */
__u64 reserved[2];
@@ -975,14 +996,14 @@ struct drm_xe_exec {
/** @extensions: Pointer to the first extension struct, if any */
__u64 extensions;
+ /** @pad: MBZ */
+ __u32 pad;
+
/** @exec_queue_id: Exec queue ID for the batch buffer */
__u32 exec_queue_id;
- /** @num_syncs: Amount of struct drm_xe_sync in array. */
- __u32 num_syncs;
-
- /** @syncs: Pointer to struct drm_xe_sync array. */
- __u64 syncs;
+ /** @syncs: syncs for exec */
+ struct drm_xe_syncs syncs;
/**
* @address: address of batch buffer if num_batch_buffer == 1 or an
@@ -996,8 +1017,8 @@ struct drm_xe_exec {
*/
__u16 num_batch_buffer;
- /** @pad: MBZ */
- __u16 pad[3];
+ /** @pad2: MBZ */
+ __u16 pad2[3];
/** @reserved: Reserved */
__u64 reserved[2];
--
2.34.1
^ permalink raw reply related [flat|nested] 14+ messages in thread* ✓ CI.Patch_applied: success for drm/xe/uapi: Uniform async vs sync handling (rev3) 2023-12-13 22:29 [PATCH v3] drm/xe/uapi: Uniform async vs sync handling Matthew Brost @ 2023-12-13 22:35 ` Patchwork 2023-12-13 22:35 ` ✓ CI.checkpatch: " Patchwork ` (7 subsequent siblings) 8 siblings, 0 replies; 14+ messages in thread From: Patchwork @ 2023-12-13 22:35 UTC (permalink / raw) To: Matthew Brost; +Cc: intel-xe == Series Details == Series: drm/xe/uapi: Uniform async vs sync handling (rev3) URL : https://patchwork.freedesktop.org/series/127442/ State : success == Summary == === Applying kernel patches on branch 'drm-xe-next' with base: === Base commit: 5cd189336 drm/xe/xe2: Support flat ccs === git am output follows === Applying: drm/xe/uapi: Uniform async vs sync handling ^ permalink raw reply [flat|nested] 14+ messages in thread
* ✓ CI.checkpatch: success for drm/xe/uapi: Uniform async vs sync handling (rev3) 2023-12-13 22:29 [PATCH v3] drm/xe/uapi: Uniform async vs sync handling Matthew Brost 2023-12-13 22:35 ` ✓ CI.Patch_applied: success for drm/xe/uapi: Uniform async vs sync handling (rev3) Patchwork @ 2023-12-13 22:35 ` Patchwork 2023-12-13 22:36 ` ✓ CI.KUnit: " Patchwork ` (6 subsequent siblings) 8 siblings, 0 replies; 14+ messages in thread From: Patchwork @ 2023-12-13 22:35 UTC (permalink / raw) To: Matthew Brost; +Cc: intel-xe == Series Details == Series: drm/xe/uapi: Uniform async vs sync handling (rev3) URL : https://patchwork.freedesktop.org/series/127442/ 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 6030b24c1386b00de8187b5fb987e283a57b372a + cd /kernel + git config --global --add safe.directory /kernel + git log -n1 commit 52d3f33c03d98cc6605084674166466432ceb406 Author: Matthew Brost <matthew.brost@intel.com> Date: Wed Dec 13 14:29:57 2023 -0800 drm/xe/uapi: Uniform async vs sync handling Remove concept of async vs sync VM bind queues, rather make async vs sync a per IOCTL choice. Since this is per IOCTL, it makes sense to have a singular flag IOCTL rather than per VM bind op flag too. Add DRM_XE_SYNCS_FLAG_WAIT_FOR_OP which is an input sync flag to support this. Support this new flag for both the VM bind IOCTL only with a path to support this for execs too. v2: Add cookie, move sync wait outside of any locks. v3: Skip bind operations if *cookie non-zero, check reserved bits zero Cc: Rodrigo Vivi <rodrigo.vivi@intel.com> Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com> Cc: Francois Dugast <francois.dugast@intel.com> Signed-off-by: Matthew Brost <matthew.brost@intel.com> + /mt/dim checkpatch 5cd1893366708380854f4694ae57417192458a6b drm-intel 52d3f33c0 drm/xe/uapi: Uniform async vs sync handling ^ permalink raw reply [flat|nested] 14+ messages in thread
* ✓ CI.KUnit: success for drm/xe/uapi: Uniform async vs sync handling (rev3) 2023-12-13 22:29 [PATCH v3] drm/xe/uapi: Uniform async vs sync handling Matthew Brost 2023-12-13 22:35 ` ✓ CI.Patch_applied: success for drm/xe/uapi: Uniform async vs sync handling (rev3) Patchwork 2023-12-13 22:35 ` ✓ CI.checkpatch: " Patchwork @ 2023-12-13 22:36 ` Patchwork 2023-12-13 22:43 ` ✓ CI.Build: " Patchwork ` (5 subsequent siblings) 8 siblings, 0 replies; 14+ messages in thread From: Patchwork @ 2023-12-13 22:36 UTC (permalink / raw) To: Matthew Brost; +Cc: intel-xe == Series Details == Series: drm/xe/uapi: Uniform async vs sync handling (rev3) URL : https://patchwork.freedesktop.org/series/127442/ State : success == Summary == + trap cleanup EXIT + /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/xe/.kunitconfig stty: 'standard input': Inappropriate ioctl for device [22:35:15] Configuring KUnit Kernel ... Generating .config ... Populating config with: $ make ARCH=um O=.kunit olddefconfig [22:35:20] Building KUnit Kernel ... Populating config with: $ make ARCH=um O=.kunit olddefconfig Building with: $ make ARCH=um O=.kunit --jobs=48 [22:35:40] Starting KUnit Kernel (1/1)... [22:35:40] ============================================================ [22:35:40] ========================== lmtt =========================== [22:35:40] ======================== test_ops ========================= [22:35:40] [PASSED] 2-level [22:35:40] [PASSED] multi-level [22:35:40] ==================== [PASSED] test_ops ===================== [22:35:40] ====================== [PASSED] lmtt ======================= [22:35:40] ========================== xe_bo ========================== [22:35:40] [SKIPPED] xe_ccs_migrate_kunit [22:35:40] [SKIPPED] xe_bo_evict_kunit [22:35:40] ===================== [SKIPPED] xe_bo ====================== [22:35:40] ======================= xe_dma_buf ======================== [22:35:40] [SKIPPED] xe_dma_buf_kunit [22:35:40] =================== [SKIPPED] xe_dma_buf =================== [22:35:40] ======================= xe_migrate ======================== [22:35:40] [SKIPPED] xe_migrate_sanity_kunit [22:35:40] =================== [SKIPPED] xe_migrate =================== [22:35:40] ========================= xe_mocs ========================= [22:35:40] [SKIPPED] xe_live_mocs_kernel_kunit [22:35:40] ==================== [SKIPPED] xe_mocs ===================== [22:35:40] ========================= xe_pci ========================== [22:35:40] [PASSED] xe_gmdid_graphics_ip [22:35:40] [PASSED] xe_gmdid_media_ip [22:35:40] ===================== [PASSED] xe_pci ====================== [22:35:40] ========================= xe_rtp ========================== [22:35:40] ================== xe_rtp_process_tests =================== [22:35:40] [PASSED] coalesce-same-reg [22:35:40] [PASSED] no-match-no-add [22:35:40] [PASSED] no-match-no-add-multiple-rules [22:35:40] [PASSED] two-regs-two-entries [22:35:40] [PASSED] clr-one-set-other [22:35:40] [PASSED] set-field [22:35:40] [PASSED] conflict-duplicate [22:35:40] [PASSED] conflict-not-disjoint [22:35:40] [PASSED] conflict-reg-type [22:35:40] ============== [PASSED] xe_rtp_process_tests =============== [22:35:40] ===================== [PASSED] xe_rtp ====================== [22:35:40] ========================== xe_wa ========================== [22:35:40] ======================== xe_wa_gt ========================= [22:35:40] [PASSED] TIGERLAKE (B0) [22:35:40] [PASSED] DG1 (A0) [22:35:40] [PASSED] DG1 (B0) [22:35:40] [PASSED] ALDERLAKE_S (A0) [22:35:40] [PASSED] ALDERLAKE_S (B0) [22:35:40] [PASSED] ALDERLAKE_S (C0) [22:35:40] [PASSED] ALDERLAKE_S (D0) [22:35:40] [PASSED] ALDERLAKE_P (A0) [22:35:40] [PASSED] ALDERLAKE_P (B0) [22:35:40] [PASSED] ALDERLAKE_P (C0) [22:35:40] [PASSED] ALDERLAKE_S_RPLS (D0) [22:35:40] [PASSED] ALDERLAKE_P_RPLU (E0) [22:35:40] [PASSED] DG2_G10 (A0) [22:35:40] [PASSED] DG2_G10 (A1) [22:35:40] [PASSED] DG2_G10 (B0) [22:35:40] [PASSED] DG2_G10 (C0) [22:35:40] [PASSED] DG2_G11 (A0) [22:35:40] [PASSED] DG2_G11 (B0) [22:35:40] [PASSED] DG2_G11 (B1) [22:35:40] [PASSED] DG2_G12 (A0) [22:35:40] [PASSED] DG2_G12 (A1) [22:35:40] [PASSED] PVC (B0) [22:35:40] [PASSED] PVC (B1) [22:35:40] [PASSED] PVC (C0) [22:35:40] [PASSED] METEORLAKE (g:A0, m:A0) [22:35:40] [PASSED] METEORLAKE (g:A0, m:A0) [22:35:40] [PASSED] LUNARLAKE (g:A0, m:A0) [22:35:40] [PASSED] LUNARLAKE (g:B0, m:A0) [22:35:40] ==================== [PASSED] xe_wa_gt ===================== [22:35:40] ====================== [PASSED] xe_wa ====================== [22:35:40] ============================================================ [22:35:40] Testing complete. Ran 46 tests: passed: 41, skipped: 5 [22:35:40] Elapsed time: 25.015s total, 4.272s configuring, 20.573s building, 0.145s running + /kernel/tools/testing/kunit/kunit.py run --kunitconfig /kernel/drivers/gpu/drm/tests/.kunitconfig [22:35:41] Configuring KUnit Kernel ... Regenerating .config ... Populating config with: $ make ARCH=um O=.kunit olddefconfig [22:35:42] Building KUnit Kernel ... Populating config with: $ make ARCH=um O=.kunit olddefconfig Building with: $ make ARCH=um O=.kunit --jobs=48 [22:36:01] Starting KUnit Kernel (1/1)... [22:36:01] ============================================================ [22:36:01] ================== drm_test_pick_cmdline ================== [22:36:01] [PASSED] drm_test_pick_cmdline_res_1920_1080_60 [22:36:01] =============== drm_test_pick_cmdline_named =============== [22:36:01] [PASSED] NTSC [22:36:01] [PASSED] NTSC-J [22:36:01] [PASSED] PAL [22:36:01] [PASSED] PAL-M [22:36:01] =========== [PASSED] drm_test_pick_cmdline_named =========== [22:36:01] ============== [PASSED] drm_test_pick_cmdline ============== [22:36:01] ======================== drm_buddy ======================== [22:36:01] [PASSED] drm_test_buddy_alloc_limit [22:36:01] [PASSED] drm_test_buddy_alloc_range [22:36:01] [PASSED] drm_test_buddy_alloc_optimistic [22:36:01] [PASSED] drm_test_buddy_alloc_pessimistic [22:36:01] [PASSED] drm_test_buddy_alloc_smoke [22:36:01] [PASSED] drm_test_buddy_alloc_pathological [22:36:01] ==================== [PASSED] drm_buddy ==================== [22:36:01] =================== drm_cmdline_parser ==================== [22:36:01] [PASSED] drm_test_cmdline_force_d_only [22:36:01] [PASSED] drm_test_cmdline_force_D_only_dvi [22:36:01] [PASSED] drm_test_cmdline_force_D_only_hdmi [22:36:01] [PASSED] drm_test_cmdline_force_D_only_not_digital [22:36:01] [PASSED] drm_test_cmdline_force_e_only [22:36:01] [PASSED] drm_test_cmdline_res [22:36:01] [PASSED] drm_test_cmdline_res_vesa [22:36:01] [PASSED] drm_test_cmdline_res_vesa_rblank [22:36:01] [PASSED] drm_test_cmdline_res_rblank [22:36:01] [PASSED] drm_test_cmdline_res_bpp [22:36:01] [PASSED] drm_test_cmdline_res_refresh [22:36:01] [PASSED] drm_test_cmdline_res_bpp_refresh [22:36:01] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced [22:36:01] [PASSED] drm_test_cmdline_res_bpp_refresh_margins [22:36:01] [PASSED] drm_test_cmdline_res_bpp_refresh_force_off [22:36:01] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on [22:36:01] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_analog [22:36:01] [PASSED] drm_test_cmdline_res_bpp_refresh_force_on_digital [22:36:01] [PASSED] drm_test_cmdline_res_bpp_refresh_interlaced_margins_force_on [22:36:01] [PASSED] drm_test_cmdline_res_margins_force_on [22:36:01] [PASSED] drm_test_cmdline_res_vesa_margins [22:36:01] [PASSED] drm_test_cmdline_name [22:36:01] [PASSED] drm_test_cmdline_name_bpp [22:36:01] [PASSED] drm_test_cmdline_name_option [22:36:01] [PASSED] drm_test_cmdline_name_bpp_option [22:36:01] [PASSED] drm_test_cmdline_rotate_0 [22:36:01] [PASSED] drm_test_cmdline_rotate_90 [22:36:01] [PASSED] drm_test_cmdline_rotate_180 [22:36:01] [PASSED] drm_test_cmdline_rotate_270 [22:36:01] [PASSED] drm_test_cmdline_hmirror [22:36:01] [PASSED] drm_test_cmdline_vmirror [22:36:01] [PASSED] drm_test_cmdline_margin_options [22:36:01] [PASSED] drm_test_cmdline_multiple_options [22:36:01] [PASSED] drm_test_cmdline_bpp_extra_and_option [22:36:01] [PASSED] drm_test_cmdline_extra_and_option [22:36:01] [PASSED] drm_test_cmdline_freestanding_options [22:36:01] [PASSED] drm_test_cmdline_freestanding_force_e_and_options [22:36:01] [PASSED] drm_test_cmdline_panel_orientation [22:36:01] ================ drm_test_cmdline_invalid ================= [22:36:01] [PASSED] margin_only [22:36:01] [PASSED] interlace_only [22:36:01] [PASSED] res_missing_x [22:36:01] [PASSED] res_missing_y [22:36:01] [PASSED] res_bad_y [22:36:01] [PASSED] res_missing_y_bpp [22:36:01] [PASSED] res_bad_bpp [22:36:01] [PASSED] res_bad_refresh [22:36:01] [PASSED] res_bpp_refresh_force_on_off [22:36:01] [PASSED] res_invalid_mode [22:36:01] [PASSED] res_bpp_wrong_place_mode [22:36:01] [PASSED] name_bpp_refresh [22:36:01] [PASSED] name_refresh [22:36:01] [PASSED] name_refresh_wrong_mode [22:36:01] [PASSED] name_refresh_invalid_mode [22:36:01] [PASSED] rotate_multiple [22:36:01] [PASSED] rotate_invalid_val [22:36:01] [PASSED] rotate_truncated [22:36:01] [PASSED] invalid_option [22:36:01] [PASSED] invalid_tv_option [22:36:01] [PASSED] truncated_tv_option [22:36:01] ============ [PASSED] drm_test_cmdline_invalid ============= [22:36:01] =============== drm_test_cmdline_tv_options =============== [22:36:01] [PASSED] NTSC [22:36:01] [PASSED] NTSC_443 [22:36:01] [PASSED] NTSC_J [22:36:01] [PASSED] PAL [22:36:01] [PASSED] PAL_M [22:36:01] [PASSED] PAL_N [22:36:01] [PASSED] SECAM [22:36:01] =========== [PASSED] drm_test_cmdline_tv_options =========== [22:36:01] =============== [PASSED] drm_cmdline_parser ================ [22:36:01] ================ drm_get_tv_mode_from_name ================ [22:36:01] ========== drm_test_get_tv_mode_from_name_valid =========== [22:36:01] [PASSED] NTSC [22:36:01] [PASSED] NTSC-443 [22:36:01] [PASSED] NTSC-J [22:36:01] [PASSED] PAL [22:36:01] [PASSED] PAL-M [22:36:01] [PASSED] PAL-N [22:36:01] [PASSED] SECAM [22:36:01] ====== [PASSED] drm_test_get_tv_mode_from_name_valid ======= [22:36:01] [PASSED] drm_test_get_tv_mode_from_name_truncated [22:36:01] ============ [PASSED] drm_get_tv_mode_from_name ============ [22:36:01] ==================== drm_damage_helper ==================== [22:36:01] [PASSED] drm_test_damage_iter_no_damage [22:36:01] [PASSED] drm_test_damage_iter_no_damage_fractional_src [22:36:01] [PASSED] drm_test_damage_iter_no_damage_src_moved [22:36:01] [PASSED] drm_test_damage_iter_no_damage_fractional_src_moved [22:36:01] [PASSED] drm_test_damage_iter_no_damage_not_visible [22:36:01] [PASSED] drm_test_damage_iter_no_damage_no_crtc [22:36:01] [PASSED] drm_test_damage_iter_no_damage_no_fb [22:36:01] [PASSED] drm_test_damage_iter_simple_damage [22:36:01] [PASSED] drm_test_damage_iter_single_damage [22:36:01] [PASSED] drm_test_damage_iter_single_damage_intersect_src [22:36:01] [PASSED] drm_test_damage_iter_single_damage_outside_src [22:36:01] [PASSED] drm_test_damage_iter_single_damage_fractional_src [22:36:01] [PASSED] drm_test_damage_iter_single_damage_intersect_fractional_src [22:36:01] [PASSED] drm_test_damage_iter_single_damage_outside_fractional_src [22:36:01] [PASSED] drm_test_damage_iter_single_damage_src_moved [22:36:01] [PASSED] drm_test_damage_iter_single_damage_fractional_src_moved [22:36:01] [PASSED] drm_test_damage_iter_damage [22:36:01] [PASSED] drm_test_damage_iter_damage_one_intersect [22:36:01] [PASSED] drm_test_damage_iter_damage_one_outside [22:36:01] [PASSED] drm_test_damage_iter_damage_src_moved [22:36:01] [PASSED] drm_test_damage_iter_damage_not_visible [22:36:01] ================ [PASSED] drm_damage_helper ================ [22:36:01] ==================== drm_dp_mst_helper ==================== [22:36:01] ============== drm_test_dp_mst_calc_pbn_mode ============== [22:36:01] [PASSED] Clock 154000 BPP 30 DSC disabled [22:36:01] [PASSED] Clock 234000 BPP 30 DSC disabled [22:36:01] [PASSED] Clock 297000 BPP 24 DSC disabled [22:36:01] [PASSED] Clock 332880 BPP 24 DSC enabled [22:36:01] [PASSED] Clock 324540 BPP 24 DSC enabled [22:36:01] ========== [PASSED] drm_test_dp_mst_calc_pbn_mode ========== [22:36:01] ========= drm_test_dp_mst_sideband_msg_req_decode ========= [22:36:01] [PASSED] DP_ENUM_PATH_RESOURCES with port number [22:36:01] [PASSED] DP_POWER_UP_PHY with port number [22:36:01] [PASSED] DP_POWER_DOWN_PHY with port number [22:36:01] [PASSED] DP_ALLOCATE_PAYLOAD with SDP stream sinks [22:36:01] [PASSED] DP_ALLOCATE_PAYLOAD with port number [22:36:01] [PASSED] DP_ALLOCATE_PAYLOAD with VCPI [22:36:01] [PASSED] DP_ALLOCATE_PAYLOAD with PBN [22:36:01] [PASSED] DP_QUERY_PAYLOAD with port number [22:36:01] [PASSED] DP_QUERY_PAYLOAD with VCPI [22:36:01] [PASSED] DP_REMOTE_DPCD_READ with port number [22:36:01] [PASSED] DP_REMOTE_DPCD_READ with DPCD address [22:36:01] [PASSED] DP_REMOTE_DPCD_READ with max number of bytes [22:36:01] [PASSED] DP_REMOTE_DPCD_WRITE with port number [22:36:01] [PASSED] DP_REMOTE_DPCD_WRITE with DPCD address [22:36:01] [PASSED] DP_REMOTE_DPCD_WRITE with data array [22:36:01] [PASSED] DP_REMOTE_I2C_READ with port number [22:36:01] [PASSED] DP_REMOTE_I2C_READ with I2C device ID [22:36:01] [PASSED] DP_REMOTE_I2C_READ with transactions array [22:36:01] [PASSED] DP_REMOTE_I2C_WRITE with port number [22:36:01] [PASSED] DP_REMOTE_I2C_WRITE with I2C device ID [22:36:01] [PASSED] DP_REMOTE_I2C_WRITE with data array [22:36:01] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream ID [22:36:01] [PASSED] DP_QUERY_STREAM_ENC_STATUS with client ID [22:36:01] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream event [22:36:01] [PASSED] DP_QUERY_STREAM_ENC_STATUS with valid stream event [22:36:01] [PASSED] DP_QUERY_STREAM_ENC_STATUS with stream behavior [22:36:01] [PASSED] DP_QUERY_STREAM_ENC_STATUS with a valid stream behavior [22:36:01] ===== [PASSED] drm_test_dp_mst_sideband_msg_req_decode ===== [22:36:01] ================ [PASSED] drm_dp_mst_helper ================ [22:36:01] ================= drm_format_helper_test ================== [22:36:01] ============== drm_test_fb_xrgb8888_to_gray8 ============== [22:36:01] [PASSED] single_pixel_source_buffer [22:36:01] [PASSED] single_pixel_clip_rectangle [22:36:01] [PASSED] well_known_colors [22:36:01] [PASSED] destination_pitch [22:36:01] ========== [PASSED] drm_test_fb_xrgb8888_to_gray8 ========== [22:36:01] ============= drm_test_fb_xrgb8888_to_rgb332 ============== [22:36:01] [PASSED] single_pixel_source_buffer [22:36:01] [PASSED] single_pixel_clip_rectangle [22:36:01] [PASSED] well_known_colors [22:36:01] [PASSED] destination_pitch [22:36:01] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb332 ========== [22:36:01] ============= drm_test_fb_xrgb8888_to_rgb565 ============== [22:36:01] [PASSED] single_pixel_source_buffer [22:36:01] [PASSED] single_pixel_clip_rectangle [22:36:01] [PASSED] well_known_colors [22:36:01] [PASSED] destination_pitch [22:36:01] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb565 ========== [22:36:01] ============ drm_test_fb_xrgb8888_to_xrgb1555 ============= [22:36:01] [PASSED] single_pixel_source_buffer [22:36:01] [PASSED] single_pixel_clip_rectangle [22:36:01] [PASSED] well_known_colors [22:36:01] [PASSED] destination_pitch [22:36:01] ======== [PASSED] drm_test_fb_xrgb8888_to_xrgb1555 ========= [22:36:01] ============ drm_test_fb_xrgb8888_to_argb1555 ============= [22:36:01] [PASSED] single_pixel_source_buffer [22:36:01] [PASSED] single_pixel_clip_rectangle [22:36:01] [PASSED] well_known_colors [22:36:01] [PASSED] destination_pitch [22:36:01] ======== [PASSED] drm_test_fb_xrgb8888_to_argb1555 ========= [22:36:01] ============ drm_test_fb_xrgb8888_to_rgba5551 ============= [22:36:01] [PASSED] single_pixel_source_buffer [22:36:01] [PASSED] single_pixel_clip_rectangle [22:36:01] [PASSED] well_known_colors [22:36:01] [PASSED] destination_pitch [22:36:01] ======== [PASSED] drm_test_fb_xrgb8888_to_rgba5551 ========= [22:36:01] ============= drm_test_fb_xrgb8888_to_rgb888 ============== [22:36:01] [PASSED] single_pixel_source_buffer [22:36:01] [PASSED] single_pixel_clip_rectangle [22:36:01] [PASSED] well_known_colors [22:36:01] [PASSED] destination_pitch [22:36:01] ========= [PASSED] drm_test_fb_xrgb8888_to_rgb888 ========== [22:36:01] ============ drm_test_fb_xrgb8888_to_argb8888 ============= [22:36:01] [PASSED] single_pixel_source_buffer [22:36:01] [PASSED] single_pixel_clip_rectangle [22:36:01] [PASSED] well_known_colors [22:36:01] [PASSED] destination_pitch [22:36:01] ======== [PASSED] drm_test_fb_xrgb8888_to_argb8888 ========= [22:36:01] =========== drm_test_fb_xrgb8888_to_xrgb2101010 =========== [22:36:01] [PASSED] single_pixel_source_buffer [22:36:01] [PASSED] single_pixel_clip_rectangle [22:36:01] [PASSED] well_known_colors [22:36:01] [PASSED] destination_pitch [22:36:01] ======= [PASSED] drm_test_fb_xrgb8888_to_xrgb2101010 ======= [22:36:01] =========== drm_test_fb_xrgb8888_to_argb2101010 =========== [22:36:01] [PASSED] single_pixel_source_buffer [22:36:01] [PASSED] single_pixel_clip_rectangle [22:36:01] [PASSED] well_known_colors [22:36:01] [PASSED] destination_pitch [22:36:01] ======= [PASSED] drm_test_fb_xrgb8888_to_argb2101010 ======= [22:36:01] ============== drm_test_fb_xrgb8888_to_mono =============== [22:36:01] [PASSED] single_pixel_source_buffer [22:36:01] [PASSED] single_pixel_clip_rectangle [22:36:01] [PASSED] well_known_colors [22:36:01] [PASSED] destination_pitch [22:36:01] ========== [PASSED] drm_test_fb_xrgb8888_to_mono =========== [22:36:01] ==================== drm_test_fb_swab ===================== [22:36:01] [PASSED] single_pixel_source_buffer [22:36:01] [PASSED] single_pixel_clip_rectangle [22:36:01] [PASSED] well_known_colors [22:36:01] [PASSED] destination_pitch [22:36:01] ================ [PASSED] drm_test_fb_swab ================= [22:36:01] ================= drm_test_fb_clip_offset ================= [22:36:01] [PASSED] pass through [22:36:01] [PASSED] horizontal offset [22:36:01] [PASSED] vertical offset [22:36:01] [PASSED] horizontal and vertical offset [22:36:01] [PASSED] horizontal offset (custom pitch) [22:36:01] [PASSED] vertical offset (custom pitch) [22:36:01] [PASSED] horizontal and vertical offset (custom pitch) [22:36:01] ============= [PASSED] drm_test_fb_clip_offset ============= [22:36:01] ============== drm_test_fb_build_fourcc_list ============== [22:36:01] [PASSED] no native formats [22:36:01] [PASSED] XRGB8888 as native format [22:36:01] [PASSED] remove duplicates [22:36:01] [PASSED] convert alpha formats [22:36:01] [PASSED] random formats [22:36:01] ========== [PASSED] drm_test_fb_build_fourcc_list ========== [22:36:01] =================== drm_test_fb_memcpy ==================== [22:36:01] [PASSED] single_pixel_source_buffer: XR24 little-endian (0x34325258) [22:36:01] [PASSED] single_pixel_source_buffer: XRA8 little-endian (0x38415258) [22:36:01] [PASSED] single_pixel_source_buffer: YU24 little-endian (0x34325559) [22:36:01] [PASSED] single_pixel_clip_rectangle: XB24 little-endian (0x34324258) [22:36:01] [PASSED] single_pixel_clip_rectangle: XRA8 little-endian (0x38415258) [22:36:01] [PASSED] single_pixel_clip_rectangle: YU24 little-endian (0x34325559) [22:36:01] [PASSED] well_known_colors: XB24 little-endian (0x34324258) [22:36:01] [PASSED] well_known_colors: XRA8 little-endian (0x38415258) [22:36:01] [PASSED] well_known_colors: YU24 little-endian (0x34325559) [22:36:01] [PASSED] destination_pitch: XB24 little-endian (0x34324258) [22:36:01] [PASSED] destination_pitch: XRA8 little-endian (0x38415258) [22:36:01] [PASSED] destination_pitch: YU24 little-endian (0x34325559) [22:36:01] =============== [PASSED] drm_test_fb_memcpy ================ [22:36:01] ============= [PASSED] drm_format_helper_test ============== [22:36:01] ======================= drm_format ======================== [22:36:01] [PASSED] drm_test_format_block_width_invalid [22:36:01] [PASSED] drm_test_format_block_width_one_plane [22:36:01] [PASSED] drm_test_format_block_width_two_plane [22:36:01] [PASSED] drm_test_format_block_width_three_plane [22:36:01] [PASSED] drm_test_format_block_width_tiled [22:36:01] [PASSED] drm_test_format_block_height_invalid [22:36:01] [PASSED] drm_test_format_block_height_one_plane [22:36:01] [PASSED] drm_test_format_block_height_two_plane [22:36:01] [PASSED] drm_test_format_block_height_three_plane [22:36:01] [PASSED] drm_test_format_block_height_tiled [22:36:01] [PASSED] drm_test_format_min_pitch_invalid [22:36:01] [PASSED] drm_test_format_min_pitch_one_plane_8bpp [22:36:01] [PASSED] drm_test_format_min_pitch_one_plane_16bpp [22:36:01] [PASSED] drm_test_format_min_pitch_one_plane_24bpp [22:36:01] [PASSED] drm_test_format_min_pitch_one_plane_32bpp [22:36:01] [PASSED] drm_test_format_min_pitch_two_plane [22:36:01] [PASSED] drm_test_format_min_pitch_three_plane_8bpp [22:36:01] [PASSED] drm_test_format_min_pitch_tiled [22:36:01] =================== [PASSED] drm_format ==================== [22:36:01] ===================== drm_framebuffer ===================== [22:36:01] =============== drm_test_framebuffer_create =============== [22:36:01] [PASSED] ABGR8888 normal sizes [22:36:01] [PASSED] ABGR8888 max sizes [22:36:01] [PASSED] ABGR8888 pitch greater than min required [22:36:01] [PASSED] ABGR8888 pitch less than min required [22:36:01] [PASSED] ABGR8888 Invalid width [22:36:01] [PASSED] ABGR8888 Invalid buffer handle [22:36:01] [PASSED] No pixel format [22:36:01] [PASSED] ABGR8888 Width 0 [22:36:01] [PASSED] ABGR8888 Height 0 [22:36:01] [PASSED] ABGR8888 Out of bound height * pitch combination [22:36:01] [PASSED] ABGR8888 Large buffer offset [22:36:01] [PASSED] ABGR8888 Set DRM_MODE_FB_MODIFIERS without modifiers [22:36:01] [PASSED] ABGR8888 Valid buffer modifier [22:36:01] [PASSED] ABGR8888 Invalid buffer modifier(DRM_FORMAT_MOD_SAMSUNG_64_32_TILE) [22:36:01] [PASSED] ABGR8888 Extra pitches without DRM_MODE_FB_MODIFIERS [22:36:01] [PASSED] ABGR8888 Extra pitches with DRM_MODE_FB_MODIFIERS [22:36:01] [PASSED] NV12 Normal sizes [22:36:01] [PASSED] NV12 Max sizes [22:36:01] [PASSED] NV12 Invalid pitch [22:36:01] [PASSED] NV12 Invalid modifier/missing DRM_MODE_FB_MODIFIERS flag [22:36:01] [PASSED] NV12 different modifier per-plane [22:36:01] [PASSED] NV12 with DRM_FORMAT_MOD_SAMSUNG_64_32_TILE [22:36:01] [PASSED] NV12 Valid modifiers without DRM_MODE_FB_MODIFIERS [22:36:01] [PASSED] NV12 Modifier for inexistent plane [22:36:01] [PASSED] NV12 Handle for inexistent plane [22:36:01] [PASSED] NV12 Handle for inexistent plane without DRM_MODE_FB_MODIFIERS [22:36:01] [PASSED] YVU420 DRM_MODE_FB_MODIFIERS set without modifier [22:36:01] [PASSED] YVU420 Normal sizes [22:36:01] [PASSED] YVU420 Max sizes [22:36:01] [PASSED] YVU420 Invalid pitch [22:36:01] [PASSED] YVU420 Different pitches [22:36:01] [PASSED] YVU420 Different buffer offsets/pitches [22:36:01] [PASSED] YVU420 Modifier set just for plane 0, without DRM_MODE_FB_MODIFIERS [22:36:01] [PASSED] YVU420 Modifier set just for planes 0, 1, without DRM_MODE_FB_MODIFIERS [22:36:01] [PASSED] YVU420 Modifier set just for plane 0, 1, with DRM_MODE_FB_MODIFIERS [22:36:01] [PASSED] YVU420 Valid modifier [22:36:01] [PASSED] YVU420 Different modifiers per plane [22:36:01] [PASSED] YVU420 Modifier for inexistent plane [22:36:01] [PASSED] X0L2 Normal sizes [22:36:01] [PASSED] X0L2 Max sizes [22:36:01] [PASSED] X0L2 Invalid pitch [22:36:01] [PASSED] X0L2 Pitch greater than minimum required [22:36:01] [PASSED] X0L2 Handle for inexistent plane [22:36:01] [PASSED] X0L2 Offset for inexistent plane, without DRM_MODE_FB_MODIFIERS set [22:36:01] [PASSED] X0L2 Modifier without DRM_MODE_FB_MODIFIERS set [22:36:01] [PASSED] X0L2 Valid modifier [22:36:01] [PASSED] X0L2 Modifier for inexistent plane [22:36:01] =========== [PASSED] drm_test_framebuffer_create =========== [22:36:01] ================= [PASSED] drm_framebuffer ================= [22:36:01] ==================== drm-test-managed ===================== [22:36:01] [PASSED] drm_test_managed_run_action [22:36:01] ================ [PASSED] drm-test-managed ================= [22:36:01] ========================= drm_mm ========================== [22:36:01] [PASSED] drm_test_mm_init [22:36:02] [PASSED] drm_test_mm_debug [22:36:12] [PASSED] drm_test_mm_reserve [22:36:22] [PASSED] drm_test_mm_insert [22:36:23] [PASSED] drm_test_mm_replace [22:36:23] [PASSED] drm_test_mm_insert_range [22:36:23] [PASSED] drm_test_mm_frag [22:36:23] [PASSED] drm_test_mm_align [22:36:23] [PASSED] drm_test_mm_align32 [22:36:23] [PASSED] drm_test_mm_align64 [22:36:23] [PASSED] drm_test_mm_evict [22:36:23] [PASSED] drm_test_mm_evict_range [22:36:23] [PASSED] drm_test_mm_topdown [22:36:23] [PASSED] drm_test_mm_bottomup [22:36:23] [PASSED] drm_test_mm_lowest [22:36:23] [PASSED] drm_test_mm_highest [22:36:24] [PASSED] drm_test_mm_color [22:36:25] [PASSED] drm_test_mm_color_evict [22:36:25] [PASSED] drm_test_mm_color_evict_range [22:36:25] ===================== [PASSED] drm_mm ====================== [22:36:25] =================== drm_modes_analog_tv =================== [22:36:25] [PASSED] drm_test_modes_analog_tv_ntsc_480i [22:36:25] [PASSED] drm_test_modes_analog_tv_ntsc_480i_inlined [22:36:25] [PASSED] drm_test_modes_analog_tv_pal_576i [22:36:25] [PASSED] drm_test_modes_analog_tv_pal_576i_inlined [22:36:25] =============== [PASSED] drm_modes_analog_tv =============== [22:36:25] ==================== drm_plane_helper ===================== [22:36:25] =============== drm_test_check_plane_state ================ [22:36:25] [PASSED] clipping_simple [22:36:25] [PASSED] clipping_rotate_reflect [22:36:25] [PASSED] positioning_simple [22:36:25] [PASSED] upscaling [22:36:25] [PASSED] downscaling [22:36:25] [PASSED] rounding1 [22:36:25] [PASSED] rounding2 [22:36:25] [PASSED] rounding3 [22:36:25] [PASSED] rounding4 [22:36:25] =========== [PASSED] drm_test_check_plane_state ============ [22:36:25] =========== drm_test_check_invalid_plane_state ============ [22:36:25] [PASSED] positioning_invalid [22:36:25] [PASSED] upscaling_invalid [22:36:25] [PASSED] downscaling_invalid [22:36:25] ======= [PASSED] drm_test_check_invalid_plane_state ======== [22:36:25] ================ [PASSED] drm_plane_helper ================= [22:36:25] ============ drm_connector_helper_tv_get_modes ============ [22:36:25] ====== drm_test_connector_helper_tv_get_modes_check ======= [22:36:25] [PASSED] None [22:36:25] [PASSED] PAL [22:36:25] [PASSED] NTSC [22:36:25] [PASSED] Both, NTSC Default [22:36:25] [PASSED] Both, PAL Default [22:36:25] [PASSED] Both, NTSC Default, with PAL on command-line [22:36:25] [PASSED] Both, PAL Default, with NTSC on command-line [22:36:25] == [PASSED] drm_test_connector_helper_tv_get_modes_check === [22:36:25] ======== [PASSED] drm_connector_helper_tv_get_modes ======== [22:36:25] ======================== drm_rect ========================= [22:36:25] [PASSED] drm_test_rect_clip_scaled_div_by_zero [22:36:25] [PASSED] drm_test_rect_clip_scaled_not_clipped [22:36:25] [PASSED] drm_test_rect_clip_scaled_clipped [22:36:25] [PASSED] drm_test_rect_clip_scaled_signed_vs_unsigned [22:36:25] ================= drm_test_rect_intersect ================= [22:36:25] [PASSED] top-left x bottom-right: 2x2+1+1 x 2x2+0+0 [22:36:25] [PASSED] top-right x bottom-left: 2x2+0+0 x 2x2+1-1 [22:36:25] [PASSED] bottom-left x top-right: 2x2+1-1 x 2x2+0+0 [22:36:25] [PASSED] bottom-right x top-left: 2x2+0+0 x 2x2+1+1 [22:36:25] [PASSED] right x left: 2x1+0+0 x 3x1+1+0 [22:36:25] [PASSED] left x right: 3x1+1+0 x 2x1+0+0 [22:36:25] [PASSED] up x bottom: 1x2+0+0 x 1x3+0-1 [22:36:25] [PASSED] bottom x up: 1x3+0-1 x 1x2+0+0 [22:36:25] [PASSED] touching corner: 1x1+0+0 x 2x2+1+1 [22:36:25] [PASSED] touching side: 1x1+0+0 x 1x1+1+0 [22:36:25] [PASSED] equal rects: 2x2+0+0 x 2x2+0+0 [22:36:25] [PASSED] inside another: 2x2+0+0 x 1x1+1+1 [22:36:25] [PASSED] far away: 1x1+0+0 x 1x1+3+6 [22:36:25] [PASSED] points intersecting: 0x0+5+10 x 0x0+5+10 [22:36:25] [PASSED] points not intersecting: 0x0+0+0 x 0x0+5+10 [22:36:25] ============= [PASSED] drm_test_rect_intersect ============= [22:36:25] ================ drm_test_rect_calc_hscale ================ [22:36:25] [PASSED] normal use [22:36:25] [PASSED] out of max range [22:36:25] [PASSED] out of min range [22:36:25] [PASSED] zero dst [22:36:25] [PASSED] negative src [22:36:25] [PASSED] negative dst [22:36:25] ============ [PASSED] drm_test_rect_calc_hscale ============ [22:36:25] ================ drm_test_rect_calc_vscale ================ [22:36:25] [PASSED] normal use [22:36:25] [PASSED] out of max range [22:36:25] [PASSED] out of min range [22:36:25] [PASSED] zero dst [22:36:25] [PASSED] negative src [22:36:25] [PASSED] negative dst [22:36:25] ============ [PASSED] drm_test_rect_calc_vscale ============ [22:36:25] ================== drm_test_rect_rotate =================== [22:36:25] [PASSED] reflect-x [22:36:25] [PASSED] reflect-y [22:36:25] [PASSED] rotate-0 [22:36:25] [PASSED] rotate-90 [22:36:25] [PASSED] rotate-180 [22:36:25] [PASSED] rotate-270 [22:36:25] ============== [PASSED] drm_test_rect_rotate =============== [22:36:25] ================ drm_test_rect_rotate_inv ================= [22:36:25] [PASSED] reflect-x [22:36:25] [PASSED] reflect-y [22:36:25] [PASSED] rotate-0 [22:36:25] [PASSED] rotate-90 [22:36:25] [PASSED] rotate-180 [22:36:25] [PASSED] rotate-270 [22:36:25] ============ [PASSED] drm_test_rect_rotate_inv ============= stty: 'standard input': Inappropriate ioctl for device [22:36:25] ==================== [PASSED] drm_rect ===================== [22:36:25] ======================== drm_exec ========================= [22:36:25] [PASSED] sanitycheck [22:36:25] [PASSED] test_lock [22:36:25] [PASSED] test_lock_unlock [22:36:25] [PASSED] test_duplicates [22:36:25] [PASSED] test_prepare [22:36:25] [PASSED] test_prepare_array [22:36:25] [PASSED] test_multiple_loops [22:36:25] ==================== [PASSED] drm_exec ===================== [22:36:25] ============================================================ [22:36:25] Testing complete. Ran 368 tests: passed: 368 [22:36:25] Elapsed time: 44.295s total, 1.674s configuring, 19.140s building, 23.474s running + cleanup ++ stat -c %u:%g /kernel + chown -R 1003:1003 /kernel ^ permalink raw reply [flat|nested] 14+ messages in thread
* ✓ CI.Build: success for drm/xe/uapi: Uniform async vs sync handling (rev3) 2023-12-13 22:29 [PATCH v3] drm/xe/uapi: Uniform async vs sync handling Matthew Brost ` (2 preceding siblings ...) 2023-12-13 22:36 ` ✓ CI.KUnit: " Patchwork @ 2023-12-13 22:43 ` Patchwork 2023-12-13 22:44 ` ✓ CI.Hooks: " Patchwork ` (4 subsequent siblings) 8 siblings, 0 replies; 14+ messages in thread From: Patchwork @ 2023-12-13 22:43 UTC (permalink / raw) To: Matthew Brost; +Cc: intel-xe == Series Details == Series: drm/xe/uapi: Uniform async vs sync handling (rev3) URL : https://patchwork.freedesktop.org/series/127442/ State : success == Summary == + trap cleanup EXIT + cd /kernel + git clone https://gitlab.freedesktop.org/drm/xe/ci.git .ci Cloning into '.ci'... + '[' -n '' ']' ++ date +%s + echo -e '\e[0Ksection_start:1702506995:build_x86_64[collapsed=true]\r\e[0KBuild x86-64' + mkdir -p build64-default ^[[0Ksection_start:1702506995:build_x86_64[collapsed=true] ^[[0KBuild x86-64 + cp .ci/kernel/kconfig build64-default/.config + make O=build64-default olddefconfig make[1]: Entering directory '/kernel/build64-default' GEN Makefile HOSTCC scripts/basic/fixdep HOSTCC scripts/kconfig/conf.o HOSTCC scripts/kconfig/confdata.o HOSTCC scripts/kconfig/expr.o LEX scripts/kconfig/lexer.lex.c YACC scripts/kconfig/parser.tab.[ch] HOSTCC scripts/kconfig/lexer.lex.o HOSTCC scripts/kconfig/menu.o HOSTCC scripts/kconfig/parser.tab.o HOSTCC scripts/kconfig/preprocess.o HOSTCC scripts/kconfig/symbol.o HOSTCC scripts/kconfig/util.o HOSTLD scripts/kconfig/conf # # configuration written to .config # make[1]: Leaving directory '/kernel/build64-default' ++ nproc + make O=build64-default -j48 make[1]: Entering directory '/kernel/build64-default' GEN Makefile WRAP arch/x86/include/generated/uapi/asm/bpf_perf_event.h WRAP arch/x86/include/generated/uapi/asm/errno.h WRAP arch/x86/include/generated/uapi/asm/fcntl.h WRAP arch/x86/include/generated/uapi/asm/ioctl.h WRAP arch/x86/include/generated/uapi/asm/ioctls.h WRAP arch/x86/include/generated/uapi/asm/ipcbuf.h WRAP arch/x86/include/generated/uapi/asm/param.h SYSHDR arch/x86/include/generated/uapi/asm/unistd_32.h WRAP arch/x86/include/generated/uapi/asm/poll.h WRAP arch/x86/include/generated/uapi/asm/resource.h SYSHDR arch/x86/include/generated/uapi/asm/unistd_64.h GEN arch/x86/include/generated/asm/orc_hash.h WRAP arch/x86/include/generated/uapi/asm/socket.h SYSHDR arch/x86/include/generated/uapi/asm/unistd_x32.h SYSTBL arch/x86/include/generated/asm/syscalls_32.h WRAP arch/x86/include/generated/uapi/asm/sockios.h SYSHDR arch/x86/include/generated/asm/unistd_64_x32.h SYSHDR arch/x86/include/generated/asm/unistd_32_ia32.h WRAP arch/x86/include/generated/uapi/asm/termbits.h WRAP arch/x86/include/generated/uapi/asm/termios.h SYSTBL arch/x86/include/generated/asm/syscalls_64.h WRAP arch/x86/include/generated/uapi/asm/types.h HOSTCC arch/x86/tools/relocs_32.o HOSTCC arch/x86/tools/relocs_64.o WRAP arch/x86/include/generated/asm/early_ioremap.h HOSTCC arch/x86/tools/relocs_common.o WRAP arch/x86/include/generated/asm/export.h WRAP arch/x86/include/generated/asm/mcs_spinlock.h WRAP arch/x86/include/generated/asm/irq_regs.h WRAP arch/x86/include/generated/asm/kmap_size.h WRAP arch/x86/include/generated/asm/local64.h WRAP arch/x86/include/generated/asm/mmiowb.h WRAP arch/x86/include/generated/asm/module.lds.h WRAP arch/x86/include/generated/asm/rwonce.h WRAP arch/x86/include/generated/asm/unaligned.h UPD include/generated/uapi/linux/version.h UPD include/config/kernel.release HOSTCC scripts/kallsyms HOSTCC scripts/sorttable HOSTCC scripts/asn1_compiler UPD include/generated/compile.h HOSTCC scripts/unifdef UPD include/generated/utsrelease.h DESCEND objtool HOSTCC /kernel/build64-default/tools/objtool/fixdep.o HOSTLD /kernel/build64-default/tools/objtool/fixdep-in.o LINK /kernel/build64-default/tools/objtool/fixdep HOSTLD arch/x86/tools/relocs INSTALL /kernel/build64-default/tools/objtool/libsubcmd/include/subcmd/exec-cmd.h INSTALL /kernel/build64-default/tools/objtool/libsubcmd/include/subcmd/help.h INSTALL /kernel/build64-default/tools/objtool/libsubcmd/include/subcmd/parse-options.h INSTALL /kernel/build64-default/tools/objtool/libsubcmd/include/subcmd/pager.h INSTALL /kernel/build64-default/tools/objtool/libsubcmd/include/subcmd/run-command.h CC /kernel/build64-default/tools/objtool/libsubcmd/exec-cmd.o CC /kernel/build64-default/tools/objtool/libsubcmd/help.o INSTALL libsubcmd_headers CC /kernel/build64-default/tools/objtool/libsubcmd/pager.o CC /kernel/build64-default/tools/objtool/libsubcmd/parse-options.o CC /kernel/build64-default/tools/objtool/libsubcmd/run-command.o CC /kernel/build64-default/tools/objtool/libsubcmd/sigchain.o CC /kernel/build64-default/tools/objtool/libsubcmd/subcmd-config.o CC scripts/mod/empty.o HOSTCC scripts/mod/mk_elfconfig CC scripts/mod/devicetable-offsets.s HDRINST usr/include/video/edid.h HDRINST usr/include/video/sisfb.h HDRINST usr/include/video/uvesafb.h HDRINST usr/include/drm/amdgpu_drm.h HDRINST usr/include/drm/qaic_accel.h HDRINST usr/include/drm/i915_drm.h HDRINST usr/include/drm/vgem_drm.h HDRINST usr/include/drm/virtgpu_drm.h HDRINST usr/include/drm/xe_drm.h HDRINST usr/include/drm/omap_drm.h HDRINST usr/include/drm/radeon_drm.h HDRINST usr/include/drm/tegra_drm.h HDRINST usr/include/drm/drm_mode.h HDRINST usr/include/drm/ivpu_accel.h HDRINST usr/include/drm/exynos_drm.h HDRINST usr/include/drm/drm_sarea.h HDRINST usr/include/drm/v3d_drm.h HDRINST usr/include/drm/qxl_drm.h HDRINST usr/include/drm/drm_fourcc.h HDRINST usr/include/drm/nouveau_drm.h HDRINST usr/include/drm/habanalabs_accel.h HDRINST usr/include/drm/vmwgfx_drm.h HDRINST usr/include/drm/msm_drm.h HDRINST usr/include/drm/etnaviv_drm.h HDRINST usr/include/drm/vc4_drm.h HDRINST usr/include/drm/panfrost_drm.h HDRINST usr/include/drm/lima_drm.h HDRINST usr/include/drm/drm.h HDRINST usr/include/drm/armada_drm.h HDRINST usr/include/mtd/inftl-user.h HDRINST usr/include/mtd/nftl-user.h HDRINST usr/include/mtd/mtd-user.h HDRINST usr/include/mtd/ubi-user.h HDRINST usr/include/mtd/mtd-abi.h HDRINST usr/include/xen/gntdev.h HDRINST usr/include/xen/gntalloc.h HDRINST usr/include/xen/evtchn.h HDRINST usr/include/xen/privcmd.h HDRINST usr/include/asm-generic/auxvec.h HDRINST usr/include/asm-generic/bitsperlong.h HDRINST usr/include/asm-generic/posix_types.h HDRINST usr/include/asm-generic/ioctls.h HDRINST usr/include/asm-generic/mman.h HDRINST usr/include/asm-generic/shmbuf.h HDRINST usr/include/asm-generic/bpf_perf_event.h HDRINST usr/include/asm-generic/types.h HDRINST usr/include/asm-generic/poll.h HDRINST usr/include/asm-generic/msgbuf.h HDRINST usr/include/asm-generic/swab.h HDRINST usr/include/asm-generic/statfs.h HDRINST usr/include/asm-generic/unistd.h HDRINST usr/include/asm-generic/hugetlb_encode.h UPD scripts/mod/devicetable-offsets.h HDRINST usr/include/asm-generic/resource.h HDRINST usr/include/asm-generic/param.h HDRINST usr/include/asm-generic/termbits-common.h HDRINST usr/include/asm-generic/sockios.h HDRINST usr/include/asm-generic/kvm_para.h HDRINST usr/include/asm-generic/errno.h HDRINST usr/include/asm-generic/termios.h HDRINST usr/include/asm-generic/mman-common.h HDRINST usr/include/asm-generic/ioctl.h HDRINST usr/include/asm-generic/socket.h HDRINST usr/include/asm-generic/signal-defs.h HDRINST usr/include/asm-generic/termbits.h HDRINST usr/include/asm-generic/int-ll64.h HDRINST usr/include/asm-generic/signal.h HDRINST usr/include/asm-generic/siginfo.h HDRINST usr/include/asm-generic/stat.h HDRINST usr/include/asm-generic/int-l64.h HDRINST usr/include/asm-generic/errno-base.h HDRINST usr/include/asm-generic/fcntl.h HDRINST usr/include/asm-generic/setup.h HDRINST usr/include/asm-generic/ipcbuf.h HDRINST usr/include/asm-generic/sembuf.h HDRINST usr/include/asm-generic/ucontext.h HDRINST usr/include/rdma/mlx5_user_ioctl_cmds.h HDRINST usr/include/rdma/irdma-abi.h HDRINST usr/include/rdma/mana-abi.h HDRINST usr/include/rdma/hfi/hfi1_user.h HDRINST usr/include/rdma/hfi/hfi1_ioctl.h HDRINST usr/include/rdma/rdma_user_rxe.h HDRINST usr/include/rdma/rdma_user_ioctl.h HDRINST usr/include/rdma/mlx5_user_ioctl_verbs.h HDRINST usr/include/rdma/bnxt_re-abi.h HDRINST usr/include/rdma/hns-abi.h HDRINST usr/include/rdma/qedr-abi.h HDRINST usr/include/rdma/ib_user_ioctl_cmds.h HDRINST usr/include/rdma/vmw_pvrdma-abi.h HDRINST usr/include/rdma/ib_user_sa.h HDRINST usr/include/rdma/ib_user_ioctl_verbs.h HDRINST usr/include/rdma/rvt-abi.h HDRINST usr/include/rdma/mlx5-abi.h HDRINST usr/include/rdma/rdma_netlink.h MKELF scripts/mod/elfconfig.h HDRINST usr/include/rdma/erdma-abi.h HDRINST usr/include/rdma/rdma_user_ioctl_cmds.h HDRINST usr/include/rdma/rdma_user_cm.h HDRINST usr/include/rdma/ib_user_verbs.h HDRINST usr/include/rdma/efa-abi.h HOSTCC scripts/mod/modpost.o HDRINST usr/include/rdma/siw-abi.h HOSTCC scripts/mod/file2alias.o HDRINST usr/include/rdma/mlx4-abi.h HOSTCC scripts/mod/sumversion.o HDRINST usr/include/rdma/mthca-abi.h HDRINST usr/include/rdma/ib_user_mad.h HDRINST usr/include/rdma/ocrdma-abi.h HDRINST usr/include/rdma/cxgb4-abi.h HDRINST usr/include/misc/xilinx_sdfec.h HDRINST usr/include/misc/uacce/hisi_qm.h HDRINST usr/include/misc/uacce/uacce.h HDRINST usr/include/misc/cxl.h HDRINST usr/include/misc/ocxl.h HDRINST usr/include/misc/fastrpc.h HDRINST usr/include/misc/pvpanic.h HDRINST usr/include/linux/i8k.h HDRINST usr/include/linux/acct.h HDRINST usr/include/linux/atmmpc.h HDRINST usr/include/linux/fs.h HDRINST usr/include/linux/cifs/cifs_mount.h HDRINST usr/include/linux/cifs/cifs_netlink.h HDRINST usr/include/linux/if_packet.h HDRINST usr/include/linux/route.h HDRINST usr/include/linux/patchkey.h HDRINST usr/include/linux/tc_ematch/tc_em_cmp.h HDRINST usr/include/linux/tc_ematch/tc_em_ipt.h HDRINST usr/include/linux/tc_ematch/tc_em_meta.h HDRINST usr/include/linux/tc_ematch/tc_em_nbyte.h HDRINST usr/include/linux/tc_ematch/tc_em_text.h HDRINST usr/include/linux/virtio_pmem.h HDRINST usr/include/linux/rkisp1-config.h HDRINST usr/include/linux/vhost.h HDRINST usr/include/linux/cec-funcs.h HDRINST usr/include/linux/ppdev.h HDRINST usr/include/linux/isdn/capicmd.h HDRINST usr/include/linux/virtio_fs.h HDRINST usr/include/linux/netfilter_ipv6.h HDRINST usr/include/linux/lirc.h HDRINST usr/include/linux/mroute6.h HDRINST usr/include/linux/nl80211-vnd-intel.h HDRINST usr/include/linux/ivtvfb.h HDRINST usr/include/linux/auxvec.h HDRINST usr/include/linux/dm-log-userspace.h HDRINST usr/include/linux/dccp.h HDRINST usr/include/linux/virtio_scmi.h HDRINST usr/include/linux/atmarp.h HDRINST usr/include/linux/arcfb.h HDRINST usr/include/linux/nbd-netlink.h HDRINST usr/include/linux/sched/types.h HDRINST usr/include/linux/tcp.h HDRINST usr/include/linux/neighbour.h HDRINST usr/include/linux/dlm_device.h HDRINST usr/include/linux/wmi.h HDRINST usr/include/linux/btrfs_tree.h HDRINST usr/include/linux/virtio_crypto.h HDRINST usr/include/linux/vbox_err.h HDRINST usr/include/linux/edd.h HDRINST usr/include/linux/loop.h HDRINST usr/include/linux/nvme_ioctl.h HDRINST usr/include/linux/mmtimer.h HDRINST usr/include/linux/if_pppol2tp.h HDRINST usr/include/linux/mtio.h HDRINST usr/include/linux/if_arcnet.h HDRINST usr/include/linux/romfs_fs.h HDRINST usr/include/linux/posix_types.h HDRINST usr/include/linux/rtc.h HDRINST usr/include/linux/landlock.h HDRINST usr/include/linux/gpio.h HDRINST usr/include/linux/selinux_netlink.h HDRINST usr/include/linux/pps.h HDRINST usr/include/linux/ndctl.h HDRINST usr/include/linux/virtio_gpu.h HDRINST usr/include/linux/android/binderfs.h HDRINST usr/include/linux/android/binder.h HDRINST usr/include/linux/virtio_vsock.h HDRINST usr/include/linux/sound.h HDRINST usr/include/linux/vtpm_proxy.h HDRINST usr/include/linux/nfs_fs.h HDRINST usr/include/linux/elf-fdpic.h HDRINST usr/include/linux/adfs_fs.h HDRINST usr/include/linux/target_core_user.h HDRINST usr/include/linux/netlink_diag.h HDRINST usr/include/linux/const.h HDRINST usr/include/linux/firewire-cdev.h HDRINST usr/include/linux/vdpa.h HDRINST usr/include/linux/if_infiniband.h HDRINST usr/include/linux/serial.h HDRINST usr/include/linux/iio/types.h HDRINST usr/include/linux/iio/buffer.h HDRINST usr/include/linux/iio/events.h HDRINST usr/include/linux/major.h HDRINST usr/include/linux/baycom.h HDRINST usr/include/linux/atmppp.h HDRINST usr/include/linux/ipv6_route.h HDRINST usr/include/linux/spi/spidev.h HDRINST usr/include/linux/spi/spi.h HDRINST usr/include/linux/virtio_ring.h HDRINST usr/include/linux/hdlc/ioctl.h HDRINST usr/include/linux/remoteproc_cdev.h HDRINST usr/include/linux/hyperv.h HDRINST usr/include/linux/rpl_iptunnel.h HDRINST usr/include/linux/sync_file.h HDRINST usr/include/linux/igmp.h HDRINST usr/include/linux/v4l2-dv-timings.h HDRINST usr/include/linux/virtio_i2c.h HDRINST usr/include/linux/xfrm.h HDRINST usr/include/linux/capability.h HDRINST usr/include/linux/gtp.h HDRINST usr/include/linux/xdp_diag.h HDRINST usr/include/linux/pkt_cls.h HDRINST usr/include/linux/suspend_ioctls.h HDRINST usr/include/linux/vt.h HDRINST usr/include/linux/loadpin.h HDRINST usr/include/linux/dlm_plock.h HDRINST usr/include/linux/fb.h HDRINST usr/include/linux/max2175.h HDRINST usr/include/linux/sunrpc/debug.h HDRINST usr/include/linux/gsmmux.h HDRINST usr/include/linux/watchdog.h HDRINST usr/include/linux/vhost_types.h HDRINST usr/include/linux/vduse.h HDRINST usr/include/linux/ila.h HDRINST usr/include/linux/tdx-guest.h HDRINST usr/include/linux/close_range.h HDRINST usr/include/linux/ivtv.h HDRINST usr/include/linux/cryptouser.h HDRINST usr/include/linux/netfilter/xt_string.h HDRINST usr/include/linux/netfilter/nfnetlink_compat.h HDRINST usr/include/linux/netfilter/nf_nat.h HDRINST usr/include/linux/netfilter/xt_recent.h HDRINST usr/include/linux/netfilter/xt_addrtype.h HDRINST usr/include/linux/netfilter/nf_conntrack_tcp.h HDRINST usr/include/linux/netfilter/xt_MARK.h HDRINST usr/include/linux/netfilter/xt_SYNPROXY.h HDRINST usr/include/linux/netfilter/xt_multiport.h HDRINST usr/include/linux/netfilter/nfnetlink.h HDRINST usr/include/linux/netfilter/xt_cgroup.h HDRINST usr/include/linux/netfilter/nf_synproxy.h HDRINST usr/include/linux/netfilter/xt_TCPOPTSTRIP.h HDRINST usr/include/linux/netfilter/nfnetlink_log.h HDRINST usr/include/linux/netfilter/xt_TPROXY.h HDRINST usr/include/linux/netfilter/xt_u32.h HDRINST usr/include/linux/netfilter/nfnetlink_osf.h HDRINST usr/include/linux/netfilter/xt_ecn.h HDRINST usr/include/linux/netfilter/xt_esp.h HDRINST usr/include/linux/netfilter/nfnetlink_hook.h HDRINST usr/include/linux/netfilter/xt_mac.h HDRINST usr/include/linux/netfilter/xt_comment.h HDRINST usr/include/linux/netfilter/xt_NFQUEUE.h HDRINST usr/include/linux/netfilter/xt_osf.h HDRINST usr/include/linux/netfilter/xt_hashlimit.h HDRINST usr/include/linux/netfilter/nf_conntrack_sctp.h HDRINST usr/include/linux/netfilter/xt_socket.h HDRINST usr/include/linux/netfilter/xt_connmark.h HDRINST usr/include/linux/netfilter/xt_sctp.h HDRINST usr/include/linux/netfilter/xt_tcpudp.h HDRINST usr/include/linux/netfilter/xt_DSCP.h HDRINST usr/include/linux/netfilter/xt_time.h HDRINST usr/include/linux/netfilter/xt_IDLETIMER.h HDRINST usr/include/linux/netfilter/xt_policy.h HDRINST usr/include/linux/netfilter/xt_rpfilter.h HDRINST usr/include/linux/netfilter/xt_nfacct.h HDRINST usr/include/linux/netfilter/xt_SECMARK.h HDRINST usr/include/linux/netfilter/xt_length.h HDRINST usr/include/linux/netfilter/nfnetlink_cthelper.h HDRINST usr/include/linux/netfilter/xt_quota.h HDRINST usr/include/linux/netfilter/xt_CLASSIFY.h HDRINST usr/include/linux/netfilter/xt_ipcomp.h HDRINST usr/include/linux/netfilter/xt_iprange.h HDRINST usr/include/linux/netfilter/xt_bpf.h HDRINST usr/include/linux/netfilter/xt_LOG.h HDRINST usr/include/linux/netfilter/xt_rateest.h HDRINST usr/include/linux/netfilter/xt_CONNSECMARK.h HDRINST usr/include/linux/netfilter/xt_HMARK.h HDRINST usr/include/linux/netfilter/xt_CONNMARK.h HDRINST usr/include/linux/netfilter/xt_pkttype.h HDRINST usr/include/linux/netfilter/xt_ipvs.h HDRINST usr/include/linux/netfilter/xt_devgroup.h HDRINST usr/include/linux/netfilter/xt_AUDIT.h HDRINST usr/include/linux/netfilter/xt_realm.h HDRINST usr/include/linux/netfilter/nf_conntrack_common.h HDRINST usr/include/linux/netfilter/xt_set.h HDRINST usr/include/linux/netfilter/xt_LED.h HDRINST usr/include/linux/netfilter/xt_connlabel.h HDRINST usr/include/linux/netfilter/xt_owner.h HDRINST usr/include/linux/netfilter/xt_dccp.h HDRINST usr/include/linux/netfilter/xt_limit.h HDRINST usr/include/linux/netfilter/xt_conntrack.h HDRINST usr/include/linux/netfilter/xt_TEE.h HDRINST usr/include/linux/netfilter/xt_RATEEST.h HDRINST usr/include/linux/netfilter/xt_connlimit.h HDRINST usr/include/linux/netfilter/ipset/ip_set.h HDRINST usr/include/linux/netfilter/ipset/ip_set_list.h HDRINST usr/include/linux/netfilter/ipset/ip_set_hash.h HDRINST usr/include/linux/netfilter/ipset/ip_set_bitmap.h HDRINST usr/include/linux/netfilter/x_tables.h HDRINST usr/include/linux/netfilter/xt_dscp.h HDRINST usr/include/linux/netfilter/nf_conntrack_ftp.h HDRINST usr/include/linux/netfilter/xt_cluster.h HDRINST usr/include/linux/netfilter/nf_conntrack_tuple_common.h HDRINST usr/include/linux/netfilter/nf_log.h HDRINST usr/include/linux/netfilter/xt_tcpmss.h HDRINST usr/include/linux/netfilter/xt_NFLOG.h HDRINST usr/include/linux/netfilter/xt_l2tp.h HDRINST usr/include/linux/netfilter/xt_helper.h HDRINST usr/include/linux/netfilter/xt_statistic.h HDRINST usr/include/linux/netfilter/nfnetlink_queue.h HDRINST usr/include/linux/netfilter/nfnetlink_cttimeout.h HDRINST usr/include/linux/netfilter/xt_CT.h HDRINST usr/include/linux/netfilter/xt_CHECKSUM.h HDRINST usr/include/linux/netfilter/xt_connbytes.h HDRINST usr/include/linux/netfilter/xt_state.h HDRINST usr/include/linux/netfilter/nf_tables.h HDRINST usr/include/linux/netfilter/xt_mark.h HDRINST usr/include/linux/netfilter/xt_cpu.h HDRINST usr/include/linux/netfilter/nf_tables_compat.h HDRINST usr/include/linux/netfilter/xt_physdev.h HDRINST usr/include/linux/netfilter/nfnetlink_conntrack.h HDRINST usr/include/linux/netfilter/nfnetlink_acct.h HDRINST usr/include/linux/netfilter/xt_TCPMSS.h HDRINST usr/include/linux/tty_flags.h HDRINST usr/include/linux/if_phonet.h HDRINST usr/include/linux/elf-em.h HDRINST usr/include/linux/dlmconstants.h HDRINST usr/include/linux/vm_sockets.h HDRINST usr/include/linux/bsg.h HDRINST usr/include/linux/matroxfb.h HDRINST usr/include/linux/sysctl.h HDRINST usr/include/linux/unix_diag.h HDRINST usr/include/linux/pcitest.h HDRINST usr/include/linux/mman.h HDRINST usr/include/linux/if_plip.h HDRINST usr/include/linux/virtio_balloon.h HDRINST usr/include/linux/pidfd.h HDRINST usr/include/linux/f2fs.h HDRINST usr/include/linux/x25.h HDRINST usr/include/linux/if_cablemodem.h HDRINST usr/include/linux/utsname.h HDRINST usr/include/linux/counter.h HDRINST usr/include/linux/atm_tcp.h HDRINST usr/include/linux/atalk.h HDRINST usr/include/linux/virtio_rng.h HDRINST usr/include/linux/vboxguest.h HDRINST usr/include/linux/bpf_perf_event.h HDRINST usr/include/linux/ipmi_ssif_bmc.h HDRINST usr/include/linux/nfs_mount.h HDRINST usr/include/linux/sonet.h HDRINST usr/include/linux/netfilter.h HDRINST usr/include/linux/keyctl.h HDRINST usr/include/linux/nl80211.h HDRINST usr/include/linux/misc/bcm_vk.h HDRINST usr/include/linux/audit.h HDRINST usr/include/linux/tipc_config.h HDRINST usr/include/linux/tipc_sockets_diag.h HDRINST usr/include/linux/futex.h HDRINST usr/include/linux/sev-guest.h HDRINST usr/include/linux/ublk_cmd.h HDRINST usr/include/linux/types.h HDRINST usr/include/linux/virtio_input.h HDRINST usr/include/linux/if_slip.h HDRINST usr/include/linux/personality.h HDRINST usr/include/linux/openat2.h HDRINST usr/include/linux/poll.h HDRINST usr/include/linux/posix_acl.h HDRINST usr/include/linux/smc_diag.h HDRINST usr/include/linux/snmp.h HDRINST usr/include/linux/errqueue.h HDRINST usr/include/linux/if_tunnel.h HDRINST usr/include/linux/fanotify.h HDRINST usr/include/linux/kernel.h HDRINST usr/include/linux/rtnetlink.h HDRINST usr/include/linux/rpl.h HDRINST usr/include/linux/memfd.h HDRINST usr/include/linux/serial_core.h HDRINST usr/include/linux/dns_resolver.h HDRINST usr/include/linux/pr.h HDRINST usr/include/linux/atm_eni.h HDRINST usr/include/linux/lp.h HDRINST usr/include/linux/ultrasound.h HDRINST usr/include/linux/virtio_mem.h HDRINST usr/include/linux/sctp.h HDRINST usr/include/linux/uio.h HDRINST usr/include/linux/tcp_metrics.h HDRINST usr/include/linux/wwan.h HDRINST usr/include/linux/atmbr2684.h HDRINST usr/include/linux/in_route.h HDRINST usr/include/linux/qemu_fw_cfg.h HDRINST usr/include/linux/if_macsec.h HDRINST usr/include/linux/usb/charger.h HDRINST usr/include/linux/usb/g_uvc.h HDRINST usr/include/linux/usb/gadgetfs.h HDRINST usr/include/linux/usb/raw_gadget.h HDRINST usr/include/linux/usb/cdc-wdm.h HDRINST usr/include/linux/usb/g_printer.h HDRINST usr/include/linux/usb/midi.h HDRINST usr/include/linux/usb/tmc.h HDRINST usr/include/linux/usb/video.h HDRINST usr/include/linux/usb/functionfs.h HDRINST usr/include/linux/usb/audio.h HDRINST usr/include/linux/usb/ch11.h HDRINST usr/include/linux/usb/ch9.h HDRINST usr/include/linux/usb/cdc.h HDRINST usr/include/linux/jffs2.h HDRINST usr/include/linux/ax25.h HDRINST usr/include/linux/auto_fs.h HDRINST usr/include/linux/tiocl.h HDRINST usr/include/linux/scc.h HDRINST usr/include/linux/psci.h HDRINST usr/include/linux/swab.h HDRINST usr/include/linux/cec.h HDRINST usr/include/linux/kfd_ioctl.h HDRINST usr/include/linux/smc.h HDRINST usr/include/linux/qrtr.h HDRINST usr/include/linux/screen_info.h HDRINST usr/include/linux/nfsacl.h HDRINST usr/include/linux/seg6_hmac.h HDRINST usr/include/linux/gameport.h HDRINST usr/include/linux/wireless.h HDRINST usr/include/linux/fdreg.h HDRINST usr/include/linux/cciss_defs.h HDRINST usr/include/linux/serial_reg.h HDRINST usr/include/linux/perf_event.h HDRINST usr/include/linux/in6.h HDRINST usr/include/linux/hid.h HDRINST usr/include/linux/netlink.h HDRINST usr/include/linux/magic.h HDRINST usr/include/linux/fuse.h HDRINST usr/include/linux/ioam6_iptunnel.h HDRINST usr/include/linux/stm.h HDRINST usr/include/linux/vsockmon.h HDRINST usr/include/linux/seg6.h HDRINST usr/include/linux/idxd.h HDRINST usr/include/linux/nitro_enclaves.h HDRINST usr/include/linux/ptrace.h HDRINST usr/include/linux/ioam6_genl.h HDRINST usr/include/linux/qnx4_fs.h HDRINST usr/include/linux/fsl_mc.h HDRINST usr/include/linux/net_tstamp.h HDRINST usr/include/linux/msg.h HDRINST usr/include/linux/netfilter_ipv4/ipt_TTL.h HDRINST usr/include/linux/netfilter_ipv4/ipt_ttl.h HDRINST usr/include/linux/netfilter_ipv4/ipt_ah.h HDRINST usr/include/linux/netfilter_ipv4/ipt_ECN.h HDRINST usr/include/linux/netfilter_ipv4/ip_tables.h HDRINST usr/include/linux/netfilter_ipv4/ipt_ecn.h HDRINST usr/include/linux/netfilter_ipv4/ipt_CLUSTERIP.h HDRINST usr/include/linux/netfilter_ipv4/ipt_REJECT.h HDRINST usr/include/linux/netfilter_ipv4/ipt_LOG.h HDRINST usr/include/linux/sem.h HDRINST usr/include/linux/net_namespace.h HDRINST usr/include/linux/radeonfb.h HDRINST usr/include/linux/tee.h HDRINST usr/include/linux/udp.h HDRINST usr/include/linux/virtio_bt.h HDRINST usr/include/linux/v4l2-subdev.h HDRINST usr/include/linux/posix_acl_xattr.h HDRINST usr/include/linux/v4l2-mediabus.h HDRINST usr/include/linux/atmapi.h HDRINST usr/include/linux/raid/md_p.h HDRINST usr/include/linux/raid/md_u.h HDRINST usr/include/linux/zorro_ids.h HDRINST usr/include/linux/nbd.h HDRINST usr/include/linux/isst_if.h HDRINST usr/include/linux/rxrpc.h HDRINST usr/include/linux/unistd.h HDRINST usr/include/linux/if_arp.h HDRINST usr/include/linux/atm_zatm.h HDRINST usr/include/linux/io_uring.h LD /kernel/build64-default/tools/objtool/libsubcmd/libsubcmd-in.o HDRINST usr/include/linux/if_fddi.h HDRINST usr/include/linux/bpqether.h HDRINST usr/include/linux/sysinfo.h HDRINST usr/include/linux/auto_dev-ioctl.h HDRINST usr/include/linux/nfs4_mount.h HDRINST usr/include/linux/keyboard.h HDRINST usr/include/linux/virtio_mmio.h HDRINST usr/include/linux/input.h HDRINST usr/include/linux/qnxtypes.h HDRINST usr/include/linux/mdio.h HDRINST usr/include/linux/lwtunnel.h HDRINST usr/include/linux/gfs2_ondisk.h HDRINST usr/include/linux/eventfd.h HDRINST usr/include/linux/nfs4.h HDRINST usr/include/linux/ptp_clock.h HDRINST usr/include/linux/nubus.h HDRINST usr/include/linux/if_bonding.h HDRINST usr/include/linux/kcov.h HDRINST usr/include/linux/fadvise.h HDRINST usr/include/linux/taskstats.h HDRINST usr/include/linux/veth.h HDRINST usr/include/linux/atm.h HDRINST usr/include/linux/ipmi.h HDRINST usr/include/linux/kdev_t.h HDRINST usr/include/linux/mount.h HDRINST usr/include/linux/shm.h HDRINST usr/include/linux/resource.h HDRINST usr/include/linux/prctl.h HDRINST usr/include/linux/watch_queue.h HDRINST usr/include/linux/sched.h HDRINST usr/include/linux/phonet.h HDRINST usr/include/linux/random.h HDRINST usr/include/linux/tty.h HDRINST usr/include/linux/apm_bios.h AR /kernel/build64-default/tools/objtool/libsubcmd/libsubcmd.a HDRINST usr/include/linux/fd.h HDRINST usr/include/linux/um_timetravel.h HDRINST usr/include/linux/tls.h HDRINST usr/include/linux/rpmsg_types.h HDRINST usr/include/linux/pfrut.h HDRINST usr/include/linux/mei.h HDRINST usr/include/linux/fsi.h HDRINST usr/include/linux/rds.h HDRINST usr/include/linux/if_x25.h HDRINST usr/include/linux/param.h HDRINST usr/include/linux/netdevice.h HDRINST usr/include/linux/binfmts.h HDRINST usr/include/linux/if_pppox.h HDRINST usr/include/linux/sockios.h HDRINST usr/include/linux/kcm.h HDRINST usr/include/linux/virtio_9p.h HDRINST usr/include/linux/genwqe/genwqe_card.h HDRINST usr/include/linux/if_tun.h HDRINST usr/include/linux/ext4.h HDRINST usr/include/linux/if_ether.h HDRINST usr/include/linux/kvm_para.h HDRINST usr/include/linux/kernel-page-flags.h HDRINST usr/include/linux/cdrom.h HDRINST usr/include/linux/un.h HDRINST usr/include/linux/module.h HDRINST usr/include/linux/mqueue.h HDRINST usr/include/linux/a.out.h HDRINST usr/include/linux/input-event-codes.h HDRINST usr/include/linux/coda.h HDRINST usr/include/linux/rio_mport_cdev.h HDRINST usr/include/linux/ipsec.h HDRINST usr/include/linux/blkpg.h HDRINST usr/include/linux/blkzoned.h HDRINST usr/include/linux/netfilter_bridge/ebt_arpreply.h HDRINST usr/include/linux/netfilter_bridge/ebt_redirect.h HDRINST usr/include/linux/netfilter_bridge/ebt_nflog.h HDRINST usr/include/linux/netfilter_bridge/ebt_802_3.h HDRINST usr/include/linux/netfilter_bridge/ebt_nat.h HDRINST usr/include/linux/netfilter_bridge/ebt_mark_m.h HDRINST usr/include/linux/netfilter_bridge/ebtables.h HDRINST usr/include/linux/netfilter_bridge/ebt_vlan.h HDRINST usr/include/linux/netfilter_bridge/ebt_limit.h HDRINST usr/include/linux/netfilter_bridge/ebt_log.h HDRINST usr/include/linux/netfilter_bridge/ebt_stp.h HDRINST usr/include/linux/netfilter_bridge/ebt_pkttype.h HDRINST usr/include/linux/netfilter_bridge/ebt_ip.h HDRINST usr/include/linux/netfilter_bridge/ebt_ip6.h HDRINST usr/include/linux/netfilter_bridge/ebt_arp.h HDRINST usr/include/linux/netfilter_bridge/ebt_mark_t.h HDRINST usr/include/linux/netfilter_bridge/ebt_among.h HDRINST usr/include/linux/reiserfs_fs.h HDRINST usr/include/linux/cciss_ioctl.h CC /kernel/build64-default/tools/objtool/weak.o HDRINST usr/include/linux/fsmap.h CC /kernel/build64-default/tools/objtool/check.o HDRINST usr/include/linux/smiapp.h CC /kernel/build64-default/tools/objtool/special.o HDRINST usr/include/linux/switchtec_ioctl.h CC /kernel/build64-default/tools/objtool/builtin-check.o HDRINST usr/include/linux/atmdev.h MKDIR /kernel/build64-default/tools/objtool/arch/x86/ CC /kernel/build64-default/tools/objtool/elf.o HDRINST usr/include/linux/hpet.h HDRINST usr/include/linux/virtio_config.h HDRINST usr/include/linux/string.h MKDIR /kernel/build64-default/tools/objtool/arch/x86/lib/ CC /kernel/build64-default/tools/objtool/objtool.o CC /kernel/build64-default/tools/objtool/arch/x86/special.o HDRINST usr/include/linux/kfd_sysfs.h CC /kernel/build64-default/tools/objtool/orc_gen.o HDRINST usr/include/linux/inet_diag.h CC /kernel/build64-default/tools/objtool/orc_dump.o HDRINST usr/include/linux/netdev.h GEN /kernel/build64-default/tools/objtool/arch/x86/lib/inat-tables.c HDRINST usr/include/linux/xattr.h CC /kernel/build64-default/tools/objtool/libstring.o HDRINST usr/include/linux/iommufd.h CC /kernel/build64-default/tools/objtool/libctype.o HDRINST usr/include/linux/user_events.h CC /kernel/build64-default/tools/objtool/str_error_r.o HDRINST usr/include/linux/errno.h HDRINST usr/include/linux/icmp.h CC /kernel/build64-default/tools/objtool/librbtree.o HDRINST usr/include/linux/i2o-dev.h HDRINST usr/include/linux/pg.h HDRINST usr/include/linux/if_bridge.h HDRINST usr/include/linux/thermal.h HDRINST usr/include/linux/uinput.h HDRINST usr/include/linux/handshake.h HDRINST usr/include/linux/dqblk_xfs.h HDRINST usr/include/linux/v4l2-common.h HDRINST usr/include/linux/nvram.h HDRINST usr/include/linux/if_vlan.h HDRINST usr/include/linux/uhid.h HDRINST usr/include/linux/omap3isp.h HDRINST usr/include/linux/rose.h HDRINST usr/include/linux/phantom.h HDRINST usr/include/linux/ipmi_msgdefs.h HDRINST usr/include/linux/bcm933xx_hcs.h HDRINST usr/include/linux/bpf.h HDRINST usr/include/linux/mempolicy.h HDRINST usr/include/linux/efs_fs_sb.h HDRINST usr/include/linux/nexthop.h HDRINST usr/include/linux/net_dropmon.h HDRINST usr/include/linux/surface_aggregator/cdev.h HDRINST usr/include/linux/surface_aggregator/dtx.h HDRINST usr/include/linux/net.h HDRINST usr/include/linux/mii.h HDRINST usr/include/linux/virtio_pcidev.h HDRINST usr/include/linux/termios.h HDRINST usr/include/linux/cgroupstats.h HDRINST usr/include/linux/mpls.h HDRINST usr/include/linux/toshiba.h HDRINST usr/include/linux/iommu.h HDRINST usr/include/linux/virtio_scsi.h HDRINST usr/include/linux/zorro.h HDRINST usr/include/linux/chio.h HDRINST usr/include/linux/pkt_sched.h HDRINST usr/include/linux/cramfs_fs.h HDRINST usr/include/linux/nfs3.h HDRINST usr/include/linux/vfio_ccw.h HDRINST usr/include/linux/atm_nicstar.h HDRINST usr/include/linux/ncsi.h HDRINST usr/include/linux/virtio_net.h HDRINST usr/include/linux/ioctl.h HDRINST usr/include/linux/stddef.h HDRINST usr/include/linux/limits.h HDRINST usr/include/linux/ipmi_bmc.h HDRINST usr/include/linux/netfilter_arp.h HDRINST usr/include/linux/if_addr.h HDRINST usr/include/linux/rpmsg.h HDRINST usr/include/linux/media-bus-format.h HDRINST usr/include/linux/kernelcapi.h HDRINST usr/include/linux/ppp_defs.h HDRINST usr/include/linux/ethtool.h HDRINST usr/include/linux/aspeed-video.h HDRINST usr/include/linux/hdlc.h HDRINST usr/include/linux/fscrypt.h CC /kernel/build64-default/tools/objtool/arch/x86/decode.o HDRINST usr/include/linux/batadv_packet.h HDRINST usr/include/linux/uuid.h HDRINST usr/include/linux/capi.h HDRINST usr/include/linux/mptcp.h HDRINST usr/include/linux/hidraw.h HDRINST usr/include/linux/virtio_console.h HDRINST usr/include/linux/irqnr.h HDRINST usr/include/linux/coresight-stm.h HDRINST usr/include/linux/cxl_mem.h HDRINST usr/include/linux/iso_fs.h HDRINST usr/include/linux/virtio_blk.h HDRINST usr/include/linux/udf_fs_i.h HDRINST usr/include/linux/coff.h HDRINST usr/include/linux/dma-buf.h HDRINST usr/include/linux/ife.h HDRINST usr/include/linux/agpgart.h HDRINST usr/include/linux/socket.h HDRINST usr/include/linux/nilfs2_ondisk.h HDRINST usr/include/linux/connector.h HDRINST usr/include/linux/auto_fs4.h HDRINST usr/include/linux/bt-bmc.h HDRINST usr/include/linux/map_to_7segment.h HDRINST usr/include/linux/tc_act/tc_skbedit.h HDRINST usr/include/linux/tc_act/tc_ctinfo.h HDRINST usr/include/linux/tc_act/tc_defact.h HDRINST usr/include/linux/tc_act/tc_gact.h HDRINST usr/include/linux/tc_act/tc_vlan.h HDRINST usr/include/linux/tc_act/tc_skbmod.h HDRINST usr/include/linux/tc_act/tc_sample.h HDRINST usr/include/linux/tc_act/tc_tunnel_key.h HDRINST usr/include/linux/tc_act/tc_gate.h HDRINST usr/include/linux/tc_act/tc_mirred.h HDRINST usr/include/linux/tc_act/tc_nat.h HDRINST usr/include/linux/tc_act/tc_csum.h HDRINST usr/include/linux/tc_act/tc_connmark.h HDRINST usr/include/linux/tc_act/tc_ife.h HDRINST usr/include/linux/tc_act/tc_mpls.h HDRINST usr/include/linux/tc_act/tc_ct.h HDRINST usr/include/linux/tc_act/tc_pedit.h HDRINST usr/include/linux/tc_act/tc_bpf.h HDRINST usr/include/linux/tc_act/tc_ipt.h HDRINST usr/include/linux/netrom.h HDRINST usr/include/linux/joystick.h HDRINST usr/include/linux/falloc.h HDRINST usr/include/linux/cycx_cfm.h HDRINST usr/include/linux/omapfb.h HDRINST usr/include/linux/msdos_fs.h HDRINST usr/include/linux/virtio_types.h HDRINST usr/include/linux/mroute.h HDRINST usr/include/linux/psample.h HDRINST usr/include/linux/ipv6.h HDRINST usr/include/linux/dw100.h HDRINST usr/include/linux/psp-sev.h HDRINST usr/include/linux/vfio.h HDRINST usr/include/linux/if_ppp.h HDRINST usr/include/linux/byteorder/big_endian.h HDRINST usr/include/linux/byteorder/little_endian.h HDRINST usr/include/linux/comedi.h HDRINST usr/include/linux/scif_ioctl.h HDRINST usr/include/linux/timerfd.h HDRINST usr/include/linux/time_types.h HDRINST usr/include/linux/firewire-constants.h HDRINST usr/include/linux/virtio_snd.h HDRINST usr/include/linux/ppp-ioctl.h HDRINST usr/include/linux/fib_rules.h HDRINST usr/include/linux/gen_stats.h HDRINST usr/include/linux/virtio_iommu.h HDRINST usr/include/linux/genetlink.h HDRINST usr/include/linux/uvcvideo.h HDRINST usr/include/linux/pfkeyv2.h HDRINST usr/include/linux/soundcard.h HDRINST usr/include/linux/times.h HDRINST usr/include/linux/nfc.h HDRINST usr/include/linux/affs_hardblocks.h HDRINST usr/include/linux/nilfs2_api.h HDRINST usr/include/linux/rseq.h HDRINST usr/include/linux/caif/if_caif.h HDRINST usr/include/linux/caif/caif_socket.h HDRINST usr/include/linux/i2c-dev.h HDRINST usr/include/linux/cuda.h HDRINST usr/include/linux/mei_uuid.h HDRINST usr/include/linux/cn_proc.h HDRINST usr/include/linux/parport.h HDRINST usr/include/linux/v4l2-controls.h HDRINST usr/include/linux/hsi/cs-protocol.h HDRINST usr/include/linux/hsi/hsi_char.h HDRINST usr/include/linux/seg6_genl.h HDRINST usr/include/linux/am437x-vpfe.h HDRINST usr/include/linux/amt.h HDRINST usr/include/linux/netconf.h HDRINST usr/include/linux/erspan.h HDRINST usr/include/linux/nsfs.h HDRINST usr/include/linux/xilinx-v4l2-controls.h HDRINST usr/include/linux/aspeed-p2a-ctrl.h HDRINST usr/include/linux/vfio_zdev.h HDRINST usr/include/linux/serio.h HDRINST usr/include/linux/acrn.h HDRINST usr/include/linux/nfs2.h HDRINST usr/include/linux/virtio_pci.h HDRINST usr/include/linux/ipc.h HDRINST usr/include/linux/ethtool_netlink.h HDRINST usr/include/linux/kd.h HDRINST usr/include/linux/elf.h HDRINST usr/include/linux/videodev2.h HDRINST usr/include/linux/if_alg.h HDRINST usr/include/linux/sonypi.h HDRINST usr/include/linux/fsverity.h HDRINST usr/include/linux/if.h HDRINST usr/include/linux/btrfs.h HDRINST usr/include/linux/vm_sockets_diag.h HDRINST usr/include/linux/netfilter_bridge.h HDRINST usr/include/linux/packet_diag.h HDRINST usr/include/linux/netfilter_ipv4.h HDRINST usr/include/linux/kvm.h HDRINST usr/include/linux/pci.h HDRINST usr/include/linux/if_addrlabel.h HDRINST usr/include/linux/hdlcdrv.h HDRINST usr/include/linux/cfm_bridge.h HDRINST usr/include/linux/fiemap.h HDRINST usr/include/linux/dm-ioctl.h HDRINST usr/include/linux/aspeed-lpc-ctrl.h HDRINST usr/include/linux/atmioc.h HDRINST usr/include/linux/dlm.h HDRINST usr/include/linux/pci_regs.h HDRINST usr/include/linux/cachefiles.h HDRINST usr/include/linux/membarrier.h HDRINST usr/include/linux/nfs_idmap.h HDRINST usr/include/linux/atm_he.h HDRINST usr/include/linux/ip.h HDRINST usr/include/linux/nfsd/export.h HDRINST usr/include/linux/nfsd/stats.h HDRINST usr/include/linux/nfsd/debug.h HDRINST usr/include/linux/nfsd/cld.h HDRINST usr/include/linux/ip_vs.h HDRINST usr/include/linux/vmcore.h HDRINST usr/include/linux/vbox_vmmdev_types.h HDRINST usr/include/linux/dvb/osd.h HDRINST usr/include/linux/dvb/dmx.h HDRINST usr/include/linux/dvb/net.h HDRINST usr/include/linux/dvb/frontend.h HDRINST usr/include/linux/dvb/ca.h HDRINST usr/include/linux/dvb/version.h HDRINST usr/include/linux/dvb/video.h HDRINST usr/include/linux/dvb/audio.h HDRINST usr/include/linux/nfs.h HDRINST usr/include/linux/if_link.h HDRINST usr/include/linux/wait.h HDRINST usr/include/linux/icmpv6.h HDRINST usr/include/linux/media.h HDRINST usr/include/linux/seg6_local.h HDRINST usr/include/linux/tps6594_pfsm.h HDRINST usr/include/linux/openvswitch.h HDRINST usr/include/linux/atmsap.h HDRINST usr/include/linux/bpfilter.h HDRINST usr/include/linux/fpga-dfl.h HDRINST usr/include/linux/userio.h HDRINST usr/include/linux/signal.h HDRINST usr/include/linux/map_to_14segment.h HDRINST usr/include/linux/hdreg.h HDRINST usr/include/linux/utime.h HDRINST usr/include/linux/usbdevice_fs.h HDRINST usr/include/linux/timex.h HDRINST usr/include/linux/if_fc.h HDRINST usr/include/linux/reiserfs_xattr.h HDRINST usr/include/linux/hw_breakpoint.h HDRINST usr/include/linux/quota.h HDRINST usr/include/linux/ioprio.h HDRINST usr/include/linux/eventpoll.h HDRINST usr/include/linux/atmclip.h HDRINST usr/include/linux/can.h HDRINST usr/include/linux/if_team.h HDRINST usr/include/linux/usbip.h HDRINST usr/include/linux/stat.h HDRINST usr/include/linux/fou.h HDRINST usr/include/linux/hash_info.h HDRINST usr/include/linux/ppp-comp.h HDRINST usr/include/linux/ip6_tunnel.h HDRINST usr/include/linux/tipc_netlink.h HDRINST usr/include/linux/in.h HDRINST usr/include/linux/wireguard.h HDRINST usr/include/linux/btf.h HDRINST usr/include/linux/batman_adv.h HDRINST usr/include/linux/if_ltalk.h HDRINST usr/include/linux/fcntl.h HDRINST usr/include/linux/i2c.h HDRINST usr/include/linux/atm_idt77105.h HDRINST usr/include/linux/kexec.h HDRINST usr/include/linux/arm_sdei.h HDRINST usr/include/linux/netfilter_ipv6/ip6_tables.h HDRINST usr/include/linux/netfilter_ipv6/ip6t_ah.h HDRINST usr/include/linux/netfilter_ipv6/ip6t_NPT.h HDRINST usr/include/linux/netfilter_ipv6/ip6t_rt.h HDRINST usr/include/linux/netfilter_ipv6/ip6t_REJECT.h HDRINST usr/include/linux/netfilter_ipv6/ip6t_opts.h HDRINST usr/include/linux/netfilter_ipv6/ip6t_srh.h HDRINST usr/include/linux/netfilter_ipv6/ip6t_LOG.h HDRINST usr/include/linux/netfilter_ipv6/ip6t_mh.h HDRINST usr/include/linux/netfilter_ipv6/ip6t_HL.h HDRINST usr/include/linux/netfilter_ipv6/ip6t_hl.h HDRINST usr/include/linux/netfilter_ipv6/ip6t_frag.h HDRINST usr/include/linux/netfilter_ipv6/ip6t_ipv6header.h HDRINST usr/include/linux/minix_fs.h HDRINST usr/include/linux/aio_abi.h HDRINST usr/include/linux/pktcdvd.h HDRINST usr/include/linux/libc-compat.h HDRINST usr/include/linux/atmlec.h HDRINST usr/include/linux/bpf_common.h HDRINST usr/include/linux/signalfd.h HDRINST usr/include/linux/seg6_iptunnel.h HDRINST usr/include/linux/synclink.h HDRINST usr/include/linux/mpls_iptunnel.h HDRINST usr/include/linux/mctp.h HDRINST usr/include/linux/if_xdp.h HDRINST usr/include/linux/llc.h HDRINST usr/include/linux/atmsvc.h HDRINST usr/include/linux/sed-opal.h HDRINST usr/include/linux/sock_diag.h HDRINST usr/include/linux/time.h HDRINST usr/include/linux/securebits.h HDRINST usr/include/linux/fsl_hypervisor.h HDRINST usr/include/linux/if_hippi.h HDRINST usr/include/linux/seccomp.h HDRINST usr/include/linux/oom.h HDRINST usr/include/linux/filter.h HDRINST usr/include/linux/inotify.h HDRINST usr/include/linux/rfkill.h HDRINST usr/include/linux/reboot.h HDRINST usr/include/linux/can/vxcan.h HDRINST usr/include/linux/can/j1939.h HDRINST usr/include/linux/can/netlink.h HDRINST usr/include/linux/can/bcm.h HDRINST usr/include/linux/can/raw.h HDRINST usr/include/linux/can/gw.h HDRINST usr/include/linux/can/error.h HDRINST usr/include/linux/can/isotp.h HDRINST usr/include/linux/if_eql.h HDRINST usr/include/linux/psp-dbc.h HDRINST usr/include/linux/hiddev.h HDRINST usr/include/linux/blktrace_api.h HDRINST usr/include/linux/ccs.h HDRINST usr/include/linux/ioam6.h HDRINST usr/include/linux/hsr_netlink.h HDRINST usr/include/linux/mmc/ioctl.h HDRINST usr/include/linux/bfs_fs.h HDRINST usr/include/linux/rio_cm_cdev.h HDRINST usr/include/linux/uleds.h HDRINST usr/include/linux/mrp_bridge.h HDRINST usr/include/linux/adb.h HDRINST usr/include/linux/pmu.h HDRINST usr/include/linux/udmabuf.h HDRINST usr/include/linux/kcmp.h HDRINST usr/include/linux/dma-heap.h HDRINST usr/include/linux/userfaultfd.h HDRINST usr/include/linux/netfilter_arp/arpt_mangle.h HDRINST usr/include/linux/netfilter_arp/arp_tables.h HDRINST usr/include/linux/tipc.h HDRINST usr/include/linux/virtio_ids.h HDRINST usr/include/linux/l2tp.h HDRINST usr/include/linux/devlink.h HDRINST usr/include/linux/virtio_gpio.h HDRINST usr/include/linux/dcbnl.h HDRINST usr/include/linux/cyclades.h HDRINST usr/include/sound/sof/fw.h HDRINST usr/include/sound/intel/avs/tokens.h HDRINST usr/include/sound/sof/abi.h HDRINST usr/include/sound/sof/tokens.h HDRINST usr/include/sound/sof/header.h HDRINST usr/include/sound/usb_stream.h HDRINST usr/include/sound/sfnt_info.h HDRINST usr/include/sound/asequencer.h HDRINST usr/include/sound/tlv.h HDRINST usr/include/sound/asound.h HDRINST usr/include/sound/asoc.h HDRINST usr/include/sound/sb16_csp.h HDRINST usr/include/sound/compress_offload.h HDRINST usr/include/sound/hdsp.h HDRINST usr/include/sound/emu10k1.h HDRINST usr/include/sound/snd_ar_tokens.h HDRINST usr/include/sound/snd_sst_tokens.h HDRINST usr/include/sound/asound_fm.h HDRINST usr/include/sound/hdspm.h HDRINST usr/include/sound/compress_params.h HDRINST usr/include/sound/firewire.h HDRINST usr/include/sound/skl-tplg-interface.h HDRINST usr/include/scsi/scsi_bsg_ufs.h HDRINST usr/include/scsi/scsi_netlink_fc.h HDRINST usr/include/scsi/scsi_bsg_mpi3mr.h HDRINST usr/include/scsi/fc/fc_ns.h HDRINST usr/include/scsi/fc/fc_fs.h HDRINST usr/include/scsi/fc/fc_els.h HDRINST usr/include/scsi/fc/fc_gs.h HDRINST usr/include/scsi/scsi_bsg_fc.h HDRINST usr/include/scsi/cxlflash_ioctl.h HDRINST usr/include/scsi/scsi_netlink.h HDRINST usr/include/linux/version.h HDRINST usr/include/asm/processor-flags.h HDRINST usr/include/asm/auxvec.h HDRINST usr/include/asm/svm.h HDRINST usr/include/asm/bitsperlong.h HDRINST usr/include/asm/kvm_perf.h HDRINST usr/include/asm/mce.h HDRINST usr/include/asm/posix_types.h HDRINST usr/include/asm/msr.h HDRINST usr/include/asm/sigcontext32.h HDRINST usr/include/asm/mman.h HDRINST usr/include/asm/shmbuf.h HDRINST usr/include/asm/e820.h HDRINST usr/include/asm/posix_types_64.h HDRINST usr/include/asm/vsyscall.h HDRINST usr/include/asm/msgbuf.h HDRINST usr/include/asm/swab.h HDRINST usr/include/asm/statfs.h HDRINST usr/include/asm/posix_types_x32.h HDRINST usr/include/asm/ptrace.h HDRINST usr/include/asm/unistd.h HDRINST usr/include/asm/ist.h HDRINST usr/include/asm/prctl.h HDRINST usr/include/asm/sigcontext.h HDRINST usr/include/asm/boot.h HDRINST usr/include/asm/posix_types_32.h HDRINST usr/include/asm/kvm_para.h HDRINST usr/include/asm/a.out.h HDRINST usr/include/asm/mtrr.h HDRINST usr/include/asm/amd_hsmp.h HDRINST usr/include/asm/hwcap2.h HDRINST usr/include/asm/ptrace-abi.h HDRINST usr/include/asm/vm86.h HDRINST usr/include/asm/vmx.h HDRINST usr/include/asm/ldt.h HDRINST usr/include/asm/perf_regs.h HDRINST usr/include/asm/kvm.h HDRINST usr/include/asm/debugreg.h HDRINST usr/include/asm/signal.h HDRINST usr/include/asm/bootparam.h HDRINST usr/include/asm/siginfo.h HDRINST usr/include/asm/hw_breakpoint.h HDRINST usr/include/asm/stat.h HDRINST usr/include/asm/setup.h HDRINST usr/include/asm/sembuf.h HDRINST usr/include/asm/sgx.h HDRINST usr/include/asm/ucontext.h HDRINST usr/include/asm/byteorder.h HDRINST usr/include/asm/unistd_64.h HDRINST usr/include/asm/ioctls.h HDRINST usr/include/asm/bpf_perf_event.h HDRINST usr/include/asm/types.h HDRINST usr/include/asm/poll.h HDRINST usr/include/asm/resource.h HDRINST usr/include/asm/param.h HDRINST usr/include/asm/sockios.h HDRINST usr/include/asm/errno.h HDRINST usr/include/asm/unistd_x32.h HDRINST usr/include/asm/termios.h HDRINST usr/include/asm/ioctl.h HDRINST usr/include/asm/socket.h HDRINST usr/include/asm/unistd_32.h HDRINST usr/include/asm/termbits.h HDRINST usr/include/asm/fcntl.h HDRINST usr/include/asm/ipcbuf.h HOSTLD scripts/mod/modpost CC kernel/bounds.s CHKSHA1 ../include/linux/atomic/atomic-arch-fallback.h CHKSHA1 ../include/linux/atomic/atomic-long.h CHKSHA1 ../include/linux/atomic/atomic-instrumented.h UPD include/generated/timeconst.h UPD include/generated/bounds.h CC arch/x86/kernel/asm-offsets.s LD /kernel/build64-default/tools/objtool/arch/x86/objtool-in.o UPD include/generated/asm-offsets.h CALL ../scripts/checksyscalls.sh LD /kernel/build64-default/tools/objtool/objtool-in.o LINK /kernel/build64-default/tools/objtool/objtool LDS scripts/module.lds CC ipc/compat.o CC ipc/util.o CC ipc/msgutil.o CC ipc/msg.o CC ipc/sem.o HOSTCC usr/gen_init_cpio CC ipc/shm.o CC init/main.o AR certs/built-in.a CC ipc/syscall.o CC io_uring/io_uring.o AS arch/x86/lib/clear_page_64.o CC ipc/ipc_sysctl.o CC ipc/mqueue.o CC init/do_mounts.o CC arch/x86/power/cpu.o CC block/bdev.o CC io_uring/xattr.o UPD init/utsversion-tmp.h CC security/commoncap.o CC arch/x86/lib/cmdline.o CC arch/x86/pci/i386.o CC mm/filemap.o CC ipc/namespace.o AR arch/x86/video/built-in.a AR virt/lib/built-in.a CC arch/x86/realmode/init.o CC [M] arch/x86/video/fbdev.o CC block/partitions/core.o CC [M] virt/lib/irqbypass.o CC block/fops.o AR sound/ppc/built-in.a CC security/keys/gc.o AS arch/x86/crypto/aesni-intel_asm.o AR sound/isa/ad1816a/built-in.a CC net/llc/llc_core.o AR drivers/cache/built-in.a AS arch/x86/realmode/rm/header.o CC net/core/sock.o CC sound/core/seq/seq.o CC arch/x86/events/amd/core.o AR sound/pci/ac97/built-in.a AR sound/i2c/other/built-in.a AS arch/x86/realmode/rm/trampoline_64.o CC fs/notify/dnotify/dnotify.o CC arch/x86/kernel/fpu/init.o AR sound/drivers/opl3/built-in.a CC arch/x86/mm/pat/set_memory.o AR sound/i2c/built-in.a AR sound/isa/ad1848/built-in.a AR sound/drivers/opl4/built-in.a AR sound/pci/ali5451/built-in.a AS arch/x86/realmode/rm/stack.o CC lib/kunit/hooks.o AR drivers/irqchip/built-in.a AR sound/isa/cs423x/built-in.a AS arch/x86/realmode/rm/reboot.o AR sound/arm/built-in.a CC arch/x86/entry/vdso/vma.o CC kernel/sched/core.o AR sound/pci/asihpi/built-in.a AR sound/isa/es1688/built-in.a AR sound/drivers/mpu401/built-in.a CC arch/x86/entry/vdso/extable.o CC arch/x86/crypto/aesni-intel_glue.o AS arch/x86/crypto/aesni-intel_avx-x86_64.o AR drivers/bus/mhi/built-in.a CC crypto/api.o CC mm/kasan/common.o AR sound/pci/au88x0/built-in.a AR drivers/bus/built-in.a AR sound/isa/galaxy/built-in.a AS arch/x86/realmode/rm/wakeup_asm.o AR sound/drivers/vx/built-in.a CC arch/x86/kernel/fpu/bugs.o AR sound/pci/aw2/built-in.a AR sound/drivers/pcsp/built-in.a AR drivers/phy/allwinner/built-in.a AR sound/isa/gus/built-in.a AR sound/drivers/built-in.a AS arch/x86/lib/cmpxchg16b_emu.o AR sound/pci/ctxfi/built-in.a CC arch/x86/realmode/rm/wakemain.o AR sound/isa/msnd/built-in.a AR drivers/phy/amlogic/built-in.a AR sound/pci/ca0106/built-in.a CC arch/x86/realmode/rm/video-mode.o AR drivers/phy/broadcom/built-in.a CC arch/x86/lib/copy_mc.o AR sound/isa/opti9xx/built-in.a AR sound/pci/cs46xx/built-in.a AR sound/isa/sb/built-in.a AR drivers/phy/cadence/built-in.a AR sound/pci/cs5535audio/built-in.a AR sound/isa/wavefront/built-in.a AR drivers/phy/freescale/built-in.a AR sound/pci/lola/built-in.a AR sound/isa/wss/built-in.a AR drivers/phy/hisilicon/built-in.a AR sound/isa/built-in.a AR sound/pci/lx6464es/built-in.a CC security/min_addr.o AR drivers/phy/ingenic/built-in.a AR sound/pci/echoaudio/built-in.a AR drivers/phy/intel/built-in.a AR sound/pci/emu10k1/built-in.a CC arch/x86/kernel/fpu/core.o AR drivers/phy/lantiq/built-in.a AR sound/pci/hda/built-in.a AR drivers/phy/marvell/built-in.a AS arch/x86/realmode/rm/copy.o CC [M] sound/pci/hda/hda_bind.o AR drivers/phy/mediatek/built-in.a AS arch/x86/realmode/rm/bioscall.o CC net/ethernet/eth.o AR drivers/phy/microchip/built-in.a CC [M] lib/kunit/test.o GEN usr/initramfs_data.cpio CC arch/x86/realmode/rm/regs.o AR drivers/phy/motorola/built-in.a COPY usr/initramfs_inc_data AR drivers/phy/mscc/built-in.a AS usr/initramfs_data.o AR drivers/phy/qualcomm/built-in.a AR usr/built-in.a AR drivers/phy/ralink/built-in.a AR drivers/phy/realtek/built-in.a CC arch/x86/realmode/rm/video-vga.o CC security/keys/key.o AR sound/sh/built-in.a AR drivers/phy/renesas/built-in.a CC init/do_mounts_initrd.o AR drivers/phy/rockchip/built-in.a AR drivers/pinctrl/actions/built-in.a AR drivers/phy/samsung/built-in.a AR drivers/pinctrl/bcm/built-in.a AR drivers/phy/socionext/built-in.a AR drivers/pinctrl/cirrus/built-in.a AR drivers/phy/st/built-in.a CC arch/x86/realmode/rm/video-vesa.o AR drivers/pinctrl/freescale/built-in.a AR drivers/phy/starfive/built-in.a CC drivers/pinctrl/intel/pinctrl-baytrail.o AR virt/built-in.a AR drivers/phy/sunplus/built-in.a CC arch/x86/kernel/fpu/regset.o AS arch/x86/lib/copy_mc_64.o AR drivers/phy/tegra/built-in.a AS arch/x86/lib/copy_page_64.o AR drivers/phy/ti/built-in.a CC arch/x86/realmode/rm/video-bios.o AS arch/x86/lib/copy_user_64.o AR drivers/phy/xilinx/built-in.a CC drivers/phy/phy-core.o AS arch/x86/lib/copy_user_uncached_64.o CC sound/core/seq/seq_lock.o CC arch/x86/lib/cpu.o CC drivers/pinctrl/intel/pinctrl-intel.o CC security/inode.o AR drivers/pinctrl/mediatek/built-in.a PASYMS arch/x86/realmode/rm/pasyms.h CC security/device_cgroup.o CC lib/math/div64.o LDS arch/x86/realmode/rm/realmode.lds LD arch/x86/realmode/rm/realmode.elf RELOCS arch/x86/realmode/rm/realmode.relocs OBJCOPY arch/x86/realmode/rm/realmode.bin AS arch/x86/realmode/rmpiggy.o CC lib/math/gcd.o CC ipc/mq_sysctl.o CC security/keys/keyring.o AR arch/x86/realmode/built-in.a CC mm/kasan/report.o AR arch/x86/ia32/built-in.a AR fs/notify/dnotify/built-in.a CC mm/kasan/init.o CC arch/x86/mm/init.o CC arch/x86/pci/init.o CC fs/notify/inotify/inotify_fsnotify.o CC arch/x86/pci/mmconfig_64.o CC lib/math/lcm.o AR arch/x86/platform/atom/built-in.a AR arch/x86/platform/ce4100/built-in.a CC lib/math/int_log.o CC arch/x86/events/amd/lbr.o CC arch/x86/platform/efi/memmap.o CC net/llc/llc_input.o CC arch/x86/power/hibernate_64.o CC fs/notify/inotify/inotify_user.o CC lib/math/int_pow.o CC arch/x86/entry/vdso/vdso32-setup.o CC block/partitions/ldm.o CC lib/math/int_sqrt.o CC crypto/cipher.o CC sound/core/seq/seq_clientmgr.o CC arch/x86/lib/delay.o CC [M] sound/pci/hda/hda_codec.o CC lib/math/reciprocal_div.o CC [M] lib/kunit/resource.o CC sound/core/seq/seq_memory.o AS arch/x86/crypto/aes_ctrby8_avx-x86_64.o CC mm/kasan/generic.o AS [M] arch/x86/crypto/ghash-clmulni-intel_asm.o CC mm/mempool.o CC lib/math/rational.o CC net/802/p8022.o LDS arch/x86/entry/vdso/vdso.lds CC [M] arch/x86/crypto/ghash-clmulni-intel_glue.o CC net/802/psnap.o CC net/802/stp.o AS arch/x86/entry/vdso/vdso-note.o CC arch/x86/entry/vdso/vclock_gettime.o CC [M] lib/math/prime_numbers.o CC block/bio.o CC security/keys/keyctl.o CC mm/kasan/report_generic.o AS arch/x86/lib/getuser.o CC mm/kasan/shadow.o CC init/initramfs.o GEN arch/x86/lib/inat-tables.c CC security/keys/permission.o CC net/sched/sch_generic.o CC arch/x86/lib/insn-eval.o CC arch/x86/pci/direct.o CC net/sched/sch_mq.o CC arch/x86/entry/vdso/vgetcpu.o CC sound/core/seq/seq_queue.o CC block/elevator.o AR drivers/phy/built-in.a AR net/ethernet/built-in.a CC sound/core/seq/seq_fifo.o CC [M] drivers/pinctrl/intel/pinctrl-cherryview.o CC [M] drivers/pinctrl/intel/pinctrl-broxton.o CC arch/x86/kernel/fpu/signal.o CC crypto/compress.o CC net/netlink/af_netlink.o CC [M] lib/kunit/static_stub.o AS arch/x86/power/hibernate_asm_64.o CC arch/x86/events/amd/ibs.o CC arch/x86/platform/efi/quirks.o CC arch/x86/power/hibernate.o CC net/llc/llc_output.o AS [M] arch/x86/crypto/crc32-pclmul_asm.o HOSTCC arch/x86/entry/vdso/vdso2c AR arch/x86/net/built-in.a CC [M] arch/x86/crypto/crc32-pclmul_glue.o AR lib/math/built-in.a CC io_uring/nop.o CC arch/x86/mm/pat/memtype.o CC io_uring/fs.o CC fs/notify/fanotify/fanotify.o CC lib/crypto/memneq.o AR net/bpf/built-in.a CC net/ethtool/ioctl.o AR drivers/pinctrl/mvebu/built-in.a CC net/ethtool/common.o AR fs/notify/inotify/built-in.a CC fs/notify/fsnotify.o AR drivers/pinctrl/nomadik/built-in.a AR net/ipv4/netfilter/built-in.a CC fs/notify/notification.o CC [M] net/netfilter/ipvs/ip_vs_conn.o CC [M] net/netfilter/ipvs/ip_vs_core.o CC [M] net/ipv4/netfilter/nf_defrag_ipv4.o AR drivers/pinctrl/nuvoton/built-in.a CC [M] net/ipv4/netfilter/nf_reject_ipv4.o CC [M] net/ipv4/netfilter/ip_tables.o CC block/partitions/msdos.o AR net/802/built-in.a AS [M] arch/x86/crypto/crct10dif-pcl-asm_64.o CC mm/kasan/quarantine.o CC net/ethtool/netlink.o CC mm/oom_kill.o LDS arch/x86/entry/vdso/vdso32/vdso32.lds CC arch/x86/lib/insn.o CC net/netfilter/core.o AS arch/x86/entry/vdso/vdso32/note.o AR ipc/built-in.a AS arch/x86/entry/vdso/vdso32/system_call.o CC security/keys/process_keys.o CC [M] lib/kunit/string-stream.o CC arch/x86/pci/mmconfig-shared.o AS arch/x86/entry/vdso/vdso32/sigreturn.o CC crypto/algapi.o CC arch/x86/entry/vdso/vdso32/vclock_gettime.o CC net/netfilter/nf_log.o CC [M] arch/x86/crypto/crct10dif-pclmul_glue.o CC init/calibrate.o AS arch/x86/lib/memcpy_64.o CC lib/crypto/utils.o AS arch/x86/lib/memmove_64.o AS arch/x86/lib/memset_64.o CC crypto/scatterwalk.o AR arch/x86/power/built-in.a CC arch/x86/pci/fixup.o CC lib/crypto/chacha.o CC sound/core/seq/seq_prioq.o CC [M] drivers/pinctrl/intel/pinctrl-geminilake.o AR net/llc/built-in.a CC arch/x86/kernel/fpu/xstate.o CC arch/x86/lib/misc.o CC mm/fadvise.o AR drivers/pinctrl/nxp/built-in.a AR drivers/pinctrl/qcom/built-in.a CC io_uring/splice.o AR drivers/pinctrl/sprd/built-in.a CC arch/x86/lib/pc-conf-reg.o CC init/init_task.o CC arch/x86/platform/efi/efi.o CC io_uring/sync.o CC arch/x86/entry/vdso/vdso32/vgetcpu.o CC fs/notify/group.o CC [M] lib/kunit/assert.o CC arch/x86/pci/acpi.o CC arch/x86/mm/pat/memtype_interval.o CC arch/x86/platform/efi/efi_64.o CC net/xfrm/xfrm_policy.o AS arch/x86/lib/putuser.o CC lib/crypto/aes.o CC net/unix/af_unix.o AS arch/x86/lib/retpoline.o CC arch/x86/events/amd/uncore.o LD [M] arch/x86/crypto/ghash-clmulni-intel.o LD [M] arch/x86/crypto/crc32-pclmul.o CC arch/x86/lib/usercopy.o LD [M] arch/x86/crypto/crct10dif-pclmul.o AR mm/kasan/built-in.a CC net/unix/garbage.o CC mm/maccess.o AR arch/x86/crypto/built-in.a CC block/partitions/efi.o AR sound/synth/emux/built-in.a AR sound/synth/built-in.a VDSO arch/x86/entry/vdso/vdso64.so.dbg CC [M] arch/x86/kvm/../../../virt/kvm/kvm_main.o AR sound/usb/misc/built-in.a CC fs/notify/fanotify/fanotify_user.o AR sound/usb/usx2y/built-in.a VDSO arch/x86/entry/vdso/vdso32.so.dbg AR sound/usb/caiaq/built-in.a OBJCOPY arch/x86/entry/vdso/vdso64.so OBJCOPY arch/x86/entry/vdso/vdso32.so AR sound/usb/6fire/built-in.a VDSO2C arch/x86/entry/vdso/vdso-image-64.c VDSO2C arch/x86/entry/vdso/vdso-image-32.c CC arch/x86/entry/vdso/vdso-image-64.o AR sound/usb/hiface/built-in.a AR sound/usb/bcd2000/built-in.a AR sound/usb/built-in.a CC [M] drivers/pinctrl/intel/pinctrl-sunrisepoint.o AR sound/firewire/built-in.a CC net/ethtool/bitset.o CC [M] sound/pci/hda/hda_jack.o AR sound/sparc/built-in.a AR sound/spi/built-in.a AR sound/parisc/built-in.a AR sound/pcmcia/vx/built-in.a AR sound/mips/built-in.a CC arch/x86/entry/vdso/vdso-image-32.o AR sound/pcmcia/pdaudiocf/built-in.a AR sound/pcmcia/built-in.a CC fs/notify/mark.o CC mm/page-writeback.o CC arch/x86/lib/usercopy_64.o CC [M] lib/kunit/try-catch.o CC sound/core/seq/seq_timer.o CC security/keys/request_key.o CC net/ethtool/strset.o CC [M] net/ipv4/netfilter/iptable_filter.o CC init/version.o CC mm/folio-compat.o CC fs/notify/fdinfo.o CC mm/readahead.o AR arch/x86/mm/pat/built-in.a AR net/ipv6/netfilter/built-in.a CC arch/x86/mm/init_64.o CC [M] net/ipv6/netfilter/nf_defrag_ipv6_hooks.o AR arch/x86/entry/vdso/built-in.a CC net/ipv6/af_inet6.o CC arch/x86/entry/vsyscall/vsyscall_64.o CC [M] net/ipv4/netfilter/iptable_mangle.o CC io_uring/advise.o CC lib/crypto/gf128mul.o CC arch/x86/pci/legacy.o AS arch/x86/entry/vsyscall/vsyscall_emu_64.o CC crypto/proc.o AR init/built-in.a CC arch/x86/pci/irq.o CC mm/swap.o CC net/packet/af_packet.o CC net/core/request_sock.o CC [M] net/ipv4/netfilter/iptable_nat.o AR drivers/pinctrl/intel/built-in.a CC arch/x86/kernel/cpu/mce/core.o CC net/sched/sch_frag.o AR drivers/pinctrl/sunplus/built-in.a AR drivers/pinctrl/ti/built-in.a CC drivers/pinctrl/core.o CC drivers/pinctrl/pinctrl-utils.o CC [M] lib/kunit/executor.o AS arch/x86/platform/efi/efi_stub_64.o AR arch/x86/platform/efi/built-in.a AR arch/x86/platform/geode/built-in.a AR arch/x86/platform/iris/built-in.a CC arch/x86/platform/intel/iosf_mbi.o CC net/netfilter/nf_queue.o AR arch/x86/events/amd/built-in.a CC net/sched/sch_api.o CC arch/x86/events/intel/core.o CC arch/x86/lib/msr-smp.o AR arch/x86/kernel/fpu/built-in.a CC [M] net/ipv6/netfilter/nf_conntrack_reasm.o AR block/partitions/built-in.a CC block/blk-core.o CC arch/x86/kernel/cpu/mtrr/mtrr.o CC sound/core/seq/seq_system.o CC net/core/skbuff.o CC security/keys/request_key_auth.o CC [M] net/netfilter/ipvs/ip_vs_ctl.o CC crypto/aead.o CC net/ipv4/route.o CC arch/x86/lib/cache-smp.o CC [M] sound/pci/hda/hda_auto_parser.o CC lib/crypto/blake2s.o CC arch/x86/kernel/acpi/boot.o CC [M] sound/pci/hda/hda_sysfs.o CC arch/x86/kernel/apic/apic.o CC mm/truncate.o CC arch/x86/kernel/acpi/sleep.o CC [M] lib/kunit/attributes.o CC net/netfilter/nf_sockopt.o AR arch/x86/entry/vsyscall/built-in.a AS arch/x86/entry/entry.o AS arch/x86/entry/entry_64.o CC io_uring/filetable.o CC arch/x86/lib/msr.o CC lib/zlib_inflate/inffast.o CC arch/x86/entry/syscall_64.o CC lib/zlib_deflate/deflate.o AR fs/notify/fanotify/built-in.a CC mm/vmscan.o AR fs/notify/built-in.a CC fs/nfs_common/grace.o CC net/ethtool/linkinfo.o AR arch/x86/platform/intel/built-in.a AR sound/soc/built-in.a AR arch/x86/platform/intel-mid/built-in.a AS arch/x86/kernel/acpi/wakeup_64.o CC net/netlink/genetlink.o AR arch/x86/platform/intel-quark/built-in.a CC lib/crypto/blake2s-generic.o CC net/netlink/policy.o AR arch/x86/platform/olpc/built-in.a CC mm/shmem.o CC lib/zlib_inflate/inflate.o AR arch/x86/platform/scx200/built-in.a CC sound/core/seq/seq_ports.o AR arch/x86/platform/ts5500/built-in.a AR arch/x86/platform/uv/built-in.a CC [M] net/ipv4/netfilter/ipt_REJECT.o AR arch/x86/platform/built-in.a CC drivers/pinctrl/pinmux.o CC arch/x86/pci/common.o CC lib/lzo/lzo1x_compress.o CC security/keys/user_defined.o AR lib/kunit/built-in.a CC arch/x86/kernel/cpu/mtrr/if.o LD [M] lib/kunit/kunit.o CC lib/lzo/lzo1x_decompress_safe.o CC lib/lz4/lz4_compress.o CC crypto/geniv.o CC io_uring/openclose.o CC [M] sound/pci/hda/hda_controller.o CC net/netlink/diag.o CC lib/crypto/blake2s-selftest.o CC arch/x86/entry/common.o AR sound/pci/ice1712/built-in.a CC arch/x86/kernel/acpi/apei.o CC arch/x86/mm/fault.o AS arch/x86/lib/msr-reg.o CC net/key/af_key.o CC arch/x86/lib/msr-reg-export.o AR net/bridge/netfilter/built-in.a CC net/bridge/br.o AR fs/nfs_common/built-in.a CC lib/crypto/des.o CC drivers/gpio/gpiolib.o CC fs/iomap/trace.o CC lib/crypto/sha1.o CC lib/zlib_inflate/infutil.o CC net/netfilter/utils.o AS arch/x86/lib/hweight.o LD [M] net/ipv6/netfilter/nf_defrag_ipv6.o CC arch/x86/lib/iomem.o CC arch/x86/kernel/cpu/mce/severity.o CC lib/zlib_deflate/deftree.o CC arch/x86/kernel/acpi/cppc.o CC net/ipv6/anycast.o CC net/bridge/br_device.o CC crypto/skcipher.o AR lib/lzo/built-in.a CC crypto/seqiv.o CC lib/lz4/lz4hc_compress.o CC net/unix/sysctl_net_unix.o CC security/keys/compat.o CC net/ethtool/linkmodes.o CC sound/core/seq/seq_info.o CC arch/x86/kernel/cpu/mtrr/generic.o CC drivers/pinctrl/pinconf.o CC net/ethtool/rss.o CC arch/x86/pci/early.o CC arch/x86/kernel/acpi/cstate.o CC lib/zlib_inflate/inftrees.o CC mm/util.o CC net/ipv4/inetpeer.o AS arch/x86/lib/iomap_copy_64.o CC mm/mmzone.o CC arch/x86/lib/inat.o AS arch/x86/entry/thunk_64.o CC arch/x86/kernel/apic/apic_common.o CC lib/zlib_inflate/inflate_syms.o AS arch/x86/entry/entry_64_compat.o AR arch/x86/lib/built-in.a CC arch/x86/entry/syscall_32.o AR arch/x86/lib/lib.a CC arch/x86/kernel/apic/apic_noop.o CC lib/crypto/sha256.o CC net/sched/sch_blackhole.o AR sound/core/seq/built-in.a CC arch/x86/events/zhaoxin/core.o CC sound/core/sound.o CC io_uring/uring_cmd.o CC lib/zlib_deflate/deflate_syms.o CC arch/x86/kernel/cpu/mce/genpool.o CC security/keys/proc.o CC block/blk-sysfs.o CC drivers/pinctrl/pinconf-generic.o CC block/blk-flush.o AR net/netlink/built-in.a CC arch/x86/pci/bus_numa.o AR lib/zlib_inflate/built-in.a CC arch/x86/pci/amd_bus.o CC net/sched/sch_fifo.o AR arch/x86/kernel/acpi/built-in.a CC net/ipv4/protocol.o CC net/unix/diag.o CC mm/vmstat.o CC lib/lz4/lz4_decompress.o CC mm/backing-dev.o CC arch/x86/kernel/apic/ipi.o CC net/ipv6/ip6_output.o AR lib/zlib_deflate/built-in.a CC sound/core/init.o CC fs/iomap/iter.o CC [M] sound/pci/hda/hda_proc.o CC net/bridge/br_fdb.o CC net/ethtool/linkstate.o CC arch/x86/kernel/kprobes/core.o CC arch/x86/kernel/kprobes/opt.o CC arch/x86/kernel/cpu/mtrr/cleanup.o CC crypto/echainiv.o CC arch/x86/mm/ioremap.o CC arch/x86/kernel/kprobes/ftrace.o AR arch/x86/entry/built-in.a CC net/ipv4/ip_input.o CC [M] lib/crypto/arc4.o CC net/unix/scm.o CC arch/x86/events/intel/bts.o CC [M] net/netfilter/ipvs/ip_vs_sched.o CC mm/mm_init.o CC arch/x86/kernel/cpu/mce/intel.o CC [M] arch/x86/kvm/../../../virt/kvm/eventfd.o AR drivers/pinctrl/built-in.a CC [M] net/netfilter/ipvs/ip_vs_xmit.o AR drivers/pwm/built-in.a CC io_uring/epoll.o CC security/keys/sysctl.o CC mm/percpu.o CC [M] net/netfilter/nfnetlink.o CC kernel/sched/fair.o AR arch/x86/events/zhaoxin/built-in.a CC net/packet/diag.o CC arch/x86/kernel/apic/vector.o AR sound/pci/korg1212/built-in.a AR arch/x86/pci/built-in.a CC drivers/gpio/gpiolib-devres.o AR lib/crypto/built-in.a CC drivers/gpio/gpiolib-legacy.o LD [M] lib/crypto/libarc4.o AR sound/pci/mixart/built-in.a CC drivers/pci/msi/pcidev_msi.o CC net/xfrm/xfrm_state.o CC drivers/pci/pcie/portdrv.o AR sound/pci/nm256/built-in.a CC drivers/pci/hotplug/pci_hotplug_core.o AR drivers/pci/controller/dwc/built-in.a CC fs/iomap/buffered-io.o AR drivers/pci/controller/mobiveil/built-in.a CC drivers/pci/controller/vmd.o CC crypto/ahash.o CC drivers/pci/msi/api.o AR net/sched/built-in.a CC drivers/pci/hotplug/acpi_pcihp.o AR net/dsa/built-in.a CC sound/core/memory.o CC block/blk-settings.o CC net/bridge/br_forward.o CC kernel/sched/build_policy.o AR sound/atmel/built-in.a CC arch/x86/kernel/cpu/mce/threshold.o AR sound/hda/built-in.a CC net/bridge/br_if.o CC [M] sound/hda/hda_bus_type.o AR security/keys/built-in.a AR lib/lz4/built-in.a AR security/built-in.a CC lib/zstd/zstd_compress_module.o CC drivers/pci/msi/msi.o CC arch/x86/mm/extable.o CC net/ethtool/debug.o AR arch/x86/kernel/kprobes/built-in.a CC lib/zstd/compress/fse_compress.o CC io_uring/statx.o CC [M] sound/hda/hdac_bus.o AR arch/x86/kernel/cpu/mtrr/built-in.a CC [M] sound/pci/hda/hda_hwdep.o CC arch/x86/events/core.o CC arch/x86/kernel/cpu/microcode/core.o CC arch/x86/events/intel/ds.o AR net/unix/built-in.a CC arch/x86/kernel/apic/init.o CC arch/x86/events/probe.o CC crypto/shash.o AR net/key/built-in.a CC [M] arch/x86/kvm/../../../virt/kvm/binary_stats.o CC io_uring/net.o CC arch/x86/kernel/cpu/microcode/intel.o CC mm/slab_common.o CC sound/core/control.o CC sound/core/misc.o CC lib/zstd/compress/hist.o CC drivers/pci/pcie/rcec.o AR net/packet/built-in.a CC crypto/akcipher.o LDS arch/x86/kernel/vmlinux.lds CC drivers/pci/hotplug/pciehp_core.o CC drivers/pci/pcie/aspm.o CC lib/zstd/compress/huf_compress.o CC arch/x86/kernel/apic/hw_nmi.o CC drivers/pci/pcie/aer.o CC arch/x86/kernel/apic/io_apic.o CC drivers/gpio/gpiolib-cdev.o CC arch/x86/events/intel/knc.o CC arch/x86/kernel/cpu/cacheinfo.o CC [M] net/sunrpc/auth_gss/auth_gss.o CC net/sunrpc/clnt.o CC net/ipv4/ip_fragment.o CC arch/x86/kernel/apic/msi.o CC arch/x86/kernel/cpu/mce/apei.o CC block/blk-ioc.o CC [M] sound/pci/hda/hda_generic.o CC block/blk-map.o AR drivers/pci/controller/built-in.a CC mm/compaction.o CC arch/x86/mm/mmap.o CC arch/x86/kernel/cpu/microcode/amd.o CC kernel/locking/mutex.o CC [M] sound/hda/hdac_device.o CC net/ethtool/wol.o CC kernel/locking/semaphore.o CC drivers/pci/msi/irqdomain.o CC [M] arch/x86/kvm/../../../virt/kvm/vfio.o CC sound/core/device.o AR drivers/pci/switch/built-in.a CC drivers/pci/access.o CC sound/core/info.o CC [M] net/netfilter/ipvs/ip_vs_app.o CC arch/x86/kernel/apic/x2apic_phys.o CC sound/core/isadma.o CC io_uring/msg_ring.o CC [M] arch/x86/kvm/../../../virt/kvm/coalesced_mmio.o CC drivers/pci/hotplug/pciehp_ctrl.o CC crypto/sig.o CC net/xfrm/xfrm_hash.o CC arch/x86/kernel/apic/x2apic_cluster.o CC net/bridge/br_input.o AR arch/x86/kernel/cpu/mce/built-in.a CC arch/x86/kernel/cpu/scattered.o CC arch/x86/mm/pgtable.o CC arch/x86/kernel/apic/apic_flat_64.o CC drivers/gpio/gpiolib-sysfs.o CC net/core/datagram.o CC net/core/stream.o CC block/blk-merge.o CC net/core/scm.o CC [M] arch/x86/kvm/../../../virt/kvm/async_pf.o CC drivers/gpio/gpiolib-acpi.o CC drivers/pci/pcie/err.o CC mm/show_mem.o CC drivers/pci/bus.o CC fs/iomap/direct-io.o AR drivers/pci/msi/built-in.a CC kernel/locking/rwsem.o CC kernel/locking/percpu-rwsem.o CC [M] sound/hda/hdac_sysfs.o CC arch/x86/events/intel/lbr.o AR arch/x86/kernel/cpu/microcode/built-in.a CC arch/x86/kernel/cpu/topology.o CC lib/zstd/compress/zstd_compress.o CC arch/x86/mm/physaddr.o CC net/ethtool/features.o CC drivers/pci/probe.o CC fs/iomap/fiemap.o CC net/ipv4/ip_forward.o CC crypto/kpp.o CC io_uring/timeout.o CC drivers/pci/hotplug/pciehp_pci.o CC lib/xz/xz_dec_syms.o CC [M] arch/x86/kvm/../../../virt/kvm/irqchip.o CC net/sunrpc/xprt.o CC kernel/power/qos.o CC lib/xz/xz_dec_stream.o CC net/ipv4/ip_options.o CC [M] net/sunrpc/auth_gss/gss_generic_token.o CC sound/core/vmaster.o CC net/ipv6/ip6_input.o CC io_uring/sqpoll.o CC net/sunrpc/socklib.o CC arch/x86/kernel/apic/probe_64.o CC arch/x86/kernel/cpu/common.o CC net/core/gen_stats.o CC drivers/pci/pcie/aer_inject.o CC lib/xz/xz_dec_lzma2.o CC arch/x86/mm/tlb.o CC [M] net/netfilter/ipvs/ip_vs_sync.o CC arch/x86/mm/cpu_entry_area.o CC kernel/power/main.o CC drivers/pci/host-bridge.o CC net/ipv6/addrconf.o CC net/xfrm/xfrm_input.o CC [M] sound/hda/hdac_regmap.o CC net/xfrm/xfrm_output.o AR arch/x86/kernel/apic/built-in.a CC crypto/acompress.o CC lib/xz/xz_dec_bcj.o CC net/bridge/br_ioctl.o CC block/blk-timeout.o CC drivers/gpio/gpiolib-swnode.o CC sound/core/ctljack.o CC drivers/pci/hotplug/pciehp_hpc.o CC [M] arch/x86/kvm/../../../virt/kvm/dirty_ring.o CC kernel/locking/irqflag-debug.o CC [M] net/sunrpc/auth_gss/gss_mech_switch.o CC block/blk-lib.o CC fs/iomap/seek.o CC net/ethtool/privflags.o CC fs/iomap/swapfile.o CC net/bridge/br_stp.o AS arch/x86/kernel/head_64.o CC [M] sound/hda/hdac_controller.o CC [M] arch/x86/kvm/../../../virt/kvm/pfncache.o CC kernel/power/console.o CC arch/x86/events/intel/p4.o CC net/ethtool/rings.o CC io_uring/fdinfo.o CC kernel/power/process.o CC [M] sound/hda/hdac_stream.o CC sound/core/jack.o CC kernel/locking/mutex-debug.o CC [M] arch/x86/kvm/x86.o CC drivers/pci/pcie/pme.o CC [M] net/sunrpc/auth_gss/svcauth_gss.o AR lib/xz/built-in.a CC net/bridge/br_stp_bpdu.o CC net/sunrpc/xprtsock.o CC net/8021q/vlan_core.o AR drivers/gpio/built-in.a CC net/sunrpc/sched.o CC net/core/gen_estimator.o CC [M] arch/x86/kvm/emulate.o CC lib/raid6/algos.o CC net/ipv4/ip_output.o CC crypto/scompress.o CC lib/raid6/recov.o CC arch/x86/mm/maccess.o CC net/ipv4/ip_sockglue.o CC sound/core/timer.o AR fs/iomap/built-in.a CC block/blk-mq.o AR fs/quota/built-in.a CC kernel/sched/build_utility.o CC mm/shmem_quota.o CC [M] arch/x86/kvm/i8259.o CC arch/x86/kernel/cpu/rdrand.o CC fs/proc/task_mmu.o CC arch/x86/mm/pgprot.o CC kernel/locking/lockdep.o CC net/dcb/dcbnl.o CC kernel/locking/lockdep_proc.o CC net/l3mdev/l3mdev.o CC net/dcb/dcbevent.o CC drivers/pci/hotplug/acpiphp_core.o CC sound/core/hrtimer.o CC arch/x86/kernel/cpu/match.o CC net/handshake/alert.o CC [M] net/bluetooth/af_bluetooth.o CC drivers/pci/pcie/dpc.o CC [M] net/bluetooth/hci_core.o CC [M] net/sunrpc/auth_gss/gss_rpc_upcall.o CC net/handshake/genl.o CC arch/x86/events/intel/p6.o CC net/ethtool/channels.o CC kernel/power/suspend.o HOSTCC lib/raid6/mktables CC [M] sound/hda/array.o CC crypto/algboss.o CC net/bridge/br_stp_if.o CC net/xfrm/xfrm_sysctl.o CC io_uring/tctx.o CC [M] net/netfilter/ipvs/ip_vs_est.o UNROLL lib/raid6/int1.c UNROLL lib/raid6/int2.c UNROLL lib/raid6/int4.c CC arch/x86/mm/hugetlbpage.o UNROLL lib/raid6/int8.c UNROLL lib/raid6/int16.c UNROLL lib/raid6/int32.c CC net/core/net_namespace.o CC lib/raid6/recov_ssse3.o CC arch/x86/kernel/cpu/bugs.o CC mm/interval_tree.o CC lib/raid6/recov_avx2.o CC sound/core/seq_device.o CC net/sunrpc/auth.o CC [M] sound/pci/hda/patch_realtek.o CC drivers/pci/remove.o CC drivers/pci/hotplug/acpiphp_glue.o CC drivers/pci/pci.o CC [M] net/8021q/vlan.o CC drivers/pci/pci-driver.o CC kernel/power/hibernate.o AR drivers/pci/pcie/built-in.a AR net/l3mdev/built-in.a CC net/handshake/netlink.o CC lib/raid6/mmx.o CC fs/kernfs/mount.o CC arch/x86/events/intel/pt.o CC [M] sound/hda/hdmi_chmap.o CC lib/raid6/sse1.o CC drivers/pci/search.o CC lib/zstd/compress/zstd_compress_literals.o CC fs/kernfs/inode.o CC lib/raid6/sse2.o CC lib/zstd/compress/zstd_compress_sequences.o CC block/blk-mq-tag.o CC crypto/testmgr.o CC lib/zstd/compress/zstd_compress_superblock.o CC [M] arch/x86/kvm/irq.o CC net/bridge/br_stp_timer.o CC arch/x86/mm/kasan_init_64.o CC io_uring/poll.o CC [M] sound/core/control_led.o CC net/bridge/br_netlink.o CC net/ethtool/coalesce.o CC net/xfrm/xfrm_replay.o CC [M] sound/hda/trace.o CC kernel/locking/spinlock.o CC mm/list_lru.o CC [M] net/bluetooth/hci_conn.o CC [M] net/sunrpc/auth_gss/gss_rpc_xdr.o CC lib/zstd/compress/zstd_double_fast.o CC block/blk-stat.o CC arch/x86/events/intel/uncore.o CC net/ipv4/inet_hashtables.o CC [M] net/bluetooth/hci_event.o CC fs/sysfs/file.o CC kernel/locking/osq_lock.o AR net/dcb/built-in.a CC fs/proc/inode.o CC fs/kernfs/dir.o CC [M] net/dns_resolver/dns_key.o CC lib/raid6/avx2.o CC [M] net/8021q/vlan_dev.o AR drivers/pci/hotplug/built-in.a CC fs/kernfs/file.o CC net/ipv4/inet_timewait_sock.o CC [M] net/netfilter/ipvs/ip_vs_proto.o CC kernel/power/snapshot.o CC net/core/secure_seq.o CC arch/x86/mm/numa.o CC drivers/pci/pci-sysfs.o CC [M] arch/x86/kvm/lapic.o CC net/ipv4/inet_connection_sock.o CC net/handshake/request.o CC arch/x86/kernel/cpu/aperfmperf.o CC [M] sound/core/hwdep.o CC [M] arch/x86/kvm/i8254.o CC block/blk-mq-sysfs.o CC [M] sound/hda/hdac_component.o CC [M] net/sunrpc/auth_gss/trace.o CC [M] net/dns_resolver/dns_query.o CC lib/zstd/compress/zstd_fast.o CC lib/zstd/compress/zstd_lazy.o CC net/ethtool/pause.o CC mm/workingset.o CC net/sunrpc/auth_null.o CC net/sunrpc/auth_tls.o CC io_uring/cancel.o CC fs/sysfs/dir.o CC [M] net/sunrpc/auth_gss/gss_krb5_mech.o CC lib/raid6/avx512.o CC arch/x86/kernel/cpu/cpuid-deps.o CC net/xfrm/xfrm_device.o CC fs/proc/root.o CC [M] sound/core/pcm.o CC fs/kernfs/symlink.o CC [M] sound/hda/hdac_i915.o CC block/blk-mq-cpumap.o LD [M] net/dns_resolver/dns_resolver.o CC drivers/video/console/dummycon.o CC fs/sysfs/symlink.o CC drivers/idle/intel_idle.o CC [M] net/8021q/vlan_netlink.o CC arch/x86/kernel/cpu/umwait.o CC [M] sound/pci/hda/patch_analog.o CC net/core/flow_dissector.o CC arch/x86/mm/numa_64.o CC net/bridge/br_netlink_tunnel.o CC drivers/video/console/vgacon.o CC arch/x86/events/intel/uncore_nhmex.o CC crypto/cmac.o CC [M] net/netfilter/ipvs/ip_vs_pe.o CC [M] net/bluetooth/mgmt.o CC [M] sound/pci/hda/patch_hdmi.o CC net/ipv6/addrlabel.o CC mm/debug.o CC net/ethtool/eee.o CC drivers/video/logo/logo.o CC io_uring/kbuf.o CC lib/raid6/recov_avx512.o HOSTCC drivers/video/logo/pnmtologo CC fs/proc/base.o CC [M] sound/pci/hda/hda_eld.o CC net/devres.o CC kernel/power/swap.o CC arch/x86/kernel/cpu/proc.o CC net/handshake/tlshd.o AR fs/kernfs/built-in.a CC drivers/pci/rom.o CC [M] sound/hda/intel-dsp-config.o CC kernel/power/user.o CC net/socket.o CC fs/proc/generic.o CC [M] sound/hda/intel-nhlt.o CC fs/sysfs/mount.o CC arch/x86/mm/amdtopology.o CC block/blk-mq-sched.o CC crypto/hmac.o LOGO drivers/video/logo/logo_linux_clut224.c CC net/sunrpc/auth_unix.o CC kernel/locking/qspinlock.o CC drivers/video/logo/logo_linux_clut224.o CC [M] sound/core/pcm_native.o AR drivers/video/logo/built-in.a CC net/compat.o CC fs/sysfs/group.o CC [M] sound/pci/hda/hda_intel.o CC [M] net/8021q/vlanproc.o TABLE lib/raid6/tables.c CC lib/raid6/int1.o CC net/xfrm/xfrm_algo.o CC mm/gup.o MKCAP arch/x86/kernel/cpu/capflags.c CC net/ipv4/tcp.o AR drivers/video/console/built-in.a CC mm/mmap_lock.o CC drivers/pci/setup-res.o CC drivers/pci/irq.o CC drivers/video/backlight/backlight.o CC kernel/locking/rtmutex_api.o AR drivers/idle/built-in.a CC kernel/locking/spinlock_debug.o CC kernel/locking/qrwlock.o CC net/ethtool/tsinfo.o CC arch/x86/events/intel/uncore_snb.o CC [M] net/netfilter/ipvs/ip_vs_proto_tcp.o CC [M] sound/hda/intel-sdw-acpi.o AR drivers/video/fbdev/omap/built-in.a CC drivers/video/fbdev/core/fb_notify.o CC drivers/video/aperture.o CC drivers/video/cmdline.o CC net/bridge/br_arp_nd_proxy.o CC arch/x86/mm/srat.o CC crypto/vmac.o CC io_uring/rsrc.o CC [M] net/sunrpc/auth_gss/gss_krb5_seal.o AR fs/sysfs/built-in.a CC io_uring/rw.o CC net/ipv6/route.o CC fs/configfs/inode.o CC net/handshake/trace.o CC lib/raid6/int2.o CC fs/configfs/file.o CC block/ioctl.o CC lib/zstd/compress/zstd_ldm.o CC net/sunrpc/svc.o CC fs/configfs/dir.o CC kernel/power/poweroff.o AR net/8021q/built-in.a LD [M] net/8021q/8021q.o LD [M] sound/hda/snd-hda-core.o LD [M] sound/hda/snd-intel-dspcfg.o CC net/sunrpc/svcsock.o CC net/ipv4/tcp_input.o LD [M] sound/hda/snd-intel-sdw-acpi.o AR sound/x86/built-in.a CC net/sysctl_net.o CC drivers/pci/vpd.o AR kernel/power/built-in.a CC drivers/pci/setup-bus.o CC kernel/printk/printk.o CC net/xfrm/xfrm_user.o AR kernel/sched/built-in.a CC drivers/pci/vc.o CC [M] drivers/video/fbdev/core/fb_info.o CC arch/x86/mm/pkeys.o CC [M] net/sunrpc/auth_gss/gss_krb5_unseal.o CC net/ethtool/cabletest.o CC net/core/sysctl_net_core.o AR drivers/video/backlight/built-in.a CC net/ethtool/tunnels.o AR sound/xen/built-in.a CC arch/x86/events/intel/uncore_snbep.o CC arch/x86/kernel/cpu/powerflags.o AR sound/virtio/built-in.a CC drivers/video/nomodeset.o LD [M] sound/pci/hda/snd-hda-codec.o CC [M] sound/core/pcm_lib.o CC net/ethtool/fec.o CC drivers/video/hdmi.o CC lib/raid6/int4.o CC crypto/xcbc.o CC crypto/crypto_null.o LD [M] sound/pci/hda/snd-hda-codec-generic.o CC arch/x86/kernel/cpu/feat_ctl.o AR drivers/char/ipmi/built-in.a LD [M] sound/pci/hda/snd-hda-codec-realtek.o CC arch/x86/kernel/cpu/intel.o CC lib/raid6/int8.o AR kernel/locking/built-in.a LD [M] sound/pci/hda/snd-hda-codec-analog.o CC kernel/printk/printk_safe.o LD [M] sound/pci/hda/snd-hda-codec-hdmi.o CC kernel/printk/printk_ringbuffer.o CC drivers/acpi/acpica/dsargs.o LD [M] sound/pci/hda/snd-hda-intel.o CC [M] net/netfilter/ipvs/ip_vs_proto_udp.o AR sound/pci/oxygen/built-in.a AR sound/pci/pcxhr/built-in.a AR sound/pci/riptide/built-in.a CC net/bridge/br_sysfs_if.o AR sound/pci/rme9652/built-in.a AR sound/pci/trident/built-in.a AR sound/pci/ymfpci/built-in.a AR sound/pci/vx222/built-in.a AR sound/pci/built-in.a CC block/genhd.o CC arch/x86/mm/pti.o CC fs/proc/array.o CC drivers/acpi/acpica/dscontrol.o CC net/core/dev.o CC block/ioprio.o CC io_uring/opdef.o CC [M] drivers/video/fbdev/core/fbmem.o CC io_uring/notif.o CC [M] net/sunrpc/auth_gss/gss_krb5_wrap.o CC drivers/acpi/acpica/dsdebug.o CC block/badblocks.o CC crypto/md5.o AR net/handshake/built-in.a CC fs/configfs/symlink.o AR drivers/video/fbdev/omap2/omapfb/dss/built-in.a AR drivers/video/fbdev/omap2/omapfb/displays/built-in.a AR drivers/video/fbdev/omap2/omapfb/built-in.a CC [M] drivers/video/fbdev/uvesafb.o AR drivers/video/fbdev/omap2/built-in.a CC io_uring/io-wq.o CC drivers/acpi/acpica/dsfield.o CC arch/x86/kernel/cpu/intel_pconfig.o CC drivers/acpi/acpica/dsinit.o CC sound/sound_core.o CC [M] arch/x86/kvm/ioapic.o CC [M] sound/core/pcm_misc.o CC lib/raid6/int16.o CC fs/proc/fd.o CC arch/x86/kernel/cpu/tsx.o CC net/ethtool/eeprom.o CC [M] arch/x86/kvm/irq_comm.o CC arch/x86/kernel/cpu/intel_epb.o CC arch/x86/kernel/cpu/amd.o CC lib/raid6/int32.o CC crypto/sha1_generic.o CC crypto/sha256_generic.o CC sound/last.o AR arch/x86/mm/built-in.a CC arch/x86/kernel/cpu/hygon.o CC block/blk-rq-qos.o CC [M] sound/core/pcm_memory.o CC fs/configfs/mount.o CC crypto/sha512_generic.o CC arch/x86/kernel/cpu/centaur.o CC [M] net/sunrpc/auth_gss/gss_krb5_crypto.o CC drivers/acpi/acpica/dsmethod.o CC drivers/pci/mmap.o CC net/ethtool/stats.o CC mm/highmem.o CC net/core/dev_addr_lists.o CC [M] arch/x86/kvm/cpuid.o CC [M] net/bluetooth/hci_sock.o CC [M] net/bluetooth/hci_sysfs.o CC [M] drivers/video/fbdev/core/fbcmap.o CC [M] net/netfilter/ipvs/ip_vs_nfct.o CC drivers/pci/setup-irq.o CC arch/x86/kernel/cpu/zhaoxin.o CC [M] drivers/video/fbdev/core/modedb.o CC net/bridge/br_sysfs_br.o CC [M] drivers/video/fbdev/core/fbcvt.o CC net/bridge/br_nf_core.o CC lib/raid6/tables.o CC [M] drivers/video/fbdev/core/fb_cmdline.o CC lib/fonts/fonts.o CC lib/argv_split.o CC kernel/printk/sysctl.o CC [M] drivers/video/fbdev/core/fb_io_fops.o CC fs/proc/proc_tty.o CC [M] net/netfilter/nf_conntrack_core.o CC net/core/dst.o CC drivers/acpi/acpica/dsmthdat.o CC fs/configfs/item.o CC [M] net/netfilter/nf_conntrack_standalone.o CC [M] net/netfilter/nf_conntrack_expect.o CC [M] net/netfilter/nf_conntrack_helper.o CC [M] arch/x86/kvm/pmu.o CC lib/fonts/font_8x8.o CC lib/bug.o AR kernel/printk/built-in.a CC [M] sound/core/memalloc.o CC block/disk-events.o CC kernel/irq/irqdesc.o CC kernel/rcu/update.o CC crypto/sha3_generic.o AR kernel/livepatch/built-in.a CC lib/fonts/font_8x16.o CC [M] net/sunrpc/auth_gss/gss_krb5_keys.o CC mm/memory.o CC [M] arch/x86/kvm/mtrr.o CC net/core/netevent.o CC arch/x86/events/intel/uncore_discovery.o CC drivers/pci/proc.o AR net/xfrm/built-in.a CC drivers/pci/slot.o AR lib/raid6/built-in.a AR io_uring/built-in.a CC drivers/acpi/acpica/dsobject.o CC crypto/blake2b_generic.o CC kernel/dma/mapping.o CC drivers/acpi/acpica/dsopcode.o CC [M] drivers/video/fbdev/core/fb_backlight.o CC crypto/ecb.o CC [M] sound/core/pcm_timer.o CC fs/proc/cmdline.o AR fs/configfs/built-in.a CC crypto/cbc.o AR lib/fonts/built-in.a CC drivers/pci/pci-acpi.o CC [M] drivers/video/fbdev/simplefb.o CC net/ethtool/phc_vclocks.o CC lib/buildid.o CC lib/cmdline.o CC [M] drivers/video/fbdev/core/fbmon.o CC lib/cpumask.o CC arch/x86/events/intel/cstate.o CC [M] net/netfilter/ipvs/ip_vs_rr.o CC lib/zstd/compress/zstd_opt.o CC lib/ctype.o CC kernel/dma/direct.o CC drivers/acpi/acpica/dspkginit.o CC kernel/dma/ops_helpers.o CC block/blk-ia-ranges.o CC net/sunrpc/svcauth.o CC kernel/irq/handle.o CC lib/dec_and_lock.o CC drivers/acpi/acpica/dsutils.o LD [M] net/sunrpc/auth_gss/auth_rpcgss.o CC kernel/dma/dummy.o CC fs/proc/consoles.o CC net/bridge/br_multicast.o LD [M] net/sunrpc/auth_gss/rpcsec_gss_krb5.o CC net/sunrpc/svcauth_unix.o CC crypto/pcbc.o LD [M] sound/core/snd-ctl-led.o CC drivers/pci/quirks.o LD [M] sound/core/snd-hwdep.o AR sound/core/built-in.a CC net/sunrpc/addr.o CC drivers/pci/ats.o CC net/core/neighbour.o LD [M] sound/core/snd-pcm.o CC [M] net/netfilter/nf_conntrack_proto.o CC fs/proc/cpuinfo.o CC net/core/rtnetlink.o CC net/bridge/br_mdb.o AR sound/built-in.a CC net/ipv4/tcp_output.o CC mm/mincore.o CC net/ipv4/tcp_timer.o CC net/ethtool/mm.o CC net/ipv4/tcp_ipv4.o CC [M] net/bluetooth/l2cap_core.o CC [M] drivers/video/fbdev/core/fb_defio.o CC [M] net/netfilter/nf_conntrack_proto_generic.o CC [M] drivers/video/fbdev/core/fb_chrdev.o CC crypto/cts.o CC mm/mlock.o AR arch/x86/events/intel/built-in.a CC lib/decompress.o CC arch/x86/events/utils.o CC drivers/acpi/acpica/dswexec.o CC mm/mmap.o CC net/ipv4/tcp_minisocks.o CC net/sunrpc/rpcb_clnt.o CC kernel/irq/manage.o CC kernel/irq/spurious.o CC [M] net/bluetooth/l2cap_sock.o CC fs/proc/devices.o CC block/early-lookup.o CC kernel/rcu/sync.o CC drivers/acpi/acpica/dswload.o CC crypto/lrw.o LD [M] net/netfilter/ipvs/ip_vs.o CC kernel/dma/contiguous.o CC [M] arch/x86/kvm/hyperv.o CC arch/x86/kernel/cpu/perfctr-watchdog.o CC drivers/acpi/numa/srat.o CC drivers/acpi/apei/apei-base.o CC kernel/rcu/srcutree.o AR drivers/acpi/pmic/built-in.a CC [M] net/netfilter/nf_conntrack_proto_tcp.o CC [M] drivers/video/fbdev/core/fb_procfs.o CC arch/x86/kernel/cpu/vmware.o CC crypto/xts.o CC arch/x86/events/rapl.o CC drivers/acpi/acpica/dswload2.o CC arch/x86/kernel/cpu/hypervisor.o CC arch/x86/events/msr.o CC mm/mmu_gather.o CC fs/proc/interrupts.o CC kernel/irq/resend.o CC [M] net/bluetooth/smp.o CC net/ethtool/module.o CC block/bsg.o CC kernel/dma/swiotlb.o CC net/ethtool/pse-pd.o CC [M] net/netfilter/nf_conntrack_proto_udp.o CC crypto/ctr.o CC [M] net/netfilter/nf_conntrack_proto_icmp.o CC drivers/acpi/acpica/dswscope.o CC arch/x86/kernel/cpu/mshyperv.o CC [M] net/bluetooth/lib.o CC fs/proc/loadavg.o CC net/ipv6/ip6_fib.o AR drivers/acpi/numa/built-in.a CC arch/x86/kernel/cpu/capflags.o CC drivers/acpi/dptf/int340x_thermal.o CC kernel/rcu/tree.o CC drivers/acpi/tables.o CC kernel/irq/chip.o CC [M] drivers/video/fbdev/core/fbsysfs.o CC drivers/acpi/apei/hest.o CC [M] net/bluetooth/ecdh_helper.o CC net/ipv4/tcp_cong.o CC drivers/acpi/acpica/dswstate.o CC net/ethtool/plca.o CC crypto/gcm.o CC kernel/rcu/rcu_segcblist.o CC arch/x86/kernel/head64.o CC kernel/irq/dummychip.o CC arch/x86/kernel/ebda.o CC fs/proc/meminfo.o CC fs/proc/stat.o CC arch/x86/kernel/platform-quirks.o AR arch/x86/events/built-in.a CC drivers/acpi/apei/erst.o CC drivers/acpi/blacklist.o CC [M] arch/x86/kvm/debugfs.o AR drivers/acpi/dptf/built-in.a CC block/bsg-lib.o CC block/blk-cgroup.o CC kernel/dma/remap.o CC net/sunrpc/timer.o CC drivers/pci/iov.o CC block/blk-cgroup-rwstat.o CC [M] net/bluetooth/hci_request.o AR arch/x86/kernel/cpu/built-in.a CC arch/x86/kernel/process_64.o CC [M] net/bluetooth/mgmt_util.o CC kernel/entry/common.o CC [M] net/bluetooth/mgmt_config.o CC drivers/acpi/acpica/evevent.o CC kernel/entry/syscall_user_dispatch.o CC drivers/acpi/apei/bert.o CC arch/x86/kernel/signal.o CC arch/x86/kernel/signal_64.o CC [M] net/bluetooth/hci_codec.o CC kernel/entry/kvm.o CC lib/zstd/zstd_decompress_module.o CC drivers/acpi/apei/ghes.o CC fs/proc/uptime.o CC [M] net/bluetooth/eir.o CC [M] drivers/video/fbdev/core/fbcon.o CC [M] net/netfilter/nf_conntrack_extend.o CC [M] net/netfilter/nf_conntrack_acct.o CC net/sunrpc/xdr.o CC fs/proc/util.o AR kernel/dma/built-in.a CC kernel/module/main.o CC kernel/irq/devres.o CC drivers/acpi/acpica/evgpe.o CC kernel/module/strict_rwx.o AR net/ethtool/built-in.a CC lib/decompress_bunzip2.o CC block/blk-throttle.o CC drivers/acpi/osi.o CC lib/zstd/decompress/huf_decompress.o CC drivers/acpi/acpica/evgpeblk.o CC crypto/pcrypt.o CC kernel/irq/autoprobe.o CC kernel/module/kmod.o CC lib/zstd/decompress/zstd_ddict.o CC fs/proc/version.o CC [M] arch/x86/kvm/mmu/mmu.o CC fs/proc/softirqs.o CC lib/zstd/decompress/zstd_decompress.o CC [M] net/bluetooth/hci_sync.o CC fs/proc/namespaces.o CC crypto/cryptd.o CC block/mq-deadline.o CC net/ipv4/tcp_metrics.o CC kernel/irq/irqdomain.o CC drivers/pci/pci-label.o CC kernel/irq/proc.o AR kernel/entry/built-in.a CC fs/devpts/inode.o CC kernel/time/time.o CC kernel/time/timer.o CC drivers/acpi/acpica/evgpeinit.o CC [M] net/bluetooth/coredump.o CC kernel/module/tree_lookup.o CC arch/x86/kernel/traps.o CC drivers/acpi/osl.o CC [M] net/bluetooth/sco.o CC drivers/acpi/acpica/evgpeutil.o CC drivers/acpi/utils.o CC drivers/pnp/pnpacpi/core.o CC drivers/pnp/core.o CC kernel/module/debug_kmemleak.o CC drivers/pnp/card.o CC net/sunrpc/sunrpc_syms.o CC kernel/module/kallsyms.o CC drivers/pnp/driver.o CC [M] arch/x86/kvm/mmu/page_track.o CC mm/mprotect.o CC lib/zstd/decompress/zstd_decompress_block.o CC [M] net/netfilter/nf_conntrack_seqadj.o AR drivers/amba/built-in.a CC [M] arch/x86/kvm/mmu/spte.o AR drivers/acpi/apei/built-in.a CC drivers/pnp/pnpacpi/rsparser.o CC net/ipv6/ipv6_sockglue.o CC [M] net/bluetooth/iso.o CC drivers/acpi/acpica/evglock.o CC fs/proc/self.o CC kernel/module/procfs.o CC lib/decompress_inflate.o CC drivers/pnp/resource.o CC drivers/pci/pci-stub.o CC kernel/futex/core.o CC kernel/cgroup/cgroup.o CC drivers/pci/vgaarb.o CC kernel/trace/trace_clock.o AR fs/devpts/built-in.a CC crypto/des_generic.o CC kernel/futex/syscalls.o CC kernel/irq/migration.o CC drivers/pnp/manager.o CC drivers/acpi/acpica/evhandler.o CC drivers/acpi/reboot.o CC net/bridge/br_multicast_eht.o CC fs/ext4/balloc.o CC drivers/acpi/acpica/evmisc.o CC block/kyber-iosched.o CC fs/jbd2/transaction.o CC kernel/time/hrtimer.o CC arch/x86/kernel/idt.o CC kernel/irq/cpuhotplug.o CC [M] drivers/video/fbdev/core/bitblit.o CC kernel/irq/pm.o CC [M] net/bluetooth/a2mp.o CC net/ipv4/tcp_fastopen.o CC fs/proc/thread_self.o CC fs/ext4/bitmap.o CC net/bridge/br_vlan.o CC net/ipv4/tcp_rate.o CC kernel/trace/ftrace.o CC drivers/acpi/nvs.o CC net/core/utils.o CC net/sunrpc/cache.o CC crypto/aes_generic.o AR drivers/pnp/pnpacpi/built-in.a CC net/core/link_watch.o CC drivers/pnp/support.o CC arch/x86/kernel/irq.o CC fs/ext4/block_validity.o CC drivers/pnp/interface.o CC drivers/acpi/acpica/evregion.o CC [M] net/netfilter/nf_conntrack_proto_icmpv6.o CC kernel/irq/msi.o CC net/sunrpc/rpc_pipe.o CC net/ipv4/tcp_recovery.o CC net/bridge/br_vlan_tunnel.o CC fs/ext4/dir.o CC net/sunrpc/sysfs.o CC kernel/trace/ring_buffer.o CC kernel/module/sysfs.o CC fs/proc/proc_sysctl.o CC kernel/futex/pi.o CC arch/x86/kernel/irq_64.o CC [M] arch/x86/kvm/mmu/tdp_iter.o CC mm/mremap.o CC drivers/pnp/quirks.o AR drivers/pci/built-in.a CC net/core/filter.o CC kernel/trace/trace.o CC kernel/time/timekeeping.o CC [M] net/bluetooth/amp.o CC net/ipv4/tcp_ulp.o CC drivers/acpi/acpica/evrgnini.o CC fs/jbd2/commit.o CC [M] drivers/video/fbdev/core/softcursor.o CC fs/ext4/ext4_jbd2.o CC kernel/irq/affinity.o CC [M] arch/x86/kvm/mmu/tdp_mmu.o CC net/ipv4/tcp_offload.o CC arch/x86/kernel/dumpstack_64.o CC net/ipv6/ndisc.o AR drivers/clk/actions/built-in.a AR drivers/clk/analogbits/built-in.a CC crypto/crc32c_generic.o AR drivers/clk/bcm/built-in.a AR kernel/module/built-in.a AR drivers/clk/imgtec/built-in.a CC drivers/dma/dw/core.o AR drivers/soc/apple/built-in.a AR drivers/clk/imx/built-in.a CC drivers/dma/dw/dw.o CC kernel/futex/requeue.o CC block/bfq-iosched.o AR drivers/soc/aspeed/built-in.a AR drivers/clk/ingenic/built-in.a AR drivers/clk/mediatek/built-in.a AR drivers/soc/bcm/built-in.a AR drivers/clk/microchip/built-in.a AR drivers/soc/fsl/built-in.a AR drivers/clk/mstar/built-in.a AR drivers/soc/fujitsu/built-in.a AR drivers/clk/mvebu/built-in.a AR drivers/soc/hisilicon/built-in.a CC drivers/acpi/acpica/evsci.o CC drivers/dma/dw/idma32.o AR drivers/clk/ralink/built-in.a AR drivers/soc/imx/built-in.a CC drivers/dma/dw/acpi.o AR drivers/soc/ixp4xx/built-in.a AR drivers/clk/renesas/built-in.a AR drivers/soc/loongson/built-in.a AR drivers/clk/socfpga/built-in.a AR drivers/soc/mediatek/built-in.a AR drivers/clk/sprd/built-in.a AR drivers/soc/microchip/built-in.a CC kernel/bpf/core.o AR drivers/clk/starfive/built-in.a AR drivers/soc/nuvoton/built-in.a CC drivers/acpi/acpica/evxface.o CC drivers/pnp/system.o AR drivers/clk/sunxi-ng/built-in.a CC kernel/futex/waitwake.o AR drivers/soc/pxa/built-in.a CC kernel/trace/trace_output.o AR drivers/clk/ti/built-in.a CC kernel/time/ntp.o AR drivers/soc/amlogic/built-in.a AR drivers/clk/versatile/built-in.a CC drivers/clk/x86/clk-lpss-atom.o AR kernel/rcu/built-in.a AR drivers/soc/qcom/built-in.a CC drivers/clk/x86/clk-pmc-atom.o AR drivers/soc/renesas/built-in.a AR drivers/soc/rockchip/built-in.a CC [M] net/netfilter/nf_conntrack_proto_dccp.o AR drivers/soc/sifive/built-in.a AR drivers/soc/sunxi/built-in.a CC net/core/sock_diag.o AR drivers/soc/ti/built-in.a CC kernel/events/core.o CC kernel/irq/matrix.o AR drivers/soc/xilinx/built-in.a AR drivers/soc/built-in.a CC [M] drivers/video/fbdev/core/tileblit.o CC crypto/crct10dif_common.o CC kernel/fork.o CC net/bridge/br_vlan_options.o CC arch/x86/kernel/time.o CC fs/ext4/extents.o CC drivers/dma/dw/pci.o CC kernel/cgroup/rstat.o CC net/sunrpc/svc_xprt.o CC fs/ramfs/inode.o CC mm/msync.o CC net/bridge/br_mst.o AR drivers/pnp/built-in.a AR drivers/pmdomain/actions/built-in.a CC fs/ramfs/file-mmu.o AR drivers/pmdomain/amlogic/built-in.a AR drivers/pmdomain/apple/built-in.a CC crypto/crct10dif_generic.o AR drivers/pmdomain/bcm/built-in.a CC mm/page_vma_mapped.o CC drivers/acpi/acpica/evxfevnt.o CC mm/pagewalk.o AR drivers/pmdomain/imx/built-in.a CC mm/pgtable-generic.o AR drivers/pmdomain/mediatek/built-in.a CC net/sunrpc/xprtmultipath.o CC fs/proc/proc_net.o AR kernel/futex/built-in.a AR drivers/pmdomain/qcom/built-in.a CC net/sunrpc/stats.o AR drivers/pmdomain/renesas/built-in.a AR drivers/clk/x86/built-in.a AR drivers/pmdomain/rockchip/built-in.a AR drivers/clk/xilinx/built-in.a AR drivers/pmdomain/samsung/built-in.a CC drivers/clk/clk-devres.o CC net/sunrpc/sysctl.o AR drivers/pmdomain/st/built-in.a CC [M] net/bridge/br_netfilter_hooks.o AR drivers/pmdomain/starfive/built-in.a AR drivers/pmdomain/sunxi/built-in.a CC kernel/time/clocksource.o AR drivers/pmdomain/tegra/built-in.a CC arch/x86/kernel/ioport.o AR drivers/pmdomain/ti/built-in.a AR drivers/pmdomain/xilinx/built-in.a AR drivers/pmdomain/built-in.a CC lib/zstd/zstd_common_module.o CC fs/jbd2/recovery.o CC drivers/dma/hsu/hsu.o CC lib/zstd/common/debug.o CC [M] net/bluetooth/hci_debugfs.o CC kernel/events/ring_buffer.o CC net/ipv4/tcp_plb.o CC crypto/authenc.o CC drivers/acpi/wakeup.o CC [M] drivers/video/fbdev/core/fb_logo.o AR drivers/dma/dw/built-in.a CC kernel/time/jiffies.o CC drivers/acpi/acpica/evxfgpe.o CC drivers/virtio/virtio.o CC drivers/acpi/acpica/evxfregn.o CC drivers/tty/vt/vt_ioctl.o AR fs/ramfs/built-in.a CC drivers/clk/clk-bulk.o CC drivers/tty/hvc/hvc_console.o CC drivers/tty/serial/8250/8250_core.o CC [M] net/netfilter/nf_conntrack_proto_sctp.o CC lib/zstd/common/entropy_common.o CC drivers/tty/serial/serial_core.o CC kernel/cgroup/namespace.o AR kernel/irq/built-in.a CC [M] net/bridge/br_netfilter_ipv6.o CC drivers/char/hw_random/core.o AR drivers/iommu/amd/built-in.a CC drivers/iommu/intel/dmar.o CC fs/proc/kcore.o CC lib/zstd/common/error_private.o CC drivers/iommu/intel/iommu.o CC net/core/dev_ioctl.o CC lib/zstd/common/fse_decompress.o CC arch/x86/kernel/dumpstack.o CC kernel/exec_domain.o CC fs/proc/kmsg.o CC drivers/tty/serial/8250/8250_pnp.o CC mm/rmap.o CC kernel/trace/trace_seq.o CC kernel/cgroup/cgroup-v1.o CC kernel/time/timer_list.o CC kernel/time/timeconv.o CC drivers/acpi/acpica/exconcat.o CC drivers/clk/clkdev.o CC lib/decompress_unlz4.o AR drivers/dma/hsu/built-in.a AR drivers/dma/idxd/built-in.a CC kernel/trace/trace_stat.o AR drivers/dma/mediatek/built-in.a CC fs/jbd2/checkpoint.o AR drivers/dma/qcom/built-in.a AR drivers/dma/ti/built-in.a CC drivers/virtio/virtio_ring.o AR drivers/dma/xilinx/built-in.a CC [M] drivers/dma/ioat/init.o CC [M] drivers/video/fbdev/core/cfbfillrect.o CC crypto/authencesn.o CC drivers/virtio/virtio_anchor.o CC kernel/panic.o CC net/ipv6/udp.o CC net/ipv4/datagram.o CC mm/vmalloc.o CC [M] arch/x86/kvm/smm.o CC drivers/dma/dmaengine.o AR drivers/tty/hvc/built-in.a CC drivers/acpi/acpica/exconfig.o CC crypto/lzo.o CC kernel/cgroup/freezer.o CC drivers/char/hw_random/intel-rng.o CC net/ipv4/raw.o CC lib/zstd/common/zstd_common.o CC drivers/tty/vt/vc_screen.o CC drivers/clk/clk.o CC kernel/trace/trace_printk.o CC drivers/tty/serial/8250/8250_port.o CC [M] drivers/video/fbdev/core/cfbcopyarea.o CC arch/x86/kernel/nmi.o AR lib/zstd/built-in.a CC drivers/tty/serial/8250/8250_dma.o CC lib/decompress_unlzma.o CC fs/proc/page.o CC kernel/time/timecounter.o CC [M] net/netfilter/nf_conntrack_netlink.o CC kernel/time/alarmtimer.o LD [M] net/bluetooth/bluetooth.o CC drivers/virtio/virtio_pci_modern_dev.o AR drivers/tty/ipwireless/built-in.a CC drivers/tty/tty_io.o AR kernel/bpf/built-in.a CC [M] drivers/video/fbdev/core/cfbimgblt.o AR net/sunrpc/built-in.a CC kernel/time/posix-timers.o AR net/bridge/built-in.a CC kernel/time/posix-cpu-timers.o CC drivers/acpi/acpica/exconvrt.o CC drivers/tty/vt/selection.o CC kernel/cgroup/legacy_freezer.o CC net/core/tso.o CC block/bfq-wf2q.o CC kernel/cgroup/pids.o CC fs/jbd2/revoke.o CC drivers/virtio/virtio_pci_legacy_dev.o LD [M] net/bridge/br_netfilter.o AR drivers/char/hw_random/built-in.a CC [M] net/netfilter/nf_nat_core.o CC drivers/char/agp/backend.o CC drivers/char/tpm/tpm-chip.o CC crypto/lzo-rle.o CC drivers/char/agp/generic.o CC [M] net/netfilter/nf_nat_proto.o CC fs/jbd2/journal.o CC kernel/trace/pid_list.o CC [M] drivers/dma/ioat/dma.o CC crypto/lz4.o CC lib/decompress_unlzo.o CC drivers/iommu/intel/pasid.o CC drivers/virtio/virtio_pci_modern.o CC [M] net/netfilter/nf_nat_helper.o CC drivers/char/agp/isoch.o CC [M] drivers/dma/ioat/prep.o CC arch/x86/kernel/ldt.o CC drivers/acpi/acpica/excreate.o AR fs/proc/built-in.a CC net/ipv6/udplite.o CC crypto/lz4hc.o CC fs/hugetlbfs/inode.o CC drivers/char/agp/intel-agp.o CC [M] arch/x86/kvm/vmx/vmx.o CC drivers/dma/virt-dma.o CC kernel/trace/trace_sched_switch.o CC drivers/tty/vt/keyboard.o CC kernel/cpu.o CC [M] net/netfilter/nf_nat_redirect.o CC [M] drivers/video/fbdev/core/sysfillrect.o CC net/ipv4/udp.o CC drivers/tty/serial/serial_base_bus.o CC net/ipv4/udplite.o CC kernel/cgroup/cpuset.o CC [M] drivers/video/fbdev/core/syscopyarea.o CC lib/decompress_unxz.o AR drivers/gpu/host1x/built-in.a CC drivers/char/tpm/tpm-dev-common.o CC drivers/acpi/acpica/exdebug.o AR drivers/gpu/drm/tests/built-in.a CC [M] drivers/gpu/drm/tests/drm_kunit_helpers.o CC drivers/connector/cn_queue.o CC block/bfq-cgroup.o CC crypto/xxhash_generic.o AR drivers/gpu/vga/built-in.a CC drivers/virtio/virtio_pci_common.o CC drivers/connector/connector.o CC crypto/rng.o CC kernel/time/posix-clock.o CC crypto/drbg.o CC mm/page_alloc.o CC kernel/time/itimer.o CC kernel/time/clockevents.o CC drivers/connector/cn_proc.o CC fs/ext4/extents_status.o CC [M] drivers/video/fbdev/core/sysimgblt.o CC [M] drivers/video/fbdev/core/fb_sys_fops.o CC drivers/tty/serial/8250/8250_dwlib.o AS arch/x86/kernel/ibt_selftest.o CC drivers/acpi/acpica/exdump.o CC lib/decompress_unzstd.o CC drivers/char/agp/intel-gtt.o CC [M] drivers/dma/ioat/dca.o CC arch/x86/kernel/setup.o CC drivers/virtio/virtio_pci_legacy.o CC drivers/tty/serial/serial_ctrl.o CC kernel/trace/trace_functions.o CC kernel/exit.o CC [M] net/netfilter/nf_nat_masquerade.o CC [M] net/netfilter/x_tables.o CC drivers/tty/n_tty.o CC [M] drivers/virtio/virtio_mem.o CC [M] drivers/gpu/drm/tests/drm_buddy_test.o CC drivers/char/tpm/tpm-dev.o CC drivers/iommu/intel/trace.o CC [M] drivers/gpu/drm/tests/drm_cmdline_parser_test.o CC mm/init-mm.o CC net/ipv6/raw.o CC [M] arch/x86/kvm/kvm-asm-offsets.s CC drivers/acpi/acpica/exfield.o CC drivers/base/power/sysfs.o CC drivers/acpi/acpica/exfldio.o CC [M] net/netfilter/xt_tcpudp.o CC drivers/base/power/generic_ops.o AR fs/hugetlbfs/built-in.a CC [M] arch/x86/kvm/vmx/pmu_intel.o CC lib/dump_stack.o CC lib/earlycpio.o CC fs/fat/cache.o CC block/blk-mq-pci.o CC fs/nfs/client.o CC [M] net/netfilter/xt_mark.o CC kernel/softirq.o CC lib/extable.o CC drivers/tty/serial/serial_port.o CC [M] drivers/dma/ioat/sysfs.o CC drivers/tty/serial/8250/8250_pcilib.o CC drivers/tty/serial/earlycon.o CC kernel/time/tick-common.o LD [M] drivers/video/fbdev/core/fb.o CC drivers/char/tpm/tpm-interface.o CC drivers/acpi/acpica/exmisc.o CC drivers/tty/vt/consolemap.o AR drivers/video/fbdev/core/built-in.a AR drivers/video/fbdev/built-in.a AR drivers/video/built-in.a CC lib/flex_proportions.o CC drivers/block/loop.o CC mm/memblock.o CC kernel/trace/trace_preemptirq.o CC [M] drivers/block/nbd.o AR drivers/char/agp/built-in.a CC drivers/acpi/acpica/exmutex.o CC drivers/base/power/common.o CC arch/x86/kernel/x86_init.o CC crypto/jitterentropy.o AR drivers/connector/built-in.a CC mm/memory_hotplug.o AR drivers/misc/eeprom/built-in.a CC drivers/mfd/mfd-core.o CC crypto/jitterentropy-kcapi.o CC kernel/resource.o CC drivers/iommu/intel/cap_audit.o AR drivers/misc/cb710/built-in.a CC drivers/iommu/intel/irq_remapping.o AR drivers/misc/ti-st/built-in.a AR drivers/misc/lis3lv02d/built-in.a CC drivers/clk/clk-divider.o CC [M] drivers/gpu/drm/tests/drm_connector_test.o AR drivers/misc/cardreader/built-in.a CC block/blk-mq-virtio.o CC [M] drivers/misc/mei/hdcp/mei_hdcp.o CC [M] drivers/misc/mei/pxp/mei_pxp.o CC drivers/tty/serial/serial_mctrl_gpio.o CC fs/fat/dir.o CC arch/x86/kernel/i8259.o CC fs/nfs/dir.o CC drivers/tty/serial/8250/8250_pci.o CC lib/idr.o CC lib/irq_regs.o LD [M] drivers/dma/ioat/ioatdma.o CC drivers/dma/acpi-dma.o CC drivers/base/firmware_loader/builtin/main.o AR fs/jbd2/built-in.a CC fs/ext4/file.o CC drivers/acpi/acpica/exnames.o AR drivers/gpu/drm/arm/built-in.a CC drivers/base/power/qos.o CC drivers/base/power/runtime.o CC lib/is_single_threaded.o CC drivers/tty/tty_ioctl.o CC crypto/ghash-generic.o CC drivers/char/tpm/tpm1-cmd.o CC kernel/time/tick-broadcast.o CC fs/ext4/fsmap.o CC [M] drivers/gpu/drm/tests/drm_damage_helper_test.o AR drivers/base/firmware_loader/builtin/built-in.a CC kernel/trace/trace_nop.o HOSTCC drivers/tty/vt/conmakehash CC drivers/base/firmware_loader/main.o CC drivers/clk/clk-fixed-factor.o CC drivers/base/regmap/regmap.o CC block/blk-mq-debugfs.o CC [M] net/netfilter/xt_nat.o CC [M] net/netfilter/xt_REDIRECT.o CC [M] net/netfilter/xt_MASQUERADE.o CC arch/x86/kernel/irqinit.o CC arch/x86/kernel/jump_label.o AR drivers/virtio/built-in.a CC drivers/tty/vt/vt.o CC drivers/clk/clk-fixed-rate.o CC kernel/trace/trace_functions_graph.o CC drivers/mfd/intel-lpss.o CC drivers/base/regmap/regcache.o CC kernel/trace/fgraph.o CC drivers/acpi/acpica/exoparg1.o CC lib/klist.o CC [M] arch/x86/kvm/vmx/vmcs12.o AR kernel/cgroup/built-in.a CC crypto/af_alg.o CC drivers/iommu/intel/perfmon.o AR drivers/dma/built-in.a CC crypto/algif_hash.o CC [M] drivers/misc/mei/init.o AR drivers/nfc/built-in.a CC crypto/algif_skcipher.o CC net/core/sock_reuseport.o AR drivers/dax/hmem/built-in.a CC drivers/dax/super.o CC net/ipv6/icmp.o CC drivers/dax/bus.o CC mm/madvise.o CC fs/nfs/file.o CC arch/x86/kernel/irq_work.o AR drivers/base/test/built-in.a CC kernel/time/tick-broadcast-hrtimer.o CC kernel/time/tick-oneshot.o CC lib/kobject.o CC drivers/clk/clk-gate.o CC kernel/trace/blktrace.o CC drivers/tty/tty_ldisc.o CC drivers/char/tpm/tpm2-cmd.o CC drivers/base/regmap/regcache-rbtree.o CC net/ipv4/udp_offload.o CC drivers/acpi/acpica/exoparg2.o CC drivers/acpi/acpica/exoparg3.o CC drivers/tty/serial/8250/8250_exar.o CC drivers/mfd/intel-lpss-pci.o CC arch/x86/kernel/probe_roms.o CC drivers/char/tpm/tpmrm-dev.o CC drivers/base/power/wakeirq.o CC drivers/base/component.o CC kernel/events/callchain.o CC fs/fat/fatent.o CC [M] drivers/gpu/drm/tests/drm_dp_mst_helper_test.o CC [M] drivers/misc/mei/hbm.o CC block/blk-pm.o CC net/ipv6/mcast.o CC block/holder.o AR drivers/base/firmware_loader/built-in.a CC lib/kobject_uevent.o CC kernel/time/tick-sched.o CC lib/logic_pio.o CC fs/nfs/getroot.o CC fs/fat/file.o CC drivers/clk/clk-multiplier.o CC net/ipv6/reassembly.o CC net/ipv6/tcp_ipv6.o CC kernel/trace/trace_events.o CC [M] net/netfilter/xt_addrtype.o CC kernel/trace/trace_export.o CC drivers/acpi/acpica/exoparg6.o CC net/ipv6/ping.o CC kernel/time/vsyscall.o CC lib/maple_tree.o CC drivers/clk/clk-mux.o CC fs/ext4/fsync.o CC net/ipv4/arp.o CC drivers/base/power/main.o CC drivers/base/power/wakeup.o CC drivers/base/power/wakeup_stats.o CC drivers/base/core.o CC drivers/mfd/intel-lpss-acpi.o CC arch/x86/kernel/sys_ia32.o AR drivers/block/built-in.a AR drivers/iommu/intel/built-in.a CC drivers/dma-buf/dma-buf.o AR drivers/iommu/arm/arm-smmu/built-in.a AR drivers/iommu/arm/arm-smmu-v3/built-in.a AR drivers/iommu/arm/built-in.a CC drivers/tty/serial/8250/8250_early.o AR drivers/iommu/iommufd/built-in.a CC drivers/iommu/iommu.o CC drivers/tty/serial/8250/8250_dw.o CC drivers/iommu/iommu-traces.o AR drivers/dax/built-in.a CC drivers/char/tpm/tpm2-space.o CC kernel/events/hw_breakpoint.o CC drivers/iommu/iommu-sysfs.o AR block/built-in.a CC arch/x86/kernel/signal_32.o CC lib/memcat_p.o CC drivers/acpi/acpica/exprep.o AR drivers/cxl/core/built-in.a AR drivers/cxl/built-in.a CC net/core/fib_notifier.o CC net/core/xdp.o CC fs/fat/inode.o CC [M] drivers/gpu/drm/tests/drm_format_helper_test.o CC crypto/xor.o CC kernel/trace/trace_event_perf.o CC drivers/clk/clk-composite.o CC drivers/base/power/domain.o CC drivers/mfd/intel_soc_pmic_crc.o CC net/ipv4/icmp.o CC kernel/events/uprobes.o CC fs/fat/misc.o CC lib/nmi_backtrace.o CC mm/page_io.o CC kernel/time/timekeeping_debug.o CC [M] drivers/misc/mei/interrupt.o CC crypto/hash_info.o CC [M] drivers/gpu/drm/tests/drm_format_test.o CC drivers/char/tpm/tpm-sysfs.o CC drivers/char/tpm/eventlog/common.o CC crypto/simd.o CC drivers/acpi/acpica/exregion.o CC drivers/base/bus.o CC fs/exportfs/expfs.o CC drivers/tty/serial/8250/8250_lpss.o CC [M] net/netfilter/xt_conntrack.o CC [M] crypto/md4.o CC fs/nfs/inode.o CC drivers/tty/serial/8250/8250_mid.o CC arch/x86/kernel/sys_x86_64.o CC drivers/clk/clk-fractional-divider.o CC kernel/trace/trace_events_filter.o CC fs/ext4/hash.o CC drivers/tty/tty_buffer.o CC [M] net/netfilter/xt_ipvs.o CC [M] crypto/ccm.o CC fs/nfs/super.o CC drivers/iommu/dma-iommu.o CC net/core/flow_offload.o COPY drivers/tty/vt/defkeymap.c CONMK drivers/tty/vt/consolemap_deftbl.c CC drivers/tty/vt/defkeymap.o CC drivers/base/regmap/regcache-flat.o CC drivers/dma-buf/dma-fence.o CC drivers/acpi/acpica/exresnte.o CC net/core/gro.o CC [M] drivers/mfd/lpc_sch.o CC kernel/time/namespace.o CC fs/nfs/io.o CC kernel/trace/trace_events_trigger.o CC net/core/netdev-genl.o CC arch/x86/kernel/espfix_64.o CC drivers/tty/vt/consolemap_deftbl.o CC [M] drivers/misc/mei/client.o CC [M] crypto/arc4.o AR drivers/tty/vt/built-in.a CC drivers/char/tpm/eventlog/tpm1.o CC drivers/acpi/acpica/exresolv.o CC [M] arch/x86/kvm/vmx/hyperv.o AR fs/exportfs/built-in.a CC drivers/clk/clk-gpio.o CC [M] drivers/gpu/drm/tests/drm_framebuffer_test.o CC [M] drivers/misc/mei/main.o CC [M] crypto/ecc.o CC arch/x86/kernel/ksysfs.o CC arch/x86/kernel/bootflag.o CC net/ipv4/devinet.o CC kernel/trace/trace_eprobe.o CC mm/swap_state.o CC [M] drivers/gpu/drm/tests/drm_managed_test.o CC fs/fat/nfs.o CC arch/x86/kernel/e820.o CC drivers/tty/serial/8250/8250_pericom.o CC drivers/base/regmap/regcache-maple.o CC arch/x86/kernel/pci-dma.o CC drivers/tty/tty_port.o AR drivers/gpu/drm/display/built-in.a CC fs/ext4/ialloc.o CC drivers/base/dd.o CC [M] drivers/gpu/drm/display/drm_display_helper_mod.o CC drivers/base/syscore.o CC drivers/acpi/acpica/exresop.o CC drivers/base/driver.o CC [M] drivers/mfd/lpc_ich.o AR drivers/clk/built-in.a AR drivers/macintosh/built-in.a CC arch/x86/kernel/quirks.o CC drivers/base/power/domain_governor.o AR kernel/time/built-in.a CC [M] crypto/essiv.o CC kernel/trace/trace_kprobe.o CC net/core/netdev-genl-gen.o CC [M] drivers/gpu/drm/tests/drm_mm_test.o CC [M] drivers/gpu/drm/tests/drm_modes_test.o LD [M] net/netfilter/nf_conntrack.o CC drivers/char/tpm/eventlog/tpm2.o CC fs/ext4/indirect.o CC [M] drivers/gpu/drm/tests/drm_plane_helper_test.o LD [M] net/netfilter/nf_nat.o CC drivers/base/class.o AR net/netfilter/built-in.a CC drivers/iommu/iova.o CC [M] drivers/gpu/drm/display/drm_dp_dual_mode_helper.o CC net/ipv4/af_inet.o CC fs/nfs/direct.o AR drivers/mfd/built-in.a CC [M] drivers/gpu/drm/tests/drm_probe_helper_test.o CC net/ipv6/exthdrs.o AR kernel/events/built-in.a CC drivers/scsi/scsi.o CC fs/fat/namei_vfat.o CC drivers/dma-buf/dma-fence-array.o AR drivers/tty/serial/8250/built-in.a AR drivers/tty/serial/built-in.a CC drivers/acpi/acpica/exserial.o CC drivers/scsi/hosts.o CC [M] drivers/gpu/drm/tests/drm_rect_test.o CC drivers/scsi/scsi_ioctl.o CC [M] drivers/gpu/drm/display/drm_dp_helper.o CC fs/fat/namei_msdos.o CC drivers/base/regmap/regmap-debugfs.o CC [M] arch/x86/kvm/vmx/nested.o CC [M] drivers/gpu/drm/display/drm_dp_mst_topology.o CC drivers/iommu/irq_remapping.o CC drivers/tty/tty_mutex.o CC drivers/base/power/clock_ops.o CC drivers/base/platform.o CC net/ipv6/datagram.o AR drivers/gpu/drm/renesas/rcar-du/built-in.a AR drivers/gpu/drm/renesas/built-in.a AR drivers/gpu/drm/omapdrm/built-in.a AR drivers/gpu/drm/tilcdc/built-in.a AR drivers/gpu/drm/imx/built-in.a AR drivers/gpu/drm/i2c/built-in.a AR drivers/gpu/drm/panel/built-in.a CC net/core/gso.o AR drivers/gpu/drm/bridge/analogix/built-in.a AR drivers/gpu/drm/bridge/cadence/built-in.a AR drivers/gpu/drm/bridge/imx/built-in.a AR drivers/gpu/drm/bridge/synopsys/built-in.a AR drivers/gpu/drm/bridge/built-in.a AR drivers/gpu/drm/hisilicon/built-in.a CC [M] drivers/misc/mei/dma-ring.o CC drivers/dma-buf/dma-fence-chain.o AR drivers/gpu/drm/mxsfb/built-in.a AR drivers/gpu/drm/tiny/built-in.a CC drivers/dma-buf/dma-fence-unwrap.o CC arch/x86/kernel/topology.o CC arch/x86/kernel/kdebugfs.o CC drivers/dma-buf/dma-resv.o CC drivers/nvme/host/core.o CC drivers/char/tpm/tpm_ppi.o CC drivers/nvme/host/ioctl.o AR drivers/gpu/drm/xlnx/built-in.a CC drivers/acpi/acpica/exstore.o CC mm/swapfile.o AR drivers/nvme/target/built-in.a CC [M] drivers/gpu/drm/tests/drm_exec_test.o CC [M] crypto/ecdh.o AR drivers/gpu/drm/gud/built-in.a CC [M] crypto/ecdh_helper.o AR drivers/gpu/drm/solomon/built-in.a CC [M] drivers/gpu/drm/ttm/ttm_tt.o CC drivers/base/cpu.o CC drivers/base/firmware.o CC [M] drivers/gpu/drm/scheduler/sched_main.o CC fs/lockd/clntlock.o CC kernel/trace/error_report-traces.o CC [M] drivers/misc/mei/bus.o CC drivers/tty/tty_ldsem.o AR drivers/iommu/built-in.a CC [M] drivers/gpu/drm/amd/amdxcp/amdgpu_xcp_drv.o AR drivers/base/power/built-in.a CC net/ipv6/ip6_flowlabel.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_drv.o CC net/ipv4/igmp.o CC drivers/base/regmap/regmap-i2c.o AR drivers/misc/built-in.a CC drivers/base/init.o CC drivers/base/map.o CC arch/x86/kernel/alternative.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_device.o CC drivers/base/devres.o CC drivers/scsi/scsicam.o CC net/ipv6/inet6_connection_sock.o CC drivers/scsi/scsi_error.o CC drivers/acpi/acpica/exstoren.o CC net/ipv6/udp_offload.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_doorbell_mgr.o CC [M] drivers/misc/mei/bus-fixup.o AR fs/fat/built-in.a CC drivers/scsi/scsi_lib.o LD [M] crypto/ecdh_generic.o AR crypto/built-in.a CC drivers/tty/tty_baudrate.o CC drivers/char/tpm/eventlog/acpi.o CC fs/ext4/inline.o CC drivers/base/attribute_container.o LD [M] drivers/gpu/drm/amd/amdxcp/amdxcp.o CC net/ipv6/seg6.o CC drivers/base/transport_class.o CC [M] drivers/misc/mei/debugfs.o CC fs/ext4/inode.o CC net/ipv4/fib_frontend.o CC net/core/net-sysfs.o CC drivers/tty/tty_jobctrl.o CC drivers/acpi/acpica/exstorob.o CC drivers/dma-buf/sync_file.o CC [M] drivers/gpu/drm/ttm/ttm_bo.o CC mm/swap_slots.o CC fs/ext4/ioctl.o CC [M] drivers/gpu/drm/ttm/ttm_bo_util.o CC kernel/trace/power-traces.o CC drivers/base/topology.o CC drivers/char/tpm/eventlog/efi.o CC fs/nfs/pagelist.o CC [M] drivers/gpu/drm/ttm/ttm_bo_vm.o CC mm/dmapool.o CC [M] drivers/gpu/drm/ttm/ttm_module.o CC drivers/base/regmap/regmap-irq.o CC [M] drivers/misc/mei/mei-trace.o CC kernel/trace/rpm-traces.o CC fs/lockd/clntproc.o CC net/core/page_pool.o CC drivers/scsi/scsi_lib_dma.o CC fs/nfs/read.o CC [M] drivers/gpu/drm/display/drm_dsc_helper.o CC arch/x86/kernel/i8253.o CC kernel/trace/trace_dynevent.o CC drivers/char/tpm/tpm_crb.o CC fs/nfs/symlink.o CC drivers/acpi/acpica/exsystem.o CC drivers/tty/n_null.o CC drivers/char/mem.o CC [M] drivers/gpu/drm/scheduler/sched_fence.o CC net/ipv6/fib6_notifier.o CC drivers/dma-buf/sw_sync.o CC net/ipv6/rpl.o CC [M] drivers/misc/mei/pci-me.o CC drivers/tty/pty.o CC net/ipv6/ioam6.o CC [M] drivers/misc/mei/hw-me.o CC net/ipv4/fib_semantics.o CC [M] drivers/gpu/drm/display/drm_hdcp_helper.o CC drivers/base/container.o CC net/ipv4/fib_trie.o CC drivers/acpi/acpica/extrace.o CC drivers/char/random.o CC arch/x86/kernel/hw_breakpoint.o CC fs/lockd/clntxdr.o CC [M] drivers/gpu/drm/ttm/ttm_execbuf_util.o CC drivers/base/property.o CC [M] drivers/gpu/drm/i915/i915_driver.o CC [M] drivers/gpu/drm/ttm/ttm_range_manager.o CC drivers/nvme/host/sysfs.o CC [M] drivers/gpu/drm/scheduler/sched_entity.o CC [M] drivers/misc/mei/gsc-me.o LD [M] drivers/misc/mei/mei.o CC drivers/tty/sysrq.o CC kernel/trace/trace_probe.o CC [M] drivers/gpu/drm/ttm/ttm_resource.o CC lib/plist.o CC [M] drivers/gpu/drm/ttm/ttm_pool.o AR drivers/char/tpm/built-in.a CC fs/nfs/unlink.o CC drivers/acpi/acpica/exutils.o AR drivers/base/regmap/built-in.a CC drivers/base/cacheinfo.o CC net/ipv4/fib_notifier.o CC lib/radix-tree.o CC [M] drivers/gpu/drm/xe/tests/xe_bo_test.o CC drivers/acpi/acpica/hwacpi.o CC fs/nfs/write.o CC net/ipv4/inet_fragment.o CC drivers/char/misc.o CC drivers/scsi/scsi_scan.o CC [M] drivers/gpu/drm/display/drm_hdmi_helper.o CC drivers/dma-buf/sync_debug.o CC [M] arch/x86/kvm/vmx/posted_intr.o CC net/ipv6/sysctl_net_ipv6.o CC net/ipv6/xfrm6_policy.o CC net/ipv4/ping.o CC mm/hugetlb.o CC mm/hugetlb_vmemmap.o CC arch/x86/kernel/tsc.o CC [M] drivers/gpu/drm/ttm/ttm_device.o CC net/core/net-procfs.o CC fs/lockd/host.o GEN drivers/scsi/scsi_devinfo_tbl.c CC kernel/trace/trace_uprobe.o CC drivers/ata/libata-core.o CC [M] drivers/gpu/drm/xe/tests/xe_dma_buf_test.o CC drivers/ata/libata-scsi.o CC net/ipv4/ip_tunnel_core.o CC drivers/acpi/acpica/hwesleep.o LD [M] drivers/misc/mei/mei-gsc.o CC drivers/acpi/acpica/hwgpe.o CC net/core/netpoll.o CC fs/lockd/svc.o LD [M] drivers/gpu/drm/scheduler/gpu-sched.o CC fs/nfs/namespace.o CC [M] drivers/gpu/drm/vgem/vgem_drv.o CC fs/nfs/mount_clnt.o CC net/ipv4/gre_offload.o CC [M] drivers/gpu/drm/vgem/vgem_fence.o CC [M] drivers/dma-buf/selftest.o CC net/ipv4/metrics.o CC drivers/base/swnode.o CC drivers/nvme/host/pr.o CC [M] drivers/gpu/drm/display/drm_scdc_helper.o CC net/core/fib_rules.o AR drivers/tty/built-in.a CC drivers/spi/spi.o CC [M] drivers/gpu/drm/xe/tests/xe_migrate_test.o CC fs/nfs/nfstrace.o CC arch/x86/kernel/tsc_msr.o CC drivers/char/virtio_console.o CC drivers/base/auxiliary.o LD [M] drivers/misc/mei/mei-me.o CC lib/ratelimit.o CC drivers/acpi/acpica/hwregs.o CC drivers/net/phy/mdio-boardinfo.o CC [M] drivers/gpu/drm/ttm/ttm_sys_manager.o CC drivers/net/phy/stubs.o CC net/ipv6/xfrm6_state.o CC [M] drivers/dma-buf/st-dma-fence.o CC [M] drivers/gpu/drm/xe/tests/xe_mocs_test.o CC drivers/base/devtmpfs.o CC [M] drivers/gpu/drm/display/drm_dp_aux_dev.o CC net/ipv4/netlink.o CC lib/rbtree.o CC arch/x86/kernel/io_delay.o CC net/ipv4/nexthop.o CC drivers/scsi/scsi_devinfo.o CC drivers/base/node.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_kms.o LD [M] arch/x86/kvm/kvm.o CC drivers/net/phy/mdio_devres.o CC [M] drivers/gpu/drm/i915/i915_drm_client.o CC drivers/scsi/scsi_sysctl.o CC fs/ext4/mballoc.o LD [M] drivers/gpu/drm/vgem/vgem.o CC lib/seq_buf.o AR drivers/firewire/built-in.a CC [M] drivers/gpu/drm/ttm/ttm_agp_backend.o CC kernel/sysctl.o CC kernel/trace/rethook.o CC drivers/acpi/acpica/hwsleep.o CC [M] drivers/gpu/drm/xe/tests/xe_pci_test.o CC arch/x86/kernel/rtc.o CC drivers/nvme/host/trace.o CC net/core/net-traces.o CC net/ipv4/udp_tunnel_stub.o CC [M] drivers/gpu/drm/xe/tests/xe_rtp_test.o CC drivers/scsi/scsi_debugfs.o CC drivers/acpi/acpica/hwvalid.o CC fs/lockd/svclock.o CC drivers/char/hpet.o CC drivers/char/nvram.o CC [M] drivers/gpu/drm/nouveau/nvif/object.o CC net/ipv4/sysctl_net_ipv4.o CC [M] drivers/gpu/drm/xe/tests/xe_wa_test.o CC fs/ext4/migrate.o CC drivers/net/phy/phy.o CC lib/siphash.o CC [M] drivers/dma-buf/st-dma-fence-chain.o CC drivers/scsi/scsi_trace.o CC [M] drivers/gpu/drm/i915/i915_config.o CC drivers/base/memory.o CC [M] drivers/gpu/drm/xe/xe_bb.o CC mm/mempolicy.o CC drivers/scsi/scsi_logging.o CC drivers/net/phy/phy-c45.o CC lib/string.o LD [M] drivers/gpu/drm/ttm/ttm.o CC lib/timerqueue.o CC [M] drivers/gpu/drm/xe/xe_bo.o CC drivers/acpi/acpica/hwxface.o CC net/ipv6/xfrm6_input.o CC drivers/acpi/acpica/hwxfsleep.o LD [M] drivers/gpu/drm/display/drm_display_helper.o UPD arch/x86/kvm/kvm-asm-offsets.h AS [M] arch/x86/kvm/vmx/vmenter.o CC arch/x86/kernel/resource.o CC net/ipv6/xfrm6_output.o CC drivers/base/module.o CC kernel/capability.o CC drivers/base/pinctrl.o LD [M] arch/x86/kvm/kvm-intel.o AR kernel/trace/built-in.a CC kernel/ptrace.o CC drivers/acpi/acpica/hwpci.o CC mm/sparse.o CC [M] drivers/dma-buf/st-dma-fence-unwrap.o CC drivers/nvme/host/fault_inject.o CC drivers/base/devcoredump.o CC net/core/selftests.o CC [M] drivers/gpu/drm/i915/i915_getparam.o CC [M] drivers/gpu/drm/xe/xe_bo_evict.o CC drivers/scsi/scsi_pm.o AS arch/x86/kernel/irqflags.o CC arch/x86/kernel/static_call.o CC mm/sparse-vmemmap.o CC drivers/acpi/acpica/nsaccess.o CC fs/lockd/svcshare.o CC net/ipv4/proc.o CC drivers/acpi/sleep.o CC [M] drivers/gpu/drm/nouveau/nvif/client.o CC drivers/ata/libata-eh.o CC drivers/net/phy/phy-core.o CC drivers/net/phy/phy_device.o CC lib/vsprintf.o AR drivers/char/built-in.a CC drivers/base/platform-msi.o CC fs/lockd/svcproc.o AR drivers/cdrom/built-in.a CC fs/lockd/svcsubs.o CC fs/lockd/mon.o CC drivers/ata/libata-transport.o CC drivers/scsi/scsi_bsg.o CC drivers/nvme/host/pci.o CC drivers/base/physical_location.o CC drivers/net/phy/linkmode.o CC fs/nfs/export.o CC arch/x86/kernel/process.o CC [M] drivers/dma-buf/st-dma-resv.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.o CC drivers/net/phy/mdio_bus.o CC drivers/acpi/acpica/nsalloc.o CC drivers/acpi/device_sysfs.o CC kernel/user.o CC kernel/signal.o CC drivers/base/trace.o CC drivers/scsi/scsi_common.o CC arch/x86/kernel/ptrace.o CC drivers/ata/libata-trace.o CC drivers/net/phy/mdio_device.o CC [M] drivers/gpu/drm/i915/i915_ioctl.o CC drivers/acpi/device_pm.o CC [M] drivers/gpu/drm/xe/xe_debugfs.o CC net/ipv4/syncookies.o CC net/ipv4/esp4.o CC net/ipv6/xfrm6_protocol.o CC [M] drivers/gpu/drm/nouveau/nvif/conn.o CC fs/ext4/mmp.o CC arch/x86/kernel/tls.o CC drivers/acpi/proc.o AR drivers/dma-buf/built-in.a LD [M] drivers/dma-buf/dmabuf_selftests.o CC drivers/acpi/acpica/nsarguments.o CC [M] drivers/gpu/drm/xe/xe_devcoredump.o CC fs/nfs/sysfs.o AR drivers/auxdisplay/built-in.a CC drivers/acpi/bus.o CC drivers/usb/common/common.o CC kernel/sys.o CC drivers/acpi/glue.o CC drivers/scsi/sd.o AR drivers/spi/built-in.a CC drivers/acpi/scan.o CC fs/nfs/fs_context.o CC drivers/ata/libata-sata.o CC drivers/usb/core/usb.o AR drivers/usb/phy/built-in.a CC drivers/acpi/resource.o CC drivers/ata/libata-sff.o CC net/core/ptp_classifier.o CC fs/lockd/trace.o AR drivers/base/built-in.a CC drivers/usb/host/pci-quirks.o CC drivers/usb/storage/scsiglue.o CC drivers/acpi/acpica/nsconvert.o CC drivers/usb/storage/protocol.o CC drivers/ata/libata-pmp.o CC [M] drivers/gpu/drm/ast/ast_drv.o CC drivers/gpu/drm/drm_mipi_dsi.o CC [M] drivers/gpu/drm/ast/ast_i2c.o CC fs/nfs/sysctl.o CC drivers/usb/common/debug.o CC fs/lockd/xdr.o CC [M] drivers/gpu/drm/i915/i915_irq.o CC [M] drivers/gpu/drm/nouveau/nvif/device.o CC drivers/input/serio/serio.o CC [M] drivers/gpu/drm/xe/xe_device.o CC drivers/input/serio/i8042.o CC fs/lockd/clnt4xdr.o CC arch/x86/kernel/step.o CC drivers/acpi/acpi_processor.o CC drivers/acpi/processor_core.o AR drivers/usb/common/built-in.a CC drivers/usb/storage/transport.o CC drivers/acpi/acpica/nsdump.o CC [M] drivers/gpu/drm/i915/i915_mitigations.o CC drivers/acpi/acpica/nseval.o CC [M] drivers/gpu/drm/amd/amdgpu/atombios_crtc.o CC drivers/net/phy/swphy.o CC net/ipv6/netfilter.o CC drivers/acpi/acpica/nsinit.o CC drivers/usb/core/hub.o CC net/core/netprio_cgroup.o CC kernel/umh.o CC net/ipv4/esp4_offload.o CC net/ipv6/fib6_rules.o CC [M] drivers/gpu/drm/xe/xe_device_sysfs.o CC mm/mmu_notifier.o CC kernel/workqueue.o CC drivers/scsi/sg.o CC drivers/usb/host/ehci-hcd.o CC drivers/usb/host/ehci-pci.o CC fs/ext4/move_extent.o CC net/ipv6/proc.o CC drivers/acpi/acpica/nsload.o CC arch/x86/kernel/i8237.o CC fs/nfs/nfs2super.o CC drivers/acpi/processor_pdc.o CC net/ipv4/netfilter.o CC [M] drivers/gpu/drm/ast/ast_main.o CC kernel/pid.o CC net/ipv4/inet_diag.o CC net/ipv4/tcp_diag.o CC lib/win_minmax.o CC fs/nfs/proc.o CC [M] drivers/gpu/drm/nouveau/nvif/disp.o AR drivers/nvme/host/built-in.a AR drivers/nvme/built-in.a CC drivers/input/keyboard/atkbd.o CC drivers/net/phy/fixed_phy.o CC drivers/acpi/ec.o CC [M] drivers/net/phy/phylink.o AR drivers/input/mouse/built-in.a CC drivers/ata/libata-acpi.o CC drivers/acpi/acpica/nsnames.o CC fs/lockd/xdr4.o CC arch/x86/kernel/stacktrace.o CC drivers/usb/host/ohci-hcd.o CC [M] drivers/gpu/drm/drm_aperture.o CC drivers/acpi/acpica/nsobject.o CC drivers/acpi/dock.o CC drivers/usb/storage/usb.o CC fs/lockd/svc4proc.o CC [M] drivers/gpu/drm/xe/xe_dma_buf.o CC lib/xarray.o CC [M] drivers/gpu/drm/drm_atomic.o CC drivers/input/serio/libps2.o CC [M] drivers/net/phy/aquantia_main.o CC [M] drivers/gpu/drm/ast/ast_mm.o CC drivers/ata/libata-pata-timings.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_connectors.o CC [M] drivers/gpu/drm/amd/amdgpu/atom.o CC mm/ksm.o CC net/core/dst_cache.o CC drivers/acpi/acpica/nsparse.o CC drivers/input/input.o CC fs/nfs/nfs2xdr.o CC net/ipv6/syncookies.o CC drivers/ata/ahci.o CC net/core/gro_cells.o CC drivers/acpi/acpica/nspredef.o CC fs/nfs/nfs3super.o CC [M] drivers/gpu/drm/nouveau/nvif/driver.o CC drivers/input/input-compat.o CC drivers/usb/core/hcd.o CC [M] drivers/gpu/drm/drm_atomic_uapi.o CC arch/x86/kernel/reboot.o CC [M] drivers/gpu/drm/i915/i915_module.o CC [M] drivers/net/phy/aquantia_hwmon.o CC [M] drivers/gpu/drm/xe/xe_drm_client.o CC net/ipv4/udp_diag.o CC [M] drivers/net/phy/ax88796b.o CC drivers/acpi/pci_root.o CC net/ipv4/tcp_cubic.o AR drivers/input/keyboard/built-in.a CC drivers/input/input-mt.o AR drivers/input/serio/built-in.a CC fs/nfs/nfs3client.o CC drivers/acpi/acpica/nsprepkg.o CC fs/nfs/nfs3proc.o CC drivers/rtc/lib.o CC drivers/rtc/class.o CC fs/ext4/namei.o AR drivers/i2c/algos/built-in.a CC drivers/ata/libahci.o CC [M] drivers/i2c/algos/i2c-algo-bit.o CC [M] drivers/gpu/drm/ast/ast_mode.o CC fs/nfs/nfs3xdr.o CC drivers/scsi/scsi_sysfs.o CC drivers/usb/host/ohci-pci.o CC drivers/usb/storage/initializers.o CC drivers/ata/ata_piix.o CC drivers/usb/storage/sierra_ms.o CC drivers/usb/core/urb.o CC fs/lockd/procfs.o CC drivers/usb/host/uhci-hcd.o CC [M] drivers/gpu/drm/nouveau/nvif/event.o CC [M] drivers/net/phy/bcm7xxx.o CC [M] drivers/net/phy/bcm87xx.o AR net/core/built-in.a CC [M] drivers/gpu/drm/xe/xe_exec.o CC [M] drivers/net/phy/bcm-phy-lib.o CC drivers/acpi/acpica/nsrepair.o CC [M] drivers/net/phy/broadcom.o CC arch/x86/kernel/msr.o CC drivers/usb/storage/option_ms.o CC drivers/acpi/acpica/nsrepair2.o CC drivers/usb/serial/usb-serial.o CC lib/lockref.o CC [M] drivers/gpu/drm/drm_auth.o CC drivers/rtc/interface.o CC lib/bcd.o CC [M] drivers/gpu/drm/i915/i915_params.o CC drivers/acpi/acpica/nssearch.o CC drivers/usb/storage/usual-tables.o AR drivers/usb/misc/built-in.a CC drivers/usb/serial/generic.o CC drivers/usb/serial/bus.o CC drivers/usb/gadget/udc/core.o CC net/ipv6/mip6.o CC net/ipv4/xfrm4_policy.o AR drivers/usb/gadget/function/built-in.a CC fs/nls/nls_base.o CC lib/sort.o CC [M] drivers/net/phy/lxt.o CC drivers/i2c/busses/i2c-designware-common.o CC [M] drivers/net/phy/realtek.o AR fs/lockd/built-in.a CC [M] drivers/gpu/drm/drm_blend.o CC [M] drivers/gpu/drm/i915/i915_pci.o CC drivers/i2c/busses/i2c-designware-master.o CC lib/parser.o CC drivers/i2c/busses/i2c-designware-platdrv.o CC [M] drivers/gpu/drm/i915/i915_scatterlist.o CC arch/x86/kernel/cpuid.o CC [M] drivers/net/phy/smsc.o CC drivers/acpi/acpica/nsutils.o CC drivers/input/input-poller.o CC [M] drivers/gpu/drm/ast/ast_post.o CC [M] drivers/gpu/drm/nouveau/nvif/fifo.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_fence.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.o CC drivers/acpi/acpica/nswalk.o CC drivers/i2c/busses/i2c-designware-baytrail.o CC drivers/input/ff-core.o CC [M] drivers/gpu/drm/ast/ast_dp501.o CC [M] drivers/usb/class/usbtmc.o AR drivers/usb/storage/built-in.a CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_object.o CC [M] drivers/gpu/drm/ast/ast_dp.o CC fs/nls/nls_cp437.o CC drivers/usb/host/xhci.o CC [M] drivers/gpu/drm/xe/xe_execlist.o CC drivers/usb/core/message.o CC lib/debug_locks.o AR drivers/scsi/built-in.a CC net/ipv4/xfrm4_state.o CC drivers/input/touchscreen.o CC [M] drivers/i2c/busses/i2c-scmi.o AR drivers/i3c/built-in.a CC [M] drivers/gpu/drm/drm_bridge.o CC [M] drivers/gpu/drm/drm_cache.o CC lib/random32.o CC drivers/usb/core/driver.o CC drivers/usb/core/config.o CC arch/x86/kernel/early-quirks.o CC drivers/acpi/acpica/nsxfeval.o CC drivers/usb/serial/console.o CC drivers/usb/core/file.o CC fs/nls/nls_ascii.o CC [M] drivers/gpu/drm/drm_client.o CC net/ipv4/xfrm4_input.o AR drivers/ata/built-in.a CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_gart.o CC drivers/usb/core/buffer.o CC net/ipv6/addrconf_core.o AR fs/nfs/built-in.a CC drivers/input/ff-memless.o AR fs/unicode/built-in.a CC drivers/input/vivaldi-fmap.o CC kernel/task_work.o CC net/ipv6/exthdrs_core.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_encoders.o CC arch/x86/kernel/smp.o CC fs/ntfs/aops.o CC drivers/usb/core/sysfs.o CC [M] drivers/gpu/drm/nouveau/nvif/head.o CC [M] drivers/gpu/drm/nouveau/nvif/mem.o CC drivers/usb/serial/ftdi_sio.o CC [M] drivers/i2c/busses/i2c-ccgx-ucsi.o CC lib/bust_spinlocks.o CC [M] drivers/gpu/drm/i915/i915_suspend.o AR drivers/media/i2c/built-in.a CC fs/nls/nls_iso8859-1.o AR drivers/media/tuners/built-in.a LD [M] drivers/net/phy/aquantia.o AR drivers/net/phy/built-in.a AR drivers/media/rc/keymaps/built-in.a CC drivers/rtc/nvmem.o AR drivers/media/rc/built-in.a CC drivers/usb/core/endpoint.o AR drivers/net/pse-pd/built-in.a CC drivers/net/mdio/acpi_mdio.o AR drivers/media/common/b2c2/built-in.a AR drivers/net/pcs/built-in.a CC drivers/net/mdio/fwnode_mdio.o AR drivers/media/common/saa7146/built-in.a CC drivers/usb/gadget/udc/trace.o CC drivers/acpi/acpica/nsxfname.o AR drivers/media/common/siano/built-in.a CC [M] drivers/gpu/drm/drm_client_modeset.o AR drivers/media/common/v4l2-tpg/built-in.a AR drivers/media/common/videobuf2/built-in.a AR drivers/media/common/built-in.a AR drivers/media/platform/allegro-dvt/built-in.a AR drivers/net/ethernet/adi/built-in.a CC [M] drivers/gpu/drm/xe/xe_exec_queue.o AR drivers/net/ethernet/alacritech/built-in.a AR drivers/media/platform/amlogic/meson-ge2d/built-in.a AR drivers/media/platform/amlogic/built-in.a AR drivers/net/ethernet/amazon/built-in.a AR drivers/net/ethernet/aquantia/built-in.a AR drivers/net/ethernet/asix/built-in.a AR drivers/media/platform/amphion/built-in.a AR drivers/media/platform/aspeed/built-in.a AR drivers/net/ethernet/cadence/built-in.a AR drivers/net/ethernet/broadcom/built-in.a CC mm/slub.o CC [M] drivers/net/ethernet/broadcom/b44.o AR drivers/media/platform/atmel/built-in.a CC [M] drivers/gpu/drm/nouveau/nvif/mmu.o AR drivers/media/pci/ttpci/built-in.a CC [M] drivers/gpu/drm/nouveau/nvif/outp.o AR drivers/media/platform/cadence/built-in.a AR drivers/media/pci/b2c2/built-in.a CC [M] drivers/gpu/drm/drm_color_mgmt.o AR drivers/media/platform/chips-media/built-in.a AR drivers/media/pci/pluto2/built-in.a AR drivers/media/platform/intel/built-in.a AR drivers/media/pci/dm1105/built-in.a AR drivers/media/platform/marvell/built-in.a CC [M] drivers/gpu/drm/nouveau/nvif/timer.o AR drivers/media/pci/pt1/built-in.a CC [M] drivers/net/ethernet/broadcom/bnx2.o AR drivers/media/platform/mediatek/jpeg/built-in.a LD [M] drivers/gpu/drm/ast/ast.o CC fs/nls/nls_utf8.o CC [M] drivers/net/ethernet/broadcom/cnic.o AR drivers/media/pci/pt3/built-in.a AR drivers/media/platform/mediatek/mdp/built-in.a CC lib/kasprintf.o AR drivers/media/pci/mantis/built-in.a CC fs/ext4/page-io.o CC [M] drivers/gpu/drm/drm_connector.o AR drivers/media/pci/ngene/built-in.a AR drivers/media/pci/ddbridge/built-in.a AR drivers/media/platform/mediatek/vcodec/common/built-in.a CC drivers/usb/core/devio.o CC kernel/extable.o AR drivers/media/pci/saa7146/built-in.a AR drivers/media/platform/mediatek/vcodec/encoder/built-in.a AR drivers/media/platform/mediatek/vcodec/decoder/built-in.a AR drivers/media/pci/smipcie/built-in.a AR drivers/media/platform/mediatek/vcodec/built-in.a CC fs/ext4/readpage.o AR drivers/media/pci/netup_unidvb/built-in.a AR drivers/media/platform/mediatek/vpu/built-in.a AR drivers/media/pci/intel/ipu3/built-in.a AR drivers/media/pci/intel/ivsc/built-in.a AR drivers/media/platform/mediatek/mdp3/built-in.a AR drivers/media/pci/intel/built-in.a AR drivers/media/platform/mediatek/built-in.a AR drivers/media/pci/built-in.a CC arch/x86/kernel/smpboot.o AR drivers/media/platform/microchip/built-in.a CC drivers/input/input-leds.o AR drivers/media/platform/nvidia/tegra-vde/built-in.a AR drivers/media/platform/nxp/dw100/built-in.a AR drivers/media/platform/nvidia/built-in.a CC drivers/rtc/dev.o AR drivers/media/platform/nxp/imx-jpeg/built-in.a AR drivers/media/platform/nxp/imx8-isi/built-in.a AR drivers/media/platform/nxp/built-in.a AR drivers/media/platform/qcom/camss/built-in.a CC drivers/input/mousedev.o CC drivers/input/evdev.o AR drivers/media/platform/qcom/venus/built-in.a AR drivers/media/platform/qcom/built-in.a CC [M] drivers/i2c/busses/i2c-i801.o CC [M] drivers/gpu/drm/xe/xe_force_wake.o AR drivers/media/platform/renesas/rcar-vin/built-in.a CC drivers/acpi/acpica/nsxfobj.o AR drivers/media/platform/renesas/rzg2l-cru/built-in.a CC [M] drivers/gpu/drm/xe/xe_ggtt.o CC fs/ext4/resize.o AR drivers/media/platform/renesas/vsp1/built-in.a CC [M] drivers/net/ethernet/broadcom/tg3.o AR drivers/media/platform/renesas/built-in.a CC lib/bitmap.o CC mm/migrate.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_display.o AR drivers/media/platform/rockchip/rga/built-in.a CC net/ipv4/xfrm4_output.o CC [M] fs/nls/nls_ucs2_utils.o AR drivers/media/platform/rockchip/rkisp1/built-in.a AR drivers/i2c/muxes/built-in.a AR drivers/media/platform/rockchip/built-in.a CC [M] drivers/i2c/muxes/i2c-mux-gpio.o CC net/ipv6/ip6_checksum.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_i2c.o CC mm/memory-tiers.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_gem.o CC mm/migrate_device.o AR drivers/media/platform/samsung/exynos-gsc/built-in.a CC mm/huge_memory.o AR drivers/media/platform/samsung/exynos4-is/built-in.a CC net/ipv6/ip6_icmp.o AR drivers/media/platform/samsung/s3c-camif/built-in.a AR drivers/media/platform/samsung/s5p-g2d/built-in.a AR drivers/net/mdio/built-in.a CC drivers/usb/core/notify.o AR drivers/media/platform/samsung/s5p-jpeg/built-in.a CC fs/ntfs/attrib.o AR drivers/media/platform/samsung/s5p-mfc/built-in.a AR drivers/media/platform/samsung/built-in.a AR drivers/media/platform/st/sti/bdisp/built-in.a AR drivers/media/platform/st/sti/c8sectpfe/built-in.a CC fs/ext4/super.o AR drivers/media/platform/st/sti/delta/built-in.a AR drivers/media/platform/st/sti/hva/built-in.a CC [M] drivers/gpu/drm/i915/i915_switcheroo.o AR drivers/media/platform/st/stm32/built-in.a AR drivers/media/platform/st/built-in.a AR drivers/media/platform/sunxi/sun4i-csi/built-in.a AR drivers/media/platform/sunxi/sun6i-csi/built-in.a AR drivers/media/platform/sunxi/sun6i-mipi-csi2/built-in.a CC [M] drivers/gpu/drm/i915/i915_sysfs.o AR drivers/media/platform/sunxi/sun8i-a83t-mipi-csi2/built-in.a CC drivers/acpi/acpica/psargs.o CC fs/ntfs/collate.o AR drivers/media/platform/sunxi/sun8i-di/built-in.a AR drivers/media/platform/sunxi/sun8i-rotate/built-in.a CC mm/khugepaged.o AR drivers/media/platform/sunxi/built-in.a CC [M] drivers/gpu/drm/drm_crtc.o CC mm/page_counter.o AR drivers/media/platform/ti/am437x/built-in.a CC drivers/usb/serial/pl2303.o AR drivers/media/platform/ti/cal/built-in.a AR drivers/media/platform/ti/vpe/built-in.a AR drivers/media/platform/ti/davinci/built-in.a AR fs/nls/built-in.a AR drivers/usb/gadget/udc/built-in.a AR drivers/media/platform/ti/omap/built-in.a AR drivers/media/platform/ti/omap3isp/built-in.a AR drivers/usb/gadget/legacy/built-in.a CC drivers/usb/gadget/usbstring.o CC drivers/rtc/proc.o AR drivers/media/platform/ti/built-in.a CC [M] drivers/gpu/drm/drm_displayid.o AR drivers/media/platform/verisilicon/built-in.a AR drivers/media/platform/via/built-in.a AR drivers/media/platform/xilinx/built-in.a AR drivers/media/platform/built-in.a CC kernel/params.o CC [M] drivers/gpu/drm/drm_drv.o CC [M] drivers/gpu/drm/nouveau/nvif/vmm.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_ring.o AR drivers/media/usb/b2c2/built-in.a AR drivers/media/mmc/siano/built-in.a AR drivers/media/mmc/built-in.a AR drivers/media/usb/dvb-usb/built-in.a AR drivers/media/usb/dvb-usb-v2/built-in.a CC [M] drivers/gpu/drm/i915/i915_utils.o CC [M] drivers/gpu/drm/i915/intel_clock_gating.o AR drivers/media/usb/s2255/built-in.a CC [M] drivers/gpu/drm/i915/intel_device_info.o AR drivers/media/usb/siano/built-in.a AR drivers/media/firewire/built-in.a AR drivers/media/usb/ttusb-budget/built-in.a CC [M] drivers/gpu/drm/xe/xe_gpu_scheduler.o AR drivers/media/usb/ttusb-dec/built-in.a CC fs/ntfs/compress.o AR drivers/media/usb/built-in.a CC drivers/usb/core/generic.o AR drivers/media/spi/built-in.a AR drivers/media/test-drivers/built-in.a AR drivers/media/built-in.a AR drivers/ptp/built-in.a HOSTCC drivers/gpu/drm/xe/xe_gen_wa_oob CC drivers/acpi/acpica/psloop.o CC [M] drivers/ptp/ptp_clock.o CC net/ipv4/xfrm4_protocol.o AR drivers/power/reset/built-in.a AR drivers/input/built-in.a CC drivers/i2c/i2c-boardinfo.o CC drivers/power/supply/power_supply_core.o AR fs/hostfs/built-in.a CC net/ipv6/output_core.o CC [M] drivers/gpu/drm/xe/xe_gsc_submit.o CC lib/scatterlist.o CC net/ipv6/protocol.o CC drivers/power/supply/power_supply_sysfs.o CC drivers/acpi/acpica/psobject.o CC [M] drivers/ptp/ptp_chardev.o CC arch/x86/kernel/tsc_sync.o CC drivers/usb/gadget/config.o CC [M] drivers/gpu/drm/drm_dumb_buffers.o CC drivers/rtc/sysfs.o CC drivers/usb/host/xhci-mem.o CC mm/memcontrol.o AR drivers/net/usb/built-in.a CC [M] drivers/net/usb/pegasus.o CC [M] drivers/i2c/busses/i2c-isch.o CC [M] drivers/net/usb/rtl8150.o CC [M] drivers/i2c/busses/i2c-ismt.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_cs.o AR drivers/net/ethernet/cavium/common/built-in.a AR drivers/net/ethernet/cavium/thunder/built-in.a CC [M] drivers/gpu/drm/i915/intel_memory_region.o AR drivers/net/ethernet/cavium/liquidio/built-in.a AR drivers/usb/serial/built-in.a CC [M] drivers/gpu/drm/i915/intel_pcode.o AR drivers/net/ethernet/cavium/octeon/built-in.a CC mm/vmpressure.o AR drivers/net/ethernet/cavium/built-in.a CC drivers/usb/core/quirks.o CC drivers/acpi/acpica/psopcode.o CC [M] drivers/gpu/drm/nouveau/nvif/user.o CC drivers/usb/host/xhci-ext-caps.o CC [M] net/ipv4/ip_tunnel.o CC [M] drivers/gpu/drm/drm_edid.o CC kernel/kthread.o CC fs/debugfs/inode.o CC fs/debugfs/file.o CC [M] drivers/gpu/drm/i915/intel_region_ttm.o CC arch/x86/kernel/setup_percpu.o CC drivers/i2c/i2c-core-base.o CC [M] net/ipv4/udp_tunnel_core.o CC kernel/sys_ni.o CC drivers/rtc/rtc-mc146818-lib.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_bios.o CC fs/tracefs/inode.o CC fs/tracefs/event_inode.o CC [M] drivers/gpu/drm/xe/xe_gt.o CC [M] net/ipv4/udp_tunnel_nic.o CC drivers/power/supply/power_supply_leds.o CC arch/x86/kernel/ftrace.o CC [M] drivers/ptp/ptp_sysfs.o CC drivers/acpi/acpica/psopinfo.o CC drivers/usb/gadget/epautoconf.o CC fs/ntfs/debug.o CC drivers/acpi/acpica/psparse.o AR net/ipv4/built-in.a CC net/ipv6/ip6_offload.o CC [M] drivers/gpu/drm/xe/xe_gt_ccs_mode.o CC [M] drivers/i2c/busses/i2c-piix4.o CC mm/swap_cgroup.o AS arch/x86/kernel/ftrace_64.o CC lib/list_sort.o CC drivers/usb/core/devices.o CC mm/hugetlb_cgroup.o CC drivers/usb/host/xhci-ring.o CC [M] drivers/ptp/ptp_vclock.o CC lib/uuid.o CC arch/x86/kernel/trace_clock.o CC [M] drivers/gpu/drm/nouveau/nvif/userc361.o CC [M] drivers/ptp/ptp_kvm_x86.o CC [M] drivers/gpu/drm/xe/xe_gt_clock.o CC drivers/rtc/rtc-cmos.o CC kernel/nsproxy.o CC drivers/power/supply/power_supply_hwmon.o CC drivers/i2c/i2c-core-smbus.o CC mm/kmemleak.o CC fs/ntfs/dir.o CC drivers/usb/core/phy.o CC net/ipv6/tcpv6_offload.o CC lib/iov_iter.o CC drivers/acpi/acpica/psscope.o CC drivers/usb/gadget/composite.o CC [M] drivers/net/usb/r8152.o CC [M] drivers/net/usb/asix_devices.o AR fs/debugfs/built-in.a CC fs/ntfs/file.o AR fs/tracefs/built-in.a CC fs/ntfs/index.o CC arch/x86/kernel/trace.o CC mm/page_isolation.o CC mm/early_ioremap.o CC fs/btrfs/super.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_benchmark.o CC drivers/acpi/acpica/pstree.o AR drivers/power/supply/built-in.a CC [M] drivers/gpu/drm/xe/xe_gt_debugfs.o CC drivers/acpi/pci_link.o AR drivers/power/built-in.a CC kernel/notifier.o CC mm/cma.o CC fs/pstore/inode.o CC [M] drivers/ptp/ptp_kvm_common.o CC [M] drivers/net/ipvlan/ipvlan_core.o CC [M] drivers/net/vxlan/vxlan_core.o CC [M] drivers/gpu/drm/nouveau/nvkm/core/client.o CC [M] drivers/net/ipvlan/ipvlan_main.o CC [M] drivers/net/vxlan/vxlan_multicast.o CC drivers/acpi/acpica/psutils.o CC [M] drivers/i2c/busses/i2c-designware-pcidrv.o CC drivers/usb/core/port.o CC arch/x86/kernel/rethook.o CC [M] drivers/gpu/drm/xe/xe_gt_freq.o CC arch/x86/kernel/crash_core_64.o LD [M] net/ipv4/udp_tunnel.o CC [M] drivers/gpu/drm/drm_encoder.o CC mm/secretmem.o CC [M] drivers/gpu/drm/i915/intel_runtime_pm.o AR drivers/rtc/built-in.a CC mm/userfaultfd.o CC drivers/usb/gadget/functions.o CC [M] drivers/gpu/drm/i915/intel_sbi.o CC [M] drivers/gpu/drm/drm_file.o CC lib/clz_ctz.o CC [M] drivers/net/vxlan/vxlan_vnifilter.o CC fs/ext4/symlink.o CC [M] drivers/gpu/drm/xe/xe_gt_idle.o CC lib/bsearch.o CC fs/ntfs/inode.o CC [M] drivers/gpu/drm/nouveau/nvkm/core/engine.o CC drivers/acpi/acpica/pswalk.o CC net/ipv6/exthdrs_offload.o LD [M] drivers/ptp/ptp.o LD [M] drivers/ptp/ptp_kvm.o CC mm/memremap.o CC drivers/hwmon/hwmon.o CC fs/pstore/platform.o CC drivers/i2c/i2c-core-acpi.o AR drivers/thermal/broadcom/built-in.a AR drivers/thermal/samsung/built-in.a CC [M] drivers/hwmon/acpi_power_meter.o CC [M] drivers/hwmon/coretemp.o CC [M] drivers/gpu/drm/amd/amdgpu/atombios_dp.o CC drivers/thermal/intel/intel_tcc.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_afmt.o CC fs/ntfs/mft.o CC lib/find_bit.o CC arch/x86/kernel/module.o CC kernel/ksysfs.o CC fs/ntfs/mst.o CC drivers/acpi/pci_irq.o CC drivers/thermal/intel/therm_throt.o CC drivers/acpi/acpica/psxface.o AR drivers/thermal/st/built-in.a CC drivers/usb/core/hcd-pci.o AR drivers/thermal/qcom/built-in.a CC [M] drivers/gpu/drm/drm_fourcc.o AR drivers/thermal/tegra/built-in.a AR drivers/thermal/mediatek/built-in.a CC drivers/thermal/thermal_core.o CC drivers/thermal/thermal_sysfs.o LD [M] drivers/i2c/busses/i2c-designware-pci.o AR drivers/i2c/busses/built-in.a CC net/ipv6/inet6_hashtables.o CC lib/llist.o CC drivers/thermal/thermal_trip.o CC mm/hmm.o CC [M] drivers/gpu/drm/drm_framebuffer.o CC [M] drivers/gpu/drm/xe/xe_gt_mcr.o CC drivers/acpi/acpica/rsaddr.o CC [M] drivers/thermal/intel/x86_pkg_temp_thermal.o CC [M] drivers/net/vxlan/vxlan_mdb.o CC [M] drivers/gpu/drm/i915/intel_step.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_trace_points.o CC [M] drivers/gpu/drm/nouveau/nvkm/core/enum.o CC drivers/usb/gadget/configfs.o CC drivers/usb/gadget/u_f.o CC [M] drivers/net/ipvlan/ipvlan_l3s.o CC [M] drivers/gpu/drm/drm_gem.o CC drivers/i2c/i2c-core-slave.o CC fs/pstore/pmsg.o CC kernel/cred.o CC drivers/i2c/i2c-dev.o CC kernel/reboot.o CC fs/ntfs/namei.o CC drivers/acpi/acpi_lpss.o CC [M] drivers/gpu/drm/i915/intel_uncore.o CC arch/x86/kernel/early_printk.o CC [M] drivers/gpu/drm/nouveau/nvkm/core/event.o CC [M] drivers/gpu/drm/xe/xe_gt_pagefault.o CC [M] drivers/gpu/drm/xe/xe_gt_sysfs.o CC drivers/thermal/thermal_helpers.o CC drivers/acpi/acpica/rscalc.o CC [M] drivers/i2c/i2c-smbus.o CC drivers/thermal/thermal_hwmon.o CC drivers/acpi/acpica/rscreate.o CC mm/memfd.o CC kernel/async.o CC kernel/range.o AR drivers/hwmon/built-in.a CC [M] drivers/gpu/drm/amd/amdgpu/atombios_encoders.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_sa.o CC lib/memweight.o AR drivers/thermal/intel/built-in.a CC drivers/usb/core/usb-acpi.o CC kernel/smpboot.o CC drivers/usb/host/xhci-hub.o CC arch/x86/kernel/hpet.o CC drivers/usb/host/xhci-dbg.o CC drivers/thermal/gov_fair_share.o AR fs/pstore/built-in.a CC lib/kfifo.o CC fs/efivarfs/inode.o CC [M] fs/netfs/buffered_read.o CC fs/efivarfs/file.o CC [M] drivers/gpu/drm/nouveau/nvkm/core/firmware.o CC drivers/thermal/gov_step_wise.o CC [M] drivers/gpu/drm/nouveau/nvkm/core/gpuobj.o CC drivers/usb/host/xhci-trace.o CC fs/ntfs/runlist.o CC drivers/acpi/acpica/rsdumpinfo.o CC [M] drivers/gpu/drm/nouveau/nvkm/core/intr.o CC drivers/acpi/acpi_apd.o CC kernel/ucount.o CC kernel/regset.o CC fs/btrfs/ctree.o CC [M] drivers/gpu/drm/i915/intel_wakeref.o CC mm/bootmem_info.o CC drivers/net/loopback.o CC net/ipv6/mcast_snoop.o CC drivers/usb/host/xhci-debugfs.o CC [M] drivers/i2c/i2c-mux.o CC [M] drivers/gpu/drm/nouveau/nvkm/core/ioctl.o CC drivers/thermal/gov_user_space.o CC drivers/net/netconsole.o CC [M] drivers/gpu/drm/drm_ioctl.o CC [M] drivers/gpu/drm/xe/xe_gt_throttle_sysfs.o LD [M] drivers/net/ipvlan/ipvlan.o CC [M] net/ipv6/ip6_udp_tunnel.o CC kernel/ksyms_common.o CC [M] drivers/net/dummy.o CC [M] drivers/gpu/drm/amd/amdgpu/atombios_i2c.o CC [M] fs/netfs/io.o CC [M] drivers/gpu/drm/xe/xe_gt_tlb_invalidation.o CC drivers/acpi/acpica/rsinfo.o AR drivers/usb/core/built-in.a CC drivers/acpi/acpica/rsio.o CC fs/efivarfs/super.o CC drivers/usb/host/xhci-pci.o CC kernel/groups.o CC kernel/vhost_task.o AR drivers/usb/gadget/built-in.a CC drivers/watchdog/watchdog_core.o CC lib/percpu-refcount.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_dma_buf.o CC [M] drivers/md/persistent-data/dm-array.o CC drivers/md/md.o AR drivers/thermal/built-in.a CC [M] drivers/gpu/drm/drm_lease.o CC [M] drivers/md/persistent-data/dm-bitset.o CC [M] drivers/gpu/drm/nouveau/nvkm/core/memory.o CC arch/x86/kernel/amd_nb.o CC kernel/kcmp.o CC [M] fs/netfs/iterator.o CC drivers/acpi/acpica/rsirq.o CC [M] fs/netfs/main.o CC [M] drivers/gpu/drm/drm_managed.o AR mm/built-in.a CC arch/x86/kernel/kvm.o CC drivers/acpi/acpica/rslist.o CC fs/ntfs/super.o CC kernel/freezer.o CC kernel/stacktrace.o CC drivers/acpi/acpi_platform.o AR drivers/i2c/built-in.a CC fs/efivarfs/vars.o CC [M] fs/netfs/objects.o CC drivers/opp/core.o CC [M] drivers/gpu/drm/drm_mm.o CC drivers/cpufreq/cpufreq.o CC [M] drivers/gpu/drm/drm_mode_config.o CC drivers/acpi/acpica/rsmemory.o CC arch/x86/kernel/kvmclock.o CC [M] drivers/gpu/drm/drm_mode_object.o AR net/ipv6/built-in.a CC arch/x86/kernel/paravirt.o CC drivers/cpufreq/freq_table.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_vm.o CC drivers/cpufreq/cpufreq_performance.o CC drivers/cpuidle/governors/menu.o CC drivers/cpuidle/governors/haltpoll.o CC lib/rhashtable.o CC drivers/cpuidle/cpuidle.o CC drivers/cpufreq/cpufreq_ondemand.o AR net/built-in.a CC [M] drivers/gpu/drm/drm_modes.o CC [M] drivers/md/persistent-data/dm-block-manager.o CC fs/ext4/sysfs.o CC drivers/acpi/acpi_pnp.o CC drivers/acpi/power.o CC [M] drivers/gpu/drm/drm_modeset_lock.o CC [M] drivers/gpu/drm/i915/vlv_sideband.o CC drivers/acpi/event.o CC drivers/watchdog/watchdog_dev.o CC fs/ext4/xattr.o CC [M] drivers/gpu/drm/xe/xe_gt_topology.o CC drivers/cpuidle/driver.o CC [M] drivers/gpu/drm/nouveau/nvkm/core/mm.o CC drivers/acpi/acpica/rsmisc.o CC kernel/dma.o CC drivers/acpi/acpica/rsserial.o CC drivers/cpufreq/cpufreq_governor.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_vm_pt.o CC [M] drivers/md/persistent-data/dm-space-map-common.o CC [M] drivers/gpu/drm/i915/vlv_suspend.o CC drivers/watchdog/softdog.o CC drivers/opp/cpu.o CC fs/ntfs/sysctl.o CC fs/ntfs/unistr.o AR fs/efivarfs/built-in.a LD [M] fs/netfs/netfs.o AR drivers/net/ethernet/cortina/built-in.a AR drivers/usb/host/built-in.a AR drivers/net/ethernet/engleder/built-in.a CC [M] drivers/net/macvlan.o AR drivers/usb/built-in.a CC [M] drivers/md/persistent-data/dm-space-map-disk.o GEN xe_wa_oob.c xe_wa_oob.h GEN xe_wa_oob.c xe_wa_oob.h CC [M] drivers/gpu/drm/xe/xe_guc_ads.o CC [M] fs/fscache/cache.o CC [M] fs/smb/common/cifs_arc4.o LD [M] drivers/net/vxlan/vxlan.o CC [M] fs/fuse/dev.o CC drivers/acpi/evged.o CC fs/open.o CC [M] fs/overlayfs/super.o AR drivers/cpuidle/governors/built-in.a CC [M] fs/overlayfs/namei.o CC fs/read_write.o CC arch/x86/kernel/pvclock.o CC [M] fs/overlayfs/util.o CC [M] drivers/gpu/drm/drm_plane.o CC [M] drivers/gpu/drm/drm_prime.o CC [M] drivers/net/usb/asix_common.o CC [M] drivers/md/persistent-data/dm-space-map-metadata.o CC kernel/smp.o CC drivers/cpuidle/governor.o CC drivers/acpi/acpica/rsutils.o CC [M] fs/smb/client/trace.o CC [M] drivers/gpu/drm/drm_print.o CC drivers/acpi/sysfs.o CC [M] drivers/gpu/drm/i915/soc/intel_dram.o CC [M] drivers/gpu/drm/drm_property.o CC [M] drivers/gpu/drm/drm_syncobj.o CC drivers/acpi/property.o CC [M] drivers/gpu/drm/xe/xe_guc_ct.o CC [M] fs/smb/common/cifs_md4.o CC [M] drivers/gpu/drm/xe/xe_guc_debugfs.o CC [M] fs/smb/client/cifsfs.o AR drivers/watchdog/built-in.a CC drivers/cpufreq/cpufreq_governor_attr_set.o CC [M] drivers/gpu/drm/nouveau/nvkm/core/object.o CC fs/ntfs/upcase.o CC drivers/mmc/core/core.o CC [M] drivers/gpu/drm/i915/soc/intel_gmch.o CC drivers/cpuidle/sysfs.o CC drivers/opp/debugfs.o CC lib/base64.o CC drivers/acpi/acpi_cmos_rtc.o CC [M] drivers/md/persistent-data/dm-transaction-manager.o CC drivers/acpi/acpica/rsxface.o CC arch/x86/kernel/pcspeaker.o CC lib/once.o CC [M] fs/fscache/cookie.o CC [M] drivers/gpu/drm/i915/soc/intel_pch.o CC [M] drivers/gpu/drm/drm_sysfs.o CC [M] drivers/gpu/drm/i915/i915_memcpy.o CC drivers/mmc/core/bus.o CC drivers/acpi/x86/apple.o CC arch/x86/kernel/check.o CC [M] drivers/gpu/drm/drm_trace_points.o CC fs/btrfs/extent-tree.o CC lib/refcount.o CC drivers/mmc/core/host.o CC drivers/cpufreq/acpi-cpufreq.o CC drivers/md/md-bitmap.o CC drivers/cpuidle/poll_state.o AR fs/ntfs/built-in.a CC [M] drivers/gpu/drm/i915/i915_mm.o CC [M] drivers/md/persistent-data/dm-btree.o CC drivers/mmc/host/sdhci.o CC [M] fs/fscache/io.o CC [M] drivers/gpu/drm/drm_vblank.o CC drivers/cpuidle/cpuidle-haltpoll.o AR drivers/opp/built-in.a CC [M] drivers/net/usb/ax88172a.o CC drivers/mmc/host/sdhci-pci-core.o CC drivers/acpi/acpica/tbdata.o CC [M] drivers/net/usb/ax88179_178a.o CC lib/rcuref.o CC arch/x86/kernel/uprobes.o CC [M] drivers/md/persistent-data/dm-btree-remove.o CC [M] drivers/gpu/drm/xe/xe_guc_hwconfig.o CC [M] fs/overlayfs/inode.o CC [M] fs/fuse/dir.o CC kernel/uid16.o CC kernel/kallsyms.o CC arch/x86/kernel/perf_regs.o CC [M] drivers/gpu/drm/drm_vblank_work.o CC lib/usercopy.o CC [M] drivers/gpu/drm/nouveau/nvkm/core/oproxy.o CC drivers/acpi/x86/utils.o CC [M] fs/fuse/file.o CC [M] fs/overlayfs/file.o CC [M] fs/overlayfs/dir.o AR drivers/net/ethernet/ezchip/built-in.a CC [M] drivers/net/mii.o AR drivers/net/ethernet/fungible/built-in.a CC fs/ext4/xattr_hurd.o CC [M] drivers/net/mdio.o AR drivers/cpuidle/built-in.a AR drivers/net/ethernet/huawei/built-in.a CC kernel/acct.o AR drivers/ufs/built-in.a CC drivers/acpi/x86/s2idle.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_ib.o CC drivers/mmc/core/mmc.o CC drivers/acpi/acpica/tbfadt.o CC [M] drivers/gpu/drm/drm_vma_manager.o CC lib/errseq.o AR drivers/leds/trigger/built-in.a CC [M] drivers/leds/trigger/ledtrig-audio.o AR drivers/leds/blink/built-in.a AR drivers/leds/simple/built-in.a CC drivers/acpi/acpica/tbfind.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_pll.o AR drivers/firmware/arm_ffa/built-in.a AR drivers/firmware/arm_scmi/built-in.a AR drivers/firmware/broadcom/built-in.a AR drivers/firmware/cirrus/built-in.a CC drivers/mmc/core/mmc_ops.o CC lib/bucket_locks.o AR drivers/firmware/meson/built-in.a CC drivers/firmware/efi/efi-bgrt.o CC drivers/cpufreq/intel_pstate.o CC drivers/firmware/efi/efi.o CC [M] drivers/net/tun.o CC drivers/firmware/efi/libstub/efi-stub-helper.o CC [M] drivers/gpu/drm/xe/xe_guc_log.o CC drivers/firmware/efi/libstub/gop.o CC [M] drivers/gpu/drm/i915/i915_sw_fence.o CC arch/x86/kernel/tracepoint.o AR drivers/firmware/imx/built-in.a CC fs/file_table.o CC [M] fs/fscache/main.o CC [M] fs/fscache/volume.o CC drivers/acpi/acpica/tbinstal.o CC [M] drivers/gpu/drm/drm_writeback.o CC drivers/leds/led-core.o CC [M] drivers/net/veth.o CC [M] drivers/gpu/drm/nouveau/nvkm/core/option.o AR drivers/crypto/stm32/built-in.a AR drivers/crypto/xilinx/built-in.a CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_ucode.o AR drivers/crypto/hisilicon/built-in.a CC fs/ext4/xattr_trusted.o AR drivers/crypto/intel/keembay/built-in.a CC kernel/crash_core.o AR drivers/crypto/intel/ixp4xx/built-in.a AR drivers/crypto/intel/built-in.a CC [M] drivers/md/persistent-data/dm-btree-spine.o AR drivers/crypto/starfive/built-in.a AR drivers/crypto/built-in.a CC fs/ext4/xattr_user.o CC lib/generic-radix-tree.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.o CC [M] fs/overlayfs/readdir.o CC [M] fs/smb/client/cifs_debug.o CC drivers/mmc/core/sd.o CC arch/x86/kernel/itmt.o AR drivers/net/ethernet/i825xx/built-in.a CC [M] drivers/net/ethernet/intel/e1000/e1000_main.o AR drivers/net/ethernet/microsoft/built-in.a CC fs/super.o CC fs/char_dev.o CC arch/x86/kernel/umip.o CC [M] fs/smb/client/connect.o CC lib/string_helpers.o CC [M] drivers/net/usb/cdc_ether.o CC drivers/acpi/acpica/tbprint.o CC drivers/firmware/efi/vars.o CC drivers/acpi/debugfs.o CC lib/hexdump.o CC arch/x86/kernel/unwind_orc.o CC drivers/firmware/efi/libstub/secureboot.o CC [M] drivers/net/usb/cdc_eem.o CC [M] drivers/net/ethernet/intel/e1000/e1000_hw.o CC fs/stat.o CC drivers/acpi/acpi_lpat.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.o AR drivers/net/ethernet/litex/built-in.a CC [M] drivers/gpu/drm/xe/xe_guc_pc.o AR drivers/net/ethernet/microchip/built-in.a CC [M] fs/fuse/inode.o CC [M] drivers/gpu/drm/xe/xe_guc_submit.o CC drivers/acpi/acpica/tbutils.o CC drivers/leds/led-class.o CC fs/ext4/fast_commit.o CC [M] drivers/net/usb/smsc75xx.o CC drivers/firmware/efi/reboot.o CC [M] fs/smb/client/dir.o LD [M] drivers/md/persistent-data/dm-persistent-data.o CC [M] drivers/gpu/drm/nouveau/nvkm/core/ramht.o CC [M] drivers/gpu/drm/nouveau/nvkm/core/subdev.o CC fs/ext4/orphan.o CC fs/exec.o CC drivers/mmc/core/sd_ops.o CC [M] drivers/gpu/drm/lib/drm_random.o CC kernel/compat.o CC [M] drivers/gpu/drm/i915/i915_sw_fence_work.o CC [M] drivers/net/ethernet/intel/e1000e/82571.o CC [M] drivers/gpu/drm/i915/i915_syncmap.o CC drivers/mmc/core/sdio.o CC [M] drivers/gpu/drm/xe/xe_heci_gsc.o CC [M] drivers/gpu/drm/drm_ioc32.o CC [M] fs/fscache/proc.o CC drivers/acpi/acpica/tbxface.o CC lib/kstrtox.o CC fs/pipe.o CC drivers/firmware/efi/libstub/tpm.o CC drivers/acpi/acpica/tbxfload.o CC arch/x86/kernel/callthunks.o CC fs/namei.o CC [M] drivers/gpu/drm/i915/i915_user_extensions.o CC [M] fs/overlayfs/copy_up.o CC drivers/leds/led-triggers.o CC [M] drivers/gpu/drm/i915/i915_ioc32.o CC drivers/firmware/efi/memattr.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_sync.o CC drivers/acpi/acpica/tbxfroot.o CC drivers/md/md-autodetect.o CC [M] fs/fuse/control.o CC drivers/mmc/core/sdio_ops.o CC [M] drivers/gpu/drm/i915/i915_debugfs.o CC [M] fs/overlayfs/export.o CC lib/debug_info.o AR drivers/cpufreq/built-in.a CC [M] drivers/gpu/drm/nouveau/nvkm/core/uevent.o CC [M] fs/fuse/xattr.o CC [M] fs/fuse/acl.o CC drivers/md/dm-uevent.o CC drivers/acpi/acpica/utaddress.o CC drivers/clocksource/acpi_pm.o CC drivers/md/dm.o LD [M] fs/fscache/fscache.o CC kernel/utsname.o CC drivers/md/dm-table.o CC fs/fcntl.o CC drivers/firmware/efi/libstub/file.o CC [M] drivers/gpu/drm/xe/xe_hw_engine.o CC drivers/firmware/efi/libstub/mem.o CC [M] drivers/gpu/drm/drm_panel.o CC [M] drivers/net/usb/smsc95xx.o CC [M] drivers/gpu/drm/xe/xe_hw_engine_class_sysfs.o CC [M] fs/overlayfs/params.o CC drivers/mmc/host/sdhci-pci-o2micro.o CC drivers/firmware/efi/tpm.o CC arch/x86/kernel/cet.o AR drivers/leds/built-in.a CC drivers/hid/usbhid/hid-core.o AR drivers/staging/media/built-in.a CC drivers/hid/usbhid/hiddev.o AR drivers/staging/built-in.a CC [M] drivers/gpu/drm/i915/i915_debugfs_params.o CC drivers/acpi/acpica/utalloc.o AR drivers/platform/x86/amd/built-in.a CC drivers/platform/x86/intel/pmc/core.o CC kernel/user_namespace.o CC [M] drivers/gpu/drm/i915/display/intel_display_debugfs.o CC [M] fs/fuse/readdir.o CC drivers/hid/hid-core.o CC drivers/mmc/core/sdio_bus.o CC drivers/hid/hid-input.o CC drivers/clocksource/i8253.o CC [M] drivers/gpu/drm/i915/display/intel_display_debugfs_params.o CC drivers/mmc/core/sdio_cis.o CC [M] drivers/net/ethernet/intel/e1000e/ich8lan.o CC drivers/mmc/core/sdio_io.o CC drivers/mmc/core/sdio_irq.o AR drivers/firmware/psci/built-in.a CC [M] drivers/net/usb/mcs7830.o CC [M] drivers/net/usb/usbnet.o CC [M] drivers/net/ethernet/intel/e1000/e1000_ethtool.o CC [M] drivers/gpu/drm/nouveau/nvkm/nvfw/fw.o CC drivers/firmware/efi/libstub/random.o CC fs/btrfs/print-tree.o CC drivers/firmware/efi/libstub/randomalloc.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_gtt_mgr.o CC drivers/acpi/acpi_lpit.o CC drivers/acpi/acpica/utascii.o CC fs/ioctl.o CC drivers/hid/hid-quirks.o CC [M] drivers/net/ethernet/intel/e1000/e1000_param.o AR drivers/clocksource/built-in.a CC [M] drivers/platform/x86/intel/pmt/class.o CC drivers/platform/x86/intel/turbo_max_3.o LD [M] fs/overlayfs/overlay.o CC arch/x86/kernel/mmconf-fam10h_64.o CC drivers/md/dm-target.o CC lib/iomap.o CC drivers/hid/hid-debug.o AR fs/ext4/built-in.a CC [M] fs/smb/client/file.o CC [M] drivers/platform/x86/intel/vsec.o CC [M] drivers/net/usb/cdc_ncm.o CC drivers/mmc/host/sdhci-pci-arasan.o AR drivers/net/ethernet/mscc/built-in.a CC [M] drivers/gpu/drm/i915/display/intel_pipe_crc.o CC drivers/acpi/acpica/utbuffer.o CC drivers/mmc/core/slot-gpio.o AR drivers/net/ethernet/neterion/built-in.a AR drivers/net/ethernet/netronome/built-in.a CC drivers/hid/hidraw.o CC drivers/hid/hid-generic.o CC [M] fs/fuse/ioctl.o AR drivers/firmware/smccc/built-in.a CC [M] drivers/net/ethernet/intel/e1000e/80003es2lan.o CC [M] fs/smb/client/inode.o CC drivers/hid/hid-a4tech.o AR drivers/firmware/tegra/built-in.a CC drivers/firmware/efi/libstub/pci.o CC [M] drivers/gpu/drm/xe/xe_hw_fence.o CC drivers/firmware/efi/libstub/skip_spaces.o CC drivers/acpi/prmt.o CC [M] drivers/gpu/drm/drm_pci.o CC drivers/platform/x86/p2sb.o CC [M] drivers/net/ethernet/intel/igb/igb_main.o AR drivers/firmware/xilinx/built-in.a CC [M] drivers/gpu/drm/nouveau/nvkm/nvfw/hs.o CC drivers/md/dm-linear.o CC [M] drivers/gpu/drm/i915/i915_pmu.o CC [M] drivers/net/ethernet/intel/igb/igb_ethtool.o CC kernel/pid_namespace.o CC [M] drivers/net/usb/r8153_ecm.o CC arch/x86/kernel/vsmp_64.o CC [M] drivers/net/ethernet/intel/igb/e1000_82575.o CC drivers/acpi/acpica/utcksum.o CC [M] drivers/net/ethernet/intel/igb/e1000_mac.o CC drivers/platform/x86/intel/pmc/core_ssram.o CC drivers/acpi/acpica/utcopy.o CC [M] drivers/platform/x86/intel/pmt/telemetry.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_preempt_mgr.o CC lib/pci_iomap.o AR drivers/hid/usbhid/built-in.a CC [M] drivers/platform/x86/intel/rst.o CC [M] drivers/gpu/drm/nouveau/nvkm/nvfw/ls.o CC drivers/firmware/dmi_scan.o CC fs/readdir.o CC drivers/mmc/host/sdhci-pci-dwc-mshc.o CC fs/btrfs/root-tree.o CC drivers/md/dm-stripe.o CC drivers/mmc/core/regulator.o CC lib/iomap_copy.o CC drivers/firmware/efi/libstub/lib-cmdline.o CC drivers/hid/hid-apple.o CC drivers/platform/x86/pmc_atom.o CC [M] drivers/net/ethernet/intel/e1000e/mac.o LD [M] drivers/platform/x86/intel/intel_vsec.o CC drivers/acpi/acpica/utexcep.o CC drivers/mmc/core/debugfs.o UPD kernel/config_data CC [M] drivers/net/ethernet/intel/e1000e/manage.o CC drivers/mmc/core/block.o CC drivers/firmware/efi/libstub/lib-ctype.o CC drivers/firmware/efi/libstub/alignedmem.o AR arch/x86/kernel/built-in.a LD [M] fs/fuse/fuse.o AR arch/x86/built-in.a CC fs/select.o CC fs/dcache.o CC [M] drivers/gpu/drm/i915/gt/gen2_engine_cs.o CC fs/inode.o CC drivers/mmc/core/queue.o CC drivers/acpi/acpica/utdebug.o CC [M] drivers/gpu/drm/nouveau/nvkm/nvfw/acr.o CC drivers/acpi/acpica/utdecode.o CC drivers/hid/hid-belkin.o CC drivers/acpi/acpi_pcc.o CC fs/attr.o CC drivers/platform/x86/intel/pmc/spt.o CC [M] drivers/platform/x86/intel/pmt/crashlog.o CC kernel/stop_machine.o CC lib/devres.o LD [M] drivers/net/ethernet/intel/e1000/e1000.o CC fs/bad_inode.o CC [M] drivers/gpu/drm/xe/xe_huc.o CC [M] drivers/gpu/drm/xe/xe_huc_debugfs.o CC drivers/mmc/host/sdhci-pci-gli.o AR drivers/net/ethernet/ni/built-in.a CC [M] drivers/net/ethernet/intel/e1000e/nvm.o CC [M] drivers/gpu/drm/nouveau/nvkm/nvfw/flcn.o CC [M] drivers/net/ethernet/intel/e1000e/phy.o CC [M] drivers/net/ethernet/intel/igc/igc_main.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_vram_mgr.o CC [M] drivers/gpu/drm/drm_debugfs.o CC [M] drivers/net/ethernet/intel/igbvf/vf.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_virt.o CC drivers/acpi/acpica/utdelete.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_atomfirmware.o CC drivers/firmware/efi/libstub/relocate.o AR drivers/platform/surface/built-in.a CC drivers/md/dm-ioctl.o CC [M] drivers/platform/x86/wmi.o CC [M] drivers/net/ethernet/intel/igbvf/mbx.o CC drivers/platform/x86/intel/pmc/cnp.o CC drivers/mailbox/mailbox.o LD [M] drivers/net/usb/asix.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_main.o CC drivers/firmware/dmi-sysfs.o CC drivers/mailbox/pcc.o CC drivers/md/dm-io.o CC [M] drivers/platform/x86/wmi-bmof.o CC drivers/hid/hid-cherry.o CC [M] drivers/net/ethernet/intel/ixgbevf/vf.o LD [M] drivers/platform/x86/intel/pmt/pmt_class.o AR drivers/net/ethernet/intel/built-in.a LD [M] drivers/platform/x86/intel/pmt/pmt_telemetry.o CC [M] drivers/net/ethernet/intel/e100.o LD [M] drivers/platform/x86/intel/pmt/pmt_crashlog.o CC [M] fs/smb/client/link.o CC [M] drivers/platform/x86/mxm-wmi.o CC [M] fs/smb/client/misc.o CC [M] drivers/gpu/drm/drm_debugfs_crc.o CC drivers/acpi/acpica/uterror.o CC lib/check_signature.o CC [M] drivers/gpu/drm/i915/gt/gen6_engine_cs.o CC [M] drivers/net/ethernet/intel/igbvf/ethtool.o CC fs/btrfs/dir-item.o CC kernel/kprobes.o CC [M] drivers/gpu/drm/xe/xe_irq.o CC [M] drivers/gpu/drm/nouveau/nvkm/falcon/base.o CC lib/interval_tree.o CC [M] drivers/gpu/drm/xe/xe_lrc.o CC drivers/platform/x86/intel/pmc/icl.o CC drivers/firmware/efi/libstub/printk.o CC drivers/firmware/efi/libstub/vsprintf.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_common.o CC [M] drivers/net/ethernet/intel/e1000e/param.o CC lib/assoc_array.o CC [M] drivers/platform/x86/intel_ips.o CC [M] drivers/net/ethernet/intel/ixgbevf/mbx.o CC [M] drivers/gpu/drm/i915/gt/gen6_ppgtt.o CC drivers/acpi/acpica/uteval.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_ethtool.o AR drivers/mailbox/built-in.a CC [M] drivers/gpu/drm/drm_edid_load.o CC [M] drivers/net/ethernet/intel/igbvf/netdev.o CC [M] drivers/gpu/drm/xe/xe_migrate.o CC drivers/acpi/acpica/utglobal.o CC drivers/mmc/host/sdhci-acpi.o CC [M] drivers/gpu/drm/i915/gt/gen7_renderclear.o LD [M] drivers/platform/x86/intel/intel-rst.o CC [M] drivers/net/ethernet/intel/e1000e/ethtool.o CC drivers/hid/hid-chicony.o CC drivers/md/dm-kcopyd.o CC [M] drivers/net/ethernet/intel/igb/e1000_nvm.o CC drivers/platform/x86/intel/pmc/tgl.o CC [M] drivers/net/ethernet/intel/igc/igc_mac.o CC [M] drivers/gpu/drm/drm_panel_orientation_quirks.o CC drivers/firmware/efi/libstub/x86-stub.o CC [M] drivers/gpu/drm/drm_exec.o CC drivers/firmware/efi/libstub/x86-5lvl.o AR drivers/mmc/core/built-in.a STUBCPY drivers/firmware/efi/libstub/alignedmem.stub.o CC drivers/firmware/dmi-id.o CC kernel/hung_task.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_vf_error.o CC drivers/firmware/memmap.o CC fs/file.o CC drivers/hid/hid-cypress.o CC drivers/acpi/acpica/uthex.o CC [M] drivers/net/ethernet/intel/ixgbevf/ethtool.o CC [M] drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.o CC [M] drivers/gpu/drm/xe/xe_mmio.o CC [M] drivers/gpu/drm/nouveau/nvkm/falcon/cmdq.o CC fs/filesystems.o CC [M] drivers/net/ethernet/intel/e1000e/netdev.o CC [M] drivers/gpu/drm/i915/gt/gen8_engine_cs.o CC lib/list_debug.o CC drivers/platform/x86/intel/pmc/adl.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_sched.o CC [M] fs/smb/client/netmisc.o CC drivers/platform/x86/intel/pmc/mtl.o CC drivers/acpi/acpica/utids.o CC fs/btrfs/file-item.o CC kernel/watchdog.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.o CC [M] drivers/gpu/drm/nouveau/nvkm/falcon/fw.o CC [M] drivers/gpu/drm/i915/gt/gen8_ppgtt.o CC fs/btrfs/inode-item.o CC [M] drivers/gpu/drm/i915/gt/intel_breadcrumbs.o CC lib/debugobjects.o CC drivers/hid/hid-ezkey.o CC drivers/mmc/host/cqhci-core.o CC [M] drivers/gpu/drm/drm_gpuvm.o CC [M] drivers/gpu/drm/drm_buddy.o CC [M] drivers/gpu/drm/drm_gem_shmem_helper.o CC [M] drivers/gpu/drm/nouveau/nvkm/falcon/msgq.o CC [M] drivers/gpu/drm/nouveau/nvkm/falcon/qmgr.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_ids.o CC [M] drivers/net/ethernet/intel/igb/e1000_phy.o STUBCPY drivers/firmware/efi/libstub/efi-stub-helper.stub.o STUBCPY drivers/firmware/efi/libstub/file.stub.o STUBCPY drivers/firmware/efi/libstub/gop.stub.o AR drivers/net/ethernet/packetengines/built-in.a STUBCPY drivers/firmware/efi/libstub/lib-cmdline.stub.o CC drivers/acpi/acpica/utinit.o STUBCPY drivers/firmware/efi/libstub/lib-ctype.stub.o CC drivers/md/dm-sysfs.o CC [M] drivers/gpu/drm/i915/gt/intel_context.o CC [M] drivers/net/ethernet/intel/igb/e1000_mbx.o STUBCPY drivers/firmware/efi/libstub/mem.stub.o STUBCPY drivers/firmware/efi/libstub/pci.stub.o CC [M] fs/smb/client/smbencrypt.o CC [M] fs/smb/client/transport.o STUBCPY drivers/firmware/efi/libstub/printk.stub.o CC drivers/platform/x86/intel/pmc/pltdrv.o STUBCPY drivers/firmware/efi/libstub/random.stub.o CC [M] drivers/net/ethernet/intel/igc/igc_i225.o STUBCPY drivers/firmware/efi/libstub/randomalloc.stub.o CC kernel/watchdog_perf.o STUBCPY drivers/firmware/efi/libstub/relocate.stub.o STUBCPY drivers/firmware/efi/libstub/secureboot.stub.o STUBCPY drivers/firmware/efi/libstub/skip_spaces.stub.o STUBCPY drivers/firmware/efi/libstub/tpm.stub.o STUBCPY drivers/firmware/efi/libstub/vsprintf.stub.o STUBCPY drivers/firmware/efi/libstub/x86-5lvl.stub.o CC fs/btrfs/disk-io.o STUBCPY drivers/firmware/efi/libstub/x86-stub.stub.o AR drivers/firmware/efi/libstub/lib.a CC drivers/firmware/efi/memmap.o CC [M] drivers/gpu/drm/i915/gt/intel_context_sseu.o CC [M] drivers/mmc/host/sdhci-pltfm.o CC [M] drivers/gpu/drm/xe/xe_mocs.o CC drivers/hid/hid-kensington.o CC drivers/hid/hid-lg.o CC drivers/acpi/acpica/utlock.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_gmc.o AR drivers/platform/x86/intel/pmc/built-in.a AR drivers/platform/x86/intel/built-in.a AR drivers/platform/x86/built-in.a AR drivers/platform/built-in.a CC [M] drivers/net/ethernet/intel/ixgbevf/ipsec.o CC [M] drivers/net/ethernet/intel/igc/igc_base.o CC [M] drivers/net/ethernet/intel/igb/e1000_i210.o CC fs/btrfs/transaction.o CC [M] drivers/gpu/drm/i915/gt/intel_engine_cs.o CC drivers/firmware/efi/esrt.o CC lib/bitrev.o LD [M] drivers/net/ethernet/intel/igbvf/igbvf.o CC [M] drivers/gpu/drm/drm_suballoc.o AR drivers/net/ethernet/realtek/built-in.a CC [M] drivers/net/ethernet/realtek/8139cp.o CC drivers/md/dm-stats.o CC [M] drivers/gpu/drm/nouveau/nvkm/falcon/v1.o CC [M] drivers/net/ethernet/realtek/8139too.o CC [M] drivers/gpu/drm/nouveau/nvkm/falcon/gm200.o CC kernel/seccomp.o CC drivers/acpi/acpica/utmath.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_82599.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_82598.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_phy.o CC kernel/relay.o CC drivers/firmware/efi/efi-pstore.o CC [M] drivers/net/ethernet/intel/igc/igc_nvm.o AR drivers/mmc/host/built-in.a AR drivers/mmc/built-in.a CC [M] drivers/net/ethernet/intel/igb/igb_ptp.o CC [M] drivers/net/ethernet/intel/igb/igb_hwmon.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_mmhub.o CC [M] fs/smb/client/cached_dir.o CC lib/crc16.o CC [M] fs/smb/client/cifs_unicode.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.o CC kernel/utsname_sysctl.o CC drivers/md/dm-rq.o CC fs/namespace.o CC fs/btrfs/inode.o AR drivers/net/ethernet/renesas/built-in.a CC drivers/hid/hid-lg-g15.o CC drivers/md/dm-io-rewind.o CC drivers/acpi/acpica/utmisc.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_hdp.o CC kernel/delayacct.o CC kernel/taskstats.o CC [M] fs/smb/client/nterr.o AR drivers/net/ethernet/sfc/built-in.a AR drivers/net/ethernet/smsc/built-in.a CC [M] drivers/net/ethernet/smsc/smsc9420.o CC lib/crc-t10dif.o AR drivers/net/ethernet/socionext/built-in.a AR drivers/net/ethernet/vertexcom/built-in.a CC [M] drivers/gpu/drm/xe/xe_module.o AR drivers/net/ethernet/wangxun/built-in.a AR drivers/net/ethernet/xilinx/built-in.a CC [M] drivers/gpu/drm/drm_gem_ttm_helper.o AR drivers/net/ethernet/synopsys/built-in.a AR drivers/net/ethernet/pensando/built-in.a CC [M] drivers/gpu/drm/drm_atomic_helper.o CC drivers/hid/hid-microsoft.o CC drivers/firmware/efi/cper.o CC [M] drivers/net/ethernet/intel/igc/igc_phy.o CC drivers/hid/hid-monterey.o CC [M] drivers/gpu/drm/i915/gt/intel_engine_heartbeat.o CC [M] drivers/net/ethernet/realtek/r8169_main.o CC [M] drivers/net/ethernet/intel/igc/igc_diag.o CC drivers/acpi/acpica/utmutex.o CC [M] drivers/net/ethernet/intel/igc/igc_ethtool.o CC [M] drivers/net/ethernet/intel/e1000e/ptp.o CC [M] drivers/net/ethernet/intel/igc/igc_ptp.o CC drivers/md/dm-builtin.o CC [M] drivers/gpu/drm/drm_atomic_state_helper.o CC [M] drivers/gpu/drm/nouveau/nvkm/falcon/gp102.o CC [M] drivers/gpu/drm/drm_bridge_connector.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_xgmi.o HOSTCC lib/gen_crc32table CC kernel/tsacct.o CC [M] drivers/md/dm-bufio.o CC lib/libcrc32c.o CC kernel/tracepoint.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_mbx.o CC drivers/acpi/acpica/utnonansi.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_x540.o CC [M] drivers/gpu/drm/xe/xe_pat.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_x550.o CC [M] fs/smb/client/cifsencrypt.o CC drivers/acpi/ac.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_csa.o CC kernel/latencytop.o CC kernel/irq_work.o CC [M] drivers/gpu/drm/xe/xe_pci.o CC [M] drivers/gpu/drm/i915/gt/intel_engine_pm.o CC drivers/firmware/efi/cper_cxl.o CC kernel/static_call.o LD [M] drivers/net/ethernet/intel/ixgbevf/ixgbevf.o AR drivers/hid/built-in.a CC [M] fs/smb/client/readdir.o CC drivers/devfreq/devfreq.o CC [M] drivers/gpu/drm/xe/xe_pcode.o CC lib/xxhash.o CC [M] fs/smb/client/ioctl.o CC drivers/firmware/efi/runtime-wrappers.o CC [M] drivers/devfreq/governor_simpleondemand.o CC drivers/acpi/acpica/utobject.o CC drivers/powercap/powercap_sys.o LD [M] drivers/net/ethernet/intel/igb/igb.o CC [M] drivers/gpu/drm/drm_crtc_helper.o AR drivers/perf/built-in.a CC drivers/ras/ras.o CC drivers/acpi/acpica/utosi.o CC [M] fs/smb/client/sess.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_lib.o CC drivers/acpi/button.o CC [M] drivers/gpu/drm/nouveau/nvkm/falcon/ga100.o CC drivers/ras/debugfs.o CC kernel/static_call_inline.o CC drivers/acpi/fan_core.o CC [M] fs/smb/client/export.o CC kernel/user-return-notifier.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_ptp.o CC [M] drivers/gpu/drm/i915/gt/intel_engine_user.o CC drivers/acpi/acpica/utownerid.o CC kernel/padata.o CC lib/genalloc.o CC [M] drivers/devfreq/governor_performance.o CC [M] fs/smb/client/unc.o CC lib/percpu_counter.o CC drivers/acpi/fan_attr.o CC kernel/jump_label.o CC [M] drivers/gpu/drm/i915/gt/intel_execlists_submission.o CC drivers/firmware/efi/dev-path-parser.o CC [M] drivers/net/ethernet/intel/igc/igc_dump.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_ras.o CC [M] drivers/gpu/drm/drm_damage_helper.o CC drivers/acpi/processor_driver.o CC [M] fs/smb/client/winucase.o CC [M] drivers/gpu/drm/nouveau/nvkm/falcon/ga102.o CC [M] drivers/gpu/drm/drm_encoder_slave.o CC drivers/firmware/efi/apple-properties.o CC drivers/acpi/acpica/utpredef.o CC drivers/powercap/intel_rapl_common.o CC drivers/powercap/intel_rapl_msr.o CC drivers/firmware/efi/earlycon.o CC [M] drivers/gpu/drm/xe/xe_pm.o CC [M] drivers/gpu/drm/drm_flip_work.o CC lib/fault-inject.o CC drivers/acpi/processor_thermal.o CC [M] drivers/gpu/drm/xe/xe_preempt_fence.o CC fs/btrfs/file.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/acr/base.o CC drivers/firmware/efi/cper-x86.o CC [M] drivers/gpu/drm/i915/gt/intel_ggtt.o CC drivers/acpi/processor_idle.o AR drivers/ras/built-in.a CC [M] fs/smb/client/smb2ops.o CC [M] drivers/gpu/drm/drm_format_helper.o CC drivers/acpi/processor_throttling.o CC [M] drivers/net/ethernet/intel/igc/igc_tsn.o CC [M] drivers/md/dm-bio-prison-v1.o CC [M] drivers/net/ethernet/intel/igc/igc_xdp.o LD [M] drivers/net/ethernet/intel/e1000e/e1000e.o CC drivers/acpi/processor_perflib.o CC drivers/acpi/acpica/utresdecode.o CC [M] drivers/gpu/drm/i915/gt/intel_ggtt_fencing.o CC [M] drivers/gpu/drm/drm_gem_atomic_helper.o CC [M] drivers/gpu/drm/drm_gem_framebuffer_helper.o CC [M] drivers/gpu/drm/i915/gt/intel_gt.o CC fs/seq_file.o CC kernel/context_tracking.o CC [M] drivers/gpu/drm/drm_kms_helper_common.o CC kernel/iomem.o AR drivers/devfreq/built-in.a CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.o CC [M] drivers/gpu/drm/i915/gt/intel_gt_buffer_pool.o CC [M] fs/smb/client/smb2maperror.o AR drivers/hwtracing/intel_th/built-in.a CC fs/xattr.o CC drivers/android/binderfs.o CC lib/syscall.o CC drivers/android/binder.o CC [M] fs/smb/client/smb2transport.o CC [M] drivers/md/dm-bio-prison-v2.o CC lib/dynamic_debug.o CC [M] drivers/gpu/drm/i915/gt/intel_gt_clock_utils.o CC [M] drivers/gpu/drm/i915/gt/intel_gt_debugfs.o CC [M] fs/smb/client/smb2misc.o AR drivers/nvmem/layouts/built-in.a CC drivers/nvmem/core.o AR drivers/firmware/efi/built-in.a CC [M] drivers/gpu/drm/i915/gt/intel_gt_engines_debugfs.o AR drivers/firmware/built-in.a CC [M] drivers/mtd/chips/chipreg.o CC drivers/acpi/acpica/utresrc.o CC [M] drivers/gpu/drm/i915/gt/intel_gt_irq.o CC [M] drivers/gpu/drm/i915/gt/intel_gt_mcr.o CC [M] drivers/gpu/drm/i915/gt/intel_gt_pm.o CC [M] drivers/uio/uio.o CC [M] drivers/gpu/drm/i915/gt/intel_gt_pm_debugfs.o CC [M] drivers/gpu/drm/xe/xe_pt.o CC [M] drivers/gpu/drm/i915/gt/intel_gt_pm_irq.o CC [M] drivers/net/ethernet/realtek/r8169_firmware.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_vm_cpu.o CC [M] drivers/gpu/drm/drm_modeset_helper.o CC [M] drivers/gpu/drm/xe/xe_pt_walk.o CC kernel/rseq.o AR drivers/powercap/built-in.a CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/acr/lsfw.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/acr/gm200.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/acr/gm20b.o CC [M] drivers/vfio/pci/vfio_pci_core.o CC lib/errname.o CC [M] drivers/vfio/pci/vfio_pci_intrs.o CC [M] drivers/md/dm-crypt.o CC drivers/acpi/acpica/utstate.o CC [M] drivers/vfio/vfio_main.o CC [M] drivers/gpu/drm/drm_plane_helper.o LD [M] drivers/net/ethernet/intel/igc/igc.o CC [M] drivers/bluetooth/btusb.o CC [M] drivers/bluetooth/btintel.o CC [M] drivers/pps/pps.o CC [M] drivers/mtd/mtdcore.o CC [M] drivers/bluetooth/btbcm.o CC [M] drivers/md/dm-thin.o CC [M] fs/smb/client/smb2pdu.o CC [M] drivers/net/ethernet/realtek/r8169_phy_config.o CC [M] drivers/gpu/drm/i915/gt/intel_gt_requests.o CC [M] drivers/gpu/drm/drm_probe_helper.o CC [M] drivers/gpu/drm/i915/gt/intel_gt_sysfs.o CC [M] drivers/bluetooth/btrtl.o CC drivers/android/binder_alloc.o CC drivers/acpi/acpica/utstring.o GZIP kernel/config_data.gz CC drivers/acpi/acpica/utstrsuppt.o CC drivers/acpi/container.o CC [M] fs/smb/client/smb2inode.o CC [M] fs/smb/client/smb2file.o CC fs/btrfs/defrag.o AR drivers/nvmem/built-in.a CC [M] drivers/gpu/drm/xe/xe_query.o CC [M] drivers/gpu/drm/i915/gt/intel_gt_sysfs_pm.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_dcb.o CC [M] drivers/md/dm-thin-metadata.o CC [M] drivers/gpu/drm/drm_rect.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/acr/gp102.o CC [M] drivers/gpu/drm/i915/gt/intel_gtt.o CC [M] drivers/mtd/mtdsuper.o CC [M] drivers/gpu/drm/i915/gt/intel_llc.o CC [M] drivers/pps/kapi.o CC kernel/configs.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_vm_sdma.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/acr/gp108.o CC [M] drivers/gpu/drm/i915/gt/intel_lrc.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_82598.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_82599.o CC [M] drivers/dca/dca-core.o CC [M] drivers/gpu/drm/i915/gt/intel_migrate.o CC lib/nlattr.o CC lib/checksum.o CC drivers/acpi/acpica/utstrtoul64.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_dcb_nl.o CC drivers/acpi/acpica/utxface.o CC [M] drivers/dca/dca-sysfs.o LD [M] drivers/net/ethernet/realtek/r8169.o CC drivers/acpi/thermal.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.o AR kernel/built-in.a CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_ras_eeprom.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_sysfs.o CC [M] drivers/gpu/drm/i915/gt/intel_mocs.o CC [M] drivers/pps/sysfs.o CC [M] drivers/gpu/drm/i915/gt/intel_ppgtt.o CC [M] drivers/gpu/drm/drm_self_refresh_helper.o CC [M] drivers/gpu/drm/drm_simple_kms_helper.o CC [M] drivers/ssb/main.o CC [M] drivers/mtd/mtdconcat.o CC drivers/acpi/acpica/utxfinit.o CC [M] drivers/vfio/pci/vfio_pci_rdwr.o CC [M] drivers/ssb/scan.o CC [M] drivers/vfio/iova_bitmap.o CC fs/btrfs/extent_map.o CC drivers/acpi/acpi_memhotplug.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/acr/gv100.o CC drivers/acpi/ioapic.o LD [M] drivers/dca/dca.o CC drivers/acpi/acpica/utxferror.o CC [M] drivers/mtd/mtdpart.o CC drivers/acpi/acpica/utxfmutex.o CC [M] drivers/gpu/drm/xe/xe_range_fence.o LD [M] drivers/pps/pps_core.o CC [M] drivers/gpu/drm/i915/gt/intel_rc6.o CC [M] drivers/vhost/net.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_nbio.o CC [M] drivers/vfio/pci/vfio_pci_config.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_debugfs.o CC [M] drivers/gpu/drm/i915/gt/intel_region_lmem.o CC [M] drivers/gpu/drm/xe/xe_reg_sr.o CC [M] drivers/ssb/sprom.o CC [M] fs/smb/client/cifsacl.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/acr/gp10b.o CC drivers/acpi/battery.o CC [M] drivers/gpu/drm/i915/gt/intel_renderstate.o CC lib/cpu_rmap.o CC [M] drivers/gpu/drm/bridge/panel.o CC [M] drivers/gpu/drm/drm_fbdev_generic.o CC lib/dynamic_queue_limits.o CC [M] drivers/gpu/drm/drm_fb_helper.o AR drivers/acpi/acpica/built-in.a CC drivers/acpi/hed.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_umc.o CC [M] drivers/gpu/drm/amd/amdgpu/smu_v11_0_i2c.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_fru_eeprom.o CC [M] drivers/vfio/group.o CC [M] drivers/gpu/drm/xe/xe_reg_whitelist.o CC [M] drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.o CC lib/glob.o CC fs/libfs.o CC [M] drivers/vfio/pci/vfio_pci.o CC [M] drivers/gpu/drm/i915/gt/intel_reset.o CC [M] drivers/mtd/mtdchar.o CC drivers/acpi/bgrt.o CC drivers/acpi/cppc_acpi.o CC fs/btrfs/sysfs.o CC [M] drivers/vhost/vhost.o CC fs/fs-writeback.o CC [M] drivers/gpu/drm/i915/gt/intel_ring.o CC [M] drivers/ssb/pci.o CC lib/strncpy_from_user.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/acr/tu102.o CC lib/strnlen_user.o CC [M] drivers/ssb/pcihost_wrapper.o LD [M] drivers/md/dm-bio-prison.o LD [M] drivers/md/dm-thin-pool.o CC lib/net_utils.o CC [M] drivers/vhost/iotlb.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/acr/ga100.o AR drivers/md/built-in.a CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_rap.o CC [M] drivers/gpu/drm/xe/xe_rtp.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/acr/ga102.o CC [M] drivers/gpu/drm/i915/gt/intel_ring_submission.o CC [M] drivers/gpu/drm/xe/xe_ring_ops.o CC [M] drivers/ssb/driver_chipcommon.o CC [M] drivers/ssb/driver_chipcommon_pmu.o CC [M] drivers/gpu/drm/xe/xe_sa.o CC [M] drivers/gpu/drm/i915/gt/intel_rps.o CC [M] drivers/vfio/container.o LD [M] drivers/vfio/pci/vfio-pci.o CC [M] drivers/vfio/virqfd.o CC [M] drivers/gpu/drm/xe/xe_sched_job.o CC drivers/acpi/spcr.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_fw_attestation.o CC lib/sg_pool.o CC [M] drivers/vfio/vfio_iommu_type1.o CC lib/stackdepot.o LD [M] drivers/vfio/pci/vfio-pci-core.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_securedisplay.o CC lib/ucs2_string.o CC [M] fs/smb/client/fs_context.o CC [M] drivers/ssb/driver_pcicore.o CC fs/pnode.o CC fs/splice.o CC fs/btrfs/accessors.o LD [M] drivers/vhost/vhost_iotlb.o CC [M] fs/smb/client/dns_resolve.o ASN.1 fs/smb/client/cifs_spnego_negtokeninit.asn1.[ch] CC [M] drivers/gpu/drm/xe/xe_step.o CC lib/sbitmap.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_eeprom.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_mca.o CC lib/group_cpus.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bar/base.o LD [M] drivers/mtd/mtd.o LD [M] drivers/vhost/vhost_net.o CC [M] lib/asn1_decoder.o CC fs/sync.o CC fs/utimes.o CC [M] drivers/gpu/drm/i915/gt/intel_sa_media.o CC fs/d_path.o CC [M] drivers/gpu/drm/xe/xe_sync.o CC drivers/acpi/acpi_pad.o GEN lib/oid_registry_data.c CC [M] fs/smb/client/namespace.o CC [M] drivers/gpu/drm/i915/gt/intel_sseu.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bar/nv50.o CC [M] lib/oid_registry.o CC [M] drivers/gpu/drm/xe/xe_tile.o CC fs/stack.o CC [M] fs/smb/client/smb1ops.o CC [M] fs/smb/client/cifssmb.o CC [M] drivers/gpu/drm/xe/xe_tile_sysfs.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_psp_ta.o AR lib/lib.a LD [M] drivers/gpu/drm/drm.o LD [M] drivers/gpu/drm/drm_shmem_helper.o LD [M] drivers/gpu/drm/drm_suballoc_helper.o LD [M] drivers/net/ethernet/intel/ixgbe/ixgbe.o LD [M] drivers/gpu/drm/drm_ttm_helper.o CC fs/btrfs/xattr.o LD [M] drivers/gpu/drm/drm_kms_helper.o AR drivers/android/built-in.a CC [M] fs/smb/client/cifs_spnego_negtokeninit.asn1.o CC fs/fs_struct.o CC [M] fs/smb/client/asn1.o LD [M] drivers/ssb/ssb.o CC fs/statfs.o AR drivers/gpu/drm/built-in.a CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_lsdma.o CC fs/fs_pin.o CC fs/btrfs/ordered-data.o AR drivers/net/ethernet/built-in.a CC fs/btrfs/extent_io.o CC fs/nsfs.o GEN lib/crc32table.h CC lib/crc32.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_ring_mux.o CC [M] drivers/gpu/drm/xe/xe_trace.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_xcp.o AR drivers/net/built-in.a CC [M] drivers/gpu/drm/xe/xe_ttm_sys_mgr.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_fdinfo.o CC [M] drivers/gpu/drm/i915/gt/intel_sseu_debugfs.o CC fs/fs_types.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bar/g84.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bar/gf100.o CC fs/btrfs/volumes.o CC [M] drivers/acpi/acpi_video.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_pmu.o CC [M] drivers/gpu/drm/amd/amdgpu/cik.o CC [M] drivers/acpi/video_detect.o LD [M] drivers/vfio/vfio.o CC fs/fs_context.o CC [M] drivers/gpu/drm/xe/xe_ttm_stolen_mgr.o CC [M] drivers/gpu/drm/xe/xe_ttm_vram_mgr.o CC [M] drivers/gpu/drm/xe/xe_tuning.o CC [M] drivers/gpu/drm/xe/xe_uc.o CC [M] drivers/gpu/drm/i915/gt/intel_timeline.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bar/gk20a.o CC [M] drivers/gpu/drm/i915/gt/intel_tlb.o CC fs/fs_parser.o CC fs/fsopen.o CC [M] drivers/gpu/drm/amd/amdgpu/cik_ih.o CC fs/btrfs/async-thread.o AR lib/built-in.a CC fs/btrfs/ioctl.o CC fs/init.o CC [M] drivers/gpu/drm/amd/amdgpu/dce_v8_0.o CC [M] drivers/gpu/drm/xe/xe_uc_debugfs.o CC [M] drivers/gpu/drm/amd/amdgpu/gfx_v7_0.o CC [M] drivers/gpu/drm/xe/xe_uc_fw.o CC [M] drivers/gpu/drm/i915/gt/intel_wopcm.o CC [M] drivers/gpu/drm/amd/amdgpu/cik_sdma.o CC [M] drivers/gpu/drm/i915/gt/intel_workarounds.o CC fs/kernel_read_file.o CC fs/btrfs/locking.o CC [M] drivers/gpu/drm/xe/xe_vm.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bar/gm107.o CC fs/btrfs/orphan.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bar/gm20b.o CC [M] drivers/gpu/drm/xe/xe_wait_user_fence.o CC [M] drivers/gpu/drm/amd/amdgpu/uvd_v4_2.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bar/tu102.o CC [M] drivers/gpu/drm/i915/gt/shmem_utils.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/base.o AR drivers/acpi/built-in.a CC [M] drivers/gpu/drm/amd/amdgpu/vce_v2_0.o CC [M] drivers/gpu/drm/amd/amdgpu/si.o CC [M] drivers/gpu/drm/xe/xe_wa.o CC [M] drivers/gpu/drm/amd/amdgpu/gmc_v6_0.o CC [M] drivers/gpu/drm/xe/xe_wopcm.o CC [M] drivers/gpu/drm/i915/gt/sysfs_engines.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/bit.o CC fs/mnt_idmapping.o CC [M] drivers/gpu/drm/xe/xe_hwmon.o CC fs/remap_range.o CC fs/buffer.o CC [M] drivers/gpu/drm/xe/xe_sriov.o CC [M] drivers/gpu/drm/xe/xe_lmtt.o CC fs/mpage.o CC [M] drivers/gpu/drm/xe/xe_lmtt_2l.o CC [M] drivers/gpu/drm/amd/amdgpu/gfx_v6_0.o CC fs/proc_namespace.o CC [M] drivers/gpu/drm/amd/amdgpu/si_ih.o CC [M] drivers/gpu/drm/xe/xe_lmtt_ml.o CC [M] drivers/gpu/drm/xe/xe_display.o CC fs/btrfs/export.o LD [M] drivers/acpi/video.o CC fs/direct-io.o CC fs/btrfs/tree-log.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/boost.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/conn.o CC [M] drivers/gpu/drm/amd/amdgpu/si_dma.o CC [M] drivers/gpu/drm/xe/display/xe_fb_pin.o CC fs/eventpoll.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/cstep.o CC [M] drivers/gpu/drm/i915/gt/intel_ggtt_gmch.o CC [M] drivers/gpu/drm/xe/display/xe_hdcp_gsc.o CC fs/anon_inodes.o CC [M] drivers/gpu/drm/xe/display/xe_plane_initial.o CC [M] drivers/gpu/drm/i915/gt/gen6_renderstate.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/dcb.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/disp.o CC [M] drivers/gpu/drm/xe/display/xe_display_rps.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/dp.o CC [M] drivers/gpu/drm/xe/display/xe_display_misc.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/extdev.o CC [M] drivers/gpu/drm/xe/display/xe_dsb_buffer.o CC [M] drivers/gpu/drm/amd/amdgpu/dce_v6_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/fan.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/gpio.o CC [M] drivers/gpu/drm/amd/amdgpu/uvd_v3_1.o CC [M] drivers/gpu/drm/amd/amdgpu/vi.o CC [M] drivers/gpu/drm/i915/gt/gen7_renderstate.o CC [M] drivers/gpu/drm/amd/amdgpu/mxgpu_vi.o CC [M] drivers/gpu/drm/xe/display/intel_fbdev_fb.o CC [M] drivers/gpu/drm/i915/gt/gen8_renderstate.o CC [M] drivers/gpu/drm/amd/amdgpu/nbio_v6_1.o CC fs/signalfd.o CC [M] drivers/gpu/drm/i915/gt/gen9_renderstate.o CC [M] drivers/gpu/drm/amd/amdgpu/soc15.o CC [M] drivers/gpu/drm/amd/amdgpu/emu_soc.o CC fs/timerfd.o CC fs/eventfd.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/i2c.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_busy.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/iccsense.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/image.o CC [M] drivers/gpu/drm/xe/display/intel_fb_bo.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/init.o CC fs/btrfs/free-space-cache.o CC [M] drivers/gpu/drm/amd/amdgpu/mxgpu_ai.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_clflush.o CC fs/btrfs/zlib.o CC [M] drivers/gpu/drm/xe/display/ext/i915_irq.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/mxm.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_context.o CC [M] drivers/gpu/drm/xe/display/ext/i915_utils.o CC [M] drivers/gpu/drm/xe/i915-soc/intel_dram.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/npde.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/pcir.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/perf.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_create.o CC fs/userfaultfd.o CC [M] drivers/gpu/drm/xe/i915-soc/intel_pch.o CC fs/aio.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/pll.o CC [M] drivers/gpu/drm/xe/i915-display/icl_dsi.o CC [M] drivers/gpu/drm/xe/i915-display/intel_atomic.o CC [M] drivers/gpu/drm/amd/amdgpu/nbio_v7_0.o CC fs/btrfs/lzo.o CC fs/locks.o CC [M] drivers/gpu/drm/xe/i915-display/intel_atomic_plane.o CC [M] drivers/gpu/drm/amd/amdgpu/vega10_reg_init.o CC fs/binfmt_script.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/pmu.o CC [M] drivers/gpu/drm/amd/amdgpu/vega20_reg_init.o CC [M] drivers/gpu/drm/amd/amdgpu/nbio_v7_4.o CC [M] drivers/gpu/drm/xe/i915-display/intel_audio.o CC fs/btrfs/zstd.o LD [M] fs/smb/client/cifs.o CC fs/binfmt_elf.o CC [M] drivers/gpu/drm/amd/amdgpu/nbio_v2_3.o CC fs/btrfs/compression.o CC [M] drivers/gpu/drm/xe/i915-display/intel_backlight.o CC fs/compat_binfmt_elf.o CC fs/btrfs/delayed-ref.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/power_budget.o CC [M] drivers/gpu/drm/xe/i915-display/intel_bios.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/ramcfg.o CC [M] drivers/gpu/drm/xe/i915-display/intel_bw.o CC fs/mbcache.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/rammap.o CC [M] drivers/gpu/drm/xe/i915-display/intel_cdclk.o CC fs/posix_acl.o CC fs/coredump.o CC [M] drivers/gpu/drm/amd/amdgpu/nv.o CC fs/drop_caches.o CC [M] drivers/gpu/drm/xe/i915-display/intel_color.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_dmabuf.o CC [M] drivers/gpu/drm/xe/i915-display/intel_combo_phy.o CC [M] drivers/gpu/drm/amd/amdgpu/arct_reg_init.o CC [M] drivers/gpu/drm/amd/amdgpu/mxgpu_nv.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadow.o CC fs/sysctls.o CC [M] drivers/gpu/drm/xe/i915-display/intel_connector.o CC fs/btrfs/relocation.o CC [M] drivers/gpu/drm/amd/amdgpu/nbio_v7_2.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_domain.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowacpi.o CC [M] drivers/gpu/drm/amd/amdgpu/hdp_v4_0.o CC fs/btrfs/delayed-inode.o CC fs/fhandle.o CC fs/btrfs/scrub.o CC [M] drivers/gpu/drm/xe/i915-display/intel_crtc.o CC fs/btrfs/backref.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowof.o CC fs/btrfs/ulist.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_execbuffer.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_internal.o CC [M] drivers/gpu/drm/amd/amdgpu/hdp_v5_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowpci.o CC [M] drivers/gpu/drm/amd/amdgpu/aldebaran_reg_init.o CC [M] drivers/gpu/drm/xe/i915-display/intel_crtc_state_dump.o CC fs/btrfs/qgroup.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowramin.o CC fs/btrfs/send.o CC fs/btrfs/dev-replace.o CC [M] drivers/gpu/drm/amd/amdgpu/aldebaran.o CC [M] drivers/gpu/drm/amd/amdgpu/soc21.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowrom.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/timing.o CC [M] drivers/gpu/drm/amd/amdgpu/sienna_cichlid.o CC [M] drivers/gpu/drm/xe/i915-display/intel_cursor.o CC [M] drivers/gpu/drm/xe/i915-display/intel_cx0_phy.o CC [M] drivers/gpu/drm/xe/i915-display/intel_ddi.o CC [M] drivers/gpu/drm/xe/i915-display/intel_ddi_buf_trans.o CC fs/btrfs/raid56.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/therm.o CC [M] drivers/gpu/drm/amd/amdgpu/smu_v13_0_10.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/vmap.o CC [M] drivers/gpu/drm/amd/amdgpu/nbio_v4_3.o CC [M] drivers/gpu/drm/amd/amdgpu/hdp_v6_0.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_debugfs.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/volt.o CC [M] drivers/gpu/drm/amd/amdgpu/nbio_v7_7.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_object.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_lmem.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_debugfs_params.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/vpstate.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_mman.o CC fs/btrfs/uuid-tree.o CC fs/btrfs/props.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_pages.o CC fs/btrfs/free-space-tree.o CC [M] drivers/gpu/drm/amd/amdgpu/hdp_v5_2.o CC fs/btrfs/tree-checker.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_device.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/xpio.o CC [M] drivers/gpu/drm/amd/amdgpu/lsdma_v6_0.o CC [M] drivers/gpu/drm/amd/amdgpu/nbio_v7_9.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/M0203.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_driver.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/M0205.o CC [M] drivers/gpu/drm/amd/amdgpu/aqua_vanjaram.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_irq.o CC [M] drivers/gpu/drm/amd/amdgpu/df_v1_7.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_params.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/M0209.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bios/P0260.o CC [M] drivers/gpu/drm/amd/amdgpu/df_v3_6.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bus/base.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bus/hwsq.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_power.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_power_map.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bus/nv04.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_power_well.o CC [M] drivers/gpu/drm/amd/amdgpu/df_v4_3.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_trace.o CC fs/btrfs/space-info.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bus/nv31.o CC fs/btrfs/block-rsv.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_phys.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bus/nv50.o CC [M] drivers/gpu/drm/amd/amdgpu/gmc_v7_0.o CC fs/btrfs/delalloc-space.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_pm.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bus/g94.o CC fs/btrfs/block-group.o CC [M] drivers/gpu/drm/amd/amdgpu/gmc_v8_0.o CC fs/btrfs/discard.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_region.o CC fs/btrfs/reflink.o CC [M] drivers/gpu/drm/amd/amdgpu/gfxhub_v1_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/bus/gf100.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/clk/base.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_wa.o CC fs/btrfs/subpage.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dkl_phy.o CC [M] drivers/gpu/drm/amd/amdgpu/mmhub_v1_0.o CC [M] drivers/gpu/drm/amd/amdgpu/gmc_v9_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/clk/nv04.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_shmem.o CC [M] drivers/gpu/drm/amd/amdgpu/gfxhub_v1_1.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/clk/nv40.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/clk/nv50.o CC [M] drivers/gpu/drm/amd/amdgpu/mmhub_v9_4.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dmc.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/clk/g84.o CC fs/btrfs/tree-mod-log.o CC [M] drivers/gpu/drm/amd/amdgpu/gfxhub_v2_0.o CC [M] drivers/gpu/drm/amd/amdgpu/mmhub_v2_0.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dp.o CC fs/btrfs/extent-io-tree.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/clk/gt215.o CC fs/btrfs/fs.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dp_aux.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/clk/mcp77.o CC fs/btrfs/messages.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_shrinker.o CC fs/btrfs/bio.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/clk/gf100.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dp_aux_backlight.o CC fs/btrfs/lru_cache.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/clk/gk104.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_stolen.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_throttle.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/clk/gk20a.o CC fs/btrfs/acl.o CC [M] drivers/gpu/drm/amd/amdgpu/gmc_v10_0.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_tiling.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_ttm.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/clk/gm20b.o CC [M] drivers/gpu/drm/amd/amdgpu/gfxhub_v2_1.o CC [M] drivers/gpu/drm/amd/amdgpu/mmhub_v2_3.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/clk/pllnv04.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dp_hdcp.o CC [M] drivers/gpu/drm/amd/amdgpu/mmhub_v1_7.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dp_link_training.o CC [M] drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0.o CC [M] drivers/gpu/drm/amd/amdgpu/mmhub_v3_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/clk/pllgt215.o CC [M] drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_2.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dp_mst.o CC [M] drivers/gpu/drm/amd/amdgpu/gmc_v11_0.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_ttm_move.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/devinit/base.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_ttm_pm.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_userptr.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv04.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dpll.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dpll_mgr.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dpt_common.o CC [M] drivers/gpu/drm/xe/i915-display/intel_drrs.o CC [M] drivers/gpu/drm/amd/amdgpu/mmhub_v3_0_1.o CC [M] drivers/gpu/drm/amd/amdgpu/gfxhub_v3_0_3.o CC [M] drivers/gpu/drm/amd/amdgpu/gfxhub_v1_2.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv05.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dsb.o CC [M] drivers/gpu/drm/amd/amdgpu/mmhub_v1_8.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dsi.o CC [M] drivers/gpu/drm/amd/amdgpu/umc_v6_0.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dsi_dcs_backlight.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv10.o CC [M] drivers/gpu/drm/i915/gem/i915_gem_wait.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv1a.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv20.o CC [M] drivers/gpu/drm/amd/amdgpu/umc_v6_1.o CC [M] drivers/gpu/drm/i915/gem/i915_gemfs.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/devinit/nv50.o CC [M] drivers/gpu/drm/i915/i915_active.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/devinit/g84.o CC [M] drivers/gpu/drm/amd/amdgpu/umc_v6_7.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/devinit/g98.o CC [M] drivers/gpu/drm/i915/i915_cmd_parser.o CC [M] drivers/gpu/drm/i915/i915_deps.o CC [M] drivers/gpu/drm/i915/i915_gem_evict.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dsi_vbt.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/devinit/gt215.o CC [M] drivers/gpu/drm/xe/i915-display/intel_fb.o CC [M] drivers/gpu/drm/amd/amdgpu/umc_v8_7.o CC [M] drivers/gpu/drm/i915/i915_gem_gtt.o CC [M] drivers/gpu/drm/amd/amdgpu/umc_v8_10.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/devinit/mcp89.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/devinit/gf100.o CC [M] drivers/gpu/drm/xe/i915-display/intel_fbc.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_irq.o CC [M] drivers/gpu/drm/i915/i915_gem_ww.o CC [M] drivers/gpu/drm/i915/i915_gem.o CC [M] drivers/gpu/drm/i915/i915_query.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_ih.o AR fs/btrfs/built-in.a CC [M] drivers/gpu/drm/xe/i915-display/intel_fdi.o AR fs/built-in.a CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/devinit/gm107.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/devinit/gm200.o CC [M] drivers/gpu/drm/xe/i915-display/intel_fifo_underrun.o CC [M] drivers/gpu/drm/i915/i915_request.o CC [M] drivers/gpu/drm/xe/i915-display/intel_frontbuffer.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/devinit/gv100.o CC [M] drivers/gpu/drm/amd/amdgpu/iceland_ih.o CC [M] drivers/gpu/drm/amd/amdgpu/tonga_ih.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/devinit/tu102.o CC [M] drivers/gpu/drm/xe/i915-display/intel_global_state.o CC [M] drivers/gpu/drm/amd/amdgpu/cz_ih.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/devinit/ga100.o CC [M] drivers/gpu/drm/xe/i915-display/intel_gmbus.o CC [M] drivers/gpu/drm/xe/i915-display/intel_hdcp.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fault/base.o CC [M] drivers/gpu/drm/amd/amdgpu/vega10_ih.o CC [M] drivers/gpu/drm/i915/i915_scheduler.o CC [M] drivers/gpu/drm/amd/amdgpu/vega20_ih.o CC [M] drivers/gpu/drm/i915/i915_trace_points.o CC [M] drivers/gpu/drm/amd/amdgpu/navi10_ih.o CC [M] drivers/gpu/drm/amd/amdgpu/ih_v6_0.o CC [M] drivers/gpu/drm/i915/i915_ttm_buddy_manager.o CC [M] drivers/gpu/drm/xe/i915-display/intel_hdmi.o CC [M] drivers/gpu/drm/xe/i915-display/intel_hotplug.o CC [M] drivers/gpu/drm/amd/amdgpu/ih_v6_1.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_psp.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fault/user.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fault/gp100.o CC [M] drivers/gpu/drm/amd/amdgpu/psp_v3_1.o CC [M] drivers/gpu/drm/amd/amdgpu/psp_v10_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fault/gp10b.o CC [M] drivers/gpu/drm/i915/i915_vma.o CC [M] drivers/gpu/drm/xe/i915-display/intel_hotplug_irq.o CC [M] drivers/gpu/drm/i915/i915_vma_resource.o CC [M] drivers/gpu/drm/amd/amdgpu/psp_v11_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fault/gv100.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fault/tu102.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/base.o CC [M] drivers/gpu/drm/amd/amdgpu/psp_v11_0_8.o CC [M] drivers/gpu/drm/xe/i915-display/intel_hti.o CC [M] drivers/gpu/drm/amd/amdgpu/psp_v12_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv04.o CC [M] drivers/gpu/drm/amd/amdgpu/psp_v13_0.o CC [M] drivers/gpu/drm/amd/amdgpu/psp_v13_0_4.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_gsc_fw.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_gsc_proxy.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv10.o CC [M] drivers/gpu/drm/xe/i915-display/intel_link_bw.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv1a.o CC [M] drivers/gpu/drm/amd/amdgpu/dce_v10_0.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_gsc_uc.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_debugfs.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_gsc_uc_heci_cmd_submit.o CC [M] drivers/gpu/drm/amd/amdgpu/dce_v11_0.o CC [M] drivers/gpu/drm/xe/i915-display/intel_lspcon.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv20.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv25.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_gfx.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_rlc.o CC [M] drivers/gpu/drm/xe/i915-display/intel_modeset_lock.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv30.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_guc.o CC [M] drivers/gpu/drm/xe/i915-display/intel_modeset_setup.o CC [M] drivers/gpu/drm/amd/amdgpu/gfx_v8_0.o CC [M] drivers/gpu/drm/xe/i915-display/intel_modeset_verify.o CC [M] drivers/gpu/drm/xe/i915-display/intel_panel.o CC [M] drivers/gpu/drm/xe/i915-display/intel_pipe_crc.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv35.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv36.o CC [M] drivers/gpu/drm/amd/amdgpu/gfx_v9_0.o CC [M] drivers/gpu/drm/xe/i915-display/intel_pmdemand.o CC [M] drivers/gpu/drm/amd/amdgpu/gfx_v9_4.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_guc_ads.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv40.o CC [M] drivers/gpu/drm/xe/i915-display/intel_pps.o CC [M] drivers/gpu/drm/amd/amdgpu/gfx_v9_4_2.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv41.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv44.o CC [M] drivers/gpu/drm/xe/i915-display/intel_psr.o CC [M] drivers/gpu/drm/amd/amdgpu/gfx_v9_4_3.o CC [M] drivers/gpu/drm/amd/amdgpu/gfx_v10_0.o CC [M] drivers/gpu/drm/xe/i915-display/intel_qp_tables.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_guc_capture.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_guc_ct.o CC [M] drivers/gpu/drm/amd/amdgpu/imu_v11_0.o CC [M] drivers/gpu/drm/amd/amdgpu/gfx_v11_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv46.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv47.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv49.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_guc_debugfs.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_guc_fw.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_guc_hwconfig.o CC [M] drivers/gpu/drm/amd/amdgpu/gfx_v11_0_3.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_guc_log.o CC [M] drivers/gpu/drm/xe/i915-display/intel_quirks.o CC [M] drivers/gpu/drm/xe/i915-display/intel_snps_phy.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv4e.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/nv50.o CC [M] drivers/gpu/drm/amd/amdgpu/imu_v11_0_3.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_guc_log_debugfs.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/g84.o CC [M] drivers/gpu/drm/xe/i915-display/intel_tc.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.o CC [M] drivers/gpu/drm/xe/i915-display/intel_vblank.o CC [M] drivers/gpu/drm/amd/amdgpu/sdma_v2_4.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/gt215.o CC [M] drivers/gpu/drm/xe/i915-display/intel_vdsc.o CC [M] drivers/gpu/drm/xe/i915-display/intel_vga.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/mcp77.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_guc_rc.o CC [M] drivers/gpu/drm/xe/i915-display/intel_vrr.o CC [M] drivers/gpu/drm/xe/i915-display/intel_wm.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/mcp89.o CC [M] drivers/gpu/drm/amd/amdgpu/sdma_v3_0.o CC [M] drivers/gpu/drm/xe/i915-display/skl_scaler.o CC [M] drivers/gpu/drm/xe/i915-display/skl_universal_plane.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/gf100.o CC [M] drivers/gpu/drm/amd/amdgpu/sdma_v4_0.o CC [M] drivers/gpu/drm/xe/i915-display/skl_watermark.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_guc_slpc.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/gf108.o CC [M] drivers/gpu/drm/amd/amdgpu/sdma_v4_4.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk104.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk110.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/gk20a.o CC [M] drivers/gpu/drm/xe/xe_pmu.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm107.o CC [M] drivers/gpu/drm/amd/amdgpu/sdma_v4_4_2.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_guc_submission.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm200.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/gm20b.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/gp100.o CC [M] drivers/gpu/drm/xe/i915-display/intel_acpi.o CC [M] drivers/gpu/drm/xe/i915-display/intel_opregion.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/gp102.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_huc.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/gp10b.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_huc_debugfs.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/gv100.o CC [M] drivers/gpu/drm/amd/amdgpu/sdma_v5_0.o CC [M] drivers/gpu/drm/amd/amdgpu/sdma_v5_2.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/tu102.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_huc_fw.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ga100.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_uc.o CC [M] drivers/gpu/drm/xe/i915-display/intel_fbdev.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_uc_debugfs.o CC [M] drivers/gpu/drm/xe/xe_gsc.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ga102.o CC [M] drivers/gpu/drm/xe/xe_guc.o HDRTEST drivers/gpu/drm/xe/abi/guc_klvs_abi.h HDRTEST drivers/gpu/drm/xe/abi/gsc_command_header_abi.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ram.o HDRTEST drivers/gpu/drm/xe/abi/guc_errors_abi.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv04.o HDRTEST drivers/gpu/drm/xe/abi/guc_actions_slpc_abi.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv10.o HDRTEST drivers/gpu/drm/xe/abi/gsc_mkhi_commands_abi.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv1a.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv20.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv40.o CC [M] drivers/gpu/drm/i915/gt/uc/intel_uc_fw.o CC [M] drivers/gpu/drm/amd/amdgpu/sdma_v6_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv41.o CC [M] drivers/gpu/drm/i915/gt/intel_gsc.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_mes.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv44.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv49.o HDRTEST drivers/gpu/drm/xe/abi/gsc_pxp_commands_abi.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv4e.o HDRTEST drivers/gpu/drm/xe/abi/guc_communication_mmio_abi.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramnv50.o HDRTEST drivers/gpu/drm/xe/abi/guc_actions_abi.h CC [M] drivers/gpu/drm/i915/i915_hwmon.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgt215.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/rammcp77.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf100.o HDRTEST drivers/gpu/drm/xe/abi/guc_communication_ctb_abi.h HDRTEST drivers/gpu/drm/xe/abi/guc_messages_abi.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_gem.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgf108.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgk104.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_vma_types.h CC [M] drivers/gpu/drm/amd/amdgpu/mes_v10_1.o CC [M] drivers/gpu/drm/i915/display/hsw_ips.o CC [M] drivers/gpu/drm/amd/amdgpu/mes_v11_0.o CC [M] drivers/gpu/drm/i915/display/intel_atomic.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_irq.h CC [M] drivers/gpu/drm/i915/display/intel_atomic_plane.o CC [M] drivers/gpu/drm/i915/display/intel_audio.o CC [M] drivers/gpu/drm/i915/display/intel_bios.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgm107.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/vlv_sideband_reg.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_wakeref.h CC [M] drivers/gpu/drm/i915/display/intel_bw.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgm200.o CC [M] drivers/gpu/drm/amd/amdgpu/uvd_v5_0.o CC [M] drivers/gpu/drm/amd/amdgpu/uvd_v6_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgp100.o CC [M] drivers/gpu/drm/amd/amdgpu/uvd_v7_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgp102.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_pcode.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/sddr2.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/sddr3.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/gddr3.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fb/gddr5.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fuse/base.o CC [M] drivers/gpu/drm/i915/display/intel_cdclk.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fuse/nv50.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gf100.o CC [M] drivers/gpu/drm/i915/display/intel_color.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_vce.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_reg_defs.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_trace.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/fuse/gm107.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_reg.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_active_types.h CC [M] drivers/gpu/drm/amd/amdgpu/vce_v3_0.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_utils.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/gpio/base.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/gpio/nv10.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_config.h CC [M] drivers/gpu/drm/amd/amdgpu/vce_v4_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/gpio/nv50.o CC [M] drivers/gpu/drm/i915/display/intel_combo_phy.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/gpio/g94.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_vma.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/gpio/gf119.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/gpio/gk104.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/gpio/ga102.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_vcn.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/gsp/base.o CC [M] drivers/gpu/drm/i915/display/intel_connector.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/gsp/gv100.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/gsp/ga102.o CC [M] drivers/gpu/drm/i915/display/intel_crtc.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/vlv_sideband.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/base.o CC [M] drivers/gpu/drm/amd/amdgpu/vcn_sw_ring.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_gem_stolen.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_mchbar_regs.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/nv04.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/nv4e.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_debugfs.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_gpu_error.h CC [M] drivers/gpu/drm/amd/amdgpu/vcn_v1_0.o CC [M] drivers/gpu/drm/amd/amdgpu/vcn_v2_0.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/soc/intel_pch.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/nv50.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/soc/intel_dram.h CC [M] drivers/gpu/drm/i915/display/intel_crtc_state_dump.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/g94.o CC [M] drivers/gpu/drm/amd/amdgpu/vcn_v2_5.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/soc/intel_gmch.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_vgpu.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_fixed.h CC [M] drivers/gpu/drm/amd/amdgpu/vcn_v3_0.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_runtime_pm.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_uncore.h CC [M] drivers/gpu/drm/amd/amdgpu/vcn_v4_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gf117.o CC [M] drivers/gpu/drm/amd/amdgpu/vcn_v4_0_3.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gf119.o CC [M] drivers/gpu/drm/i915/display/intel_cursor.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gk104.o CC [M] drivers/gpu/drm/i915/display/intel_display.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_jpeg.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gk110.o CC [M] drivers/gpu/drm/i915/display/intel_display_driver.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/gm200.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_step.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/pad.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_uc_fw.h CC [M] drivers/gpu/drm/i915/display/intel_display_irq.o CC [M] drivers/gpu/drm/amd/amdgpu/jpeg_v1_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padnv04.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padnv4e.o CC [M] drivers/gpu/drm/amd/amdgpu/jpeg_v2_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padnv50.o CC [M] drivers/gpu/drm/amd/amdgpu/jpeg_v2_5.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padg94.o CC [M] drivers/gpu/drm/amd/amdgpu/jpeg_v3_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padgf119.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/padgm200.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/bus.o CC [M] drivers/gpu/drm/amd/amdgpu/jpeg_v4_0.o CC [M] drivers/gpu/drm/amd/amdgpu/jpeg_v4_0_3.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busnv04.o CC [M] drivers/gpu/drm/amd/amdgpu/athub_v1_0.o CC [M] drivers/gpu/drm/amd/amdgpu/athub_v2_0.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_pci_config.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busnv4e.o CC [M] drivers/gpu/drm/i915/display/intel_display_params.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/gem/i915_gem_lmem.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/gem/i915_gem_mman.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busnv50.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/busgf119.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/bit.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/aux.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/gem/i915_gem_object.h CC [M] drivers/gpu/drm/amd/amdgpu/athub_v2_1.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxg94.o CC [M] drivers/gpu/drm/i915/display/intel_display_power.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/gem/i915_gem_object_frontbuffer.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/gt/intel_rps.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_clock_gating.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_gt_types.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxgf119.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/pxp/intel_pxp.h CC [M] drivers/gpu/drm/amd/amdgpu/athub_v3_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/auxgm200.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_active.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/i2c/anx9805.o HDRTEST drivers/gpu/drm/xe/display/intel_fb_bo.h CC [M] drivers/gpu/drm/amd/amdgpu/smuio_v9_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/iccsense/base.o CC [M] drivers/gpu/drm/i915/display/intel_display_power_map.o CC [M] drivers/gpu/drm/amd/amdgpu/smuio_v11_0.o CC [M] drivers/gpu/drm/i915/display/intel_display_power_well.o CC [M] drivers/gpu/drm/i915/display/intel_display_reset.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/iccsense/gf100.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/instmem/base.o HDRTEST drivers/gpu/drm/xe/display/intel_fbdev_fb.h HDRTEST drivers/gpu/drm/xe/instructions/xe_instr_defs.h HDRTEST drivers/gpu/drm/xe/instructions/xe_gsc_commands.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv04.o HDRTEST drivers/gpu/drm/xe/instructions/xe_gfxpipe_commands.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv40.o CC [M] drivers/gpu/drm/i915/display/intel_display_rps.o HDRTEST drivers/gpu/drm/xe/instructions/xe_mi_commands.h CC [M] drivers/gpu/drm/i915/display/intel_display_wa.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/instmem/nv50.o CC [M] drivers/gpu/drm/amd/amdgpu/smuio_v11_0_6.o CC [M] drivers/gpu/drm/i915/display/intel_dmc.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/instmem/gk20a.o CC [M] drivers/gpu/drm/amd/amdgpu/smuio_v13_0.o CC [M] drivers/gpu/drm/amd/amdgpu/smuio_v13_0_3.o HDRTEST drivers/gpu/drm/xe/regs/xe_gsc_regs.h CC [M] drivers/gpu/drm/amd/amdgpu/smuio_v13_0_6.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_reset.o CC [M] drivers/gpu/drm/amd/amdgpu/mca_v3_0.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.o HDRTEST drivers/gpu/drm/xe/regs/xe_reg_defs.h CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_module.o HDRTEST drivers/gpu/drm/xe/regs/xe_guc_regs.h CC [M] drivers/gpu/drm/i915/display/intel_dpio_phy.o HDRTEST drivers/gpu/drm/xe/regs/xe_gt_regs.h HDRTEST drivers/gpu/drm/xe/regs/xe_regs.h CC [M] drivers/gpu/drm/i915/display/intel_dpll.o HDRTEST drivers/gpu/drm/xe/regs/xe_gpu_commands.h CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_chardev.o HDRTEST drivers/gpu/drm/xe/regs/xe_sriov_regs.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/ltc/base.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gf100.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gk104.o HDRTEST drivers/gpu/drm/xe/regs/xe_lrc_layout.h HDRTEST drivers/gpu/drm/xe/regs/xe_mchbar_regs.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gm107.o HDRTEST drivers/gpu/drm/xe/regs/xe_engine_regs.h CC [M] drivers/gpu/drm/i915/display/intel_dpll_mgr.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gm200.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_topology.o HDRTEST drivers/gpu/drm/xe/tests/xe_test.h CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_pasid.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gp100.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gp102.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_doorbell.o CC [M] drivers/gpu/drm/i915/display/intel_dpt.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/ltc/gp10b.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/ltc/ga102.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mc/base.o CC [M] drivers/gpu/drm/i915/display/intel_dpt_common.o CC [M] drivers/gpu/drm/i915/display/intel_drrs.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv04.o HDRTEST drivers/gpu/drm/xe/tests/xe_pci_test.h HDRTEST drivers/gpu/drm/xe/tests/xe_migrate_test.h CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_flat_memory.o HDRTEST drivers/gpu/drm/xe/tests/xe_dma_buf_test.h CC [M] drivers/gpu/drm/i915/display/intel_dsb.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_process.o HDRTEST drivers/gpu/drm/xe/tests/xe_mocs_test.h HDRTEST drivers/gpu/drm/xe/tests/xe_bo_test.h CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_queue.o HDRTEST drivers/gpu/drm/xe/xe_assert.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv11.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv17.o HDRTEST drivers/gpu/drm/xe/xe_bb.h CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_mqd_manager.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv44.o HDRTEST drivers/gpu/drm/xe/xe_bb_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_mqd_manager_cik.o CC [M] drivers/gpu/drm/i915/display/intel_dsb_buffer.o CC [M] drivers/gpu/drm/i915/display/intel_fb.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_mqd_manager_vi.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mc/nv50.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mc/g84.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mc/g98.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mc/gt215.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mc/gf100.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mc/gk104.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mc/gk20a.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_mqd_manager_v9.o HDRTEST drivers/gpu/drm/xe/xe_bo.h CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_mqd_manager_v10.o CC [M] drivers/gpu/drm/i915/display/intel_fb_bo.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_mqd_manager_v11.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mc/gp100.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mc/gp10b.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mc/ga100.o HDRTEST drivers/gpu/drm/xe/xe_bo_doc.h CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_kernel_queue.o CC [M] drivers/gpu/drm/i915/display/intel_fb_pin.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_packet_manager.o HDRTEST drivers/gpu/drm/xe/xe_bo_evict.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/base.o CC [M] drivers/gpu/drm/i915/display/intel_fbc.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_packet_manager_vi.o HDRTEST drivers/gpu/drm/xe/xe_bo_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_packet_manager_v9.o CC [M] drivers/gpu/drm/i915/display/intel_fdi.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv04.o CC [M] drivers/gpu/drm/i915/display/intel_fifo_underrun.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv41.o CC [M] drivers/gpu/drm/i915/display/intel_frontbuffer.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv44.o CC [M] drivers/gpu/drm/i915/display/intel_global_state.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/nv50.o CC [M] drivers/gpu/drm/i915/display/intel_hdcp.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/g84.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_process_queue_manager.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device_queue_manager.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/mcp77.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gf100.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device_queue_manager_cik.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device_queue_manager_vi.o HDRTEST drivers/gpu/drm/xe/xe_debugfs.h CC [M] drivers/gpu/drm/i915/display/intel_hdcp_gsc.o CC [M] drivers/gpu/drm/i915/display/intel_hotplug.o HDRTEST drivers/gpu/drm/xe/xe_devcoredump.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gk104.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device_queue_manager_v9.o CC [M] drivers/gpu/drm/i915/display/intel_hotplug_irq.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gk20a.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gm200.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gm20b.o CC [M] drivers/gpu/drm/i915/display/intel_hti.o HDRTEST drivers/gpu/drm/xe/xe_devcoredump_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device_queue_manager_v10.o CC [M] drivers/gpu/drm/i915/display/intel_link_bw.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_device_queue_manager_v11.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_interrupt.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_events.o HDRTEST drivers/gpu/drm/xe/xe_device.h CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/cik_event_interrupt.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp100.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_int_process_v9.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_int_process_v10.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gp10b.o CC [M] drivers/gpu/drm/i915/display/intel_load_detect.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_int_process_v11.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/gv100.o HDRTEST drivers/gpu/drm/xe/xe_device_sysfs.h CC [M] drivers/gpu/drm/i915/display/intel_lpe_audio.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_smi_events.o HDRTEST drivers/gpu/drm/xe/xe_device_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_crat.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/tu102.o CC [M] drivers/gpu/drm/i915/display/intel_modeset_lock.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_debug.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_debugfs.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/mem.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memnv04.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_svm.o CC [M] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_migrate.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memnv50.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_fence.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/memgf100.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmm.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.o CC [M] drivers/gpu/drm/i915/display/intel_modeset_verify.o HDRTEST drivers/gpu/drm/xe/xe_display.h CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.o HDRTEST drivers/gpu/drm/xe/xe_dma_buf.h HDRTEST drivers/gpu/drm/xe/xe_drm_client.h CC [M] drivers/gpu/drm/i915/display/intel_modeset_setup.o CC [M] drivers/gpu/drm/i915/display/intel_overlay.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_arcturus.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv04.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_aldebaran.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv41.o HDRTEST drivers/gpu/drm/xe/xe_drv.h HDRTEST drivers/gpu/drm/xe/xe_exec.h CC [M] drivers/gpu/drm/i915/display/intel_pch_display.o CC [M] drivers/gpu/drm/i915/display/intel_pch_refclk.o CC [M] drivers/gpu/drm/i915/display/intel_plane_initial.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv44.o HDRTEST drivers/gpu/drm/xe/xe_exec_queue.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmnv50.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gc_9_4_3.o CC [M] drivers/gpu/drm/i915/display/intel_pmdemand.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmmcp77.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgf100.o CC [M] drivers/gpu/drm/i915/display/intel_psr.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v10_3.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v11.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgk104.o HDRTEST drivers/gpu/drm/xe/xe_exec_queue_types.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgk20a.o HDRTEST drivers/gpu/drm/xe/xe_execlist.h CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.o CC [M] drivers/gpu/drm/i915/display/intel_quirks.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgm200.o CC [M] drivers/gpu/drm/i915/display/intel_sprite.o CC [M] drivers/gpu/drm/i915/display/intel_sprite_uapi.o HDRTEST drivers/gpu/drm/xe/xe_execlist_types.h CC [M] drivers/gpu/drm/i915/display/intel_tc.o CC [M] drivers/gpu/drm/i915/display/intel_vblank.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_cgs.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_job.o CC [M] drivers/gpu/drm/i915/display/intel_vga.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_acp.o CC [M] drivers/gpu/drm/amd/amdgpu/../acp/acp_hw.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgm20b.o HDRTEST drivers/gpu/drm/xe/xe_force_wake.h HDRTEST drivers/gpu/drm/xe/xe_force_wake_types.h HDRTEST drivers/gpu/drm/xe/xe_ggtt.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp100.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_ioc32.o CC [M] drivers/gpu/drm/i915/display/intel_wm.o HDRTEST drivers/gpu/drm/xe/xe_ggtt_types.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgp10b.o CC [M] drivers/gpu/drm/i915/display/i9xx_plane.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.o CC [M] drivers/gpu/drm/amd/amdgpu/amdgpu_hmm.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmgv100.o CC [M] drivers/gpu/drm/i915/display/i9xx_wm.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/arcturus_ppt.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/vmmtu102.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/navi10_ppt.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/umem.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/ummu.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mmu/uvmm.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mxm/base.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/sienna_cichlid_ppt.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/vangogh_ppt.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/cyan_skillfish_ppt.o HDRTEST drivers/gpu/drm/xe/xe_gpu_scheduler.h CC [M] drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu11/smu_v11_0.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mxm/mxms.o HDRTEST drivers/gpu/drm/xe/xe_gpu_scheduler_types.h CC [M] drivers/gpu/drm/i915/display/skl_scaler.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/mxm/nv50.o HDRTEST drivers/gpu/drm/xe/xe_gsc.h CC [M] drivers/gpu/drm/i915/display/skl_universal_plane.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pci/agp.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu12/renoir_ppt.o HDRTEST drivers/gpu/drm/xe/xe_gsc_submit.h HDRTEST drivers/gpu/drm/xe/xe_gsc_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu12/smu_v12_0.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/aldebaran_ppt.o CC [M] drivers/gpu/drm/i915/display/skl_watermark.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/yellow_carp_ppt.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0_0_ppt.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0_4_ppt.o HDRTEST drivers/gpu/drm/xe/xe_gt.h CC [M] drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0_5_ppt.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pci/base.o HDRTEST drivers/gpu/drm/xe/xe_gt_ccs_mode.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pci/pcie.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0_7_ppt.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu13/smu_v13_0_6_ppt.o HDRTEST drivers/gpu/drm/xe/xe_gt_clock.h CC [M] drivers/gpu/drm/i915/display/intel_acpi.o CC [M] drivers/gpu/drm/i915/display/intel_opregion.o HDRTEST drivers/gpu/drm/xe/xe_gt_debugfs.h HDRTEST drivers/gpu/drm/xe/xe_gt_freq.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv04.o HDRTEST drivers/gpu/drm/xe/xe_gt_idle.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv40.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv46.o HDRTEST drivers/gpu/drm/xe/xe_gt_idle_types.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pci/nv4c.o HDRTEST drivers/gpu/drm/xe/xe_gt_mcr.h HDRTEST drivers/gpu/drm/xe/xe_gt_pagefault.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pci/g84.o HDRTEST drivers/gpu/drm/xe/xe_gt_printk.h CC [M] drivers/gpu/drm/amd/amdgpu/../pm/swsmu/amdgpu_smu.o CC [M] drivers/gpu/drm/i915/display/intel_fbdev.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pci/g92.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pci/g94.o HDRTEST drivers/gpu/drm/xe/xe_gt_sysfs.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pci/gf100.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pci/gf106.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pci/gk104.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/swsmu/smu_cmn.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pci/gp100.o HDRTEST drivers/gpu/drm/xe/xe_gt_sysfs_types.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pmu/base.o HDRTEST drivers/gpu/drm/xe/xe_gt_throttle_sysfs.h HDRTEST drivers/gpu/drm/xe/xe_gt_tlb_invalidation.h CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/smumgr.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pmu/memx.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gt215.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gf100.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/smu8_smumgr.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gf119.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gk104.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/tonga_smumgr.o HDRTEST drivers/gpu/drm/xe/xe_gt_tlb_invalidation_types.h HDRTEST drivers/gpu/drm/xe/xe_gt_topology.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gk110.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/fiji_smumgr.o HDRTEST drivers/gpu/drm/xe/xe_gt_types.h HDRTEST drivers/gpu/drm/xe/xe_guc.h CC [M] drivers/gpu/drm/i915/display/intel_fbdev_fb.o CC [M] drivers/gpu/drm/i915/display/dvo_ch7017.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gk208.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/polaris10_smumgr.o CC [M] drivers/gpu/drm/i915/display/dvo_ch7xxx.o CC [M] drivers/gpu/drm/i915/display/dvo_ivch.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/iceland_smumgr.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/smu7_smumgr.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gk20a.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/vega10_smumgr.o CC [M] drivers/gpu/drm/i915/display/dvo_ns2501.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gm107.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/smu10_smumgr.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/ci_smumgr.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gm200.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gm20b.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/vega12_smumgr.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gp102.o CC [M] drivers/gpu/drm/i915/display/dvo_sil164.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/pmu/gp10b.o HDRTEST drivers/gpu/drm/xe/xe_guc_ads.h CC [M] drivers/gpu/drm/i915/display/dvo_tfp410.o HDRTEST drivers/gpu/drm/xe/xe_guc_ads_types.h CC [M] drivers/gpu/drm/i915/display/g4x_dp.o HDRTEST drivers/gpu/drm/xe/xe_guc_ct.h CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/vegam_smumgr.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/smu9_smumgr.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/smumgr/vega20_smumgr.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/privring/gf100.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/privring/gf117.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/privring/gk104.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/hwmgr.o CC [M] drivers/gpu/drm/i915/display/g4x_hdmi.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/privring/gk20a.o HDRTEST drivers/gpu/drm/xe/xe_guc_ct_types.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/privring/gm200.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/processpptables.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/privring/gp10b.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/hardwaremanager.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu8_hwmgr.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/pppcielanes.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/process_pptables_v1_0.o CC [M] drivers/gpu/drm/i915/display/icl_dsi.o HDRTEST drivers/gpu/drm/xe/xe_guc_debugfs.h CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/ppatomctrl.o HDRTEST drivers/gpu/drm/xe/xe_guc_exec_queue_types.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/ppatomfwctrl.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/therm/fan.o CC [M] drivers/gpu/drm/i915/display/intel_backlight.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/therm/fannil.o CC [M] drivers/gpu/drm/i915/display/intel_crt.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/therm/fanpwm.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/therm/fantog.o HDRTEST drivers/gpu/drm/xe/xe_guc_fwif.h HDRTEST drivers/gpu/drm/xe/xe_guc_hwconfig.h CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_hwmgr.o CC [M] drivers/gpu/drm/i915/display/intel_cx0_phy.o HDRTEST drivers/gpu/drm/xe/xe_guc_log.h CC [M] drivers/gpu/drm/i915/display/intel_ddi.o HDRTEST drivers/gpu/drm/xe/xe_guc_log_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_powertune.o HDRTEST drivers/gpu/drm/xe/xe_guc_pc.h CC [M] drivers/gpu/drm/i915/display/intel_ddi_buf_trans.o HDRTEST drivers/gpu/drm/xe/xe_guc_pc_types.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/therm/ic.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/therm/temp.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/therm/nv40.o HDRTEST drivers/gpu/drm/xe/xe_guc_submit.h HDRTEST drivers/gpu/drm/xe/xe_guc_submit_types.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/therm/nv50.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_thermal.o HDRTEST drivers/gpu/drm/xe/xe_guc_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_clockpowergating.o CC [M] drivers/gpu/drm/i915/display/intel_display_device.o CC [M] drivers/gpu/drm/i915/display/intel_display_trace.o HDRTEST drivers/gpu/drm/xe/xe_heci_gsc.h CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_processpptables.o CC [M] drivers/gpu/drm/i915/display/intel_dkl_phy.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_hwmgr.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_powertune.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_thermal.o CC [M] drivers/gpu/drm/i915/display/intel_dp.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu10_hwmgr.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/pp_psm.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/therm/g84.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega12_processpptables.o CC [M] drivers/gpu/drm/i915/display/intel_dp_aux.o HDRTEST drivers/gpu/drm/xe/xe_huc.h HDRTEST drivers/gpu/drm/xe/xe_huc_debugfs.h CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega12_hwmgr.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega12_thermal.o HDRTEST drivers/gpu/drm/xe/xe_huc_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/pp_overdriver.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu_helper.o HDRTEST drivers/gpu/drm/xe/xe_hw_engine.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/therm/gt215.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega20_processpptables.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/therm/gf100.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega20_hwmgr.o CC [M] drivers/gpu/drm/i915/display/intel_dp_aux_backlight.o CC [M] drivers/gpu/drm/i915/display/intel_dp_hdcp.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega20_powertune.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega20_thermal.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/therm/gf119.o CC [M] drivers/gpu/drm/i915/display/intel_dp_link_training.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/common_baco.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/therm/gk104.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/therm/gm107.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega10_baco.o CC [M] drivers/gpu/drm/i915/display/intel_dp_mst.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/therm/gm200.o HDRTEST drivers/gpu/drm/xe/xe_hw_engine_class_sysfs.h CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega20_baco.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/vega12_baco.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu9_baco.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/tonga_baco.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/polaris_baco.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/therm/gp100.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/fiji_baco.o CC [M] drivers/gpu/drm/i915/display/intel_dsi.o HDRTEST drivers/gpu/drm/xe/xe_hw_engine_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/ci_baco.o HDRTEST drivers/gpu/drm/xe/xe_hw_fence.h CC [M] drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.o CC [M] drivers/gpu/drm/i915/display/intel_dsi_vbt.o CC [M] drivers/gpu/drm/i915/display/intel_dvo.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/timer/base.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/hwmgr/smu7_baco.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/powerplay/amd_powerplay.o CC [M] drivers/gpu/drm/i915/display/intel_gmbus.o CC [M] drivers/gpu/drm/i915/display/intel_hdmi.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/timer/nv04.o HDRTEST drivers/gpu/drm/xe/xe_hw_fence_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../pm/legacy-dpm/legacy_dpm.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/legacy-dpm/kv_dpm.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/timer/nv40.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/timer/nv41.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/timer/gk20a.o HDRTEST drivers/gpu/drm/xe/xe_hwmon.h CC [M] drivers/gpu/drm/i915/display/intel_lspcon.o HDRTEST drivers/gpu/drm/xe/xe_irq.h CC [M] drivers/gpu/drm/amd/amdgpu/../pm/legacy-dpm/kv_smc.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/legacy-dpm/si_dpm.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/legacy-dpm/si_smc.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/amdgpu_dpm.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/amdgpu_pm.o CC [M] drivers/gpu/drm/amd/amdgpu/../pm/amdgpu_dpm_internal.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_plane.o HDRTEST drivers/gpu/drm/xe/xe_lmtt.h HDRTEST drivers/gpu/drm/xe/xe_lmtt_types.h CC [M] drivers/gpu/drm/i915/display/intel_lvds.o HDRTEST drivers/gpu/drm/xe/xe_lrc.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/top/base.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/top/gk104.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_crtc.o CC [M] drivers/gpu/drm/i915/display/intel_panel.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_irq.o HDRTEST drivers/gpu/drm/xe/xe_lrc_types.h HDRTEST drivers/gpu/drm/xe/xe_macros.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_mst_types.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/top/ga100.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_color.o HDRTEST drivers/gpu/drm/xe/xe_map.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/dc_fpu.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_services.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_helpers.o HDRTEST drivers/gpu/drm/xe/xe_migrate.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_pp_smu.o CC [M] drivers/gpu/drm/i915/display/intel_pps.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/vfn/base.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/vfn/uvfn.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_psr.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/vfn/gv100.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_replay.o HDRTEST drivers/gpu/drm/xe/xe_migrate_doc.h CC [M] drivers/gpu/drm/i915/display/intel_qp_tables.o HDRTEST drivers/gpu/drm/xe/xe_mmio.h CC [M] drivers/gpu/drm/i915/display/intel_sdvo.o CC [M] drivers/gpu/drm/i915/display/intel_snps_phy.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_hdcp.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_crc.o CC [M] drivers/gpu/drm/i915/display/intel_tv.o CC [M] drivers/gpu/drm/i915/display/intel_vdsc.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_debugfs.o HDRTEST drivers/gpu/drm/xe/xe_mocs.h HDRTEST drivers/gpu/drm/xe/xe_module.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/vfn/tu102.o CC [M] drivers/gpu/drm/i915/display/intel_vrr.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/basics/conversion.o HDRTEST drivers/gpu/drm/xe/xe_pat.h HDRTEST drivers/gpu/drm/xe/xe_pci.h CC [M] drivers/gpu/drm/i915/display/vlv_dsi.o CC [M] drivers/gpu/drm/i915/display/vlv_dsi_pll.o HDRTEST drivers/gpu/drm/xe/xe_pci_types.h CC [M] drivers/gpu/drm/i915/i915_perf.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/vfn/ga100.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/basics/fixpt31_32.o CC [M] drivers/gpu/drm/i915/pxp/intel_pxp.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/volt/base.o CC [M] drivers/gpu/drm/i915/pxp/intel_pxp_tee.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/volt/gpio.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/volt/nv40.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/basics/vector.o CC [M] drivers/gpu/drm/i915/pxp/intel_pxp_huc.o CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/volt/gf100.o HDRTEST drivers/gpu/drm/xe/xe_pcode.h HDRTEST drivers/gpu/drm/xe/xe_pcode_api.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/volt/gf117.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/basics/dc_common.o HDRTEST drivers/gpu/drm/xe/xe_platform_types.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/volt/gk104.o HDRTEST drivers/gpu/drm/xe/xe_pm.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/volt/gk20a.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser_interface.o CC [M] drivers/gpu/drm/i915/pxp/intel_pxp_cmd.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser_helper.o HDRTEST drivers/gpu/drm/xe/xe_pmu.h CC [M] drivers/gpu/drm/i915/pxp/intel_pxp_debugfs.o CC [M] drivers/gpu/drm/i915/pxp/intel_pxp_gsccs.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table.o CC [M] drivers/gpu/drm/i915/pxp/intel_pxp_irq.o HDRTEST drivers/gpu/drm/xe/xe_pmu_types.h CC [M] drivers/gpu/drm/nouveau/nvkm/subdev/volt/gm20b.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table_helper.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser_common.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/falcon.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table2.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/bios/command_table_helper2.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/bios/bios_parser2.o CC [M] drivers/gpu/drm/i915/pxp/intel_pxp_pm.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/bios/dce60/command_table_helper_dce60.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/bios/dce80/command_table_helper_dce80.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/bios/dce110/command_table_helper_dce110.o HDRTEST drivers/gpu/drm/xe/xe_preempt_fence.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/xtensa.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/bsp/g84.o CC [M] drivers/gpu/drm/i915/pxp/intel_pxp_session.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/ce/gt215.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/ce/gf100.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/bios/dce112/command_table_helper_dce112.o CC [M] drivers/gpu/drm/i915/i915_gpu_error.o HDRTEST drivers/gpu/drm/xe/xe_preempt_fence_types.h HDRTEST drivers/gpu/drm/xe/xe_pt.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/ce/gk104.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/ce/gm107.o CC [M] drivers/gpu/drm/i915/gem/selftests/i915_gem_client_blt.o HDRTEST drivers/gpu/drm/xe/xe_pt_types.h CC [M] drivers/gpu/drm/i915/gem/selftests/igt_gem_utils.o CC [M] drivers/gpu/drm/i915/selftests/intel_scheduler_helpers.o HDRTEST drivers/gpu/drm/xe/xe_pt_walk.h CC [M] drivers/gpu/drm/i915/selftests/i915_random.o HDRTEST drivers/gpu/drm/xe/xe_query.h CC [M] drivers/gpu/drm/i915/selftests/i915_selftest.o HDRTEST drivers/gpu/drm/xe/xe_range_fence.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/bios/dce112/command_table_helper2_dce112.o HDRTEST drivers/gpu/drm/xe/xe_reg_sr.h CC [M] drivers/gpu/drm/i915/selftests/igt_atomic.o CC [M] drivers/gpu/drm/i915/selftests/igt_flush_test.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/ce/gm200.o CC [M] drivers/gpu/drm/i915/selftests/igt_live_test.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/calcs/dce_calcs.o HDRTEST drivers/gpu/drm/xe/xe_reg_sr_types.h HDRTEST drivers/gpu/drm/xe/xe_reg_whitelist.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/ce/gp100.o HDRTEST drivers/gpu/drm/xe/xe_res_cursor.h CC [M] drivers/gpu/drm/i915/selftests/igt_mmap.o CC [M] drivers/gpu/drm/i915/selftests/igt_reset.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/ce/gp102.o HDRTEST drivers/gpu/drm/xe/xe_ring_ops.h CC [M] drivers/gpu/drm/i915/selftests/igt_spinner.o HDRTEST drivers/gpu/drm/xe/xe_ring_ops_types.h HDRTEST drivers/gpu/drm/xe/xe_rtp.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/calcs/custom_float.o HDRTEST drivers/gpu/drm/xe/xe_rtp_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/calcs/bw_fixed.o HDRTEST drivers/gpu/drm/xe/xe_sa.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/display_mode_lib.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/display_rq_dlg_helpers.o HDRTEST drivers/gpu/drm/xe/xe_sa_types.h CC [M] drivers/gpu/drm/i915/selftests/librapl.o CC [M] drivers/gpu/drm/i915/i915_vgpu.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/ce/gv100.o HDRTEST drivers/gpu/drm/i915/display/intel_dkl_phy_regs.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/ce/tu102.o HDRTEST drivers/gpu/drm/i915/display/intel_crtc_state_dump.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/ce/ga100.o HDRTEST drivers/gpu/drm/xe/xe_sched_job.h HDRTEST drivers/gpu/drm/i915/display/hsw_ips.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dml1_display_rq_dlg_calc.o HDRTEST drivers/gpu/drm/i915/display/g4x_hdmi.h HDRTEST drivers/gpu/drm/i915/display/intel_hdcp_regs.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/ce/ga102.o HDRTEST drivers/gpu/drm/i915/display/intel_overlay.h HDRTEST drivers/gpu/drm/i915/display/intel_display.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn10/dcn10_fpu.o HDRTEST drivers/gpu/drm/xe/xe_sched_job_types.h HDRTEST drivers/gpu/drm/i915/display/skl_watermark_regs.h HDRTEST drivers/gpu/drm/i915/display/intel_dmc.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/dcn20_fpu.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/cipher/g84.o HDRTEST drivers/gpu/drm/xe/xe_sriov.h HDRTEST drivers/gpu/drm/xe/xe_sriov_printk.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/device/acpi.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/device/base.o HDRTEST drivers/gpu/drm/i915/display/intel_vga.h HDRTEST drivers/gpu/drm/i915/display/intel_audio.h HDRTEST drivers/gpu/drm/i915/display/intel_lvds.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/display_mode_vba.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_rq_dlg_calc_20.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_mode_vba_20.o HDRTEST drivers/gpu/drm/xe/xe_sriov_types.h HDRTEST drivers/gpu/drm/i915/display/intel_modeset_setup.h HDRTEST drivers/gpu/drm/i915/display/intel_cdclk.h HDRTEST drivers/gpu/drm/xe/xe_step.h HDRTEST drivers/gpu/drm/i915/display/intel_display_limits.h HDRTEST drivers/gpu/drm/xe/xe_step_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_rq_dlg_calc_20v2.o HDRTEST drivers/gpu/drm/xe/xe_sync.h HDRTEST drivers/gpu/drm/xe/xe_sync_types.h HDRTEST drivers/gpu/drm/xe/xe_tile.h HDRTEST drivers/gpu/drm/xe/xe_tile_sysfs.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn20/display_mode_vba_20v2.o HDRTEST drivers/gpu/drm/xe/xe_tile_sysfs_types.h HDRTEST drivers/gpu/drm/xe/xe_trace.h HDRTEST drivers/gpu/drm/i915/display/intel_hotplug.h HDRTEST drivers/gpu/drm/i915/display/intel_dkl_phy.h HDRTEST drivers/gpu/drm/i915/display/intel_atomic.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/device/ctrl.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/device/pci.o HDRTEST drivers/gpu/drm/i915/display/intel_color_regs.h HDRTEST drivers/gpu/drm/xe/xe_ttm_stolen_mgr.h HDRTEST drivers/gpu/drm/i915/display/intel_display_driver.h HDRTEST drivers/gpu/drm/i915/display/intel_dpll.h HDRTEST drivers/gpu/drm/i915/display/vlv_dsi_pll_regs.h HDRTEST drivers/gpu/drm/i915/display/intel_dp_mst.h HDRTEST drivers/gpu/drm/i915/display/intel_fdi_regs.h HDRTEST drivers/gpu/drm/i915/display/g4x_dp.h HDRTEST drivers/gpu/drm/xe/xe_ttm_sys_mgr.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/device/tegra.o HDRTEST drivers/gpu/drm/i915/display/intel_tc.h HDRTEST drivers/gpu/drm/i915/display/intel_display_params.h HDRTEST drivers/gpu/drm/xe/xe_ttm_vram_mgr.h HDRTEST drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn21/display_rq_dlg_calc_21.o HDRTEST drivers/gpu/drm/i915/display/intel_frontbuffer.h HDRTEST drivers/gpu/drm/xe/xe_tuning.h HDRTEST drivers/gpu/drm/i915/display/intel_dsi_vbt.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/device/user.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/base.o HDRTEST drivers/gpu/drm/i915/display/intel_psr.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn21/display_mode_vba_21.o HDRTEST drivers/gpu/drm/i915/display/intel_crt.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn30/dcn30_fpu.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/chan.o HDRTEST drivers/gpu/drm/i915/display/intel_opregion.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn30/display_mode_vba_30.o HDRTEST drivers/gpu/drm/i915/display/intel_snps_phy_regs.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/conn.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/dp.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/hdmi.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/head.o HDRTEST drivers/gpu/drm/i915/display/i9xx_wm.h HDRTEST drivers/gpu/drm/i915/display/intel_cx0_phy_regs.h HDRTEST drivers/gpu/drm/i915/display/intel_global_state.h HDRTEST drivers/gpu/drm/xe/xe_uc.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn30/display_rq_dlg_calc_30.o HDRTEST drivers/gpu/drm/xe/xe_uc_debugfs.h HDRTEST drivers/gpu/drm/i915/display/intel_lpe_audio.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn31/display_mode_vba_31.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn31/display_rq_dlg_calc_31.o HDRTEST drivers/gpu/drm/xe/xe_uc_fw.h HDRTEST drivers/gpu/drm/i915/display/intel_drrs.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn314/display_mode_vba_314.o HDRTEST drivers/gpu/drm/i915/display/intel_dsb_buffer.h HDRTEST drivers/gpu/drm/i915/display/intel_display_rps.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/ior.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn314/display_rq_dlg_calc_314.o HDRTEST drivers/gpu/drm/xe/xe_uc_fw_abi.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn32/display_mode_vba_32.o HDRTEST drivers/gpu/drm/xe/xe_uc_fw_types.h HDRTEST drivers/gpu/drm/xe/xe_uc_types.h HDRTEST drivers/gpu/drm/xe/xe_vm.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/outp.o HDRTEST drivers/gpu/drm/xe/xe_vm_doc.h HDRTEST drivers/gpu/drm/i915/display/intel_fbdev.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn32/display_rq_dlg_calc_32.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/vga.o HDRTEST drivers/gpu/drm/i915/display/intel_pps_regs.h HDRTEST drivers/gpu/drm/xe/xe_vm_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn32/display_mode_vba_util_32.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/nv04.o HDRTEST drivers/gpu/drm/i915/display/intel_hdmi.h HDRTEST drivers/gpu/drm/xe/xe_wa.h HDRTEST drivers/gpu/drm/xe/xe_wait_user_fence.h HDRTEST drivers/gpu/drm/i915/display/intel_fdi.h HDRTEST drivers/gpu/drm/xe/xe_wopcm.h HDRTEST drivers/gpu/drm/i915/display/intel_fb.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn31/dcn31_fpu.o HDRTEST drivers/gpu/drm/xe/xe_wopcm_types.h LD [M] drivers/gpu/drm/xe/xe.o HDRTEST drivers/gpu/drm/i915/display/intel_qp_tables.h HDRTEST drivers/gpu/drm/i915/display/intel_dsb_regs.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/nv50.o HDRTEST drivers/gpu/drm/i915/display/intel_vdsc.h HDRTEST drivers/gpu/drm/i915/display/intel_snps_phy.h HDRTEST drivers/gpu/drm/i915/display/intel_display_core.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/g84.o HDRTEST drivers/gpu/drm/i915/display/vlv_dsi_pll.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/g94.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn32/dcn32_fpu.o HDRTEST drivers/gpu/drm/i915/display/intel_dvo_dev.h HDRTEST drivers/gpu/drm/i915/display/intel_hdcp.h HDRTEST drivers/gpu/drm/i915/display/intel_sdvo_regs.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn321/dcn321_fpu.o HDRTEST drivers/gpu/drm/i915/display/intel_pch_refclk.h HDRTEST drivers/gpu/drm/i915/display/intel_modeset_lock.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/gt200.o HDRTEST drivers/gpu/drm/i915/display/intel_display_trace.h HDRTEST drivers/gpu/drm/i915/display/intel_display_power.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp77.o HDRTEST drivers/gpu/drm/i915/display/intel_dp_aux_regs.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/gt215.o HDRTEST drivers/gpu/drm/i915/display/i9xx_plane.h HDRTEST drivers/gpu/drm/i915/display/intel_dp_aux_backlight.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn301/dcn301_fpu.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn302/dcn302_fpu.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/mcp89.o HDRTEST drivers/gpu/drm/i915/display/intel_dpll_mgr.h HDRTEST drivers/gpu/drm/i915/display/vlv_dsi.h HDRTEST drivers/gpu/drm/i915/display/intel_plane_initial.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn303/dcn303_fpu.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dcn314/dcn314_fpu.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/gf119.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/dsc/rc_calc_fpu.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/calcs/dcn_calcs.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/calcs/dcn_calc_math.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/gk104.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dml/calcs/dcn_calc_auto.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/gk110.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/clk_mgr.o HDRTEST drivers/gpu/drm/i915/display/intel_display_device.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/gm107.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dce60/dce60_clk_mgr.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/gm200.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/gp100.o HDRTEST drivers/gpu/drm/i915/display/intel_fifo_underrun.h HDRTEST drivers/gpu/drm/i915/display/intel_cursor.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/gp102.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dce100/dce_clk_mgr.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/gv100.o HDRTEST drivers/gpu/drm/i915/display/vlv_dsi_regs.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dce110/dce110_clk_mgr.o HDRTEST drivers/gpu/drm/i915/display/intel_dpt_common.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dce112/dce112_clk_mgr.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/tu102.o HDRTEST drivers/gpu/drm/i915/display/intel_cx0_phy.h HDRTEST drivers/gpu/drm/i915/display/skl_scaler.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/ga102.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dce120/dce120_clk_mgr.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/udisp.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/uconn.o HDRTEST drivers/gpu/drm/i915/display/intel_fb_bo.h HDRTEST drivers/gpu/drm/i915/display/intel_hti.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/uoutp.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn10/rv1_clk_mgr.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/disp/uhead.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn10/rv1_clk_mgr_vbios_smu.o HDRTEST drivers/gpu/drm/i915/display/icl_dsi_regs.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/dma/base.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn10/rv2_clk_mgr.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/dma/nv04.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn20/dcn20_clk_mgr.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn201/dcn201_clk_mgr.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr.o HDRTEST drivers/gpu/drm/i915/display/intel_atomic_plane.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/dma/nv50.o HDRTEST drivers/gpu/drm/i915/display/skl_watermark.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/dma/gf100.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/dma/gf119.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn21/rn_clk_mgr_vbios_smu.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn30/dcn30_clk_mgr.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/dma/gv100.o HDRTEST drivers/gpu/drm/i915/display/intel_fbc.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn30/dcn30_clk_mgr_smu_msg.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/dma/user.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn301/vg_clk_mgr.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn301/dcn301_smu.o HDRTEST drivers/gpu/drm/i915/display/intel_display_reg_defs.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn31/dcn31_smu.o HDRTEST drivers/gpu/drm/i915/display/intel_acpi.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/dma/usernv04.o HDRTEST drivers/gpu/drm/i915/display/intel_connector.h HDRTEST drivers/gpu/drm/i915/display/intel_dpt.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/dma/usernv50.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/dma/usergf100.o HDRTEST drivers/gpu/drm/i915/display/intel_quirks.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn31/dcn31_clk_mgr.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/dma/usergf119.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/dma/usergv100.o HDRTEST drivers/gpu/drm/i915/display/intel_dp_link_training.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn314/dcn314_smu.o HDRTEST drivers/gpu/drm/i915/display/intel_color.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/base.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn314/dcn314_clk_mgr.o HDRTEST drivers/gpu/drm/i915/display/intel_crtc.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/cgrp.o HDRTEST drivers/gpu/drm/i915/display/intel_display_debugfs.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/chan.o HDRTEST drivers/gpu/drm/i915/display/intel_modeset_verify.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/chid.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn315/dcn315_smu.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn315/dcn315_clk_mgr.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn316/dcn316_smu.o HDRTEST drivers/gpu/drm/i915/display/intel_display_power_well.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn316/dcn316_clk_mgr.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/runl.o HDRTEST drivers/gpu/drm/i915/display/intel_psr_regs.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/runq.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv04.o HDRTEST drivers/gpu/drm/i915/display/intel_wm.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn32/dcn32_clk_mgr.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv10.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/clk_mgr/dcn32/dcn32_clk_mgr_smu_msg.o HDRTEST drivers/gpu/drm/i915/display/intel_pipe_crc.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_audio.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_stream_encoder.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_link_encoder.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv17.o HDRTEST drivers/gpu/drm/i915/display/intel_audio_regs.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv40.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_hwseq.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_mem_input.o HDRTEST drivers/gpu/drm/i915/display/intel_panel.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_clock_source.o HDRTEST drivers/gpu/drm/i915/display/intel_sprite.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_scl_filters.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_transform.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_opp.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/nv50.o HDRTEST drivers/gpu/drm/i915/display/intel_wm_types.h HDRTEST drivers/gpu/drm/i915/display/intel_tv.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/g84.o HDRTEST drivers/gpu/drm/i915/display/intel_fbdev_fb.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/g98.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_dmcu.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/gf100.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.o HDRTEST drivers/gpu/drm/i915/display/intel_hti_regs.h HDRTEST drivers/gpu/drm/i915/display/intel_vrr.h HDRTEST drivers/gpu/drm/i915/display/intel_load_detect.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_abm.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_ipp.o HDRTEST drivers/gpu/drm/i915/display/skl_universal_plane.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_aux.o HDRTEST drivers/gpu/drm/i915/display/intel_mg_phy_regs.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk110.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk208.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk20a.o HDRTEST drivers/gpu/drm/i915/display/intel_bw.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c.o HDRTEST drivers/gpu/drm/i915/display/intel_display_irq.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_hw.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_i2c_sw.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm107.o HDRTEST drivers/gpu/drm/i915/display/intel_de.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm200.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dmub_psr.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/gp100.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/gv100.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/tu102.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/ga100.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dmub_abm.o HDRTEST drivers/gpu/drm/i915/display/intel_lvds_regs.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dmub_abm_lcd.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/ga102.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dce_panel_cntl.o HDRTEST drivers/gpu/drm/i915/display/intel_gmbus_regs.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dmub_hw_lock_mgr.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dmub_outbox.o HDRTEST drivers/gpu/drm/i915/display/intel_dsi_dcs_backlight.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/ucgrp.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/fifo/uchan.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/dce/dmub_replay.o HDRTEST drivers/gpu/drm/i915/display/intel_dvo.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/base.o HDRTEST drivers/gpu/drm/i915/display/intel_sdvo.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/nv04.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/gpio_base.o HDRTEST drivers/gpu/drm/i915/display/intel_dp_aux.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/nv10.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/gpio_service.o HDRTEST drivers/gpu/drm/i915/display/intel_vdsc_regs.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/hw_factory.o HDRTEST drivers/gpu/drm/i915/display/intel_combo_phy.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/hw_gpio.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/hw_hpd.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/hw_ddc.o HDRTEST drivers/gpu/drm/i915/display/intel_dvo_regs.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/nv15.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/hw_generic.o HDRTEST drivers/gpu/drm/i915/display/intel_gmbus.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/hw_translate.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/nv17.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dce60/hw_translate_dce60.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/nv20.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dce60/hw_factory_dce60.o HDRTEST drivers/gpu/drm/i915/display/intel_hdcp_gsc.h HDRTEST drivers/gpu/drm/i915/display/intel_dsi.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/nv25.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dce80/hw_translate_dce80.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dce80/hw_factory_dce80.o HDRTEST drivers/gpu/drm/i915/display/intel_dmc_regs.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dce110/hw_translate_dce110.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/nv2a.o HDRTEST drivers/gpu/drm/i915/display/intel_ddi.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/nv30.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dce110/hw_factory_dce110.o HDRTEST drivers/gpu/drm/i915/display/intel_hotplug_irq.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/nv34.o HDRTEST drivers/gpu/drm/i915/display/intel_tv_regs.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dce120/hw_translate_dce120.o HDRTEST drivers/gpu/drm/i915/display/intel_dsb.h HDRTEST drivers/gpu/drm/i915/display/intel_bios.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dce120/hw_factory_dce120.o HDRTEST drivers/gpu/drm/i915/display/intel_pch_display.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn10/hw_translate_dcn10.o HDRTEST drivers/gpu/drm/i915/display/intel_display_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn10/hw_factory_dcn10.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn20/hw_translate_dcn20.o HDRTEST drivers/gpu/drm/i915/display/intel_backlight.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn20/hw_factory_dcn20.o HDRTEST drivers/gpu/drm/i915/display/intel_vblank.h HDRTEST drivers/gpu/drm/i915/display/intel_dp.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/nv35.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn21/hw_translate_dcn21.o HDRTEST drivers/gpu/drm/i915/display/intel_pmdemand.h HDRTEST drivers/gpu/drm/i915/display/intel_backlight_regs.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn21/hw_factory_dcn21.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/nv40.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/nv44.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn30/hw_translate_dcn30.o HDRTEST drivers/gpu/drm/i915/display/intel_combo_phy_regs.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn30/hw_factory_dcn30.o HDRTEST drivers/gpu/drm/i915/display/intel_display_reset.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn315/hw_translate_dcn315.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/nv50.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn315/hw_factory_dcn315.o HDRTEST drivers/gpu/drm/i915/display/intel_display_power_map.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn32/hw_translate_dcn32.o HDRTEST drivers/gpu/drm/i915/display/intel_ddi_buf_trans.h HDRTEST drivers/gpu/drm/i915/display/intel_display_wa.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/g84.o HDRTEST drivers/gpu/drm/i915/display/icl_dsi.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/gpio/dcn32/hw_factory_dcn32.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/irq/irq_service.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dce60/irq_service_dce60.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gt200.o HDRTEST drivers/gpu/drm/i915/display/intel_lspcon.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dce80/irq_service_dce80.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dce110/irq_service_dce110.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dce120/irq_service_dce120.o HDRTEST drivers/gpu/drm/i915/display/intel_dpio_phy.h HDRTEST drivers/gpu/drm/i915/display/intel_dp_hdcp.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/mcp79.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn10/irq_service_dcn10.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn20/irq_service_dcn20.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn21/irq_service_dcn21.o HDRTEST drivers/gpu/drm/i915/display/intel_fb_pin.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gt215.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn201/irq_service_dcn201.o HDRTEST drivers/gpu/drm/i915/display/intel_display_debugfs_params.h HDRTEST drivers/gpu/drm/i915/display/intel_link_bw.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn30/irq_service_dcn30.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/mcp89.o HDRTEST drivers/gpu/drm/i915/display/intel_pps.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gf100.o HDRTEST drivers/gpu/drm/i915/display/intel_sprite_uapi.h HDRTEST drivers/gpu/drm/i915/gem/i915_gem_ttm.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gf104.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn302/irq_service_dcn302.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn303/irq_service_dcn303.o HDRTEST drivers/gpu/drm/i915/gem/i915_gem_region.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gf108.o HDRTEST drivers/gpu/drm/i915/gem/i915_gem_context_types.h HDRTEST drivers/gpu/drm/i915/gem/i915_gem_lmem.h HDRTEST drivers/gpu/drm/i915/gem/i915_gem_mman.h HDRTEST drivers/gpu/drm/i915/gem/i915_gem_object_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn31/irq_service_dcn31.o HDRTEST drivers/gpu/drm/i915/gem/i915_gem_context.h HDRTEST drivers/gpu/drm/i915/gem/i915_gem_clflush.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn314/irq_service_dcn314.o HDRTEST drivers/gpu/drm/i915/gem/i915_gem_tiling.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn315/irq_service_dcn315.o HDRTEST drivers/gpu/drm/i915/gem/i915_gem_stolen.h HDRTEST drivers/gpu/drm/i915/gem/i915_gem_ttm_pm.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gf110.o HDRTEST drivers/gpu/drm/i915/gem/i915_gem_create.h HDRTEST drivers/gpu/drm/i915/gem/i915_gem_ttm_move.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/irq/dcn32/irq_service_dcn32.o HDRTEST drivers/gpu/drm/i915/gem/i915_gem_ioctls.h HDRTEST drivers/gpu/drm/i915/gem/i915_gem_domain.h HDRTEST drivers/gpu/drm/i915/gem/i915_gem_internal.h HDRTEST drivers/gpu/drm/i915/gem/i915_gem_dmabuf.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/link_detection.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/link_dpms.o HDRTEST drivers/gpu/drm/i915/gem/selftests/mock_context.h HDRTEST drivers/gpu/drm/i915/gem/selftests/huge_gem_object.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/link_factory.o HDRTEST drivers/gpu/drm/i915/gem/selftests/mock_gem_object.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gf117.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gf119.o HDRTEST drivers/gpu/drm/i915/gem/selftests/mock_dmabuf.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/link_resource.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/link_validation.o HDRTEST drivers/gpu/drm/i915/gem/selftests/igt_gem_utils.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/accessories/link_dp_trace.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/accessories/link_dp_cts.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gk104.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/accessories/link_fpga.o HDRTEST drivers/gpu/drm/i915/gem/i915_gem_userptr.h CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/hwss/link_hwss_dio.o HDRTEST drivers/gpu/drm/i915/gem/i915_gem_pm.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/hwss/link_hwss_dpia.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gk110b.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/hwss/link_hwss_hpo_dp.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/hwss/link_hwss_dio_fixed_vs_pe_retimer.o HDRTEST drivers/gpu/drm/i915/gem/i915_gem_shrinker.h HDRTEST drivers/gpu/drm/i915/gem/i915_gemfs.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/hwss/link_hwss_hpo_fixed_vs_pe_retimer_dp.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gk208.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gk20a.o HDRTEST drivers/gpu/drm/i915/gem/i915_gem_object.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/protocols/link_hpd.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gm107.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gm200.o HDRTEST drivers/gpu/drm/i915/gem/i915_gem_object_frontbuffer.h HDRTEST drivers/gpu/drm/i915/gt/intel_timeline_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/protocols/link_ddc.o HDRTEST drivers/gpu/drm/i915/gt/selftest_engine.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/protocols/link_dpcd.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/protocols/link_dp_dpia.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/protocols/link_dp_training.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/protocols/link_dp_training_8b_10b.o HDRTEST drivers/gpu/drm/i915/gt/intel_breadcrumbs.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/protocols/link_dp_training_128b_132b.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/protocols/link_dp_training_dpia.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gm20b.o HDRTEST drivers/gpu/drm/i915/gt/intel_engine_heartbeat.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/protocols/link_dp_training_auxless.o HDRTEST drivers/gpu/drm/i915/gt/intel_context_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/protocols/link_dp_training_fixed_vs_pe_retimer.o HDRTEST drivers/gpu/drm/i915/gt/intel_execlists_submission.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/protocols/link_dp_phy.o HDRTEST drivers/gpu/drm/i915/gt/intel_gt_pm.h HDRTEST drivers/gpu/drm/i915/gt/selftest_rc6.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/protocols/link_dp_capability.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gp100.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/protocols/link_edp_panel_control.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gp102.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gp104.o HDRTEST drivers/gpu/drm/i915/gt/intel_llc_types.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/protocols/link_dp_irq_handler.o CC [M] drivers/gpu/drm/nouveau/nvkm/engine/gr/gp107.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/link/protocols/link_dp_dpia_bw.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/virtual/virtual_link_encoder.o HDRTEST drivers/gpu/drm/i915/gt/intel_gt.h CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/virtual/virtual_stream_encoder.o CC [M] drivers/gpu/drm/amd/amdgpu/../display/dc/virtual/virtual_link_hwss.o CC [M] drivers/gpu/drm/amd ^ permalink raw reply [flat|nested] 14+ messages in thread
* ✓ CI.Hooks: success for drm/xe/uapi: Uniform async vs sync handling (rev3) 2023-12-13 22:29 [PATCH v3] drm/xe/uapi: Uniform async vs sync handling Matthew Brost ` (3 preceding siblings ...) 2023-12-13 22:43 ` ✓ CI.Build: " Patchwork @ 2023-12-13 22:44 ` Patchwork 2023-12-13 22:45 ` ✓ CI.checksparse: " Patchwork ` (3 subsequent siblings) 8 siblings, 0 replies; 14+ messages in thread From: Patchwork @ 2023-12-13 22:44 UTC (permalink / raw) To: Matthew Brost; +Cc: intel-xe == Series Details == Series: drm/xe/uapi: Uniform async vs sync handling (rev3) URL : https://patchwork.freedesktop.org/series/127442/ State : success == Summary == run-parts: executing /workspace/ci/hooks/00-showenv /workspace + pwd + ls -la total 912 drwxrwxr-x 12 1003 1003 4096 Dec 13 22:43 . drwxr-xr-x 1 root root 4096 Dec 13 22:43 .. -rw-rw-r-- 1 1003 1003 802554 Dec 13 22:43 build.log -rw-rw-r-- 1 1003 1003 1420 Dec 13 22:35 checkpatch.log drwxrwxr-x 5 1003 1003 4096 Dec 13 22:33 ci drwxrwxr-x 9 1003 1003 4096 Dec 13 22:33 docker drwxrwxr-x 8 1003 1003 4096 Dec 13 22:33 .git -rw-rw-r-- 1 1003 1003 203 Dec 13 22:34 git_apply.log drwxrwxr-x 4 1003 1003 4096 Dec 13 22:33 .github -rw-rw-r-- 1 1003 1003 233 Dec 13 22:33 .groovylintrc.json -rw-rw-r-- 1 1003 1003 78 Dec 13 22:43 hooks.log drwxrwxr-x 31 1003 1003 4096 Dec 13 22:43 kernel -rw-rw-r-- 1 1003 1003 20621 Dec 13 22:34 kernel.mbox -rw-rw-r-- 1 1003 1003 29462 Dec 13 22:36 kunit.log -rw-rw-r-- 1 1003 1003 48 Dec 13 22:35 parent.tag drwxrwxr-x 44 1003 1003 4096 Dec 13 22:33 pipelines -rw-rw-r-- 1 1003 1003 793 Dec 13 22:33 README.adoc drwxrwxr-x 3 1003 1003 4096 Dec 13 22:33 scripts drwxrwxr-x 3 1003 1003 4096 Dec 13 22:33 src drwxrwxr-x 2 1003 1003 4096 Dec 13 22:33 vars drwxrwxr-x 2 1003 1003 4096 Dec 13 22:33 .vscode + uname -a Linux 6ffb3aac54f6 5.4.0-164-generic #181-Ubuntu SMP Fri Sep 1 13:41:22 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux + 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" + '[' -n /workspace ']' + git_args='-C /workspace/kernel' + git_log_args= + git --no-pager -C /workspace/kernel log --format=oneline --abbrev-commit 52d3f33c0 drm/xe/uapi: Uniform async vs sync handling 5cd189336 drm/xe/xe2: Support flat ccs 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/config/kernel.release UPD include/generated/compile.h UPD include/generated/utsrelease.h DESCEND objtool CALL ../scripts/checksyscalls.sh HOSTCC /workspace/kernel/build64-default/tools/objtool/fixdep.o 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 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' CC [M] drivers/gpu/drm/xe/xe_bb.o CC [M] drivers/gpu/drm/xe/xe_bo.o CC [M] drivers/gpu/drm/xe/xe_bo_evict.o CC [M] drivers/gpu/drm/xe/xe_debugfs.o CC [M] drivers/gpu/drm/xe/xe_devcoredump.o CC [M] drivers/gpu/drm/xe/xe_device.o CC [M] drivers/gpu/drm/xe/xe_device_sysfs.o CC [M] drivers/gpu/drm/xe/xe_dma_buf.o CC [M] drivers/gpu/drm/xe/xe_drm_client.o CC [M] drivers/gpu/drm/xe/xe_exec.o CC [M] drivers/gpu/drm/xe/xe_execlist.o CC [M] drivers/gpu/drm/xe/xe_exec_queue.o CC [M] drivers/gpu/drm/xe/xe_force_wake.o CC [M] drivers/gpu/drm/xe/xe_ggtt.o CC [M] drivers/gpu/drm/xe/xe_gpu_scheduler.o HOSTCC drivers/gpu/drm/xe/xe_gen_wa_oob CC [M] drivers/gpu/drm/xe/xe_gsc_submit.o CC [M] drivers/gpu/drm/xe/xe_gt.o CC [M] drivers/gpu/drm/xe/xe_gt_ccs_mode.o CC [M] drivers/gpu/drm/xe/xe_gt_clock.o CC [M] drivers/gpu/drm/xe/xe_gt_debugfs.o CC [M] drivers/gpu/drm/xe/xe_gt_freq.o CC [M] drivers/gpu/drm/xe/xe_gt_idle.o CC [M] drivers/gpu/drm/xe/xe_gt_mcr.o CC [M] drivers/gpu/drm/xe/xe_gt_pagefault.o CC [M] drivers/gpu/drm/xe/xe_gt_sysfs.o CC [M] drivers/gpu/drm/xe/xe_gt_throttle_sysfs.o CC [M] drivers/gpu/drm/xe/xe_gt_tlb_invalidation.o CC [M] drivers/gpu/drm/xe/xe_gt_topology.o CC [M] drivers/gpu/drm/xe/xe_guc_ads.o CC [M] drivers/gpu/drm/xe/xe_guc_ct.o CC [M] drivers/gpu/drm/xe/xe_guc_debugfs.o CC [M] drivers/gpu/drm/xe/xe_guc_hwconfig.o CC [M] drivers/gpu/drm/xe/xe_guc_log.o CC [M] drivers/gpu/drm/xe/xe_guc_pc.o CC [M] drivers/gpu/drm/xe/xe_guc_submit.o CC [M] drivers/gpu/drm/xe/xe_heci_gsc.o CC [M] drivers/gpu/drm/xe/xe_hw_engine.o CC [M] drivers/gpu/drm/xe/xe_hw_engine_class_sysfs.o CC [M] drivers/gpu/drm/xe/xe_hw_fence.o CC [M] drivers/gpu/drm/xe/xe_huc.o CC [M] drivers/gpu/drm/xe/xe_huc_debugfs.o CC [M] drivers/gpu/drm/xe/xe_irq.o CC [M] drivers/gpu/drm/xe/xe_lrc.o CC [M] drivers/gpu/drm/xe/xe_mmio.o CC [M] drivers/gpu/drm/xe/xe_mocs.o CC [M] drivers/gpu/drm/xe/xe_module.o CC [M] drivers/gpu/drm/xe/xe_pat.o CC [M] drivers/gpu/drm/xe/xe_pci.o CC [M] drivers/gpu/drm/xe/xe_pcode.o CC [M] drivers/gpu/drm/xe/xe_pm.o CC [M] drivers/gpu/drm/xe/xe_preempt_fence.o CC [M] drivers/gpu/drm/xe/xe_pt.o CC [M] drivers/gpu/drm/xe/xe_pt_walk.o CC [M] drivers/gpu/drm/xe/xe_query.o CC [M] drivers/gpu/drm/xe/xe_range_fence.o CC [M] drivers/gpu/drm/xe/xe_reg_sr.o CC [M] drivers/gpu/drm/xe/xe_reg_whitelist.o CC [M] drivers/gpu/drm/xe/xe_rtp.o CC [M] drivers/gpu/drm/xe/xe_sa.o CC [M] drivers/gpu/drm/xe/xe_sched_job.o CC [M] drivers/gpu/drm/xe/xe_step.o CC [M] drivers/gpu/drm/xe/xe_sync.o CC [M] drivers/gpu/drm/xe/xe_tile.o CC [M] drivers/gpu/drm/xe/xe_tile_sysfs.o CC [M] drivers/gpu/drm/xe/xe_trace.o CC [M] drivers/gpu/drm/xe/xe_ttm_sys_mgr.o CC [M] drivers/gpu/drm/xe/xe_ttm_vram_mgr.o CC [M] drivers/gpu/drm/xe/xe_tuning.o CC [M] drivers/gpu/drm/xe/xe_uc.o CC [M] drivers/gpu/drm/xe/xe_uc_debugfs.o CC [M] drivers/gpu/drm/xe/xe_uc_fw.o CC [M] drivers/gpu/drm/xe/xe_wait_user_fence.o CC [M] drivers/gpu/drm/xe/xe_wopcm.o CC [M] drivers/gpu/drm/xe/xe_hwmon.o CC [M] drivers/gpu/drm/xe/xe_sriov.o CC [M] drivers/gpu/drm/xe/xe_lmtt.o CC [M] drivers/gpu/drm/xe/xe_lmtt_2l.o CC [M] drivers/gpu/drm/xe/xe_lmtt_ml.o CC [M] drivers/gpu/drm/xe/xe_display.o CC [M] drivers/gpu/drm/xe/display/xe_fb_pin.o CC [M] drivers/gpu/drm/xe/display/xe_hdcp_gsc.o CC [M] drivers/gpu/drm/xe/display/xe_plane_initial.o CC [M] drivers/gpu/drm/xe/display/xe_display_rps.o CC [M] drivers/gpu/drm/xe/display/xe_display_misc.o CC [M] drivers/gpu/drm/xe/display/xe_dsb_buffer.o CC [M] drivers/gpu/drm/xe/display/intel_fbdev_fb.o CC [M] drivers/gpu/drm/xe/display/intel_fb_bo.o CC [M] drivers/gpu/drm/xe/display/ext/i915_irq.o CC [M] drivers/gpu/drm/xe/display/ext/i915_utils.o CC [M] drivers/gpu/drm/xe/i915-soc/intel_dram.o CC [M] drivers/gpu/drm/xe/i915-soc/intel_pch.o CC [M] drivers/gpu/drm/xe/i915-display/icl_dsi.o CC [M] drivers/gpu/drm/xe/i915-display/intel_atomic.o CC [M] drivers/gpu/drm/xe/i915-display/intel_atomic_plane.o CC [M] drivers/gpu/drm/xe/i915-display/intel_audio.o CC [M] drivers/gpu/drm/xe/i915-display/intel_backlight.o CC [M] drivers/gpu/drm/xe/i915-display/intel_bios.o CC [M] drivers/gpu/drm/xe/i915-display/intel_bw.o CC [M] drivers/gpu/drm/xe/i915-display/intel_cdclk.o CC [M] drivers/gpu/drm/xe/i915-display/intel_color.o CC [M] drivers/gpu/drm/xe/i915-display/intel_combo_phy.o CC [M] drivers/gpu/drm/xe/i915-display/intel_connector.o CC [M] drivers/gpu/drm/xe/i915-display/intel_crtc.o CC [M] drivers/gpu/drm/xe/i915-display/intel_crtc_state_dump.o CC [M] drivers/gpu/drm/xe/i915-display/intel_cursor.o CC [M] drivers/gpu/drm/xe/i915-display/intel_cx0_phy.o CC [M] drivers/gpu/drm/xe/i915-display/intel_ddi.o CC [M] drivers/gpu/drm/xe/i915-display/intel_ddi_buf_trans.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_debugfs.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_debugfs_params.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_device.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_driver.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_irq.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_params.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_power.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_power_map.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_power_well.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_trace.o CC [M] drivers/gpu/drm/xe/i915-display/intel_display_wa.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dkl_phy.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dmc.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dp.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dp_aux.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dp_aux_backlight.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dp_hdcp.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dp_link_training.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dp_mst.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dpll.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dpll_mgr.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dpt_common.o CC [M] drivers/gpu/drm/xe/i915-display/intel_drrs.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dsb.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dsi.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dsi_dcs_backlight.o CC [M] drivers/gpu/drm/xe/i915-display/intel_dsi_vbt.o CC [M] drivers/gpu/drm/xe/i915-display/intel_fb.o CC [M] drivers/gpu/drm/xe/i915-display/intel_fbc.o CC [M] drivers/gpu/drm/xe/i915-display/intel_fdi.o CC [M] drivers/gpu/drm/xe/i915-display/intel_fifo_underrun.o CC [M] drivers/gpu/drm/xe/i915-display/intel_frontbuffer.o CC [M] drivers/gpu/drm/xe/i915-display/intel_global_state.o CC [M] drivers/gpu/drm/xe/i915-display/intel_gmbus.o CC [M] drivers/gpu/drm/xe/i915-display/intel_hdcp.o CC [M] drivers/gpu/drm/xe/i915-display/intel_hdmi.o CC [M] drivers/gpu/drm/xe/i915-display/intel_hotplug.o CC [M] drivers/gpu/drm/xe/i915-display/intel_hotplug_irq.o CC [M] drivers/gpu/drm/xe/i915-display/intel_hti.o CC [M] drivers/gpu/drm/xe/i915-display/intel_link_bw.o CC [M] drivers/gpu/drm/xe/i915-display/intel_lspcon.o CC [M] drivers/gpu/drm/xe/i915-display/intel_modeset_lock.o CC [M] drivers/gpu/drm/xe/i915-display/intel_modeset_setup.o CC [M] drivers/gpu/drm/xe/i915-display/intel_modeset_verify.o CC [M] drivers/gpu/drm/xe/i915-display/intel_panel.o CC [M] drivers/gpu/drm/xe/i915-display/intel_pipe_crc.o CC [M] drivers/gpu/drm/xe/i915-display/intel_pmdemand.o CC [M] drivers/gpu/drm/xe/i915-display/intel_pps.o CC [M] drivers/gpu/drm/xe/i915-display/intel_psr.o CC [M] drivers/gpu/drm/xe/i915-display/intel_qp_tables.o CC [M] drivers/gpu/drm/xe/i915-display/intel_quirks.o CC [M] drivers/gpu/drm/xe/i915-display/intel_snps_phy.o CC [M] drivers/gpu/drm/xe/i915-display/intel_tc.o CC [M] drivers/gpu/drm/xe/i915-display/intel_vblank.o CC [M] drivers/gpu/drm/xe/i915-display/intel_vdsc.o CC [M] drivers/gpu/drm/xe/i915-display/intel_vga.o CC [M] drivers/gpu/drm/xe/i915-display/intel_vrr.o CC [M] drivers/gpu/drm/xe/i915-display/intel_wm.o CC [M] drivers/gpu/drm/xe/i915-display/skl_scaler.o CC [M] drivers/gpu/drm/xe/i915-display/skl_universal_plane.o CC [M] drivers/gpu/drm/xe/i915-display/skl_watermark.o CC [M] drivers/gpu/drm/xe/xe_pmu.o CC [M] drivers/gpu/drm/xe/i915-display/intel_acpi.o CC [M] drivers/gpu/drm/xe/i915-display/intel_opregion.o CC [M] drivers/gpu/drm/xe/i915-display/intel_fbdev.o HDRTEST drivers/gpu/drm/xe/abi/guc_klvs_abi.h HDRTEST drivers/gpu/drm/xe/abi/gsc_command_header_abi.h HDRTEST drivers/gpu/drm/xe/abi/guc_errors_abi.h CC [M] drivers/gpu/drm/xe/tests/xe_bo_test.o CC [M] drivers/gpu/drm/xe/tests/xe_dma_buf_test.o HDRTEST drivers/gpu/drm/xe/abi/guc_actions_slpc_abi.h HDRTEST drivers/gpu/drm/xe/abi/gsc_mkhi_commands_abi.h HDRTEST drivers/gpu/drm/xe/abi/gsc_pxp_commands_abi.h HDRTEST drivers/gpu/drm/xe/abi/guc_communication_mmio_abi.h CC [M] drivers/gpu/drm/xe/tests/xe_migrate_test.o CC [M] drivers/gpu/drm/xe/tests/xe_mocs_test.o HDRTEST drivers/gpu/drm/xe/abi/guc_actions_abi.h HDRTEST drivers/gpu/drm/xe/abi/guc_communication_ctb_abi.h HDRTEST drivers/gpu/drm/xe/abi/guc_messages_abi.h CC [M] drivers/gpu/drm/xe/tests/xe_pci_test.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_gem.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_vma_types.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_irq.h CC [M] drivers/gpu/drm/xe/tests/xe_rtp_test.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/vlv_sideband_reg.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_wakeref.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_pcode.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_drv.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_reg_defs.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_trace.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_reg.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_active_types.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_utils.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_config.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_vma.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/vlv_sideband.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_gem_stolen.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_mchbar_regs.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_debugfs.h CC [M] drivers/gpu/drm/xe/tests/xe_wa_test.o HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_gpu_error.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/soc/intel_pch.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/soc/intel_dram.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/soc/intel_gmch.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_vgpu.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_fixed.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_runtime_pm.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_uncore.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_step.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_uc_fw.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_pci_config.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/gem/i915_gem_lmem.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/gem/i915_gem_mman.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/gem/i915_gem_object.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/gem/i915_gem_object_frontbuffer.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/gt/intel_rps.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_clock_gating.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/intel_gt_types.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/pxp/intel_pxp.h HDRTEST drivers/gpu/drm/xe/compat-i915-headers/i915_active.h HDRTEST drivers/gpu/drm/xe/display/intel_fb_bo.h HDRTEST drivers/gpu/drm/xe/display/intel_fbdev_fb.h HDRTEST drivers/gpu/drm/xe/instructions/xe_instr_defs.h HDRTEST drivers/gpu/drm/xe/instructions/xe_gsc_commands.h HDRTEST drivers/gpu/drm/xe/instructions/xe_gfxpipe_commands.h HDRTEST drivers/gpu/drm/xe/instructions/xe_mi_commands.h HDRTEST drivers/gpu/drm/xe/regs/xe_gsc_regs.h HDRTEST drivers/gpu/drm/xe/regs/xe_reg_defs.h HDRTEST drivers/gpu/drm/xe/regs/xe_guc_regs.h HDRTEST drivers/gpu/drm/xe/regs/xe_gt_regs.h HDRTEST drivers/gpu/drm/xe/regs/xe_regs.h HDRTEST drivers/gpu/drm/xe/regs/xe_gpu_commands.h HDRTEST drivers/gpu/drm/xe/regs/xe_sriov_regs.h HDRTEST drivers/gpu/drm/xe/regs/xe_lrc_layout.h HDRTEST drivers/gpu/drm/xe/regs/xe_mchbar_regs.h HDRTEST drivers/gpu/drm/xe/regs/xe_engine_regs.h HDRTEST drivers/gpu/drm/xe/tests/xe_test.h HDRTEST drivers/gpu/drm/xe/tests/xe_pci_test.h HDRTEST drivers/gpu/drm/xe/tests/xe_migrate_test.h HDRTEST drivers/gpu/drm/xe/tests/xe_dma_buf_test.h HDRTEST drivers/gpu/drm/xe/tests/xe_mocs_test.h HDRTEST drivers/gpu/drm/xe/tests/xe_bo_test.h HDRTEST drivers/gpu/drm/xe/xe_assert.h HDRTEST drivers/gpu/drm/xe/xe_bb.h HDRTEST drivers/gpu/drm/xe/xe_bb_types.h HDRTEST drivers/gpu/drm/xe/xe_bo.h HDRTEST drivers/gpu/drm/xe/xe_bo_doc.h HDRTEST drivers/gpu/drm/xe/xe_bo_evict.h HDRTEST drivers/gpu/drm/xe/xe_bo_types.h HDRTEST drivers/gpu/drm/xe/xe_debugfs.h HDRTEST drivers/gpu/drm/xe/xe_devcoredump.h HDRTEST drivers/gpu/drm/xe/xe_devcoredump_types.h HDRTEST drivers/gpu/drm/xe/xe_device.h HDRTEST drivers/gpu/drm/xe/xe_device_sysfs.h HDRTEST drivers/gpu/drm/xe/xe_device_types.h HDRTEST drivers/gpu/drm/xe/xe_display.h HDRTEST drivers/gpu/drm/xe/xe_dma_buf.h HDRTEST drivers/gpu/drm/xe/xe_drm_client.h HDRTEST drivers/gpu/drm/xe/xe_drv.h HDRTEST drivers/gpu/drm/xe/xe_exec.h HDRTEST drivers/gpu/drm/xe/xe_exec_queue.h HDRTEST drivers/gpu/drm/xe/xe_exec_queue_types.h HDRTEST drivers/gpu/drm/xe/xe_execlist.h HDRTEST drivers/gpu/drm/xe/xe_execlist_types.h HDRTEST drivers/gpu/drm/xe/xe_force_wake.h HDRTEST drivers/gpu/drm/xe/xe_force_wake_types.h HDRTEST drivers/gpu/drm/xe/xe_ggtt.h HDRTEST drivers/gpu/drm/xe/xe_ggtt_types.h HDRTEST drivers/gpu/drm/xe/xe_gpu_scheduler.h HDRTEST drivers/gpu/drm/xe/xe_gpu_scheduler_types.h HDRTEST drivers/gpu/drm/xe/xe_gsc.h HDRTEST drivers/gpu/drm/xe/xe_gsc_submit.h HDRTEST drivers/gpu/drm/xe/xe_gsc_types.h HDRTEST drivers/gpu/drm/xe/xe_gt.h HDRTEST drivers/gpu/drm/xe/xe_gt_ccs_mode.h HDRTEST drivers/gpu/drm/xe/xe_gt_clock.h HDRTEST drivers/gpu/drm/xe/xe_gt_debugfs.h HDRTEST drivers/gpu/drm/xe/xe_gt_freq.h HDRTEST drivers/gpu/drm/xe/xe_gt_idle.h HDRTEST drivers/gpu/drm/xe/xe_gt_idle_types.h HDRTEST drivers/gpu/drm/xe/xe_gt_mcr.h HDRTEST drivers/gpu/drm/xe/xe_gt_pagefault.h HDRTEST drivers/gpu/drm/xe/xe_gt_printk.h HDRTEST drivers/gpu/drm/xe/xe_gt_sysfs.h HDRTEST drivers/gpu/drm/xe/xe_gt_sysfs_types.h HDRTEST drivers/gpu/drm/xe/xe_gt_throttle_sysfs.h HDRTEST drivers/gpu/drm/xe/xe_gt_tlb_invalidation.h HDRTEST drivers/gpu/drm/xe/xe_gt_tlb_invalidation_types.h HDRTEST drivers/gpu/drm/xe/xe_gt_topology.h HDRTEST drivers/gpu/drm/xe/xe_gt_types.h HDRTEST drivers/gpu/drm/xe/xe_guc.h HDRTEST drivers/gpu/drm/xe/xe_guc_ads.h HDRTEST drivers/gpu/drm/xe/xe_guc_ads_types.h HDRTEST drivers/gpu/drm/xe/xe_guc_ct.h HDRTEST drivers/gpu/drm/xe/xe_guc_ct_types.h HDRTEST drivers/gpu/drm/xe/xe_guc_debugfs.h HDRTEST drivers/gpu/drm/xe/xe_guc_exec_queue_types.h HDRTEST drivers/gpu/drm/xe/xe_guc_fwif.h HDRTEST drivers/gpu/drm/xe/xe_guc_hwconfig.h HDRTEST drivers/gpu/drm/xe/xe_guc_log.h HDRTEST drivers/gpu/drm/xe/xe_guc_log_types.h HDRTEST drivers/gpu/drm/xe/xe_guc_pc.h HDRTEST drivers/gpu/drm/xe/xe_guc_pc_types.h HDRTEST drivers/gpu/drm/xe/xe_guc_submit.h HDRTEST drivers/gpu/drm/xe/xe_guc_submit_types.h HDRTEST drivers/gpu/drm/xe/xe_guc_types.h HDRTEST drivers/gpu/drm/xe/xe_heci_gsc.h HDRTEST drivers/gpu/drm/xe/xe_huc_debugfs.h HDRTEST drivers/gpu/drm/xe/xe_huc.h HDRTEST drivers/gpu/drm/xe/xe_huc_types.h HDRTEST drivers/gpu/drm/xe/xe_hw_engine.h HDRTEST drivers/gpu/drm/xe/xe_hw_engine_class_sysfs.h HDRTEST drivers/gpu/drm/xe/xe_hw_engine_types.h HDRTEST drivers/gpu/drm/xe/xe_hw_fence.h HDRTEST drivers/gpu/drm/xe/xe_hw_fence_types.h HDRTEST drivers/gpu/drm/xe/xe_hwmon.h HDRTEST drivers/gpu/drm/xe/xe_irq.h HDRTEST drivers/gpu/drm/xe/xe_lmtt.h HDRTEST drivers/gpu/drm/xe/xe_lmtt_types.h HDRTEST drivers/gpu/drm/xe/xe_lrc.h HDRTEST drivers/gpu/drm/xe/xe_lrc_types.h HDRTEST drivers/gpu/drm/xe/xe_macros.h HDRTEST drivers/gpu/drm/xe/xe_map.h HDRTEST drivers/gpu/drm/xe/xe_migrate.h HDRTEST drivers/gpu/drm/xe/xe_migrate_doc.h HDRTEST drivers/gpu/drm/xe/xe_mmio.h HDRTEST drivers/gpu/drm/xe/xe_mocs.h HDRTEST drivers/gpu/drm/xe/xe_module.h HDRTEST drivers/gpu/drm/xe/xe_pat.h HDRTEST drivers/gpu/drm/xe/xe_pci.h HDRTEST drivers/gpu/drm/xe/xe_pci_types.h HDRTEST drivers/gpu/drm/xe/xe_pcode.h HDRTEST drivers/gpu/drm/xe/xe_pcode_api.h HDRTEST drivers/gpu/drm/xe/xe_platform_types.h HDRTEST drivers/gpu/drm/xe/xe_pm.h HDRTEST drivers/gpu/drm/xe/xe_pmu.h HDRTEST drivers/gpu/drm/xe/xe_pmu_types.h HDRTEST drivers/gpu/drm/xe/xe_preempt_fence.h HDRTEST drivers/gpu/drm/xe/xe_preempt_fence_types.h HDRTEST drivers/gpu/drm/xe/xe_pt.h HDRTEST drivers/gpu/drm/xe/xe_pt_types.h HDRTEST drivers/gpu/drm/xe/xe_pt_walk.h HDRTEST drivers/gpu/drm/xe/xe_query.h HDRTEST drivers/gpu/drm/xe/xe_range_fence.h HDRTEST drivers/gpu/drm/xe/xe_reg_sr.h HDRTEST drivers/gpu/drm/xe/xe_reg_sr_types.h HDRTEST drivers/gpu/drm/xe/xe_reg_whitelist.h HDRTEST drivers/gpu/drm/xe/xe_res_cursor.h HDRTEST drivers/gpu/drm/xe/xe_ring_ops.h HDRTEST drivers/gpu/drm/xe/xe_ring_ops_types.h HDRTEST drivers/gpu/drm/xe/xe_rtp.h HDRTEST drivers/gpu/drm/xe/xe_rtp_types.h HDRTEST drivers/gpu/drm/xe/xe_sa.h HDRTEST drivers/gpu/drm/xe/xe_sa_types.h HDRTEST drivers/gpu/drm/xe/xe_sched_job.h HDRTEST drivers/gpu/drm/xe/xe_sched_job_types.h HDRTEST drivers/gpu/drm/xe/xe_sriov.h HDRTEST drivers/gpu/drm/xe/xe_sriov_printk.h HDRTEST drivers/gpu/drm/xe/xe_sriov_types.h HDRTEST drivers/gpu/drm/xe/xe_step.h HDRTEST drivers/gpu/drm/xe/xe_step_types.h HDRTEST drivers/gpu/drm/xe/xe_sync.h HDRTEST drivers/gpu/drm/xe/xe_sync_types.h HDRTEST drivers/gpu/drm/xe/xe_tile.h HDRTEST drivers/gpu/drm/xe/xe_tile_sysfs.h HDRTEST drivers/gpu/drm/xe/xe_tile_sysfs_types.h HDRTEST drivers/gpu/drm/xe/xe_trace.h HDRTEST drivers/gpu/drm/xe/xe_ttm_stolen_mgr.h HDRTEST drivers/gpu/drm/xe/xe_ttm_sys_mgr.h HDRTEST drivers/gpu/drm/xe/xe_ttm_vram_mgr.h HDRTEST drivers/gpu/drm/xe/xe_ttm_vram_mgr_types.h HDRTEST drivers/gpu/drm/xe/xe_tuning.h HDRTEST drivers/gpu/drm/xe/xe_uc.h HDRTEST drivers/gpu/drm/xe/xe_uc_debugfs.h HDRTEST drivers/gpu/drm/xe/xe_uc_fw.h HDRTEST drivers/gpu/drm/xe/xe_uc_fw_abi.h HDRTEST drivers/gpu/drm/xe/xe_uc_fw_types.h HDRTEST drivers/gpu/drm/xe/xe_uc_types.h HDRTEST drivers/gpu/drm/xe/xe_vm.h HDRTEST drivers/gpu/drm/xe/xe_vm_doc.h HDRTEST drivers/gpu/drm/xe/xe_vm_types.h HDRTEST drivers/gpu/drm/xe/xe_wa.h HDRTEST drivers/gpu/drm/xe/xe_wait_user_fence.h HDRTEST drivers/gpu/drm/xe/xe_wopcm.h HDRTEST drivers/gpu/drm/xe/xe_wopcm_types.h GEN xe_wa_oob.c xe_wa_oob.h GEN xe_wa_oob.c xe_wa_oob.h CC [M] drivers/gpu/drm/xe/xe_gsc.o CC [M] drivers/gpu/drm/xe/xe_guc.o CC [M] drivers/gpu/drm/xe/xe_migrate.o CC [M] drivers/gpu/drm/xe/xe_ring_ops.o CC [M] drivers/gpu/drm/xe/xe_ttm_stolen_mgr.o CC [M] drivers/gpu/drm/xe/xe_vm.o CC [M] drivers/gpu/drm/xe/xe_wa.o LD [M] drivers/gpu/drm/xe/xe.o MODPOST drivers/gpu/drm/xe/Module.symvers WARNING: modpost: missing MODULE_DESCRIPTION() in drivers/gpu/drm/xe/tests/xe_mocs_test.o CC [M] drivers/gpu/drm/xe/xe.mod.o CC [M] drivers/gpu/drm/xe/tests/xe_bo_test.mod.o CC [M] drivers/gpu/drm/xe/tests/xe_dma_buf_test.mod.o CC [M] drivers/gpu/drm/xe/tests/xe_migrate_test.mod.o CC [M] drivers/gpu/drm/xe/tests/xe_mocs_test.mod.o CC [M] drivers/gpu/drm/xe/tests/xe_pci_test.mod.o CC [M] drivers/gpu/drm/xe/tests/xe_rtp_test.mod.o CC [M] drivers/gpu/drm/xe/tests/xe_wa_test.mod.o LD [M] drivers/gpu/drm/xe/tests/xe_wa_test.ko LD [M] drivers/gpu/drm/xe/tests/xe_rtp_test.ko LD [M] drivers/gpu/drm/xe/tests/xe_mocs_test.ko LD [M] drivers/gpu/drm/xe/xe.ko LD [M] drivers/gpu/drm/xe/tests/xe_bo_test.ko LD [M] drivers/gpu/drm/xe/tests/xe_migrate_test.ko LD [M] drivers/gpu/drm/xe/tests/xe_pci_test.ko LD [M] drivers/gpu/drm/xe/tests/xe_dma_buf_test.ko make[1]: Leaving directory '/workspace/kernel/build64-default' run-parts: executing /workspace/ci/hooks/20-kernel-doc + SRC_DIR=/workspace/kernel + cd /workspace/kernel + find drivers/gpu/drm/xe/ -name '*.[ch]' -not -path 'drivers/gpu/drm/xe/display/*' + xargs ./scripts/kernel-doc -Werror -none include/uapi/drm/xe_drm.h All hooks done ^ permalink raw reply [flat|nested] 14+ messages in thread
* ✓ CI.checksparse: success for drm/xe/uapi: Uniform async vs sync handling (rev3) 2023-12-13 22:29 [PATCH v3] drm/xe/uapi: Uniform async vs sync handling Matthew Brost ` (4 preceding siblings ...) 2023-12-13 22:44 ` ✓ CI.Hooks: " Patchwork @ 2023-12-13 22:45 ` Patchwork 2023-12-13 22:49 ` [PATCH v3] drm/xe/uapi: Uniform async vs sync handling Souza, Jose ` (2 subsequent siblings) 8 siblings, 0 replies; 14+ messages in thread From: Patchwork @ 2023-12-13 22:45 UTC (permalink / raw) To: Matthew Brost; +Cc: intel-xe == Series Details == Series: drm/xe/uapi: Uniform async vs sync handling (rev3) URL : https://patchwork.freedesktop.org/series/127442/ 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 5cd1893366708380854f4694ae57417192458a6b 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] 14+ messages in thread
* Re: [PATCH v3] drm/xe/uapi: Uniform async vs sync handling 2023-12-13 22:29 [PATCH v3] drm/xe/uapi: Uniform async vs sync handling Matthew Brost ` (5 preceding siblings ...) 2023-12-13 22:45 ` ✓ CI.checksparse: " Patchwork @ 2023-12-13 22:49 ` Souza, Jose 2023-12-14 0:26 ` Matthew Brost 2023-12-13 23:19 ` ✗ CI.BAT: failure for drm/xe/uapi: Uniform async vs sync handling (rev3) Patchwork 2023-12-14 11:14 ` [PATCH v3] drm/xe/uapi: Uniform async vs sync handling Thomas Hellström 8 siblings, 1 reply; 14+ messages in thread From: Souza, Jose @ 2023-12-13 22:49 UTC (permalink / raw) To: intel-xe@lists.freedesktop.org, Brost, Matthew Cc: Dugast, Francois, Vivi, Rodrigo On Wed, 2023-12-13 at 14:29 -0800, Matthew Brost wrote: > Remove concept of async vs sync VM bind queues, rather make async vs > sync a per IOCTL choice. Since this is per IOCTL, it makes sense to have > a singular flag IOCTL rather than per VM bind op flag too. Add > DRM_XE_SYNCS_FLAG_WAIT_FOR_OP which is an input sync flag to support > this. Support this new flag for both the VM bind IOCTL only with a path > to support this for execs too. > > v2: Add cookie, move sync wait outside of any locks. > v3: Skip bind operations if *cookie non-zero, check reserved bits zero > > Cc: Rodrigo Vivi <rodrigo.vivi@intel.com> > Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com> > Cc: Francois Dugast <francois.dugast@intel.com> > Signed-off-by: Matthew Brost <matthew.brost@intel.com> > --- > drivers/gpu/drm/xe/xe_exec.c | 13 ++- > drivers/gpu/drm/xe/xe_exec_queue.c | 7 +- > drivers/gpu/drm/xe/xe_exec_queue_types.h | 2 - > drivers/gpu/drm/xe/xe_vm.c | 140 ++++++++++++----------- > drivers/gpu/drm/xe/xe_vm_types.h | 13 +-- > include/uapi/drm/xe_drm.h | 65 +++++++---- > 6 files changed, 131 insertions(+), 109 deletions(-) > > diff --git a/drivers/gpu/drm/xe/xe_exec.c b/drivers/gpu/drm/xe/xe_exec.c > index ba92e5619da3..af2b676c8eef 100644 > --- a/drivers/gpu/drm/xe/xe_exec.c > +++ b/drivers/gpu/drm/xe/xe_exec.c > @@ -104,7 +104,7 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > struct xe_device *xe = to_xe_device(dev); > struct xe_file *xef = to_xe_file(file); > struct drm_xe_exec *args = data; > - struct drm_xe_sync __user *syncs_user = u64_to_user_ptr(args->syncs); > + struct drm_xe_sync __user *syncs_user = u64_to_user_ptr(args->syncs.syncs); > u64 __user *addresses_user = u64_to_user_ptr(args->address); > struct xe_exec_queue *q; > struct xe_sync_entry *syncs = NULL; > @@ -120,7 +120,10 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > int err = 0; > > if (XE_IOCTL_DBG(xe, args->extensions) || > - XE_IOCTL_DBG(xe, args->pad[0] || args->pad[1] || args->pad[2]) || > + XE_IOCTL_DBG(xe, args->pad || args->pad2[0] || args->pad2[1] || args->pad2[2]) || > + XE_IOCTL_DBG(xe, args->syncs.flags) || > + XE_IOCTL_DBG(xe, args->syncs.cookie) || > + XE_IOCTL_DBG(xe, args->syncs.reserved[0] || args->syncs.reserved[1]) || > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > return -EINVAL; > > @@ -140,8 +143,8 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > goto err_exec_queue; > } > > - if (args->num_syncs) { > - syncs = kcalloc(args->num_syncs, sizeof(*syncs), GFP_KERNEL); > + if (args->syncs.num_syncs) { > + syncs = kcalloc(args->syncs.num_syncs, sizeof(*syncs), GFP_KERNEL); > if (!syncs) { > err = -ENOMEM; > goto err_exec_queue; > @@ -150,7 +153,7 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > vm = q->vm; > > - for (i = 0; i < args->num_syncs; i++) { > + for (i = 0; i < args->syncs.num_syncs; i++) { > err = xe_sync_entry_parse(xe, xef, &syncs[num_syncs++], > &syncs_user[i], SYNC_PARSE_FLAG_EXEC | > (xe_vm_in_lr_mode(vm) ? > diff --git a/drivers/gpu/drm/xe/xe_exec_queue.c b/drivers/gpu/drm/xe/xe_exec_queue.c > index eeb9605dd45f..a25d67971fdd 100644 > --- a/drivers/gpu/drm/xe/xe_exec_queue.c > +++ b/drivers/gpu/drm/xe/xe_exec_queue.c > @@ -625,10 +625,7 @@ int xe_exec_queue_create_ioctl(struct drm_device *dev, void *data, > if (XE_IOCTL_DBG(xe, eci[0].gt_id >= xe->info.gt_count)) > return -EINVAL; > > - if (eci[0].engine_class >= DRM_XE_ENGINE_CLASS_VM_BIND_ASYNC) { > - bool sync = eci[0].engine_class == > - DRM_XE_ENGINE_CLASS_VM_BIND_SYNC; > - > + if (eci[0].engine_class == DRM_XE_ENGINE_CLASS_VM_BIND) { > for_each_gt(gt, xe, id) { > struct xe_exec_queue *new; > > @@ -654,8 +651,6 @@ int xe_exec_queue_create_ioctl(struct drm_device *dev, void *data, > args->width, hwe, > EXEC_QUEUE_FLAG_PERSISTENT | > EXEC_QUEUE_FLAG_VM | > - (sync ? 0 : > - EXEC_QUEUE_FLAG_VM_ASYNC) | > (id ? > EXEC_QUEUE_FLAG_BIND_ENGINE_CHILD : > 0)); > diff --git a/drivers/gpu/drm/xe/xe_exec_queue_types.h b/drivers/gpu/drm/xe/xe_exec_queue_types.h > index c7aefa1c8c31..0f7f6cded4a3 100644 > --- a/drivers/gpu/drm/xe/xe_exec_queue_types.h > +++ b/drivers/gpu/drm/xe/xe_exec_queue_types.h > @@ -84,8 +84,6 @@ struct xe_exec_queue { > #define EXEC_QUEUE_FLAG_VM BIT(4) > /* child of VM queue for multi-tile VM jobs */ > #define EXEC_QUEUE_FLAG_BIND_ENGINE_CHILD BIT(5) > -/* VM jobs for this queue are asynchronous */ > -#define EXEC_QUEUE_FLAG_VM_ASYNC BIT(6) > > /** > * @flags: flags for this exec queue, should statically setup aside from ban > diff --git a/drivers/gpu/drm/xe/xe_vm.c b/drivers/gpu/drm/xe/xe_vm.c > index 2f3df9ee67c9..8407c4d54a45 100644 > --- a/drivers/gpu/drm/xe/xe_vm.c > +++ b/drivers/gpu/drm/xe/xe_vm.c > @@ -1343,9 +1343,7 @@ struct xe_vm *xe_vm_create(struct xe_device *xe, u32 flags) > struct xe_gt *gt = tile->primary_gt; > struct xe_vm *migrate_vm; > struct xe_exec_queue *q; > - u32 create_flags = EXEC_QUEUE_FLAG_VM | > - ((flags & XE_VM_FLAG_ASYNC_DEFAULT) ? > - EXEC_QUEUE_FLAG_VM_ASYNC : 0); > + u32 create_flags = EXEC_QUEUE_FLAG_VM; > > if (!vm->pt_root[id]) > continue; > @@ -1712,12 +1710,6 @@ xe_vm_bind_vma(struct xe_vma *vma, struct xe_exec_queue *q, > return ERR_PTR(err); > } > > -static bool xe_vm_sync_mode(struct xe_vm *vm, struct xe_exec_queue *q) > -{ > - return q ? !(q->flags & EXEC_QUEUE_FLAG_VM_ASYNC) : > - !(vm->flags & XE_VM_FLAG_ASYNC_DEFAULT); > -} > - > static int __xe_vm_bind(struct xe_vm *vm, struct xe_vma *vma, > struct xe_exec_queue *q, struct xe_sync_entry *syncs, > u32 num_syncs, bool immediate, bool first_op, > @@ -1747,8 +1739,6 @@ static int __xe_vm_bind(struct xe_vm *vm, struct xe_vma *vma, > > if (last_op) > xe_exec_queue_last_fence_set(wait_exec_queue, vm, fence); > - if (last_op && xe_vm_sync_mode(vm, q)) > - dma_fence_wait(fence, true); > dma_fence_put(fence); > > return 0; > @@ -1791,8 +1781,6 @@ static int xe_vm_unbind(struct xe_vm *vm, struct xe_vma *vma, > xe_vma_destroy(vma, fence); > if (last_op) > xe_exec_queue_last_fence_set(wait_exec_queue, vm, fence); > - if (last_op && xe_vm_sync_mode(vm, q)) > - dma_fence_wait(fence, true); > dma_fence_put(fence); > > return 0; > @@ -1800,7 +1788,6 @@ static int xe_vm_unbind(struct xe_vm *vm, struct xe_vma *vma, > > #define ALL_DRM_XE_VM_CREATE_FLAGS (DRM_XE_VM_CREATE_FLAG_SCRATCH_PAGE | \ > DRM_XE_VM_CREATE_FLAG_LR_MODE | \ > - DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT | \ > DRM_XE_VM_CREATE_FLAG_FAULT_MODE) > > int xe_vm_create_ioctl(struct drm_device *dev, void *data, > @@ -1854,8 +1841,6 @@ int xe_vm_create_ioctl(struct drm_device *dev, void *data, > flags |= XE_VM_FLAG_SCRATCH_PAGE; > if (args->flags & DRM_XE_VM_CREATE_FLAG_LR_MODE) > flags |= XE_VM_FLAG_LR_MODE; > - if (args->flags & DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT) > - flags |= XE_VM_FLAG_ASYNC_DEFAULT; > if (args->flags & DRM_XE_VM_CREATE_FLAG_FAULT_MODE) > flags |= XE_VM_FLAG_FAULT_MODE; > > @@ -2263,8 +2248,7 @@ static int xe_vma_op_commit(struct xe_vm *vm, struct xe_vma_op *op) > static int vm_bind_ioctl_ops_parse(struct xe_vm *vm, struct xe_exec_queue *q, > struct drm_gpuva_ops *ops, > struct xe_sync_entry *syncs, u32 num_syncs, > - struct list_head *ops_list, bool last, > - bool async) > + struct list_head *ops_list, bool last) > { > struct xe_vma_op *last_op = NULL; > struct drm_gpuva_op *__op; > @@ -2696,28 +2680,28 @@ static int vm_bind_ioctl_ops_execute(struct xe_vm *vm, > > #ifdef TEST_VM_ASYNC_OPS_ERROR > #define SUPPORTED_FLAGS \ > - (FORCE_ASYNC_OP_ERROR | DRM_XE_VM_BIND_FLAG_ASYNC | \ > - DRM_XE_VM_BIND_FLAG_READONLY | DRM_XE_VM_BIND_FLAG_IMMEDIATE | \ > - DRM_XE_VM_BIND_FLAG_NULL | 0xffff) > + (FORCE_ASYNC_OP_ERROR | DRM_XE_VM_BIND_FLAG_READONLY | \ > + DRM_XE_VM_BIND_FLAG_IMMEDIATE | DRM_XE_VM_BIND_FLAG_NULL | 0xffff) > #else > #define SUPPORTED_FLAGS \ > - (DRM_XE_VM_BIND_FLAG_ASYNC | DRM_XE_VM_BIND_FLAG_READONLY | \ > + (DRM_XE_VM_BIND_FLAG_READONLY | \ > DRM_XE_VM_BIND_FLAG_IMMEDIATE | DRM_XE_VM_BIND_FLAG_NULL | \ > 0xffff) > #endif > #define XE_64K_PAGE_MASK 0xffffull > +#define ALL_DRM_XE_SYNCS_FLAGS (DRM_XE_SYNCS_FLAG_WAIT_FOR_OP) > > #define MAX_BINDS 512 /* FIXME: Picking random upper limit */ > > static int vm_bind_ioctl_check_args(struct xe_device *xe, > struct drm_xe_vm_bind *args, > struct drm_xe_vm_bind_op **bind_ops, > - bool *async) > + bool *async, bool *skip_ops) > { > int err; > int i; > > - if (XE_IOCTL_DBG(xe, args->pad || args->pad2) || > + if (XE_IOCTL_DBG(xe, args->pad) || > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > return -EINVAL; > > @@ -2745,6 +2729,30 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, > *bind_ops = &args->bind; > } > > + *async = !(args->syncs.flags & DRM_XE_SYNCS_FLAG_WAIT_FOR_OP); > + *skip_ops = false; > + > + if (XE_IOCTL_DBG(xe, args->syncs.flags & ~ALL_DRM_XE_SYNCS_FLAGS) || > + XE_IOCTL_DBG(xe, *async && args->syncs.cookie) || > + XE_IOCTL_DBG(xe, args->syncs.reserved[0] || args->syncs.reserved[1]) || > + XE_IOCTL_DBG(xe, !*async && args->syncs.num_syncs)) { > + err = -EINVAL; > + goto free_bind_ops; > + } > + > + if (!*async) { > + u64 __user *cookie = u64_to_user_ptr(args->syncs.cookie); > + u64 value; > + > + err = __copy_from_user(&value, cookie, sizeof(u64)); > + if (XE_IOCTL_DBG(xe, err)) { > + err = -EFAULT; > + goto free_bind_ops; > + } > + if (value) > + *skip_ops = true; > + } > + > for (i = 0; i < args->num_binds; ++i) { > u64 range = (*bind_ops)[i].range; > u64 addr = (*bind_ops)[i].addr; > @@ -2775,18 +2783,6 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, > goto free_bind_ops; > } > > - if (i == 0) { > - *async = !!(flags & DRM_XE_VM_BIND_FLAG_ASYNC); > - if (XE_IOCTL_DBG(xe, !*async && args->num_syncs)) { > - err = -EINVAL; > - goto free_bind_ops; > - } > - } else if (XE_IOCTL_DBG(xe, *async != > - !!(flags & DRM_XE_VM_BIND_FLAG_ASYNC))) { > - err = -EINVAL; > - goto free_bind_ops; > - } > - > if (XE_IOCTL_DBG(xe, op > DRM_XE_VM_BIND_OP_PREFETCH) || > XE_IOCTL_DBG(xe, flags & ~SUPPORTED_FLAGS) || > XE_IOCTL_DBG(xe, obj && is_null) || > @@ -2854,12 +2850,25 @@ static int vm_bind_ioctl_signal_fences(struct xe_vm *vm, > > xe_exec_queue_last_fence_set(to_wait_exec_queue(vm, q), vm, > fence); > + dma_fence_put(fence); > > - if (xe_vm_sync_mode(vm, q)) { > - long timeout = dma_fence_wait(fence, true); > + return err; > +} > + > +static int vm_bind_ioctl_sync_wait(struct xe_vm *vm, > + struct dma_fence *fence, > + u64 __user *cookie) > +{ > + long timeout; > + int err = 0; > + > + timeout = dma_fence_wait(fence, true); > + if (timeout < 0) { > + u64 value = 1; > > - if (timeout < 0) > - err = -EINTR; > + err = -ERESTARTSYS; > + if (copy_to_user(cookie, &value, sizeof(value))) > + err = -EFAULT; > } > > dma_fence_put(fence); > @@ -2875,21 +2884,22 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > struct drm_xe_sync __user *syncs_user; > struct xe_bo **bos = NULL; > struct drm_gpuva_ops **ops = NULL; > + struct dma_fence *fence = NULL; > struct xe_vm *vm; > struct xe_exec_queue *q = NULL; > u32 num_syncs; > struct xe_sync_entry *syncs = NULL; > struct drm_xe_vm_bind_op *bind_ops; > LIST_HEAD(ops_list); > - bool async; > + bool async, skip_ops; > int err; > int i; > > - err = vm_bind_ioctl_check_args(xe, args, &bind_ops, &async); > + err = vm_bind_ioctl_check_args(xe, args, &bind_ops, &async, &skip_ops); > if (err) > return err; > > - if (XE_IOCTL_DBG(xe, args->pad || args->pad2) || > + if (XE_IOCTL_DBG(xe, args->pad) || > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > return -EINVAL; > > @@ -2904,12 +2914,6 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > err = -EINVAL; > goto put_exec_queue; > } > - > - if (XE_IOCTL_DBG(xe, args->num_binds && async != > - !!(q->flags & EXEC_QUEUE_FLAG_VM_ASYNC))) { > - err = -EINVAL; > - goto put_exec_queue; > - } > } > > vm = xe_vm_lookup(xef, args->vm_id); > @@ -2918,14 +2922,6 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > goto put_exec_queue; > } > > - if (!args->exec_queue_id) { > - if (XE_IOCTL_DBG(xe, args->num_binds && async != > - !!(vm->flags & XE_VM_FLAG_ASYNC_DEFAULT))) { > - err = -EINVAL; > - goto put_vm; > - } > - } > - > err = down_write_killable(&vm->lock); > if (err) > goto put_vm; > @@ -3015,16 +3011,16 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > } > } > > - if (args->num_syncs) { > - syncs = kcalloc(args->num_syncs, sizeof(*syncs), GFP_KERNEL); > + if (args->syncs.num_syncs) { > + syncs = kcalloc(args->syncs.num_syncs, sizeof(*syncs), GFP_KERNEL); > if (!syncs) { > err = -ENOMEM; > goto put_obj; > } > } > > - syncs_user = u64_to_user_ptr(args->syncs); > - for (num_syncs = 0; num_syncs < args->num_syncs; num_syncs++) { > + syncs_user = u64_to_user_ptr(args->syncs.syncs); > + for (num_syncs = 0; num_syncs < args->syncs.num_syncs; num_syncs++) { > err = xe_sync_entry_parse(xe, xef, &syncs[num_syncs], > &syncs_user[num_syncs], > (xe_vm_in_lr_mode(vm) ? > @@ -3035,7 +3031,7 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > goto free_syncs; > } > > - if (!args->num_binds) { > + if (!args->num_binds || skip_ops) { > err = -ENODATA; > goto free_syncs; > } > @@ -3060,8 +3056,7 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > err = vm_bind_ioctl_ops_parse(vm, q, ops[i], syncs, num_syncs, > &ops_list, > - i == args->num_binds - 1, > - async); > + i == args->num_binds - 1); > if (err) > goto unwind_ops; > } > @@ -3077,7 +3072,10 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > xe_exec_queue_get(q); > > err = vm_bind_ioctl_ops_execute(vm, &ops_list); > - > + if (!err && !async) { > + fence = xe_exec_queue_last_fence_get(to_wait_exec_queue(vm, q), vm); > + dma_fence_get(fence); > + } > up_write(&vm->lock); > > if (q) > @@ -3092,13 +3090,19 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > if (args->num_binds > 1) > kfree(bind_ops); > > - return err; > + return fence ? vm_bind_ioctl_sync_wait(vm, fence, u64_to_user_ptr(args->syncs.cookie)) : > + err; > > unwind_ops: > vm_bind_ioctl_ops_unwind(vm, ops, args->num_binds); > free_syncs: > - if (err == -ENODATA) > + if (err == -ENODATA) { > err = vm_bind_ioctl_signal_fences(vm, q, syncs, num_syncs); > + if (!async) { > + fence = xe_exec_queue_last_fence_get(to_wait_exec_queue(vm, q), vm); > + dma_fence_get(fence); > + } > + } > while (num_syncs--) > xe_sync_entry_cleanup(&syncs[num_syncs]); > > @@ -3108,6 +3112,8 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > xe_bo_put(bos[i]); > release_vm_lock: > up_write(&vm->lock); > + if (fence) > + err = vm_bind_ioctl_sync_wait(vm, fence, u64_to_user_ptr(args->syncs.cookie)); > put_vm: > xe_vm_put(vm); > put_exec_queue: > diff --git a/drivers/gpu/drm/xe/xe_vm_types.h b/drivers/gpu/drm/xe/xe_vm_types.h > index 2e023596cb15..63e8a50b88e9 100644 > --- a/drivers/gpu/drm/xe/xe_vm_types.h > +++ b/drivers/gpu/drm/xe/xe_vm_types.h > @@ -138,13 +138,12 @@ struct xe_vm { > */ > #define XE_VM_FLAG_64K BIT(0) > #define XE_VM_FLAG_LR_MODE BIT(1) > -#define XE_VM_FLAG_ASYNC_DEFAULT BIT(2) > -#define XE_VM_FLAG_MIGRATION BIT(3) > -#define XE_VM_FLAG_SCRATCH_PAGE BIT(4) > -#define XE_VM_FLAG_FAULT_MODE BIT(5) > -#define XE_VM_FLAG_BANNED BIT(6) > -#define XE_VM_FLAG_TILE_ID(flags) FIELD_GET(GENMASK(8, 7), flags) > -#define XE_VM_FLAG_SET_TILE_ID(tile) FIELD_PREP(GENMASK(8, 7), (tile)->id) > +#define XE_VM_FLAG_MIGRATION BIT(2) > +#define XE_VM_FLAG_SCRATCH_PAGE BIT(3) > +#define XE_VM_FLAG_FAULT_MODE BIT(4) > +#define XE_VM_FLAG_BANNED BIT(5) > +#define XE_VM_FLAG_TILE_ID(flags) FIELD_GET(GENMASK(7, 6), flags) > +#define XE_VM_FLAG_SET_TILE_ID(tile) FIELD_PREP(GENMASK(7, 6), (tile)->id) > unsigned long flags; > > /** @composite_fence_ctx: context composite fence */ > diff --git a/include/uapi/drm/xe_drm.h b/include/uapi/drm/xe_drm.h > index 0895e4d2a981..8cbe7ca6fe57 100644 > --- a/include/uapi/drm/xe_drm.h > +++ b/include/uapi/drm/xe_drm.h > @@ -140,8 +140,7 @@ struct drm_xe_engine_class_instance { > * Kernel only classes (not actual hardware engine class). Used for > * creating ordered queues of VM bind operations. > */ > -#define DRM_XE_ENGINE_CLASS_VM_BIND_ASYNC 5 > -#define DRM_XE_ENGINE_CLASS_VM_BIND_SYNC 6 > +#define DRM_XE_ENGINE_CLASS_VM_BIND 5 > /** @engine_class: engine class id */ > __u16 engine_class; > /** @engine_instance: engine instance id */ > @@ -661,7 +660,6 @@ struct drm_xe_vm_create { > * still enable recoverable pagefaults if supported by the device. > */ > #define DRM_XE_VM_CREATE_FLAG_LR_MODE (1 << 1) > -#define DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT (1 << 2) > /* > * DRM_XE_VM_CREATE_FLAG_FAULT_MODE requires also > * DRM_XE_VM_CREATE_FLAG_LR_MODE. It allows memory to be allocated > @@ -669,7 +667,7 @@ struct drm_xe_vm_create { > * The xe driver internally uses recoverable pagefaults to implement > * this. > */ > -#define DRM_XE_VM_CREATE_FLAG_FAULT_MODE (1 << 3) > +#define DRM_XE_VM_CREATE_FLAG_FAULT_MODE (1 << 2) > /** @flags: Flags */ > __u32 flags; > > @@ -777,12 +775,11 @@ struct drm_xe_vm_bind_op { > __u32 op; > > #define DRM_XE_VM_BIND_FLAG_READONLY (1 << 0) > -#define DRM_XE_VM_BIND_FLAG_ASYNC (1 << 1) > /* > * Valid on a faulting VM only, do the MAP operation immediately rather > * than deferring the MAP to the page fault handler. > */ > -#define DRM_XE_VM_BIND_FLAG_IMMEDIATE (1 << 2) > +#define DRM_XE_VM_BIND_FLAG_IMMEDIATE (1 << 1) > /* > * When the NULL flag is set, the page tables are setup with a special > * bit which indicates writes are dropped and all reads return zero. In > @@ -790,7 +787,7 @@ struct drm_xe_vm_bind_op { > * operations, the BO handle MBZ, and the BO offset MBZ. This flag is > * intended to implement VK sparse bindings. > */ > -#define DRM_XE_VM_BIND_FLAG_NULL (1 << 3) > +#define DRM_XE_VM_BIND_FLAG_NULL (1 << 2) > /** @flags: Bind flags */ > __u32 flags; > > @@ -808,6 +805,36 @@ struct drm_xe_vm_bind_op { > __u64 reserved[3]; > }; > > +/** > + * struct drm_xe_syncs - In / out syncs for IOCTLs. > + */ > +struct drm_xe_syncs { > + /** @num_syncs: amount of syncs to wait on */ > + __u32 num_syncs; > + > + /* > + * Block in IOCTL until operation complete, num_syncs MBZ if set. > + */ > +#define DRM_XE_SYNCS_FLAG_WAIT_FOR_OP (1 << 0) > + /** @flags: Sync flags */ > + __u32 flags; > + > + /** > + * @cookie: pointer which is written with an non-zero value if IOCTL > + * operation has been committed but the wait for completion > + * (DRM_XE_SYNCS_FLAG_WAIT_FOR_OP is set) is interrupted. Value of > + * *cookie MBZ for IOCTL operations to be executed, if non-zero > + * operations are skipped and blocks until exec queue for IOCTL is idle. > + */ > + __u64 cookie; just left a comment in v2. pointer in the comment is misleading, looks like UMD needs to allocate memory and set it in here. about the name I think it should be named as reserved, so UMDs dont touch it at all in fact I think UMDs should not even know that the reserved field is being used for something. > + > + /** @syncs: pointer to struct drm_xe_sync array */ > + __u64 syncs; > + > + /** @reserved: Reserved */ > + __u64 reserved[2]; > +}; > + > struct drm_xe_vm_bind { > /** @extensions: Pointer to the first extension struct, if any */ > __u64 extensions; > @@ -839,14 +866,8 @@ struct drm_xe_vm_bind { > __u64 vector_of_binds; > }; > > - /** @pad: MBZ */ > - __u32 pad2; > - > - /** @num_syncs: amount of syncs to wait on */ > - __u32 num_syncs; > - > - /** @syncs: pointer to struct drm_xe_sync array */ > - __u64 syncs; > + /** @syncs: syncs for bind */ > + struct drm_xe_syncs syncs; > > /** @reserved: Reserved */ > __u64 reserved[2]; > @@ -975,14 +996,14 @@ struct drm_xe_exec { > /** @extensions: Pointer to the first extension struct, if any */ > __u64 extensions; > > + /** @pad: MBZ */ > + __u32 pad; > + > /** @exec_queue_id: Exec queue ID for the batch buffer */ > __u32 exec_queue_id; > > - /** @num_syncs: Amount of struct drm_xe_sync in array. */ > - __u32 num_syncs; > - > - /** @syncs: Pointer to struct drm_xe_sync array. */ > - __u64 syncs; > + /** @syncs: syncs for exec */ > + struct drm_xe_syncs syncs; if not implemented should not be used > > /** > * @address: address of batch buffer if num_batch_buffer == 1 or an > @@ -996,8 +1017,8 @@ struct drm_xe_exec { > */ > __u16 num_batch_buffer; > > - /** @pad: MBZ */ > - __u16 pad[3]; > + /** @pad2: MBZ */ > + __u16 pad2[3]; > > /** @reserved: Reserved */ > __u64 reserved[2]; ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v3] drm/xe/uapi: Uniform async vs sync handling 2023-12-13 22:49 ` [PATCH v3] drm/xe/uapi: Uniform async vs sync handling Souza, Jose @ 2023-12-14 0:26 ` Matthew Brost 2023-12-14 1:51 ` Souza, Jose 0 siblings, 1 reply; 14+ messages in thread From: Matthew Brost @ 2023-12-14 0:26 UTC (permalink / raw) To: Souza, Jose Cc: Dugast, Francois, intel-xe@lists.freedesktop.org, Vivi, Rodrigo On Wed, Dec 13, 2023 at 03:49:53PM -0700, Souza, Jose wrote: > On Wed, 2023-12-13 at 14:29 -0800, Matthew Brost wrote: > > Remove concept of async vs sync VM bind queues, rather make async vs > > sync a per IOCTL choice. Since this is per IOCTL, it makes sense to have > > a singular flag IOCTL rather than per VM bind op flag too. Add > > DRM_XE_SYNCS_FLAG_WAIT_FOR_OP which is an input sync flag to support > > this. Support this new flag for both the VM bind IOCTL only with a path > > to support this for execs too. > > > > v2: Add cookie, move sync wait outside of any locks. > > v3: Skip bind operations if *cookie non-zero, check reserved bits zero > > > > Cc: Rodrigo Vivi <rodrigo.vivi@intel.com> > > Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com> > > Cc: Francois Dugast <francois.dugast@intel.com> > > Signed-off-by: Matthew Brost <matthew.brost@intel.com> > > --- > > drivers/gpu/drm/xe/xe_exec.c | 13 ++- > > drivers/gpu/drm/xe/xe_exec_queue.c | 7 +- > > drivers/gpu/drm/xe/xe_exec_queue_types.h | 2 - > > drivers/gpu/drm/xe/xe_vm.c | 140 ++++++++++++----------- > > drivers/gpu/drm/xe/xe_vm_types.h | 13 +-- > > include/uapi/drm/xe_drm.h | 65 +++++++---- > > 6 files changed, 131 insertions(+), 109 deletions(-) > > > > diff --git a/drivers/gpu/drm/xe/xe_exec.c b/drivers/gpu/drm/xe/xe_exec.c > > index ba92e5619da3..af2b676c8eef 100644 > > --- a/drivers/gpu/drm/xe/xe_exec.c > > +++ b/drivers/gpu/drm/xe/xe_exec.c > > @@ -104,7 +104,7 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > struct xe_device *xe = to_xe_device(dev); > > struct xe_file *xef = to_xe_file(file); > > struct drm_xe_exec *args = data; > > - struct drm_xe_sync __user *syncs_user = u64_to_user_ptr(args->syncs); > > + struct drm_xe_sync __user *syncs_user = u64_to_user_ptr(args->syncs.syncs); > > u64 __user *addresses_user = u64_to_user_ptr(args->address); > > struct xe_exec_queue *q; > > struct xe_sync_entry *syncs = NULL; > > @@ -120,7 +120,10 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > int err = 0; > > > > if (XE_IOCTL_DBG(xe, args->extensions) || > > - XE_IOCTL_DBG(xe, args->pad[0] || args->pad[1] || args->pad[2]) || > > + XE_IOCTL_DBG(xe, args->pad || args->pad2[0] || args->pad2[1] || args->pad2[2]) || > > + XE_IOCTL_DBG(xe, args->syncs.flags) || > > + XE_IOCTL_DBG(xe, args->syncs.cookie) || > > + XE_IOCTL_DBG(xe, args->syncs.reserved[0] || args->syncs.reserved[1]) || > > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > > return -EINVAL; > > > > @@ -140,8 +143,8 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > goto err_exec_queue; > > } > > > > - if (args->num_syncs) { > > - syncs = kcalloc(args->num_syncs, sizeof(*syncs), GFP_KERNEL); > > + if (args->syncs.num_syncs) { > > + syncs = kcalloc(args->syncs.num_syncs, sizeof(*syncs), GFP_KERNEL); > > if (!syncs) { > > err = -ENOMEM; > > goto err_exec_queue; > > @@ -150,7 +153,7 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > vm = q->vm; > > > > - for (i = 0; i < args->num_syncs; i++) { > > + for (i = 0; i < args->syncs.num_syncs; i++) { > > err = xe_sync_entry_parse(xe, xef, &syncs[num_syncs++], > > &syncs_user[i], SYNC_PARSE_FLAG_EXEC | > > (xe_vm_in_lr_mode(vm) ? > > diff --git a/drivers/gpu/drm/xe/xe_exec_queue.c b/drivers/gpu/drm/xe/xe_exec_queue.c > > index eeb9605dd45f..a25d67971fdd 100644 > > --- a/drivers/gpu/drm/xe/xe_exec_queue.c > > +++ b/drivers/gpu/drm/xe/xe_exec_queue.c > > @@ -625,10 +625,7 @@ int xe_exec_queue_create_ioctl(struct drm_device *dev, void *data, > > if (XE_IOCTL_DBG(xe, eci[0].gt_id >= xe->info.gt_count)) > > return -EINVAL; > > > > - if (eci[0].engine_class >= DRM_XE_ENGINE_CLASS_VM_BIND_ASYNC) { > > - bool sync = eci[0].engine_class == > > - DRM_XE_ENGINE_CLASS_VM_BIND_SYNC; > > - > > + if (eci[0].engine_class == DRM_XE_ENGINE_CLASS_VM_BIND) { > > for_each_gt(gt, xe, id) { > > struct xe_exec_queue *new; > > > > @@ -654,8 +651,6 @@ int xe_exec_queue_create_ioctl(struct drm_device *dev, void *data, > > args->width, hwe, > > EXEC_QUEUE_FLAG_PERSISTENT | > > EXEC_QUEUE_FLAG_VM | > > - (sync ? 0 : > > - EXEC_QUEUE_FLAG_VM_ASYNC) | > > (id ? > > EXEC_QUEUE_FLAG_BIND_ENGINE_CHILD : > > 0)); > > diff --git a/drivers/gpu/drm/xe/xe_exec_queue_types.h b/drivers/gpu/drm/xe/xe_exec_queue_types.h > > index c7aefa1c8c31..0f7f6cded4a3 100644 > > --- a/drivers/gpu/drm/xe/xe_exec_queue_types.h > > +++ b/drivers/gpu/drm/xe/xe_exec_queue_types.h > > @@ -84,8 +84,6 @@ struct xe_exec_queue { > > #define EXEC_QUEUE_FLAG_VM BIT(4) > > /* child of VM queue for multi-tile VM jobs */ > > #define EXEC_QUEUE_FLAG_BIND_ENGINE_CHILD BIT(5) > > -/* VM jobs for this queue are asynchronous */ > > -#define EXEC_QUEUE_FLAG_VM_ASYNC BIT(6) > > > > /** > > * @flags: flags for this exec queue, should statically setup aside from ban > > diff --git a/drivers/gpu/drm/xe/xe_vm.c b/drivers/gpu/drm/xe/xe_vm.c > > index 2f3df9ee67c9..8407c4d54a45 100644 > > --- a/drivers/gpu/drm/xe/xe_vm.c > > +++ b/drivers/gpu/drm/xe/xe_vm.c > > @@ -1343,9 +1343,7 @@ struct xe_vm *xe_vm_create(struct xe_device *xe, u32 flags) > > struct xe_gt *gt = tile->primary_gt; > > struct xe_vm *migrate_vm; > > struct xe_exec_queue *q; > > - u32 create_flags = EXEC_QUEUE_FLAG_VM | > > - ((flags & XE_VM_FLAG_ASYNC_DEFAULT) ? > > - EXEC_QUEUE_FLAG_VM_ASYNC : 0); > > + u32 create_flags = EXEC_QUEUE_FLAG_VM; > > > > if (!vm->pt_root[id]) > > continue; > > @@ -1712,12 +1710,6 @@ xe_vm_bind_vma(struct xe_vma *vma, struct xe_exec_queue *q, > > return ERR_PTR(err); > > } > > > > -static bool xe_vm_sync_mode(struct xe_vm *vm, struct xe_exec_queue *q) > > -{ > > - return q ? !(q->flags & EXEC_QUEUE_FLAG_VM_ASYNC) : > > - !(vm->flags & XE_VM_FLAG_ASYNC_DEFAULT); > > -} > > - > > static int __xe_vm_bind(struct xe_vm *vm, struct xe_vma *vma, > > struct xe_exec_queue *q, struct xe_sync_entry *syncs, > > u32 num_syncs, bool immediate, bool first_op, > > @@ -1747,8 +1739,6 @@ static int __xe_vm_bind(struct xe_vm *vm, struct xe_vma *vma, > > > > if (last_op) > > xe_exec_queue_last_fence_set(wait_exec_queue, vm, fence); > > - if (last_op && xe_vm_sync_mode(vm, q)) > > - dma_fence_wait(fence, true); > > dma_fence_put(fence); > > > > return 0; > > @@ -1791,8 +1781,6 @@ static int xe_vm_unbind(struct xe_vm *vm, struct xe_vma *vma, > > xe_vma_destroy(vma, fence); > > if (last_op) > > xe_exec_queue_last_fence_set(wait_exec_queue, vm, fence); > > - if (last_op && xe_vm_sync_mode(vm, q)) > > - dma_fence_wait(fence, true); > > dma_fence_put(fence); > > > > return 0; > > @@ -1800,7 +1788,6 @@ static int xe_vm_unbind(struct xe_vm *vm, struct xe_vma *vma, > > > > #define ALL_DRM_XE_VM_CREATE_FLAGS (DRM_XE_VM_CREATE_FLAG_SCRATCH_PAGE | \ > > DRM_XE_VM_CREATE_FLAG_LR_MODE | \ > > - DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT | \ > > DRM_XE_VM_CREATE_FLAG_FAULT_MODE) > > > > int xe_vm_create_ioctl(struct drm_device *dev, void *data, > > @@ -1854,8 +1841,6 @@ int xe_vm_create_ioctl(struct drm_device *dev, void *data, > > flags |= XE_VM_FLAG_SCRATCH_PAGE; > > if (args->flags & DRM_XE_VM_CREATE_FLAG_LR_MODE) > > flags |= XE_VM_FLAG_LR_MODE; > > - if (args->flags & DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT) > > - flags |= XE_VM_FLAG_ASYNC_DEFAULT; > > if (args->flags & DRM_XE_VM_CREATE_FLAG_FAULT_MODE) > > flags |= XE_VM_FLAG_FAULT_MODE; > > > > @@ -2263,8 +2248,7 @@ static int xe_vma_op_commit(struct xe_vm *vm, struct xe_vma_op *op) > > static int vm_bind_ioctl_ops_parse(struct xe_vm *vm, struct xe_exec_queue *q, > > struct drm_gpuva_ops *ops, > > struct xe_sync_entry *syncs, u32 num_syncs, > > - struct list_head *ops_list, bool last, > > - bool async) > > + struct list_head *ops_list, bool last) > > { > > struct xe_vma_op *last_op = NULL; > > struct drm_gpuva_op *__op; > > @@ -2696,28 +2680,28 @@ static int vm_bind_ioctl_ops_execute(struct xe_vm *vm, > > > > #ifdef TEST_VM_ASYNC_OPS_ERROR > > #define SUPPORTED_FLAGS \ > > - (FORCE_ASYNC_OP_ERROR | DRM_XE_VM_BIND_FLAG_ASYNC | \ > > - DRM_XE_VM_BIND_FLAG_READONLY | DRM_XE_VM_BIND_FLAG_IMMEDIATE | \ > > - DRM_XE_VM_BIND_FLAG_NULL | 0xffff) > > + (FORCE_ASYNC_OP_ERROR | DRM_XE_VM_BIND_FLAG_READONLY | \ > > + DRM_XE_VM_BIND_FLAG_IMMEDIATE | DRM_XE_VM_BIND_FLAG_NULL | 0xffff) > > #else > > #define SUPPORTED_FLAGS \ > > - (DRM_XE_VM_BIND_FLAG_ASYNC | DRM_XE_VM_BIND_FLAG_READONLY | \ > > + (DRM_XE_VM_BIND_FLAG_READONLY | \ > > DRM_XE_VM_BIND_FLAG_IMMEDIATE | DRM_XE_VM_BIND_FLAG_NULL | \ > > 0xffff) > > #endif > > #define XE_64K_PAGE_MASK 0xffffull > > +#define ALL_DRM_XE_SYNCS_FLAGS (DRM_XE_SYNCS_FLAG_WAIT_FOR_OP) > > > > #define MAX_BINDS 512 /* FIXME: Picking random upper limit */ > > > > static int vm_bind_ioctl_check_args(struct xe_device *xe, > > struct drm_xe_vm_bind *args, > > struct drm_xe_vm_bind_op **bind_ops, > > - bool *async) > > + bool *async, bool *skip_ops) > > { > > int err; > > int i; > > > > - if (XE_IOCTL_DBG(xe, args->pad || args->pad2) || > > + if (XE_IOCTL_DBG(xe, args->pad) || > > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > > return -EINVAL; > > > > @@ -2745,6 +2729,30 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, > > *bind_ops = &args->bind; > > } > > > > + *async = !(args->syncs.flags & DRM_XE_SYNCS_FLAG_WAIT_FOR_OP); > > + *skip_ops = false; > > + > > + if (XE_IOCTL_DBG(xe, args->syncs.flags & ~ALL_DRM_XE_SYNCS_FLAGS) || > > + XE_IOCTL_DBG(xe, *async && args->syncs.cookie) || > > + XE_IOCTL_DBG(xe, args->syncs.reserved[0] || args->syncs.reserved[1]) || > > + XE_IOCTL_DBG(xe, !*async && args->syncs.num_syncs)) { > > + err = -EINVAL; > > + goto free_bind_ops; > > + } > > + > > + if (!*async) { > > + u64 __user *cookie = u64_to_user_ptr(args->syncs.cookie); > > + u64 value; > > + > > + err = __copy_from_user(&value, cookie, sizeof(u64)); > > + if (XE_IOCTL_DBG(xe, err)) { > > + err = -EFAULT; > > + goto free_bind_ops; > > + } > > + if (value) > > + *skip_ops = true; > > + } > > + > > for (i = 0; i < args->num_binds; ++i) { > > u64 range = (*bind_ops)[i].range; > > u64 addr = (*bind_ops)[i].addr; > > @@ -2775,18 +2783,6 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, > > goto free_bind_ops; > > } > > > > - if (i == 0) { > > - *async = !!(flags & DRM_XE_VM_BIND_FLAG_ASYNC); > > - if (XE_IOCTL_DBG(xe, !*async && args->num_syncs)) { > > - err = -EINVAL; > > - goto free_bind_ops; > > - } > > - } else if (XE_IOCTL_DBG(xe, *async != > > - !!(flags & DRM_XE_VM_BIND_FLAG_ASYNC))) { > > - err = -EINVAL; > > - goto free_bind_ops; > > - } > > - > > if (XE_IOCTL_DBG(xe, op > DRM_XE_VM_BIND_OP_PREFETCH) || > > XE_IOCTL_DBG(xe, flags & ~SUPPORTED_FLAGS) || > > XE_IOCTL_DBG(xe, obj && is_null) || > > @@ -2854,12 +2850,25 @@ static int vm_bind_ioctl_signal_fences(struct xe_vm *vm, > > > > xe_exec_queue_last_fence_set(to_wait_exec_queue(vm, q), vm, > > fence); > > + dma_fence_put(fence); > > > > - if (xe_vm_sync_mode(vm, q)) { > > - long timeout = dma_fence_wait(fence, true); > > + return err; > > +} > > + > > +static int vm_bind_ioctl_sync_wait(struct xe_vm *vm, > > + struct dma_fence *fence, > > + u64 __user *cookie) > > +{ > > + long timeout; > > + int err = 0; > > + > > + timeout = dma_fence_wait(fence, true); > > + if (timeout < 0) { > > + u64 value = 1; > > > > - if (timeout < 0) > > - err = -EINTR; > > + err = -ERESTARTSYS; > > + if (copy_to_user(cookie, &value, sizeof(value))) > > + err = -EFAULT; > > } > > > > dma_fence_put(fence); > > @@ -2875,21 +2884,22 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > struct drm_xe_sync __user *syncs_user; > > struct xe_bo **bos = NULL; > > struct drm_gpuva_ops **ops = NULL; > > + struct dma_fence *fence = NULL; > > struct xe_vm *vm; > > struct xe_exec_queue *q = NULL; > > u32 num_syncs; > > struct xe_sync_entry *syncs = NULL; > > struct drm_xe_vm_bind_op *bind_ops; > > LIST_HEAD(ops_list); > > - bool async; > > + bool async, skip_ops; > > int err; > > int i; > > > > - err = vm_bind_ioctl_check_args(xe, args, &bind_ops, &async); > > + err = vm_bind_ioctl_check_args(xe, args, &bind_ops, &async, &skip_ops); > > if (err) > > return err; > > > > - if (XE_IOCTL_DBG(xe, args->pad || args->pad2) || > > + if (XE_IOCTL_DBG(xe, args->pad) || > > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > > return -EINVAL; > > > > @@ -2904,12 +2914,6 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > err = -EINVAL; > > goto put_exec_queue; > > } > > - > > - if (XE_IOCTL_DBG(xe, args->num_binds && async != > > - !!(q->flags & EXEC_QUEUE_FLAG_VM_ASYNC))) { > > - err = -EINVAL; > > - goto put_exec_queue; > > - } > > } > > > > vm = xe_vm_lookup(xef, args->vm_id); > > @@ -2918,14 +2922,6 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > goto put_exec_queue; > > } > > > > - if (!args->exec_queue_id) { > > - if (XE_IOCTL_DBG(xe, args->num_binds && async != > > - !!(vm->flags & XE_VM_FLAG_ASYNC_DEFAULT))) { > > - err = -EINVAL; > > - goto put_vm; > > - } > > - } > > - > > err = down_write_killable(&vm->lock); > > if (err) > > goto put_vm; > > @@ -3015,16 +3011,16 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > } > > } > > > > - if (args->num_syncs) { > > - syncs = kcalloc(args->num_syncs, sizeof(*syncs), GFP_KERNEL); > > + if (args->syncs.num_syncs) { > > + syncs = kcalloc(args->syncs.num_syncs, sizeof(*syncs), GFP_KERNEL); > > if (!syncs) { > > err = -ENOMEM; > > goto put_obj; > > } > > } > > > > - syncs_user = u64_to_user_ptr(args->syncs); > > - for (num_syncs = 0; num_syncs < args->num_syncs; num_syncs++) { > > + syncs_user = u64_to_user_ptr(args->syncs.syncs); > > + for (num_syncs = 0; num_syncs < args->syncs.num_syncs; num_syncs++) { > > err = xe_sync_entry_parse(xe, xef, &syncs[num_syncs], > > &syncs_user[num_syncs], > > (xe_vm_in_lr_mode(vm) ? > > @@ -3035,7 +3031,7 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > goto free_syncs; > > } > > > > - if (!args->num_binds) { > > + if (!args->num_binds || skip_ops) { > > err = -ENODATA; > > goto free_syncs; > > } > > @@ -3060,8 +3056,7 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > err = vm_bind_ioctl_ops_parse(vm, q, ops[i], syncs, num_syncs, > > &ops_list, > > - i == args->num_binds - 1, > > - async); > > + i == args->num_binds - 1); > > if (err) > > goto unwind_ops; > > } > > @@ -3077,7 +3072,10 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > xe_exec_queue_get(q); > > > > err = vm_bind_ioctl_ops_execute(vm, &ops_list); > > - > > + if (!err && !async) { > > + fence = xe_exec_queue_last_fence_get(to_wait_exec_queue(vm, q), vm); > > + dma_fence_get(fence); > > + } > > up_write(&vm->lock); > > > > if (q) > > @@ -3092,13 +3090,19 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > if (args->num_binds > 1) > > kfree(bind_ops); > > > > - return err; > > + return fence ? vm_bind_ioctl_sync_wait(vm, fence, u64_to_user_ptr(args->syncs.cookie)) : > > + err; > > > > unwind_ops: > > vm_bind_ioctl_ops_unwind(vm, ops, args->num_binds); > > free_syncs: > > - if (err == -ENODATA) > > + if (err == -ENODATA) { > > err = vm_bind_ioctl_signal_fences(vm, q, syncs, num_syncs); > > + if (!async) { > > + fence = xe_exec_queue_last_fence_get(to_wait_exec_queue(vm, q), vm); > > + dma_fence_get(fence); > > + } > > + } > > while (num_syncs--) > > xe_sync_entry_cleanup(&syncs[num_syncs]); > > > > @@ -3108,6 +3112,8 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > xe_bo_put(bos[i]); > > release_vm_lock: > > up_write(&vm->lock); > > + if (fence) > > + err = vm_bind_ioctl_sync_wait(vm, fence, u64_to_user_ptr(args->syncs.cookie)); > > put_vm: > > xe_vm_put(vm); > > put_exec_queue: > > diff --git a/drivers/gpu/drm/xe/xe_vm_types.h b/drivers/gpu/drm/xe/xe_vm_types.h > > index 2e023596cb15..63e8a50b88e9 100644 > > --- a/drivers/gpu/drm/xe/xe_vm_types.h > > +++ b/drivers/gpu/drm/xe/xe_vm_types.h > > @@ -138,13 +138,12 @@ struct xe_vm { > > */ > > #define XE_VM_FLAG_64K BIT(0) > > #define XE_VM_FLAG_LR_MODE BIT(1) > > -#define XE_VM_FLAG_ASYNC_DEFAULT BIT(2) > > -#define XE_VM_FLAG_MIGRATION BIT(3) > > -#define XE_VM_FLAG_SCRATCH_PAGE BIT(4) > > -#define XE_VM_FLAG_FAULT_MODE BIT(5) > > -#define XE_VM_FLAG_BANNED BIT(6) > > -#define XE_VM_FLAG_TILE_ID(flags) FIELD_GET(GENMASK(8, 7), flags) > > -#define XE_VM_FLAG_SET_TILE_ID(tile) FIELD_PREP(GENMASK(8, 7), (tile)->id) > > +#define XE_VM_FLAG_MIGRATION BIT(2) > > +#define XE_VM_FLAG_SCRATCH_PAGE BIT(3) > > +#define XE_VM_FLAG_FAULT_MODE BIT(4) > > +#define XE_VM_FLAG_BANNED BIT(5) > > +#define XE_VM_FLAG_TILE_ID(flags) FIELD_GET(GENMASK(7, 6), flags) > > +#define XE_VM_FLAG_SET_TILE_ID(tile) FIELD_PREP(GENMASK(7, 6), (tile)->id) > > unsigned long flags; > > > > /** @composite_fence_ctx: context composite fence */ > > diff --git a/include/uapi/drm/xe_drm.h b/include/uapi/drm/xe_drm.h > > index 0895e4d2a981..8cbe7ca6fe57 100644 > > --- a/include/uapi/drm/xe_drm.h > > +++ b/include/uapi/drm/xe_drm.h > > @@ -140,8 +140,7 @@ struct drm_xe_engine_class_instance { > > * Kernel only classes (not actual hardware engine class). Used for > > * creating ordered queues of VM bind operations. > > */ > > -#define DRM_XE_ENGINE_CLASS_VM_BIND_ASYNC 5 > > -#define DRM_XE_ENGINE_CLASS_VM_BIND_SYNC 6 > > +#define DRM_XE_ENGINE_CLASS_VM_BIND 5 > > /** @engine_class: engine class id */ > > __u16 engine_class; > > /** @engine_instance: engine instance id */ > > @@ -661,7 +660,6 @@ struct drm_xe_vm_create { > > * still enable recoverable pagefaults if supported by the device. > > */ > > #define DRM_XE_VM_CREATE_FLAG_LR_MODE (1 << 1) > > -#define DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT (1 << 2) > > /* > > * DRM_XE_VM_CREATE_FLAG_FAULT_MODE requires also > > * DRM_XE_VM_CREATE_FLAG_LR_MODE. It allows memory to be allocated > > @@ -669,7 +667,7 @@ struct drm_xe_vm_create { > > * The xe driver internally uses recoverable pagefaults to implement > > * this. > > */ > > -#define DRM_XE_VM_CREATE_FLAG_FAULT_MODE (1 << 3) > > +#define DRM_XE_VM_CREATE_FLAG_FAULT_MODE (1 << 2) > > /** @flags: Flags */ > > __u32 flags; > > > > @@ -777,12 +775,11 @@ struct drm_xe_vm_bind_op { > > __u32 op; > > > > #define DRM_XE_VM_BIND_FLAG_READONLY (1 << 0) > > -#define DRM_XE_VM_BIND_FLAG_ASYNC (1 << 1) > > /* > > * Valid on a faulting VM only, do the MAP operation immediately rather > > * than deferring the MAP to the page fault handler. > > */ > > -#define DRM_XE_VM_BIND_FLAG_IMMEDIATE (1 << 2) > > +#define DRM_XE_VM_BIND_FLAG_IMMEDIATE (1 << 1) > > /* > > * When the NULL flag is set, the page tables are setup with a special > > * bit which indicates writes are dropped and all reads return zero. In > > @@ -790,7 +787,7 @@ struct drm_xe_vm_bind_op { > > * operations, the BO handle MBZ, and the BO offset MBZ. This flag is > > * intended to implement VK sparse bindings. > > */ > > -#define DRM_XE_VM_BIND_FLAG_NULL (1 << 3) > > +#define DRM_XE_VM_BIND_FLAG_NULL (1 << 2) > > /** @flags: Bind flags */ > > __u32 flags; > > > > @@ -808,6 +805,36 @@ struct drm_xe_vm_bind_op { > > __u64 reserved[3]; > > }; > > > > +/** > > + * struct drm_xe_syncs - In / out syncs for IOCTLs. > > + */ > > +struct drm_xe_syncs { > > + /** @num_syncs: amount of syncs to wait on */ > > + __u32 num_syncs; > > + > > + /* > > + * Block in IOCTL until operation complete, num_syncs MBZ if set. > > + */ > > +#define DRM_XE_SYNCS_FLAG_WAIT_FOR_OP (1 << 0) > > + /** @flags: Sync flags */ > > + __u32 flags; > > + > > + /** > > + * @cookie: pointer which is written with an non-zero value if IOCTL > > + * operation has been committed but the wait for completion > > + * (DRM_XE_SYNCS_FLAG_WAIT_FOR_OP is set) is interrupted. Value of > > + * *cookie MBZ for IOCTL operations to be executed, if non-zero > > + * operations are skipped and blocks until exec queue for IOCTL is idle. > > + */ > > + __u64 cookie; > > just left a comment in v2. > pointer in the comment is misleading, looks like UMD needs to allocate memory and set it in here. > about the name I think it should be named as reserved, so UMDs dont touch it at all in fact I think UMDs should not even know that the reserved field > is being used for something. > The UMD does need to allocate memory, here is an IGT snippet: 93 int __xe_vm_bind(int fd, uint32_t vm, uint32_t exec_queue, uint32_t bo, 94 uint64_t offset, uint64_t addr, uint64_t size, uint32_t op, 95 uint32_t flags, struct drm_xe_sync *sync, uint32_t num_syncs, 96 uint32_t prefetch_region, uint8_t pat_index, uint64_t ext) 97 { 98 uint64_t cookie = 0; 99 struct drm_xe_vm_bind bind = { 100 .extensions = ext, 101 .vm_id = vm, 102 .num_binds = 1, 103 .bind.obj = bo, 104 .bind.obj_offset = offset, 105 .bind.range = size, 106 .bind.addr = addr, 107 .bind.op = op, 108 .bind.flags = flags, 109 .bind.prefetch_mem_region_instance = prefetch_region, 110 .syncs.num_syncs = num_syncs, 111 .syncs.syncs = (uintptr_t)sync, 112 .syncs.flags = num_syncs == 0 ? 113 DRM_XE_SYNCS_FLAG_WAIT_FOR_OP : 0, 114 .syncs.cookie = num_syncs == 0 ? (uintptr_t)&cookie : 0, 115 .exec_queue_id = exec_queue, 116 .bind.pat_index = (pat_index == DEFAULT_PAT_INDEX) ? 117 intel_get_pat_idx_wb(fd) : pat_index, 118 }; 119 120 if (igt_ioctl(fd, DRM_IOCTL_XE_VM_BIND, &bind)) 121 return -errno; 122 123 return 0; 124 } The cookie is a user pointer. If this IOCTL has interrupted and then restarted by the UMD the value of cookie would tell the KMD what to do on the restart. Does this make sense? Matt > > + > > + /** @syncs: pointer to struct drm_xe_sync array */ > > + __u64 syncs; > > + > > + /** @reserved: Reserved */ > > + __u64 reserved[2]; > > +}; > > + > > struct drm_xe_vm_bind { > > /** @extensions: Pointer to the first extension struct, if any */ > > __u64 extensions; > > @@ -839,14 +866,8 @@ struct drm_xe_vm_bind { > > __u64 vector_of_binds; > > }; > > > > - /** @pad: MBZ */ > > - __u32 pad2; > > - > > - /** @num_syncs: amount of syncs to wait on */ > > - __u32 num_syncs; > > - > > - /** @syncs: pointer to struct drm_xe_sync array */ > > - __u64 syncs; > > + /** @syncs: syncs for bind */ > > + struct drm_xe_syncs syncs; > > > > /** @reserved: Reserved */ > > __u64 reserved[2]; > > @@ -975,14 +996,14 @@ struct drm_xe_exec { > > /** @extensions: Pointer to the first extension struct, if any */ > > __u64 extensions; > > > > + /** @pad: MBZ */ > > + __u32 pad; > > + > > /** @exec_queue_id: Exec queue ID for the batch buffer */ > > __u32 exec_queue_id; > > > > - /** @num_syncs: Amount of struct drm_xe_sync in array. */ > > - __u32 num_syncs; > > - > > - /** @syncs: Pointer to struct drm_xe_sync array. */ > > - __u64 syncs; > > + /** @syncs: syncs for exec */ > > + struct drm_xe_syncs syncs; > > if not implemented should not be used > The idea is 'struct drm_xe_syncs' is a unified interface between IOCTLs that require syncs. Currently execs implement a subset of 'struct drm_xe_syncs' features. Matt > > > > /** > > * @address: address of batch buffer if num_batch_buffer == 1 or an > > @@ -996,8 +1017,8 @@ struct drm_xe_exec { > > */ > > __u16 num_batch_buffer; > > > > - /** @pad: MBZ */ > > - __u16 pad[3]; > > + /** @pad2: MBZ */ > > + __u16 pad2[3]; > > > > /** @reserved: Reserved */ > > __u64 reserved[2]; > ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v3] drm/xe/uapi: Uniform async vs sync handling 2023-12-14 0:26 ` Matthew Brost @ 2023-12-14 1:51 ` Souza, Jose 2023-12-14 3:23 ` Matthew Brost 0 siblings, 1 reply; 14+ messages in thread From: Souza, Jose @ 2023-12-14 1:51 UTC (permalink / raw) To: Brost, Matthew Cc: Dugast, Francois, intel-xe@lists.freedesktop.org, Vivi, Rodrigo On Thu, 2023-12-14 at 00:26 +0000, Matthew Brost wrote: > On Wed, Dec 13, 2023 at 03:49:53PM -0700, Souza, Jose wrote: > > On Wed, 2023-12-13 at 14:29 -0800, Matthew Brost wrote: > > > Remove concept of async vs sync VM bind queues, rather make async vs > > > sync a per IOCTL choice. Since this is per IOCTL, it makes sense to have > > > a singular flag IOCTL rather than per VM bind op flag too. Add > > > DRM_XE_SYNCS_FLAG_WAIT_FOR_OP which is an input sync flag to support > > > this. Support this new flag for both the VM bind IOCTL only with a path > > > to support this for execs too. > > > > > > v2: Add cookie, move sync wait outside of any locks. > > > v3: Skip bind operations if *cookie non-zero, check reserved bits zero > > > > > > Cc: Rodrigo Vivi <rodrigo.vivi@intel.com> > > > Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com> > > > Cc: Francois Dugast <francois.dugast@intel.com> > > > Signed-off-by: Matthew Brost <matthew.brost@intel.com> > > > --- > > > drivers/gpu/drm/xe/xe_exec.c | 13 ++- > > > drivers/gpu/drm/xe/xe_exec_queue.c | 7 +- > > > drivers/gpu/drm/xe/xe_exec_queue_types.h | 2 - > > > drivers/gpu/drm/xe/xe_vm.c | 140 ++++++++++++----------- > > > drivers/gpu/drm/xe/xe_vm_types.h | 13 +-- > > > include/uapi/drm/xe_drm.h | 65 +++++++---- > > > 6 files changed, 131 insertions(+), 109 deletions(-) > > > > > > diff --git a/drivers/gpu/drm/xe/xe_exec.c b/drivers/gpu/drm/xe/xe_exec.c > > > index ba92e5619da3..af2b676c8eef 100644 > > > --- a/drivers/gpu/drm/xe/xe_exec.c > > > +++ b/drivers/gpu/drm/xe/xe_exec.c > > > @@ -104,7 +104,7 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > struct xe_device *xe = to_xe_device(dev); > > > struct xe_file *xef = to_xe_file(file); > > > struct drm_xe_exec *args = data; > > > - struct drm_xe_sync __user *syncs_user = u64_to_user_ptr(args->syncs); > > > + struct drm_xe_sync __user *syncs_user = u64_to_user_ptr(args->syncs.syncs); > > > u64 __user *addresses_user = u64_to_user_ptr(args->address); > > > struct xe_exec_queue *q; > > > struct xe_sync_entry *syncs = NULL; > > > @@ -120,7 +120,10 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > int err = 0; > > > > > > if (XE_IOCTL_DBG(xe, args->extensions) || > > > - XE_IOCTL_DBG(xe, args->pad[0] || args->pad[1] || args->pad[2]) || > > > + XE_IOCTL_DBG(xe, args->pad || args->pad2[0] || args->pad2[1] || args->pad2[2]) || > > > + XE_IOCTL_DBG(xe, args->syncs.flags) || > > > + XE_IOCTL_DBG(xe, args->syncs.cookie) || > > > + XE_IOCTL_DBG(xe, args->syncs.reserved[0] || args->syncs.reserved[1]) || > > > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > > > return -EINVAL; > > > > > > @@ -140,8 +143,8 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > goto err_exec_queue; > > > } > > > > > > - if (args->num_syncs) { > > > - syncs = kcalloc(args->num_syncs, sizeof(*syncs), GFP_KERNEL); > > > + if (args->syncs.num_syncs) { > > > + syncs = kcalloc(args->syncs.num_syncs, sizeof(*syncs), GFP_KERNEL); > > > if (!syncs) { > > > err = -ENOMEM; > > > goto err_exec_queue; > > > @@ -150,7 +153,7 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > > > vm = q->vm; > > > > > > - for (i = 0; i < args->num_syncs; i++) { > > > + for (i = 0; i < args->syncs.num_syncs; i++) { > > > err = xe_sync_entry_parse(xe, xef, &syncs[num_syncs++], > > > &syncs_user[i], SYNC_PARSE_FLAG_EXEC | > > > (xe_vm_in_lr_mode(vm) ? > > > diff --git a/drivers/gpu/drm/xe/xe_exec_queue.c b/drivers/gpu/drm/xe/xe_exec_queue.c > > > index eeb9605dd45f..a25d67971fdd 100644 > > > --- a/drivers/gpu/drm/xe/xe_exec_queue.c > > > +++ b/drivers/gpu/drm/xe/xe_exec_queue.c > > > @@ -625,10 +625,7 @@ int xe_exec_queue_create_ioctl(struct drm_device *dev, void *data, > > > if (XE_IOCTL_DBG(xe, eci[0].gt_id >= xe->info.gt_count)) > > > return -EINVAL; > > > > > > - if (eci[0].engine_class >= DRM_XE_ENGINE_CLASS_VM_BIND_ASYNC) { > > > - bool sync = eci[0].engine_class == > > > - DRM_XE_ENGINE_CLASS_VM_BIND_SYNC; > > > - > > > + if (eci[0].engine_class == DRM_XE_ENGINE_CLASS_VM_BIND) { > > > for_each_gt(gt, xe, id) { > > > struct xe_exec_queue *new; > > > > > > @@ -654,8 +651,6 @@ int xe_exec_queue_create_ioctl(struct drm_device *dev, void *data, > > > args->width, hwe, > > > EXEC_QUEUE_FLAG_PERSISTENT | > > > EXEC_QUEUE_FLAG_VM | > > > - (sync ? 0 : > > > - EXEC_QUEUE_FLAG_VM_ASYNC) | > > > (id ? > > > EXEC_QUEUE_FLAG_BIND_ENGINE_CHILD : > > > 0)); > > > diff --git a/drivers/gpu/drm/xe/xe_exec_queue_types.h b/drivers/gpu/drm/xe/xe_exec_queue_types.h > > > index c7aefa1c8c31..0f7f6cded4a3 100644 > > > --- a/drivers/gpu/drm/xe/xe_exec_queue_types.h > > > +++ b/drivers/gpu/drm/xe/xe_exec_queue_types.h > > > @@ -84,8 +84,6 @@ struct xe_exec_queue { > > > #define EXEC_QUEUE_FLAG_VM BIT(4) > > > /* child of VM queue for multi-tile VM jobs */ > > > #define EXEC_QUEUE_FLAG_BIND_ENGINE_CHILD BIT(5) > > > -/* VM jobs for this queue are asynchronous */ > > > -#define EXEC_QUEUE_FLAG_VM_ASYNC BIT(6) > > > > > > /** > > > * @flags: flags for this exec queue, should statically setup aside from ban > > > diff --git a/drivers/gpu/drm/xe/xe_vm.c b/drivers/gpu/drm/xe/xe_vm.c > > > index 2f3df9ee67c9..8407c4d54a45 100644 > > > --- a/drivers/gpu/drm/xe/xe_vm.c > > > +++ b/drivers/gpu/drm/xe/xe_vm.c > > > @@ -1343,9 +1343,7 @@ struct xe_vm *xe_vm_create(struct xe_device *xe, u32 flags) > > > struct xe_gt *gt = tile->primary_gt; > > > struct xe_vm *migrate_vm; > > > struct xe_exec_queue *q; > > > - u32 create_flags = EXEC_QUEUE_FLAG_VM | > > > - ((flags & XE_VM_FLAG_ASYNC_DEFAULT) ? > > > - EXEC_QUEUE_FLAG_VM_ASYNC : 0); > > > + u32 create_flags = EXEC_QUEUE_FLAG_VM; > > > > > > if (!vm->pt_root[id]) > > > continue; > > > @@ -1712,12 +1710,6 @@ xe_vm_bind_vma(struct xe_vma *vma, struct xe_exec_queue *q, > > > return ERR_PTR(err); > > > } > > > > > > -static bool xe_vm_sync_mode(struct xe_vm *vm, struct xe_exec_queue *q) > > > -{ > > > - return q ? !(q->flags & EXEC_QUEUE_FLAG_VM_ASYNC) : > > > - !(vm->flags & XE_VM_FLAG_ASYNC_DEFAULT); > > > -} > > > - > > > static int __xe_vm_bind(struct xe_vm *vm, struct xe_vma *vma, > > > struct xe_exec_queue *q, struct xe_sync_entry *syncs, > > > u32 num_syncs, bool immediate, bool first_op, > > > @@ -1747,8 +1739,6 @@ static int __xe_vm_bind(struct xe_vm *vm, struct xe_vma *vma, > > > > > > if (last_op) > > > xe_exec_queue_last_fence_set(wait_exec_queue, vm, fence); > > > - if (last_op && xe_vm_sync_mode(vm, q)) > > > - dma_fence_wait(fence, true); > > > dma_fence_put(fence); > > > > > > return 0; > > > @@ -1791,8 +1781,6 @@ static int xe_vm_unbind(struct xe_vm *vm, struct xe_vma *vma, > > > xe_vma_destroy(vma, fence); > > > if (last_op) > > > xe_exec_queue_last_fence_set(wait_exec_queue, vm, fence); > > > - if (last_op && xe_vm_sync_mode(vm, q)) > > > - dma_fence_wait(fence, true); > > > dma_fence_put(fence); > > > > > > return 0; > > > @@ -1800,7 +1788,6 @@ static int xe_vm_unbind(struct xe_vm *vm, struct xe_vma *vma, > > > > > > #define ALL_DRM_XE_VM_CREATE_FLAGS (DRM_XE_VM_CREATE_FLAG_SCRATCH_PAGE | \ > > > DRM_XE_VM_CREATE_FLAG_LR_MODE | \ > > > - DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT | \ > > > DRM_XE_VM_CREATE_FLAG_FAULT_MODE) > > > > > > int xe_vm_create_ioctl(struct drm_device *dev, void *data, > > > @@ -1854,8 +1841,6 @@ int xe_vm_create_ioctl(struct drm_device *dev, void *data, > > > flags |= XE_VM_FLAG_SCRATCH_PAGE; > > > if (args->flags & DRM_XE_VM_CREATE_FLAG_LR_MODE) > > > flags |= XE_VM_FLAG_LR_MODE; > > > - if (args->flags & DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT) > > > - flags |= XE_VM_FLAG_ASYNC_DEFAULT; > > > if (args->flags & DRM_XE_VM_CREATE_FLAG_FAULT_MODE) > > > flags |= XE_VM_FLAG_FAULT_MODE; > > > > > > @@ -2263,8 +2248,7 @@ static int xe_vma_op_commit(struct xe_vm *vm, struct xe_vma_op *op) > > > static int vm_bind_ioctl_ops_parse(struct xe_vm *vm, struct xe_exec_queue *q, > > > struct drm_gpuva_ops *ops, > > > struct xe_sync_entry *syncs, u32 num_syncs, > > > - struct list_head *ops_list, bool last, > > > - bool async) > > > + struct list_head *ops_list, bool last) > > > { > > > struct xe_vma_op *last_op = NULL; > > > struct drm_gpuva_op *__op; > > > @@ -2696,28 +2680,28 @@ static int vm_bind_ioctl_ops_execute(struct xe_vm *vm, > > > > > > #ifdef TEST_VM_ASYNC_OPS_ERROR > > > #define SUPPORTED_FLAGS \ > > > - (FORCE_ASYNC_OP_ERROR | DRM_XE_VM_BIND_FLAG_ASYNC | \ > > > - DRM_XE_VM_BIND_FLAG_READONLY | DRM_XE_VM_BIND_FLAG_IMMEDIATE | \ > > > - DRM_XE_VM_BIND_FLAG_NULL | 0xffff) > > > + (FORCE_ASYNC_OP_ERROR | DRM_XE_VM_BIND_FLAG_READONLY | \ > > > + DRM_XE_VM_BIND_FLAG_IMMEDIATE | DRM_XE_VM_BIND_FLAG_NULL | 0xffff) > > > #else > > > #define SUPPORTED_FLAGS \ > > > - (DRM_XE_VM_BIND_FLAG_ASYNC | DRM_XE_VM_BIND_FLAG_READONLY | \ > > > + (DRM_XE_VM_BIND_FLAG_READONLY | \ > > > DRM_XE_VM_BIND_FLAG_IMMEDIATE | DRM_XE_VM_BIND_FLAG_NULL | \ > > > 0xffff) > > > #endif > > > #define XE_64K_PAGE_MASK 0xffffull > > > +#define ALL_DRM_XE_SYNCS_FLAGS (DRM_XE_SYNCS_FLAG_WAIT_FOR_OP) > > > > > > #define MAX_BINDS 512 /* FIXME: Picking random upper limit */ > > > > > > static int vm_bind_ioctl_check_args(struct xe_device *xe, > > > struct drm_xe_vm_bind *args, > > > struct drm_xe_vm_bind_op **bind_ops, > > > - bool *async) > > > + bool *async, bool *skip_ops) > > > { > > > int err; > > > int i; > > > > > > - if (XE_IOCTL_DBG(xe, args->pad || args->pad2) || > > > + if (XE_IOCTL_DBG(xe, args->pad) || > > > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > > > return -EINVAL; > > > > > > @@ -2745,6 +2729,30 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, > > > *bind_ops = &args->bind; > > > } > > > > > > + *async = !(args->syncs.flags & DRM_XE_SYNCS_FLAG_WAIT_FOR_OP); > > > + *skip_ops = false; > > > + > > > + if (XE_IOCTL_DBG(xe, args->syncs.flags & ~ALL_DRM_XE_SYNCS_FLAGS) || > > > + XE_IOCTL_DBG(xe, *async && args->syncs.cookie) || > > > + XE_IOCTL_DBG(xe, args->syncs.reserved[0] || args->syncs.reserved[1]) || > > > + XE_IOCTL_DBG(xe, !*async && args->syncs.num_syncs)) { > > > + err = -EINVAL; > > > + goto free_bind_ops; > > > + } > > > + > > > + if (!*async) { > > > + u64 __user *cookie = u64_to_user_ptr(args->syncs.cookie); > > > + u64 value; > > > + > > > + err = __copy_from_user(&value, cookie, sizeof(u64)); > > > + if (XE_IOCTL_DBG(xe, err)) { > > > + err = -EFAULT; > > > + goto free_bind_ops; > > > + } > > > + if (value) > > > + *skip_ops = true; > > > + } > > > + > > > for (i = 0; i < args->num_binds; ++i) { > > > u64 range = (*bind_ops)[i].range; > > > u64 addr = (*bind_ops)[i].addr; > > > @@ -2775,18 +2783,6 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, > > > goto free_bind_ops; > > > } > > > > > > - if (i == 0) { > > > - *async = !!(flags & DRM_XE_VM_BIND_FLAG_ASYNC); > > > - if (XE_IOCTL_DBG(xe, !*async && args->num_syncs)) { > > > - err = -EINVAL; > > > - goto free_bind_ops; > > > - } > > > - } else if (XE_IOCTL_DBG(xe, *async != > > > - !!(flags & DRM_XE_VM_BIND_FLAG_ASYNC))) { > > > - err = -EINVAL; > > > - goto free_bind_ops; > > > - } > > > - > > > if (XE_IOCTL_DBG(xe, op > DRM_XE_VM_BIND_OP_PREFETCH) || > > > XE_IOCTL_DBG(xe, flags & ~SUPPORTED_FLAGS) || > > > XE_IOCTL_DBG(xe, obj && is_null) || > > > @@ -2854,12 +2850,25 @@ static int vm_bind_ioctl_signal_fences(struct xe_vm *vm, > > > > > > xe_exec_queue_last_fence_set(to_wait_exec_queue(vm, q), vm, > > > fence); > > > + dma_fence_put(fence); > > > > > > - if (xe_vm_sync_mode(vm, q)) { > > > - long timeout = dma_fence_wait(fence, true); > > > + return err; > > > +} > > > + > > > +static int vm_bind_ioctl_sync_wait(struct xe_vm *vm, > > > + struct dma_fence *fence, > > > + u64 __user *cookie) > > > +{ > > > + long timeout; > > > + int err = 0; > > > + > > > + timeout = dma_fence_wait(fence, true); > > > + if (timeout < 0) { > > > + u64 value = 1; > > > > > > - if (timeout < 0) > > > - err = -EINTR; > > > + err = -ERESTARTSYS; > > > + if (copy_to_user(cookie, &value, sizeof(value))) > > > + err = -EFAULT; > > > } > > > > > > dma_fence_put(fence); > > > @@ -2875,21 +2884,22 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > struct drm_xe_sync __user *syncs_user; > > > struct xe_bo **bos = NULL; > > > struct drm_gpuva_ops **ops = NULL; > > > + struct dma_fence *fence = NULL; > > > struct xe_vm *vm; > > > struct xe_exec_queue *q = NULL; > > > u32 num_syncs; > > > struct xe_sync_entry *syncs = NULL; > > > struct drm_xe_vm_bind_op *bind_ops; > > > LIST_HEAD(ops_list); > > > - bool async; > > > + bool async, skip_ops; > > > int err; > > > int i; > > > > > > - err = vm_bind_ioctl_check_args(xe, args, &bind_ops, &async); > > > + err = vm_bind_ioctl_check_args(xe, args, &bind_ops, &async, &skip_ops); > > > if (err) > > > return err; > > > > > > - if (XE_IOCTL_DBG(xe, args->pad || args->pad2) || > > > + if (XE_IOCTL_DBG(xe, args->pad) || > > > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > > > return -EINVAL; > > > > > > @@ -2904,12 +2914,6 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > err = -EINVAL; > > > goto put_exec_queue; > > > } > > > - > > > - if (XE_IOCTL_DBG(xe, args->num_binds && async != > > > - !!(q->flags & EXEC_QUEUE_FLAG_VM_ASYNC))) { > > > - err = -EINVAL; > > > - goto put_exec_queue; > > > - } > > > } > > > > > > vm = xe_vm_lookup(xef, args->vm_id); > > > @@ -2918,14 +2922,6 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > goto put_exec_queue; > > > } > > > > > > - if (!args->exec_queue_id) { > > > - if (XE_IOCTL_DBG(xe, args->num_binds && async != > > > - !!(vm->flags & XE_VM_FLAG_ASYNC_DEFAULT))) { > > > - err = -EINVAL; > > > - goto put_vm; > > > - } > > > - } > > > - > > > err = down_write_killable(&vm->lock); > > > if (err) > > > goto put_vm; > > > @@ -3015,16 +3011,16 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > } > > > } > > > > > > - if (args->num_syncs) { > > > - syncs = kcalloc(args->num_syncs, sizeof(*syncs), GFP_KERNEL); > > > + if (args->syncs.num_syncs) { > > > + syncs = kcalloc(args->syncs.num_syncs, sizeof(*syncs), GFP_KERNEL); > > > if (!syncs) { > > > err = -ENOMEM; > > > goto put_obj; > > > } > > > } > > > > > > - syncs_user = u64_to_user_ptr(args->syncs); > > > - for (num_syncs = 0; num_syncs < args->num_syncs; num_syncs++) { > > > + syncs_user = u64_to_user_ptr(args->syncs.syncs); > > > + for (num_syncs = 0; num_syncs < args->syncs.num_syncs; num_syncs++) { > > > err = xe_sync_entry_parse(xe, xef, &syncs[num_syncs], > > > &syncs_user[num_syncs], > > > (xe_vm_in_lr_mode(vm) ? > > > @@ -3035,7 +3031,7 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > goto free_syncs; > > > } > > > > > > - if (!args->num_binds) { > > > + if (!args->num_binds || skip_ops) { > > > err = -ENODATA; > > > goto free_syncs; > > > } > > > @@ -3060,8 +3056,7 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > > > err = vm_bind_ioctl_ops_parse(vm, q, ops[i], syncs, num_syncs, > > > &ops_list, > > > - i == args->num_binds - 1, > > > - async); > > > + i == args->num_binds - 1); > > > if (err) > > > goto unwind_ops; > > > } > > > @@ -3077,7 +3072,10 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > xe_exec_queue_get(q); > > > > > > err = vm_bind_ioctl_ops_execute(vm, &ops_list); > > > - > > > + if (!err && !async) { > > > + fence = xe_exec_queue_last_fence_get(to_wait_exec_queue(vm, q), vm); > > > + dma_fence_get(fence); > > > + } > > > up_write(&vm->lock); > > > > > > if (q) > > > @@ -3092,13 +3090,19 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > if (args->num_binds > 1) > > > kfree(bind_ops); > > > > > > - return err; > > > + return fence ? vm_bind_ioctl_sync_wait(vm, fence, u64_to_user_ptr(args->syncs.cookie)) : > > > + err; > > > > > > unwind_ops: > > > vm_bind_ioctl_ops_unwind(vm, ops, args->num_binds); > > > free_syncs: > > > - if (err == -ENODATA) > > > + if (err == -ENODATA) { > > > err = vm_bind_ioctl_signal_fences(vm, q, syncs, num_syncs); > > > + if (!async) { > > > + fence = xe_exec_queue_last_fence_get(to_wait_exec_queue(vm, q), vm); > > > + dma_fence_get(fence); > > > + } > > > + } > > > while (num_syncs--) > > > xe_sync_entry_cleanup(&syncs[num_syncs]); > > > > > > @@ -3108,6 +3112,8 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > xe_bo_put(bos[i]); > > > release_vm_lock: > > > up_write(&vm->lock); > > > + if (fence) > > > + err = vm_bind_ioctl_sync_wait(vm, fence, u64_to_user_ptr(args->syncs.cookie)); > > > put_vm: > > > xe_vm_put(vm); > > > put_exec_queue: > > > diff --git a/drivers/gpu/drm/xe/xe_vm_types.h b/drivers/gpu/drm/xe/xe_vm_types.h > > > index 2e023596cb15..63e8a50b88e9 100644 > > > --- a/drivers/gpu/drm/xe/xe_vm_types.h > > > +++ b/drivers/gpu/drm/xe/xe_vm_types.h > > > @@ -138,13 +138,12 @@ struct xe_vm { > > > */ > > > #define XE_VM_FLAG_64K BIT(0) > > > #define XE_VM_FLAG_LR_MODE BIT(1) > > > -#define XE_VM_FLAG_ASYNC_DEFAULT BIT(2) > > > -#define XE_VM_FLAG_MIGRATION BIT(3) > > > -#define XE_VM_FLAG_SCRATCH_PAGE BIT(4) > > > -#define XE_VM_FLAG_FAULT_MODE BIT(5) > > > -#define XE_VM_FLAG_BANNED BIT(6) > > > -#define XE_VM_FLAG_TILE_ID(flags) FIELD_GET(GENMASK(8, 7), flags) > > > -#define XE_VM_FLAG_SET_TILE_ID(tile) FIELD_PREP(GENMASK(8, 7), (tile)->id) > > > +#define XE_VM_FLAG_MIGRATION BIT(2) > > > +#define XE_VM_FLAG_SCRATCH_PAGE BIT(3) > > > +#define XE_VM_FLAG_FAULT_MODE BIT(4) > > > +#define XE_VM_FLAG_BANNED BIT(5) > > > +#define XE_VM_FLAG_TILE_ID(flags) FIELD_GET(GENMASK(7, 6), flags) > > > +#define XE_VM_FLAG_SET_TILE_ID(tile) FIELD_PREP(GENMASK(7, 6), (tile)->id) > > > unsigned long flags; > > > > > > /** @composite_fence_ctx: context composite fence */ > > > diff --git a/include/uapi/drm/xe_drm.h b/include/uapi/drm/xe_drm.h > > > index 0895e4d2a981..8cbe7ca6fe57 100644 > > > --- a/include/uapi/drm/xe_drm.h > > > +++ b/include/uapi/drm/xe_drm.h > > > @@ -140,8 +140,7 @@ struct drm_xe_engine_class_instance { > > > * Kernel only classes (not actual hardware engine class). Used for > > > * creating ordered queues of VM bind operations. > > > */ > > > -#define DRM_XE_ENGINE_CLASS_VM_BIND_ASYNC 5 > > > -#define DRM_XE_ENGINE_CLASS_VM_BIND_SYNC 6 > > > +#define DRM_XE_ENGINE_CLASS_VM_BIND 5 > > > /** @engine_class: engine class id */ > > > __u16 engine_class; > > > /** @engine_instance: engine instance id */ > > > @@ -661,7 +660,6 @@ struct drm_xe_vm_create { > > > * still enable recoverable pagefaults if supported by the device. > > > */ > > > #define DRM_XE_VM_CREATE_FLAG_LR_MODE (1 << 1) > > > -#define DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT (1 << 2) > > > /* > > > * DRM_XE_VM_CREATE_FLAG_FAULT_MODE requires also > > > * DRM_XE_VM_CREATE_FLAG_LR_MODE. It allows memory to be allocated > > > @@ -669,7 +667,7 @@ struct drm_xe_vm_create { > > > * The xe driver internally uses recoverable pagefaults to implement > > > * this. > > > */ > > > -#define DRM_XE_VM_CREATE_FLAG_FAULT_MODE (1 << 3) > > > +#define DRM_XE_VM_CREATE_FLAG_FAULT_MODE (1 << 2) > > > /** @flags: Flags */ > > > __u32 flags; > > > > > > @@ -777,12 +775,11 @@ struct drm_xe_vm_bind_op { > > > __u32 op; > > > > > > #define DRM_XE_VM_BIND_FLAG_READONLY (1 << 0) > > > -#define DRM_XE_VM_BIND_FLAG_ASYNC (1 << 1) > > > /* > > > * Valid on a faulting VM only, do the MAP operation immediately rather > > > * than deferring the MAP to the page fault handler. > > > */ > > > -#define DRM_XE_VM_BIND_FLAG_IMMEDIATE (1 << 2) > > > +#define DRM_XE_VM_BIND_FLAG_IMMEDIATE (1 << 1) > > > /* > > > * When the NULL flag is set, the page tables are setup with a special > > > * bit which indicates writes are dropped and all reads return zero. In > > > @@ -790,7 +787,7 @@ struct drm_xe_vm_bind_op { > > > * operations, the BO handle MBZ, and the BO offset MBZ. This flag is > > > * intended to implement VK sparse bindings. > > > */ > > > -#define DRM_XE_VM_BIND_FLAG_NULL (1 << 3) > > > +#define DRM_XE_VM_BIND_FLAG_NULL (1 << 2) > > > /** @flags: Bind flags */ > > > __u32 flags; > > > > > > @@ -808,6 +805,36 @@ struct drm_xe_vm_bind_op { > > > __u64 reserved[3]; > > > }; > > > > > > +/** > > > + * struct drm_xe_syncs - In / out syncs for IOCTLs. > > > + */ > > > +struct drm_xe_syncs { > > > + /** @num_syncs: amount of syncs to wait on */ > > > + __u32 num_syncs; > > > + > > > + /* > > > + * Block in IOCTL until operation complete, num_syncs MBZ if set. > > > + */ > > > +#define DRM_XE_SYNCS_FLAG_WAIT_FOR_OP (1 << 0) > > > + /** @flags: Sync flags */ > > > + __u32 flags; > > > + > > > + /** > > > + * @cookie: pointer which is written with an non-zero value if IOCTL > > > + * operation has been committed but the wait for completion > > > + * (DRM_XE_SYNCS_FLAG_WAIT_FOR_OP is set) is interrupted. Value of > > > + * *cookie MBZ for IOCTL operations to be executed, if non-zero > > > + * operations are skipped and blocks until exec queue for IOCTL is idle. > > > + */ > > > + __u64 cookie; > > > > just left a comment in v2. > > pointer in the comment is misleading, looks like UMD needs to allocate memory and set it in here. > > about the name I think it should be named as reserved, so UMDs dont touch it at all in fact I think UMDs should not even know that the reserved field > > is being used for something. > > > > The UMD does need to allocate memory, here is an IGT snippet: > > 93 int __xe_vm_bind(int fd, uint32_t vm, uint32_t exec_queue, uint32_t bo, > 94 uint64_t offset, uint64_t addr, uint64_t size, uint32_t op, > 95 uint32_t flags, struct drm_xe_sync *sync, uint32_t num_syncs, > 96 uint32_t prefetch_region, uint8_t pat_index, uint64_t ext) > 97 { > 98 uint64_t cookie = 0; > 99 struct drm_xe_vm_bind bind = { > 100 .extensions = ext, > 101 .vm_id = vm, > 102 .num_binds = 1, > 103 .bind.obj = bo, > 104 .bind.obj_offset = offset, > 105 .bind.range = size, > 106 .bind.addr = addr, > 107 .bind.op = op, > 108 .bind.flags = flags, > 109 .bind.prefetch_mem_region_instance = prefetch_region, > 110 .syncs.num_syncs = num_syncs, > 111 .syncs.syncs = (uintptr_t)sync, > 112 .syncs.flags = num_syncs == 0 ? > 113 DRM_XE_SYNCS_FLAG_WAIT_FOR_OP : 0, > 114 .syncs.cookie = num_syncs == 0 ? (uintptr_t)&cookie : 0, > 115 .exec_queue_id = exec_queue, > 116 .bind.pat_index = (pat_index == DEFAULT_PAT_INDEX) ? > 117 intel_get_pat_idx_wb(fd) : pat_index, > 118 }; > 119 > 120 if (igt_ioctl(fd, DRM_IOCTL_XE_VM_BIND, &bind)) > 121 return -errno; > 122 > 123 return 0; > 124 } > > The cookie is a user pointer. If this IOCTL has interrupted and then > restarted by the UMD the value of cookie would tell the KMD what to do > on the restart. I cant see a reason to not use .syncs.cookie directly without any pointer. > > Does this make sense? > > Matt > > > > + > > > + /** @syncs: pointer to struct drm_xe_sync array */ > > > + __u64 syncs; > > > + > > > + /** @reserved: Reserved */ > > > + __u64 reserved[2]; > > > +}; > > > + > > > struct drm_xe_vm_bind { > > > /** @extensions: Pointer to the first extension struct, if any */ > > > __u64 extensions; > > > @@ -839,14 +866,8 @@ struct drm_xe_vm_bind { > > > __u64 vector_of_binds; > > > }; > > > > > > - /** @pad: MBZ */ > > > - __u32 pad2; > > > - > > > - /** @num_syncs: amount of syncs to wait on */ > > > - __u32 num_syncs; > > > - > > > - /** @syncs: pointer to struct drm_xe_sync array */ > > > - __u64 syncs; > > > + /** @syncs: syncs for bind */ > > > + struct drm_xe_syncs syncs; > > > > > > /** @reserved: Reserved */ > > > __u64 reserved[2]; > > > @@ -975,14 +996,14 @@ struct drm_xe_exec { > > > /** @extensions: Pointer to the first extension struct, if any */ > > > __u64 extensions; > > > > > > + /** @pad: MBZ */ > > > + __u32 pad; > > > + > > > /** @exec_queue_id: Exec queue ID for the batch buffer */ > > > __u32 exec_queue_id; > > > > > > - /** @num_syncs: Amount of struct drm_xe_sync in array. */ > > > - __u32 num_syncs; > > > - > > > - /** @syncs: Pointer to struct drm_xe_sync array. */ > > > - __u64 syncs; > > > + /** @syncs: syncs for exec */ > > > + struct drm_xe_syncs syncs; > > > > if not implemented should not be used > > > > The idea is 'struct drm_xe_syncs' is a unified interface between IOCTLs > that require syncs. Currently execs implement a subset of 'struct > drm_xe_syncs' features. But not mentioned anywere. I`m against it, Rodrigo and Francois might have a better opinion here about leaving stuff in the uAPI that is not used. But if leaving it shout at least have a comment saying what wont work with drm_xe_exec. > > Matt > > > > > > > /** > > > * @address: address of batch buffer if num_batch_buffer == 1 or an > > > @@ -996,8 +1017,8 @@ struct drm_xe_exec { > > > */ > > > __u16 num_batch_buffer; > > > > > > - /** @pad: MBZ */ > > > - __u16 pad[3]; > > > + /** @pad2: MBZ */ > > > + __u16 pad2[3]; > > > > > > /** @reserved: Reserved */ > > > __u64 reserved[2]; > > ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v3] drm/xe/uapi: Uniform async vs sync handling 2023-12-14 1:51 ` Souza, Jose @ 2023-12-14 3:23 ` Matthew Brost 2023-12-14 13:31 ` Souza, Jose 0 siblings, 1 reply; 14+ messages in thread From: Matthew Brost @ 2023-12-14 3:23 UTC (permalink / raw) To: Souza, Jose Cc: Dugast, Francois, intel-xe@lists.freedesktop.org, Vivi, Rodrigo On Wed, Dec 13, 2023 at 06:51:38PM -0700, Souza, Jose wrote: > On Thu, 2023-12-14 at 00:26 +0000, Matthew Brost wrote: > > On Wed, Dec 13, 2023 at 03:49:53PM -0700, Souza, Jose wrote: > > > On Wed, 2023-12-13 at 14:29 -0800, Matthew Brost wrote: > > > > Remove concept of async vs sync VM bind queues, rather make async vs > > > > sync a per IOCTL choice. Since this is per IOCTL, it makes sense to have > > > > a singular flag IOCTL rather than per VM bind op flag too. Add > > > > DRM_XE_SYNCS_FLAG_WAIT_FOR_OP which is an input sync flag to support > > > > this. Support this new flag for both the VM bind IOCTL only with a path > > > > to support this for execs too. > > > > > > > > v2: Add cookie, move sync wait outside of any locks. > > > > v3: Skip bind operations if *cookie non-zero, check reserved bits zero > > > > > > > > Cc: Rodrigo Vivi <rodrigo.vivi@intel.com> > > > > Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com> > > > > Cc: Francois Dugast <francois.dugast@intel.com> > > > > Signed-off-by: Matthew Brost <matthew.brost@intel.com> > > > > --- > > > > drivers/gpu/drm/xe/xe_exec.c | 13 ++- > > > > drivers/gpu/drm/xe/xe_exec_queue.c | 7 +- > > > > drivers/gpu/drm/xe/xe_exec_queue_types.h | 2 - > > > > drivers/gpu/drm/xe/xe_vm.c | 140 ++++++++++++----------- > > > > drivers/gpu/drm/xe/xe_vm_types.h | 13 +-- > > > > include/uapi/drm/xe_drm.h | 65 +++++++---- > > > > 6 files changed, 131 insertions(+), 109 deletions(-) > > > > > > > > diff --git a/drivers/gpu/drm/xe/xe_exec.c b/drivers/gpu/drm/xe/xe_exec.c > > > > index ba92e5619da3..af2b676c8eef 100644 > > > > --- a/drivers/gpu/drm/xe/xe_exec.c > > > > +++ b/drivers/gpu/drm/xe/xe_exec.c > > > > @@ -104,7 +104,7 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > struct xe_device *xe = to_xe_device(dev); > > > > struct xe_file *xef = to_xe_file(file); > > > > struct drm_xe_exec *args = data; > > > > - struct drm_xe_sync __user *syncs_user = u64_to_user_ptr(args->syncs); > > > > + struct drm_xe_sync __user *syncs_user = u64_to_user_ptr(args->syncs.syncs); > > > > u64 __user *addresses_user = u64_to_user_ptr(args->address); > > > > struct xe_exec_queue *q; > > > > struct xe_sync_entry *syncs = NULL; > > > > @@ -120,7 +120,10 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > int err = 0; > > > > > > > > if (XE_IOCTL_DBG(xe, args->extensions) || > > > > - XE_IOCTL_DBG(xe, args->pad[0] || args->pad[1] || args->pad[2]) || > > > > + XE_IOCTL_DBG(xe, args->pad || args->pad2[0] || args->pad2[1] || args->pad2[2]) || > > > > + XE_IOCTL_DBG(xe, args->syncs.flags) || > > > > + XE_IOCTL_DBG(xe, args->syncs.cookie) || > > > > + XE_IOCTL_DBG(xe, args->syncs.reserved[0] || args->syncs.reserved[1]) || > > > > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > > > > return -EINVAL; > > > > > > > > @@ -140,8 +143,8 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > goto err_exec_queue; > > > > } > > > > > > > > - if (args->num_syncs) { > > > > - syncs = kcalloc(args->num_syncs, sizeof(*syncs), GFP_KERNEL); > > > > + if (args->syncs.num_syncs) { > > > > + syncs = kcalloc(args->syncs.num_syncs, sizeof(*syncs), GFP_KERNEL); > > > > if (!syncs) { > > > > err = -ENOMEM; > > > > goto err_exec_queue; > > > > @@ -150,7 +153,7 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > > > > > vm = q->vm; > > > > > > > > - for (i = 0; i < args->num_syncs; i++) { > > > > + for (i = 0; i < args->syncs.num_syncs; i++) { > > > > err = xe_sync_entry_parse(xe, xef, &syncs[num_syncs++], > > > > &syncs_user[i], SYNC_PARSE_FLAG_EXEC | > > > > (xe_vm_in_lr_mode(vm) ? > > > > diff --git a/drivers/gpu/drm/xe/xe_exec_queue.c b/drivers/gpu/drm/xe/xe_exec_queue.c > > > > index eeb9605dd45f..a25d67971fdd 100644 > > > > --- a/drivers/gpu/drm/xe/xe_exec_queue.c > > > > +++ b/drivers/gpu/drm/xe/xe_exec_queue.c > > > > @@ -625,10 +625,7 @@ int xe_exec_queue_create_ioctl(struct drm_device *dev, void *data, > > > > if (XE_IOCTL_DBG(xe, eci[0].gt_id >= xe->info.gt_count)) > > > > return -EINVAL; > > > > > > > > - if (eci[0].engine_class >= DRM_XE_ENGINE_CLASS_VM_BIND_ASYNC) { > > > > - bool sync = eci[0].engine_class == > > > > - DRM_XE_ENGINE_CLASS_VM_BIND_SYNC; > > > > - > > > > + if (eci[0].engine_class == DRM_XE_ENGINE_CLASS_VM_BIND) { > > > > for_each_gt(gt, xe, id) { > > > > struct xe_exec_queue *new; > > > > > > > > @@ -654,8 +651,6 @@ int xe_exec_queue_create_ioctl(struct drm_device *dev, void *data, > > > > args->width, hwe, > > > > EXEC_QUEUE_FLAG_PERSISTENT | > > > > EXEC_QUEUE_FLAG_VM | > > > > - (sync ? 0 : > > > > - EXEC_QUEUE_FLAG_VM_ASYNC) | > > > > (id ? > > > > EXEC_QUEUE_FLAG_BIND_ENGINE_CHILD : > > > > 0)); > > > > diff --git a/drivers/gpu/drm/xe/xe_exec_queue_types.h b/drivers/gpu/drm/xe/xe_exec_queue_types.h > > > > index c7aefa1c8c31..0f7f6cded4a3 100644 > > > > --- a/drivers/gpu/drm/xe/xe_exec_queue_types.h > > > > +++ b/drivers/gpu/drm/xe/xe_exec_queue_types.h > > > > @@ -84,8 +84,6 @@ struct xe_exec_queue { > > > > #define EXEC_QUEUE_FLAG_VM BIT(4) > > > > /* child of VM queue for multi-tile VM jobs */ > > > > #define EXEC_QUEUE_FLAG_BIND_ENGINE_CHILD BIT(5) > > > > -/* VM jobs for this queue are asynchronous */ > > > > -#define EXEC_QUEUE_FLAG_VM_ASYNC BIT(6) > > > > > > > > /** > > > > * @flags: flags for this exec queue, should statically setup aside from ban > > > > diff --git a/drivers/gpu/drm/xe/xe_vm.c b/drivers/gpu/drm/xe/xe_vm.c > > > > index 2f3df9ee67c9..8407c4d54a45 100644 > > > > --- a/drivers/gpu/drm/xe/xe_vm.c > > > > +++ b/drivers/gpu/drm/xe/xe_vm.c > > > > @@ -1343,9 +1343,7 @@ struct xe_vm *xe_vm_create(struct xe_device *xe, u32 flags) > > > > struct xe_gt *gt = tile->primary_gt; > > > > struct xe_vm *migrate_vm; > > > > struct xe_exec_queue *q; > > > > - u32 create_flags = EXEC_QUEUE_FLAG_VM | > > > > - ((flags & XE_VM_FLAG_ASYNC_DEFAULT) ? > > > > - EXEC_QUEUE_FLAG_VM_ASYNC : 0); > > > > + u32 create_flags = EXEC_QUEUE_FLAG_VM; > > > > > > > > if (!vm->pt_root[id]) > > > > continue; > > > > @@ -1712,12 +1710,6 @@ xe_vm_bind_vma(struct xe_vma *vma, struct xe_exec_queue *q, > > > > return ERR_PTR(err); > > > > } > > > > > > > > -static bool xe_vm_sync_mode(struct xe_vm *vm, struct xe_exec_queue *q) > > > > -{ > > > > - return q ? !(q->flags & EXEC_QUEUE_FLAG_VM_ASYNC) : > > > > - !(vm->flags & XE_VM_FLAG_ASYNC_DEFAULT); > > > > -} > > > > - > > > > static int __xe_vm_bind(struct xe_vm *vm, struct xe_vma *vma, > > > > struct xe_exec_queue *q, struct xe_sync_entry *syncs, > > > > u32 num_syncs, bool immediate, bool first_op, > > > > @@ -1747,8 +1739,6 @@ static int __xe_vm_bind(struct xe_vm *vm, struct xe_vma *vma, > > > > > > > > if (last_op) > > > > xe_exec_queue_last_fence_set(wait_exec_queue, vm, fence); > > > > - if (last_op && xe_vm_sync_mode(vm, q)) > > > > - dma_fence_wait(fence, true); > > > > dma_fence_put(fence); > > > > > > > > return 0; > > > > @@ -1791,8 +1781,6 @@ static int xe_vm_unbind(struct xe_vm *vm, struct xe_vma *vma, > > > > xe_vma_destroy(vma, fence); > > > > if (last_op) > > > > xe_exec_queue_last_fence_set(wait_exec_queue, vm, fence); > > > > - if (last_op && xe_vm_sync_mode(vm, q)) > > > > - dma_fence_wait(fence, true); > > > > dma_fence_put(fence); > > > > > > > > return 0; > > > > @@ -1800,7 +1788,6 @@ static int xe_vm_unbind(struct xe_vm *vm, struct xe_vma *vma, > > > > > > > > #define ALL_DRM_XE_VM_CREATE_FLAGS (DRM_XE_VM_CREATE_FLAG_SCRATCH_PAGE | \ > > > > DRM_XE_VM_CREATE_FLAG_LR_MODE | \ > > > > - DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT | \ > > > > DRM_XE_VM_CREATE_FLAG_FAULT_MODE) > > > > > > > > int xe_vm_create_ioctl(struct drm_device *dev, void *data, > > > > @@ -1854,8 +1841,6 @@ int xe_vm_create_ioctl(struct drm_device *dev, void *data, > > > > flags |= XE_VM_FLAG_SCRATCH_PAGE; > > > > if (args->flags & DRM_XE_VM_CREATE_FLAG_LR_MODE) > > > > flags |= XE_VM_FLAG_LR_MODE; > > > > - if (args->flags & DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT) > > > > - flags |= XE_VM_FLAG_ASYNC_DEFAULT; > > > > if (args->flags & DRM_XE_VM_CREATE_FLAG_FAULT_MODE) > > > > flags |= XE_VM_FLAG_FAULT_MODE; > > > > > > > > @@ -2263,8 +2248,7 @@ static int xe_vma_op_commit(struct xe_vm *vm, struct xe_vma_op *op) > > > > static int vm_bind_ioctl_ops_parse(struct xe_vm *vm, struct xe_exec_queue *q, > > > > struct drm_gpuva_ops *ops, > > > > struct xe_sync_entry *syncs, u32 num_syncs, > > > > - struct list_head *ops_list, bool last, > > > > - bool async) > > > > + struct list_head *ops_list, bool last) > > > > { > > > > struct xe_vma_op *last_op = NULL; > > > > struct drm_gpuva_op *__op; > > > > @@ -2696,28 +2680,28 @@ static int vm_bind_ioctl_ops_execute(struct xe_vm *vm, > > > > > > > > #ifdef TEST_VM_ASYNC_OPS_ERROR > > > > #define SUPPORTED_FLAGS \ > > > > - (FORCE_ASYNC_OP_ERROR | DRM_XE_VM_BIND_FLAG_ASYNC | \ > > > > - DRM_XE_VM_BIND_FLAG_READONLY | DRM_XE_VM_BIND_FLAG_IMMEDIATE | \ > > > > - DRM_XE_VM_BIND_FLAG_NULL | 0xffff) > > > > + (FORCE_ASYNC_OP_ERROR | DRM_XE_VM_BIND_FLAG_READONLY | \ > > > > + DRM_XE_VM_BIND_FLAG_IMMEDIATE | DRM_XE_VM_BIND_FLAG_NULL | 0xffff) > > > > #else > > > > #define SUPPORTED_FLAGS \ > > > > - (DRM_XE_VM_BIND_FLAG_ASYNC | DRM_XE_VM_BIND_FLAG_READONLY | \ > > > > + (DRM_XE_VM_BIND_FLAG_READONLY | \ > > > > DRM_XE_VM_BIND_FLAG_IMMEDIATE | DRM_XE_VM_BIND_FLAG_NULL | \ > > > > 0xffff) > > > > #endif > > > > #define XE_64K_PAGE_MASK 0xffffull > > > > +#define ALL_DRM_XE_SYNCS_FLAGS (DRM_XE_SYNCS_FLAG_WAIT_FOR_OP) > > > > > > > > #define MAX_BINDS 512 /* FIXME: Picking random upper limit */ > > > > > > > > static int vm_bind_ioctl_check_args(struct xe_device *xe, > > > > struct drm_xe_vm_bind *args, > > > > struct drm_xe_vm_bind_op **bind_ops, > > > > - bool *async) > > > > + bool *async, bool *skip_ops) > > > > { > > > > int err; > > > > int i; > > > > > > > > - if (XE_IOCTL_DBG(xe, args->pad || args->pad2) || > > > > + if (XE_IOCTL_DBG(xe, args->pad) || > > > > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > > > > return -EINVAL; > > > > > > > > @@ -2745,6 +2729,30 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, > > > > *bind_ops = &args->bind; > > > > } > > > > > > > > + *async = !(args->syncs.flags & DRM_XE_SYNCS_FLAG_WAIT_FOR_OP); > > > > + *skip_ops = false; > > > > + > > > > + if (XE_IOCTL_DBG(xe, args->syncs.flags & ~ALL_DRM_XE_SYNCS_FLAGS) || > > > > + XE_IOCTL_DBG(xe, *async && args->syncs.cookie) || > > > > + XE_IOCTL_DBG(xe, args->syncs.reserved[0] || args->syncs.reserved[1]) || > > > > + XE_IOCTL_DBG(xe, !*async && args->syncs.num_syncs)) { > > > > + err = -EINVAL; > > > > + goto free_bind_ops; > > > > + } > > > > + > > > > + if (!*async) { > > > > + u64 __user *cookie = u64_to_user_ptr(args->syncs.cookie); > > > > + u64 value; > > > > + > > > > + err = __copy_from_user(&value, cookie, sizeof(u64)); > > > > + if (XE_IOCTL_DBG(xe, err)) { > > > > + err = -EFAULT; > > > > + goto free_bind_ops; > > > > + } > > > > + if (value) > > > > + *skip_ops = true; > > > > + } > > > > + > > > > for (i = 0; i < args->num_binds; ++i) { > > > > u64 range = (*bind_ops)[i].range; > > > > u64 addr = (*bind_ops)[i].addr; > > > > @@ -2775,18 +2783,6 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, > > > > goto free_bind_ops; > > > > } > > > > > > > > - if (i == 0) { > > > > - *async = !!(flags & DRM_XE_VM_BIND_FLAG_ASYNC); > > > > - if (XE_IOCTL_DBG(xe, !*async && args->num_syncs)) { > > > > - err = -EINVAL; > > > > - goto free_bind_ops; > > > > - } > > > > - } else if (XE_IOCTL_DBG(xe, *async != > > > > - !!(flags & DRM_XE_VM_BIND_FLAG_ASYNC))) { > > > > - err = -EINVAL; > > > > - goto free_bind_ops; > > > > - } > > > > - > > > > if (XE_IOCTL_DBG(xe, op > DRM_XE_VM_BIND_OP_PREFETCH) || > > > > XE_IOCTL_DBG(xe, flags & ~SUPPORTED_FLAGS) || > > > > XE_IOCTL_DBG(xe, obj && is_null) || > > > > @@ -2854,12 +2850,25 @@ static int vm_bind_ioctl_signal_fences(struct xe_vm *vm, > > > > > > > > xe_exec_queue_last_fence_set(to_wait_exec_queue(vm, q), vm, > > > > fence); > > > > + dma_fence_put(fence); > > > > > > > > - if (xe_vm_sync_mode(vm, q)) { > > > > - long timeout = dma_fence_wait(fence, true); > > > > + return err; > > > > +} > > > > + > > > > +static int vm_bind_ioctl_sync_wait(struct xe_vm *vm, > > > > + struct dma_fence *fence, > > > > + u64 __user *cookie) > > > > +{ > > > > + long timeout; > > > > + int err = 0; > > > > + > > > > + timeout = dma_fence_wait(fence, true); > > > > + if (timeout < 0) { > > > > + u64 value = 1; > > > > > > > > - if (timeout < 0) > > > > - err = -EINTR; > > > > + err = -ERESTARTSYS; > > > > + if (copy_to_user(cookie, &value, sizeof(value))) > > > > + err = -EFAULT; > > > > } > > > > > > > > dma_fence_put(fence); > > > > @@ -2875,21 +2884,22 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > struct drm_xe_sync __user *syncs_user; > > > > struct xe_bo **bos = NULL; > > > > struct drm_gpuva_ops **ops = NULL; > > > > + struct dma_fence *fence = NULL; > > > > struct xe_vm *vm; > > > > struct xe_exec_queue *q = NULL; > > > > u32 num_syncs; > > > > struct xe_sync_entry *syncs = NULL; > > > > struct drm_xe_vm_bind_op *bind_ops; > > > > LIST_HEAD(ops_list); > > > > - bool async; > > > > + bool async, skip_ops; > > > > int err; > > > > int i; > > > > > > > > - err = vm_bind_ioctl_check_args(xe, args, &bind_ops, &async); > > > > + err = vm_bind_ioctl_check_args(xe, args, &bind_ops, &async, &skip_ops); > > > > if (err) > > > > return err; > > > > > > > > - if (XE_IOCTL_DBG(xe, args->pad || args->pad2) || > > > > + if (XE_IOCTL_DBG(xe, args->pad) || > > > > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > > > > return -EINVAL; > > > > > > > > @@ -2904,12 +2914,6 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > err = -EINVAL; > > > > goto put_exec_queue; > > > > } > > > > - > > > > - if (XE_IOCTL_DBG(xe, args->num_binds && async != > > > > - !!(q->flags & EXEC_QUEUE_FLAG_VM_ASYNC))) { > > > > - err = -EINVAL; > > > > - goto put_exec_queue; > > > > - } > > > > } > > > > > > > > vm = xe_vm_lookup(xef, args->vm_id); > > > > @@ -2918,14 +2922,6 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > goto put_exec_queue; > > > > } > > > > > > > > - if (!args->exec_queue_id) { > > > > - if (XE_IOCTL_DBG(xe, args->num_binds && async != > > > > - !!(vm->flags & XE_VM_FLAG_ASYNC_DEFAULT))) { > > > > - err = -EINVAL; > > > > - goto put_vm; > > > > - } > > > > - } > > > > - > > > > err = down_write_killable(&vm->lock); > > > > if (err) > > > > goto put_vm; > > > > @@ -3015,16 +3011,16 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > } > > > > } > > > > > > > > - if (args->num_syncs) { > > > > - syncs = kcalloc(args->num_syncs, sizeof(*syncs), GFP_KERNEL); > > > > + if (args->syncs.num_syncs) { > > > > + syncs = kcalloc(args->syncs.num_syncs, sizeof(*syncs), GFP_KERNEL); > > > > if (!syncs) { > > > > err = -ENOMEM; > > > > goto put_obj; > > > > } > > > > } > > > > > > > > - syncs_user = u64_to_user_ptr(args->syncs); > > > > - for (num_syncs = 0; num_syncs < args->num_syncs; num_syncs++) { > > > > + syncs_user = u64_to_user_ptr(args->syncs.syncs); > > > > + for (num_syncs = 0; num_syncs < args->syncs.num_syncs; num_syncs++) { > > > > err = xe_sync_entry_parse(xe, xef, &syncs[num_syncs], > > > > &syncs_user[num_syncs], > > > > (xe_vm_in_lr_mode(vm) ? > > > > @@ -3035,7 +3031,7 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > goto free_syncs; > > > > } > > > > > > > > - if (!args->num_binds) { > > > > + if (!args->num_binds || skip_ops) { > > > > err = -ENODATA; > > > > goto free_syncs; > > > > } > > > > @@ -3060,8 +3056,7 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > > > > > err = vm_bind_ioctl_ops_parse(vm, q, ops[i], syncs, num_syncs, > > > > &ops_list, > > > > - i == args->num_binds - 1, > > > > - async); > > > > + i == args->num_binds - 1); > > > > if (err) > > > > goto unwind_ops; > > > > } > > > > @@ -3077,7 +3072,10 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > xe_exec_queue_get(q); > > > > > > > > err = vm_bind_ioctl_ops_execute(vm, &ops_list); > > > > - > > > > + if (!err && !async) { > > > > + fence = xe_exec_queue_last_fence_get(to_wait_exec_queue(vm, q), vm); > > > > + dma_fence_get(fence); > > > > + } > > > > up_write(&vm->lock); > > > > > > > > if (q) > > > > @@ -3092,13 +3090,19 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > if (args->num_binds > 1) > > > > kfree(bind_ops); > > > > > > > > - return err; > > > > + return fence ? vm_bind_ioctl_sync_wait(vm, fence, u64_to_user_ptr(args->syncs.cookie)) : > > > > + err; > > > > > > > > unwind_ops: > > > > vm_bind_ioctl_ops_unwind(vm, ops, args->num_binds); > > > > free_syncs: > > > > - if (err == -ENODATA) > > > > + if (err == -ENODATA) { > > > > err = vm_bind_ioctl_signal_fences(vm, q, syncs, num_syncs); > > > > + if (!async) { > > > > + fence = xe_exec_queue_last_fence_get(to_wait_exec_queue(vm, q), vm); > > > > + dma_fence_get(fence); > > > > + } > > > > + } > > > > while (num_syncs--) > > > > xe_sync_entry_cleanup(&syncs[num_syncs]); > > > > > > > > @@ -3108,6 +3112,8 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > xe_bo_put(bos[i]); > > > > release_vm_lock: > > > > up_write(&vm->lock); > > > > + if (fence) > > > > + err = vm_bind_ioctl_sync_wait(vm, fence, u64_to_user_ptr(args->syncs.cookie)); > > > > put_vm: > > > > xe_vm_put(vm); > > > > put_exec_queue: > > > > diff --git a/drivers/gpu/drm/xe/xe_vm_types.h b/drivers/gpu/drm/xe/xe_vm_types.h > > > > index 2e023596cb15..63e8a50b88e9 100644 > > > > --- a/drivers/gpu/drm/xe/xe_vm_types.h > > > > +++ b/drivers/gpu/drm/xe/xe_vm_types.h > > > > @@ -138,13 +138,12 @@ struct xe_vm { > > > > */ > > > > #define XE_VM_FLAG_64K BIT(0) > > > > #define XE_VM_FLAG_LR_MODE BIT(1) > > > > -#define XE_VM_FLAG_ASYNC_DEFAULT BIT(2) > > > > -#define XE_VM_FLAG_MIGRATION BIT(3) > > > > -#define XE_VM_FLAG_SCRATCH_PAGE BIT(4) > > > > -#define XE_VM_FLAG_FAULT_MODE BIT(5) > > > > -#define XE_VM_FLAG_BANNED BIT(6) > > > > -#define XE_VM_FLAG_TILE_ID(flags) FIELD_GET(GENMASK(8, 7), flags) > > > > -#define XE_VM_FLAG_SET_TILE_ID(tile) FIELD_PREP(GENMASK(8, 7), (tile)->id) > > > > +#define XE_VM_FLAG_MIGRATION BIT(2) > > > > +#define XE_VM_FLAG_SCRATCH_PAGE BIT(3) > > > > +#define XE_VM_FLAG_FAULT_MODE BIT(4) > > > > +#define XE_VM_FLAG_BANNED BIT(5) > > > > +#define XE_VM_FLAG_TILE_ID(flags) FIELD_GET(GENMASK(7, 6), flags) > > > > +#define XE_VM_FLAG_SET_TILE_ID(tile) FIELD_PREP(GENMASK(7, 6), (tile)->id) > > > > unsigned long flags; > > > > > > > > /** @composite_fence_ctx: context composite fence */ > > > > diff --git a/include/uapi/drm/xe_drm.h b/include/uapi/drm/xe_drm.h > > > > index 0895e4d2a981..8cbe7ca6fe57 100644 > > > > --- a/include/uapi/drm/xe_drm.h > > > > +++ b/include/uapi/drm/xe_drm.h > > > > @@ -140,8 +140,7 @@ struct drm_xe_engine_class_instance { > > > > * Kernel only classes (not actual hardware engine class). Used for > > > > * creating ordered queues of VM bind operations. > > > > */ > > > > -#define DRM_XE_ENGINE_CLASS_VM_BIND_ASYNC 5 > > > > -#define DRM_XE_ENGINE_CLASS_VM_BIND_SYNC 6 > > > > +#define DRM_XE_ENGINE_CLASS_VM_BIND 5 > > > > /** @engine_class: engine class id */ > > > > __u16 engine_class; > > > > /** @engine_instance: engine instance id */ > > > > @@ -661,7 +660,6 @@ struct drm_xe_vm_create { > > > > * still enable recoverable pagefaults if supported by the device. > > > > */ > > > > #define DRM_XE_VM_CREATE_FLAG_LR_MODE (1 << 1) > > > > -#define DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT (1 << 2) > > > > /* > > > > * DRM_XE_VM_CREATE_FLAG_FAULT_MODE requires also > > > > * DRM_XE_VM_CREATE_FLAG_LR_MODE. It allows memory to be allocated > > > > @@ -669,7 +667,7 @@ struct drm_xe_vm_create { > > > > * The xe driver internally uses recoverable pagefaults to implement > > > > * this. > > > > */ > > > > -#define DRM_XE_VM_CREATE_FLAG_FAULT_MODE (1 << 3) > > > > +#define DRM_XE_VM_CREATE_FLAG_FAULT_MODE (1 << 2) > > > > /** @flags: Flags */ > > > > __u32 flags; > > > > > > > > @@ -777,12 +775,11 @@ struct drm_xe_vm_bind_op { > > > > __u32 op; > > > > > > > > #define DRM_XE_VM_BIND_FLAG_READONLY (1 << 0) > > > > -#define DRM_XE_VM_BIND_FLAG_ASYNC (1 << 1) > > > > /* > > > > * Valid on a faulting VM only, do the MAP operation immediately rather > > > > * than deferring the MAP to the page fault handler. > > > > */ > > > > -#define DRM_XE_VM_BIND_FLAG_IMMEDIATE (1 << 2) > > > > +#define DRM_XE_VM_BIND_FLAG_IMMEDIATE (1 << 1) > > > > /* > > > > * When the NULL flag is set, the page tables are setup with a special > > > > * bit which indicates writes are dropped and all reads return zero. In > > > > @@ -790,7 +787,7 @@ struct drm_xe_vm_bind_op { > > > > * operations, the BO handle MBZ, and the BO offset MBZ. This flag is > > > > * intended to implement VK sparse bindings. > > > > */ > > > > -#define DRM_XE_VM_BIND_FLAG_NULL (1 << 3) > > > > +#define DRM_XE_VM_BIND_FLAG_NULL (1 << 2) > > > > /** @flags: Bind flags */ > > > > __u32 flags; > > > > > > > > @@ -808,6 +805,36 @@ struct drm_xe_vm_bind_op { > > > > __u64 reserved[3]; > > > > }; > > > > > > > > +/** > > > > + * struct drm_xe_syncs - In / out syncs for IOCTLs. > > > > + */ > > > > +struct drm_xe_syncs { > > > > + /** @num_syncs: amount of syncs to wait on */ > > > > + __u32 num_syncs; > > > > + > > > > + /* > > > > + * Block in IOCTL until operation complete, num_syncs MBZ if set. > > > > + */ > > > > +#define DRM_XE_SYNCS_FLAG_WAIT_FOR_OP (1 << 0) > > > > + /** @flags: Sync flags */ > > > > + __u32 flags; > > > > + > > > > + /** > > > > + * @cookie: pointer which is written with an non-zero value if IOCTL > > > > + * operation has been committed but the wait for completion > > > > + * (DRM_XE_SYNCS_FLAG_WAIT_FOR_OP is set) is interrupted. Value of > > > > + * *cookie MBZ for IOCTL operations to be executed, if non-zero > > > > + * operations are skipped and blocks until exec queue for IOCTL is idle. > > > > + */ > > > > + __u64 cookie; > > > > > > just left a comment in v2. > > > pointer in the comment is misleading, looks like UMD needs to allocate memory and set it in here. > > > about the name I think it should be named as reserved, so UMDs dont touch it at all in fact I think UMDs should not even know that the reserved field > > > is being used for something. > > > > > > > The UMD does need to allocate memory, here is an IGT snippet: > > > > 93 int __xe_vm_bind(int fd, uint32_t vm, uint32_t exec_queue, uint32_t bo, > > 94 uint64_t offset, uint64_t addr, uint64_t size, uint32_t op, > > 95 uint32_t flags, struct drm_xe_sync *sync, uint32_t num_syncs, > > 96 uint32_t prefetch_region, uint8_t pat_index, uint64_t ext) > > 97 { > > 98 uint64_t cookie = 0; > > 99 struct drm_xe_vm_bind bind = { > > 100 .extensions = ext, > > 101 .vm_id = vm, > > 102 .num_binds = 1, > > 103 .bind.obj = bo, > > 104 .bind.obj_offset = offset, > > 105 .bind.range = size, > > 106 .bind.addr = addr, > > 107 .bind.op = op, > > 108 .bind.flags = flags, > > 109 .bind.prefetch_mem_region_instance = prefetch_region, > > 110 .syncs.num_syncs = num_syncs, > > 111 .syncs.syncs = (uintptr_t)sync, > > 112 .syncs.flags = num_syncs == 0 ? > > 113 DRM_XE_SYNCS_FLAG_WAIT_FOR_OP : 0, > > 114 .syncs.cookie = num_syncs == 0 ? (uintptr_t)&cookie : 0, > > 115 .exec_queue_id = exec_queue, > > 116 .bind.pat_index = (pat_index == DEFAULT_PAT_INDEX) ? > > 117 intel_get_pat_idx_wb(fd) : pat_index, > > 118 }; > > 119 > > 120 if (igt_ioctl(fd, DRM_IOCTL_XE_VM_BIND, &bind)) > > 121 return -errno; > > 122 > > 123 return 0; > > 124 } > > > > The cookie is a user pointer. If this IOCTL has interrupted and then > > restarted by the UMD the value of cookie would tell the KMD what to do > > on the restart. > > I cant see a reason to not use .syncs.cookie directly without any pointer. > We'd have to mark the IOCTL RW which the results in the entire contents of the IOCTL being copied back to the user on every IOCTL. A userptr allows the KMD to only copy this field back when required. > > > > > Does this make sense? > > > > Matt > > > > > > + > > > > + /** @syncs: pointer to struct drm_xe_sync array */ > > > > + __u64 syncs; > > > > + > > > > + /** @reserved: Reserved */ > > > > + __u64 reserved[2]; > > > > +}; > > > > + > > > > struct drm_xe_vm_bind { > > > > /** @extensions: Pointer to the first extension struct, if any */ > > > > __u64 extensions; > > > > @@ -839,14 +866,8 @@ struct drm_xe_vm_bind { > > > > __u64 vector_of_binds; > > > > }; > > > > > > > > - /** @pad: MBZ */ > > > > - __u32 pad2; > > > > - > > > > - /** @num_syncs: amount of syncs to wait on */ > > > > - __u32 num_syncs; > > > > - > > > > - /** @syncs: pointer to struct drm_xe_sync array */ > > > > - __u64 syncs; > > > > + /** @syncs: syncs for bind */ > > > > + struct drm_xe_syncs syncs; > > > > > > > > /** @reserved: Reserved */ > > > > __u64 reserved[2]; > > > > @@ -975,14 +996,14 @@ struct drm_xe_exec { > > > > /** @extensions: Pointer to the first extension struct, if any */ > > > > __u64 extensions; > > > > > > > > + /** @pad: MBZ */ > > > > + __u32 pad; > > > > + > > > > /** @exec_queue_id: Exec queue ID for the batch buffer */ > > > > __u32 exec_queue_id; > > > > > > > > - /** @num_syncs: Amount of struct drm_xe_sync in array. */ > > > > - __u32 num_syncs; > > > > - > > > > - /** @syncs: Pointer to struct drm_xe_sync array. */ > > > > - __u64 syncs; > > > > + /** @syncs: syncs for exec */ > > > > + struct drm_xe_syncs syncs; > > > > > > if not implemented should not be used > > > > > > > The idea is 'struct drm_xe_syncs' is a unified interface between IOCTLs > > that require syncs. Currently execs implement a subset of 'struct > > drm_xe_syncs' features. > > But not mentioned anywere. > I`m against it, Rodrigo and Francois might have a better opinion here about leaving stuff in the uAPI that is not used. > But if leaving it shout at least have a comment saying what wont work with drm_xe_exec. > Yes we need a comment. Let's get everyone opinion but I do like the OO design of drm_xe_syncs. Also btw we might just drop sync mode too [1]. Any opinion on that? Matt [1] https://patchwork.freedesktop.org/series/127780/ > > > > Matt > > > > > > > > > > /** > > > > * @address: address of batch buffer if num_batch_buffer == 1 or an > > > > @@ -996,8 +1017,8 @@ struct drm_xe_exec { > > > > */ > > > > __u16 num_batch_buffer; > > > > > > > > - /** @pad: MBZ */ > > > > - __u16 pad[3]; > > > > + /** @pad2: MBZ */ > > > > + __u16 pad2[3]; > > > > > > > > /** @reserved: Reserved */ > > > > __u64 reserved[2]; > > > > ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v3] drm/xe/uapi: Uniform async vs sync handling 2023-12-14 3:23 ` Matthew Brost @ 2023-12-14 13:31 ` Souza, Jose 0 siblings, 0 replies; 14+ messages in thread From: Souza, Jose @ 2023-12-14 13:31 UTC (permalink / raw) To: Brost, Matthew Cc: Dugast, Francois, intel-xe@lists.freedesktop.org, Vivi, Rodrigo On Thu, 2023-12-14 at 03:23 +0000, Matthew Brost wrote: > On Wed, Dec 13, 2023 at 06:51:38PM -0700, Souza, Jose wrote: > > On Thu, 2023-12-14 at 00:26 +0000, Matthew Brost wrote: > > > On Wed, Dec 13, 2023 at 03:49:53PM -0700, Souza, Jose wrote: > > > > On Wed, 2023-12-13 at 14:29 -0800, Matthew Brost wrote: > > > > > Remove concept of async vs sync VM bind queues, rather make async vs > > > > > sync a per IOCTL choice. Since this is per IOCTL, it makes sense to have > > > > > a singular flag IOCTL rather than per VM bind op flag too. Add > > > > > DRM_XE_SYNCS_FLAG_WAIT_FOR_OP which is an input sync flag to support > > > > > this. Support this new flag for both the VM bind IOCTL only with a path > > > > > to support this for execs too. > > > > > > > > > > v2: Add cookie, move sync wait outside of any locks. > > > > > v3: Skip bind operations if *cookie non-zero, check reserved bits zero > > > > > > > > > > Cc: Rodrigo Vivi <rodrigo.vivi@intel.com> > > > > > Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com> > > > > > Cc: Francois Dugast <francois.dugast@intel.com> > > > > > Signed-off-by: Matthew Brost <matthew.brost@intel.com> > > > > > --- > > > > > drivers/gpu/drm/xe/xe_exec.c | 13 ++- > > > > > drivers/gpu/drm/xe/xe_exec_queue.c | 7 +- > > > > > drivers/gpu/drm/xe/xe_exec_queue_types.h | 2 - > > > > > drivers/gpu/drm/xe/xe_vm.c | 140 ++++++++++++----------- > > > > > drivers/gpu/drm/xe/xe_vm_types.h | 13 +-- > > > > > include/uapi/drm/xe_drm.h | 65 +++++++---- > > > > > 6 files changed, 131 insertions(+), 109 deletions(-) > > > > > > > > > > diff --git a/drivers/gpu/drm/xe/xe_exec.c b/drivers/gpu/drm/xe/xe_exec.c > > > > > index ba92e5619da3..af2b676c8eef 100644 > > > > > --- a/drivers/gpu/drm/xe/xe_exec.c > > > > > +++ b/drivers/gpu/drm/xe/xe_exec.c > > > > > @@ -104,7 +104,7 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > > struct xe_device *xe = to_xe_device(dev); > > > > > struct xe_file *xef = to_xe_file(file); > > > > > struct drm_xe_exec *args = data; > > > > > - struct drm_xe_sync __user *syncs_user = u64_to_user_ptr(args->syncs); > > > > > + struct drm_xe_sync __user *syncs_user = u64_to_user_ptr(args->syncs.syncs); > > > > > u64 __user *addresses_user = u64_to_user_ptr(args->address); > > > > > struct xe_exec_queue *q; > > > > > struct xe_sync_entry *syncs = NULL; > > > > > @@ -120,7 +120,10 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > > int err = 0; > > > > > > > > > > if (XE_IOCTL_DBG(xe, args->extensions) || > > > > > - XE_IOCTL_DBG(xe, args->pad[0] || args->pad[1] || args->pad[2]) || > > > > > + XE_IOCTL_DBG(xe, args->pad || args->pad2[0] || args->pad2[1] || args->pad2[2]) || > > > > > + XE_IOCTL_DBG(xe, args->syncs.flags) || > > > > > + XE_IOCTL_DBG(xe, args->syncs.cookie) || > > > > > + XE_IOCTL_DBG(xe, args->syncs.reserved[0] || args->syncs.reserved[1]) || > > > > > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > > > > > return -EINVAL; > > > > > > > > > > @@ -140,8 +143,8 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > > goto err_exec_queue; > > > > > } > > > > > > > > > > - if (args->num_syncs) { > > > > > - syncs = kcalloc(args->num_syncs, sizeof(*syncs), GFP_KERNEL); > > > > > + if (args->syncs.num_syncs) { > > > > > + syncs = kcalloc(args->syncs.num_syncs, sizeof(*syncs), GFP_KERNEL); > > > > > if (!syncs) { > > > > > err = -ENOMEM; > > > > > goto err_exec_queue; > > > > > @@ -150,7 +153,7 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > > > > > > > vm = q->vm; > > > > > > > > > > - for (i = 0; i < args->num_syncs; i++) { > > > > > + for (i = 0; i < args->syncs.num_syncs; i++) { > > > > > err = xe_sync_entry_parse(xe, xef, &syncs[num_syncs++], > > > > > &syncs_user[i], SYNC_PARSE_FLAG_EXEC | > > > > > (xe_vm_in_lr_mode(vm) ? > > > > > diff --git a/drivers/gpu/drm/xe/xe_exec_queue.c b/drivers/gpu/drm/xe/xe_exec_queue.c > > > > > index eeb9605dd45f..a25d67971fdd 100644 > > > > > --- a/drivers/gpu/drm/xe/xe_exec_queue.c > > > > > +++ b/drivers/gpu/drm/xe/xe_exec_queue.c > > > > > @@ -625,10 +625,7 @@ int xe_exec_queue_create_ioctl(struct drm_device *dev, void *data, > > > > > if (XE_IOCTL_DBG(xe, eci[0].gt_id >= xe->info.gt_count)) > > > > > return -EINVAL; > > > > > > > > > > - if (eci[0].engine_class >= DRM_XE_ENGINE_CLASS_VM_BIND_ASYNC) { > > > > > - bool sync = eci[0].engine_class == > > > > > - DRM_XE_ENGINE_CLASS_VM_BIND_SYNC; > > > > > - > > > > > + if (eci[0].engine_class == DRM_XE_ENGINE_CLASS_VM_BIND) { > > > > > for_each_gt(gt, xe, id) { > > > > > struct xe_exec_queue *new; > > > > > > > > > > @@ -654,8 +651,6 @@ int xe_exec_queue_create_ioctl(struct drm_device *dev, void *data, > > > > > args->width, hwe, > > > > > EXEC_QUEUE_FLAG_PERSISTENT | > > > > > EXEC_QUEUE_FLAG_VM | > > > > > - (sync ? 0 : > > > > > - EXEC_QUEUE_FLAG_VM_ASYNC) | > > > > > (id ? > > > > > EXEC_QUEUE_FLAG_BIND_ENGINE_CHILD : > > > > > 0)); > > > > > diff --git a/drivers/gpu/drm/xe/xe_exec_queue_types.h b/drivers/gpu/drm/xe/xe_exec_queue_types.h > > > > > index c7aefa1c8c31..0f7f6cded4a3 100644 > > > > > --- a/drivers/gpu/drm/xe/xe_exec_queue_types.h > > > > > +++ b/drivers/gpu/drm/xe/xe_exec_queue_types.h > > > > > @@ -84,8 +84,6 @@ struct xe_exec_queue { > > > > > #define EXEC_QUEUE_FLAG_VM BIT(4) > > > > > /* child of VM queue for multi-tile VM jobs */ > > > > > #define EXEC_QUEUE_FLAG_BIND_ENGINE_CHILD BIT(5) > > > > > -/* VM jobs for this queue are asynchronous */ > > > > > -#define EXEC_QUEUE_FLAG_VM_ASYNC BIT(6) > > > > > > > > > > /** > > > > > * @flags: flags for this exec queue, should statically setup aside from ban > > > > > diff --git a/drivers/gpu/drm/xe/xe_vm.c b/drivers/gpu/drm/xe/xe_vm.c > > > > > index 2f3df9ee67c9..8407c4d54a45 100644 > > > > > --- a/drivers/gpu/drm/xe/xe_vm.c > > > > > +++ b/drivers/gpu/drm/xe/xe_vm.c > > > > > @@ -1343,9 +1343,7 @@ struct xe_vm *xe_vm_create(struct xe_device *xe, u32 flags) > > > > > struct xe_gt *gt = tile->primary_gt; > > > > > struct xe_vm *migrate_vm; > > > > > struct xe_exec_queue *q; > > > > > - u32 create_flags = EXEC_QUEUE_FLAG_VM | > > > > > - ((flags & XE_VM_FLAG_ASYNC_DEFAULT) ? > > > > > - EXEC_QUEUE_FLAG_VM_ASYNC : 0); > > > > > + u32 create_flags = EXEC_QUEUE_FLAG_VM; > > > > > > > > > > if (!vm->pt_root[id]) > > > > > continue; > > > > > @@ -1712,12 +1710,6 @@ xe_vm_bind_vma(struct xe_vma *vma, struct xe_exec_queue *q, > > > > > return ERR_PTR(err); > > > > > } > > > > > > > > > > -static bool xe_vm_sync_mode(struct xe_vm *vm, struct xe_exec_queue *q) > > > > > -{ > > > > > - return q ? !(q->flags & EXEC_QUEUE_FLAG_VM_ASYNC) : > > > > > - !(vm->flags & XE_VM_FLAG_ASYNC_DEFAULT); > > > > > -} > > > > > - > > > > > static int __xe_vm_bind(struct xe_vm *vm, struct xe_vma *vma, > > > > > struct xe_exec_queue *q, struct xe_sync_entry *syncs, > > > > > u32 num_syncs, bool immediate, bool first_op, > > > > > @@ -1747,8 +1739,6 @@ static int __xe_vm_bind(struct xe_vm *vm, struct xe_vma *vma, > > > > > > > > > > if (last_op) > > > > > xe_exec_queue_last_fence_set(wait_exec_queue, vm, fence); > > > > > - if (last_op && xe_vm_sync_mode(vm, q)) > > > > > - dma_fence_wait(fence, true); > > > > > dma_fence_put(fence); > > > > > > > > > > return 0; > > > > > @@ -1791,8 +1781,6 @@ static int xe_vm_unbind(struct xe_vm *vm, struct xe_vma *vma, > > > > > xe_vma_destroy(vma, fence); > > > > > if (last_op) > > > > > xe_exec_queue_last_fence_set(wait_exec_queue, vm, fence); > > > > > - if (last_op && xe_vm_sync_mode(vm, q)) > > > > > - dma_fence_wait(fence, true); > > > > > dma_fence_put(fence); > > > > > > > > > > return 0; > > > > > @@ -1800,7 +1788,6 @@ static int xe_vm_unbind(struct xe_vm *vm, struct xe_vma *vma, > > > > > > > > > > #define ALL_DRM_XE_VM_CREATE_FLAGS (DRM_XE_VM_CREATE_FLAG_SCRATCH_PAGE | \ > > > > > DRM_XE_VM_CREATE_FLAG_LR_MODE | \ > > > > > - DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT | \ > > > > > DRM_XE_VM_CREATE_FLAG_FAULT_MODE) > > > > > > > > > > int xe_vm_create_ioctl(struct drm_device *dev, void *data, > > > > > @@ -1854,8 +1841,6 @@ int xe_vm_create_ioctl(struct drm_device *dev, void *data, > > > > > flags |= XE_VM_FLAG_SCRATCH_PAGE; > > > > > if (args->flags & DRM_XE_VM_CREATE_FLAG_LR_MODE) > > > > > flags |= XE_VM_FLAG_LR_MODE; > > > > > - if (args->flags & DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT) > > > > > - flags |= XE_VM_FLAG_ASYNC_DEFAULT; > > > > > if (args->flags & DRM_XE_VM_CREATE_FLAG_FAULT_MODE) > > > > > flags |= XE_VM_FLAG_FAULT_MODE; > > > > > > > > > > @@ -2263,8 +2248,7 @@ static int xe_vma_op_commit(struct xe_vm *vm, struct xe_vma_op *op) > > > > > static int vm_bind_ioctl_ops_parse(struct xe_vm *vm, struct xe_exec_queue *q, > > > > > struct drm_gpuva_ops *ops, > > > > > struct xe_sync_entry *syncs, u32 num_syncs, > > > > > - struct list_head *ops_list, bool last, > > > > > - bool async) > > > > > + struct list_head *ops_list, bool last) > > > > > { > > > > > struct xe_vma_op *last_op = NULL; > > > > > struct drm_gpuva_op *__op; > > > > > @@ -2696,28 +2680,28 @@ static int vm_bind_ioctl_ops_execute(struct xe_vm *vm, > > > > > > > > > > #ifdef TEST_VM_ASYNC_OPS_ERROR > > > > > #define SUPPORTED_FLAGS \ > > > > > - (FORCE_ASYNC_OP_ERROR | DRM_XE_VM_BIND_FLAG_ASYNC | \ > > > > > - DRM_XE_VM_BIND_FLAG_READONLY | DRM_XE_VM_BIND_FLAG_IMMEDIATE | \ > > > > > - DRM_XE_VM_BIND_FLAG_NULL | 0xffff) > > > > > + (FORCE_ASYNC_OP_ERROR | DRM_XE_VM_BIND_FLAG_READONLY | \ > > > > > + DRM_XE_VM_BIND_FLAG_IMMEDIATE | DRM_XE_VM_BIND_FLAG_NULL | 0xffff) > > > > > #else > > > > > #define SUPPORTED_FLAGS \ > > > > > - (DRM_XE_VM_BIND_FLAG_ASYNC | DRM_XE_VM_BIND_FLAG_READONLY | \ > > > > > + (DRM_XE_VM_BIND_FLAG_READONLY | \ > > > > > DRM_XE_VM_BIND_FLAG_IMMEDIATE | DRM_XE_VM_BIND_FLAG_NULL | \ > > > > > 0xffff) > > > > > #endif > > > > > #define XE_64K_PAGE_MASK 0xffffull > > > > > +#define ALL_DRM_XE_SYNCS_FLAGS (DRM_XE_SYNCS_FLAG_WAIT_FOR_OP) > > > > > > > > > > #define MAX_BINDS 512 /* FIXME: Picking random upper limit */ > > > > > > > > > > static int vm_bind_ioctl_check_args(struct xe_device *xe, > > > > > struct drm_xe_vm_bind *args, > > > > > struct drm_xe_vm_bind_op **bind_ops, > > > > > - bool *async) > > > > > + bool *async, bool *skip_ops) > > > > > { > > > > > int err; > > > > > int i; > > > > > > > > > > - if (XE_IOCTL_DBG(xe, args->pad || args->pad2) || > > > > > + if (XE_IOCTL_DBG(xe, args->pad) || > > > > > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > > > > > return -EINVAL; > > > > > > > > > > @@ -2745,6 +2729,30 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, > > > > > *bind_ops = &args->bind; > > > > > } > > > > > > > > > > + *async = !(args->syncs.flags & DRM_XE_SYNCS_FLAG_WAIT_FOR_OP); > > > > > + *skip_ops = false; > > > > > + > > > > > + if (XE_IOCTL_DBG(xe, args->syncs.flags & ~ALL_DRM_XE_SYNCS_FLAGS) || > > > > > + XE_IOCTL_DBG(xe, *async && args->syncs.cookie) || > > > > > + XE_IOCTL_DBG(xe, args->syncs.reserved[0] || args->syncs.reserved[1]) || > > > > > + XE_IOCTL_DBG(xe, !*async && args->syncs.num_syncs)) { > > > > > + err = -EINVAL; > > > > > + goto free_bind_ops; > > > > > + } > > > > > + > > > > > + if (!*async) { > > > > > + u64 __user *cookie = u64_to_user_ptr(args->syncs.cookie); > > > > > + u64 value; > > > > > + > > > > > + err = __copy_from_user(&value, cookie, sizeof(u64)); > > > > > + if (XE_IOCTL_DBG(xe, err)) { > > > > > + err = -EFAULT; > > > > > + goto free_bind_ops; > > > > > + } > > > > > + if (value) > > > > > + *skip_ops = true; > > > > > + } > > > > > + > > > > > for (i = 0; i < args->num_binds; ++i) { > > > > > u64 range = (*bind_ops)[i].range; > > > > > u64 addr = (*bind_ops)[i].addr; > > > > > @@ -2775,18 +2783,6 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, > > > > > goto free_bind_ops; > > > > > } > > > > > > > > > > - if (i == 0) { > > > > > - *async = !!(flags & DRM_XE_VM_BIND_FLAG_ASYNC); > > > > > - if (XE_IOCTL_DBG(xe, !*async && args->num_syncs)) { > > > > > - err = -EINVAL; > > > > > - goto free_bind_ops; > > > > > - } > > > > > - } else if (XE_IOCTL_DBG(xe, *async != > > > > > - !!(flags & DRM_XE_VM_BIND_FLAG_ASYNC))) { > > > > > - err = -EINVAL; > > > > > - goto free_bind_ops; > > > > > - } > > > > > - > > > > > if (XE_IOCTL_DBG(xe, op > DRM_XE_VM_BIND_OP_PREFETCH) || > > > > > XE_IOCTL_DBG(xe, flags & ~SUPPORTED_FLAGS) || > > > > > XE_IOCTL_DBG(xe, obj && is_null) || > > > > > @@ -2854,12 +2850,25 @@ static int vm_bind_ioctl_signal_fences(struct xe_vm *vm, > > > > > > > > > > xe_exec_queue_last_fence_set(to_wait_exec_queue(vm, q), vm, > > > > > fence); > > > > > + dma_fence_put(fence); > > > > > > > > > > - if (xe_vm_sync_mode(vm, q)) { > > > > > - long timeout = dma_fence_wait(fence, true); > > > > > + return err; > > > > > +} > > > > > + > > > > > +static int vm_bind_ioctl_sync_wait(struct xe_vm *vm, > > > > > + struct dma_fence *fence, > > > > > + u64 __user *cookie) > > > > > +{ > > > > > + long timeout; > > > > > + int err = 0; > > > > > + > > > > > + timeout = dma_fence_wait(fence, true); > > > > > + if (timeout < 0) { > > > > > + u64 value = 1; > > > > > > > > > > - if (timeout < 0) > > > > > - err = -EINTR; > > > > > + err = -ERESTARTSYS; > > > > > + if (copy_to_user(cookie, &value, sizeof(value))) > > > > > + err = -EFAULT; > > > > > } > > > > > > > > > > dma_fence_put(fence); > > > > > @@ -2875,21 +2884,22 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > > struct drm_xe_sync __user *syncs_user; > > > > > struct xe_bo **bos = NULL; > > > > > struct drm_gpuva_ops **ops = NULL; > > > > > + struct dma_fence *fence = NULL; > > > > > struct xe_vm *vm; > > > > > struct xe_exec_queue *q = NULL; > > > > > u32 num_syncs; > > > > > struct xe_sync_entry *syncs = NULL; > > > > > struct drm_xe_vm_bind_op *bind_ops; > > > > > LIST_HEAD(ops_list); > > > > > - bool async; > > > > > + bool async, skip_ops; > > > > > int err; > > > > > int i; > > > > > > > > > > - err = vm_bind_ioctl_check_args(xe, args, &bind_ops, &async); > > > > > + err = vm_bind_ioctl_check_args(xe, args, &bind_ops, &async, &skip_ops); > > > > > if (err) > > > > > return err; > > > > > > > > > > - if (XE_IOCTL_DBG(xe, args->pad || args->pad2) || > > > > > + if (XE_IOCTL_DBG(xe, args->pad) || > > > > > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > > > > > return -EINVAL; > > > > > > > > > > @@ -2904,12 +2914,6 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > > err = -EINVAL; > > > > > goto put_exec_queue; > > > > > } > > > > > - > > > > > - if (XE_IOCTL_DBG(xe, args->num_binds && async != > > > > > - !!(q->flags & EXEC_QUEUE_FLAG_VM_ASYNC))) { > > > > > - err = -EINVAL; > > > > > - goto put_exec_queue; > > > > > - } > > > > > } > > > > > > > > > > vm = xe_vm_lookup(xef, args->vm_id); > > > > > @@ -2918,14 +2922,6 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > > goto put_exec_queue; > > > > > } > > > > > > > > > > - if (!args->exec_queue_id) { > > > > > - if (XE_IOCTL_DBG(xe, args->num_binds && async != > > > > > - !!(vm->flags & XE_VM_FLAG_ASYNC_DEFAULT))) { > > > > > - err = -EINVAL; > > > > > - goto put_vm; > > > > > - } > > > > > - } > > > > > - > > > > > err = down_write_killable(&vm->lock); > > > > > if (err) > > > > > goto put_vm; > > > > > @@ -3015,16 +3011,16 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > > } > > > > > } > > > > > > > > > > - if (args->num_syncs) { > > > > > - syncs = kcalloc(args->num_syncs, sizeof(*syncs), GFP_KERNEL); > > > > > + if (args->syncs.num_syncs) { > > > > > + syncs = kcalloc(args->syncs.num_syncs, sizeof(*syncs), GFP_KERNEL); > > > > > if (!syncs) { > > > > > err = -ENOMEM; > > > > > goto put_obj; > > > > > } > > > > > } > > > > > > > > > > - syncs_user = u64_to_user_ptr(args->syncs); > > > > > - for (num_syncs = 0; num_syncs < args->num_syncs; num_syncs++) { > > > > > + syncs_user = u64_to_user_ptr(args->syncs.syncs); > > > > > + for (num_syncs = 0; num_syncs < args->syncs.num_syncs; num_syncs++) { > > > > > err = xe_sync_entry_parse(xe, xef, &syncs[num_syncs], > > > > > &syncs_user[num_syncs], > > > > > (xe_vm_in_lr_mode(vm) ? > > > > > @@ -3035,7 +3031,7 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > > goto free_syncs; > > > > > } > > > > > > > > > > - if (!args->num_binds) { > > > > > + if (!args->num_binds || skip_ops) { > > > > > err = -ENODATA; > > > > > goto free_syncs; > > > > > } > > > > > @@ -3060,8 +3056,7 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > > > > > > > err = vm_bind_ioctl_ops_parse(vm, q, ops[i], syncs, num_syncs, > > > > > &ops_list, > > > > > - i == args->num_binds - 1, > > > > > - async); > > > > > + i == args->num_binds - 1); > > > > > if (err) > > > > > goto unwind_ops; > > > > > } > > > > > @@ -3077,7 +3072,10 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > > xe_exec_queue_get(q); > > > > > > > > > > err = vm_bind_ioctl_ops_execute(vm, &ops_list); > > > > > - > > > > > + if (!err && !async) { > > > > > + fence = xe_exec_queue_last_fence_get(to_wait_exec_queue(vm, q), vm); > > > > > + dma_fence_get(fence); > > > > > + } > > > > > up_write(&vm->lock); > > > > > > > > > > if (q) > > > > > @@ -3092,13 +3090,19 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > > if (args->num_binds > 1) > > > > > kfree(bind_ops); > > > > > > > > > > - return err; > > > > > + return fence ? vm_bind_ioctl_sync_wait(vm, fence, u64_to_user_ptr(args->syncs.cookie)) : > > > > > + err; > > > > > > > > > > unwind_ops: > > > > > vm_bind_ioctl_ops_unwind(vm, ops, args->num_binds); > > > > > free_syncs: > > > > > - if (err == -ENODATA) > > > > > + if (err == -ENODATA) { > > > > > err = vm_bind_ioctl_signal_fences(vm, q, syncs, num_syncs); > > > > > + if (!async) { > > > > > + fence = xe_exec_queue_last_fence_get(to_wait_exec_queue(vm, q), vm); > > > > > + dma_fence_get(fence); > > > > > + } > > > > > + } > > > > > while (num_syncs--) > > > > > xe_sync_entry_cleanup(&syncs[num_syncs]); > > > > > > > > > > @@ -3108,6 +3112,8 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > > > > xe_bo_put(bos[i]); > > > > > release_vm_lock: > > > > > up_write(&vm->lock); > > > > > + if (fence) > > > > > + err = vm_bind_ioctl_sync_wait(vm, fence, u64_to_user_ptr(args->syncs.cookie)); > > > > > put_vm: > > > > > xe_vm_put(vm); > > > > > put_exec_queue: > > > > > diff --git a/drivers/gpu/drm/xe/xe_vm_types.h b/drivers/gpu/drm/xe/xe_vm_types.h > > > > > index 2e023596cb15..63e8a50b88e9 100644 > > > > > --- a/drivers/gpu/drm/xe/xe_vm_types.h > > > > > +++ b/drivers/gpu/drm/xe/xe_vm_types.h > > > > > @@ -138,13 +138,12 @@ struct xe_vm { > > > > > */ > > > > > #define XE_VM_FLAG_64K BIT(0) > > > > > #define XE_VM_FLAG_LR_MODE BIT(1) > > > > > -#define XE_VM_FLAG_ASYNC_DEFAULT BIT(2) > > > > > -#define XE_VM_FLAG_MIGRATION BIT(3) > > > > > -#define XE_VM_FLAG_SCRATCH_PAGE BIT(4) > > > > > -#define XE_VM_FLAG_FAULT_MODE BIT(5) > > > > > -#define XE_VM_FLAG_BANNED BIT(6) > > > > > -#define XE_VM_FLAG_TILE_ID(flags) FIELD_GET(GENMASK(8, 7), flags) > > > > > -#define XE_VM_FLAG_SET_TILE_ID(tile) FIELD_PREP(GENMASK(8, 7), (tile)->id) > > > > > +#define XE_VM_FLAG_MIGRATION BIT(2) > > > > > +#define XE_VM_FLAG_SCRATCH_PAGE BIT(3) > > > > > +#define XE_VM_FLAG_FAULT_MODE BIT(4) > > > > > +#define XE_VM_FLAG_BANNED BIT(5) > > > > > +#define XE_VM_FLAG_TILE_ID(flags) FIELD_GET(GENMASK(7, 6), flags) > > > > > +#define XE_VM_FLAG_SET_TILE_ID(tile) FIELD_PREP(GENMASK(7, 6), (tile)->id) > > > > > unsigned long flags; > > > > > > > > > > /** @composite_fence_ctx: context composite fence */ > > > > > diff --git a/include/uapi/drm/xe_drm.h b/include/uapi/drm/xe_drm.h > > > > > index 0895e4d2a981..8cbe7ca6fe57 100644 > > > > > --- a/include/uapi/drm/xe_drm.h > > > > > +++ b/include/uapi/drm/xe_drm.h > > > > > @@ -140,8 +140,7 @@ struct drm_xe_engine_class_instance { > > > > > * Kernel only classes (not actual hardware engine class). Used for > > > > > * creating ordered queues of VM bind operations. > > > > > */ > > > > > -#define DRM_XE_ENGINE_CLASS_VM_BIND_ASYNC 5 > > > > > -#define DRM_XE_ENGINE_CLASS_VM_BIND_SYNC 6 > > > > > +#define DRM_XE_ENGINE_CLASS_VM_BIND 5 > > > > > /** @engine_class: engine class id */ > > > > > __u16 engine_class; > > > > > /** @engine_instance: engine instance id */ > > > > > @@ -661,7 +660,6 @@ struct drm_xe_vm_create { > > > > > * still enable recoverable pagefaults if supported by the device. > > > > > */ > > > > > #define DRM_XE_VM_CREATE_FLAG_LR_MODE (1 << 1) > > > > > -#define DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT (1 << 2) > > > > > /* > > > > > * DRM_XE_VM_CREATE_FLAG_FAULT_MODE requires also > > > > > * DRM_XE_VM_CREATE_FLAG_LR_MODE. It allows memory to be allocated > > > > > @@ -669,7 +667,7 @@ struct drm_xe_vm_create { > > > > > * The xe driver internally uses recoverable pagefaults to implement > > > > > * this. > > > > > */ > > > > > -#define DRM_XE_VM_CREATE_FLAG_FAULT_MODE (1 << 3) > > > > > +#define DRM_XE_VM_CREATE_FLAG_FAULT_MODE (1 << 2) > > > > > /** @flags: Flags */ > > > > > __u32 flags; > > > > > > > > > > @@ -777,12 +775,11 @@ struct drm_xe_vm_bind_op { > > > > > __u32 op; > > > > > > > > > > #define DRM_XE_VM_BIND_FLAG_READONLY (1 << 0) > > > > > -#define DRM_XE_VM_BIND_FLAG_ASYNC (1 << 1) > > > > > /* > > > > > * Valid on a faulting VM only, do the MAP operation immediately rather > > > > > * than deferring the MAP to the page fault handler. > > > > > */ > > > > > -#define DRM_XE_VM_BIND_FLAG_IMMEDIATE (1 << 2) > > > > > +#define DRM_XE_VM_BIND_FLAG_IMMEDIATE (1 << 1) > > > > > /* > > > > > * When the NULL flag is set, the page tables are setup with a special > > > > > * bit which indicates writes are dropped and all reads return zero. In > > > > > @@ -790,7 +787,7 @@ struct drm_xe_vm_bind_op { > > > > > * operations, the BO handle MBZ, and the BO offset MBZ. This flag is > > > > > * intended to implement VK sparse bindings. > > > > > */ > > > > > -#define DRM_XE_VM_BIND_FLAG_NULL (1 << 3) > > > > > +#define DRM_XE_VM_BIND_FLAG_NULL (1 << 2) > > > > > /** @flags: Bind flags */ > > > > > __u32 flags; > > > > > > > > > > @@ -808,6 +805,36 @@ struct drm_xe_vm_bind_op { > > > > > __u64 reserved[3]; > > > > > }; > > > > > > > > > > +/** > > > > > + * struct drm_xe_syncs - In / out syncs for IOCTLs. > > > > > + */ > > > > > +struct drm_xe_syncs { > > > > > + /** @num_syncs: amount of syncs to wait on */ > > > > > + __u32 num_syncs; > > > > > + > > > > > + /* > > > > > + * Block in IOCTL until operation complete, num_syncs MBZ if set. > > > > > + */ > > > > > +#define DRM_XE_SYNCS_FLAG_WAIT_FOR_OP (1 << 0) > > > > > + /** @flags: Sync flags */ > > > > > + __u32 flags; > > > > > + > > > > > + /** > > > > > + * @cookie: pointer which is written with an non-zero value if IOCTL > > > > > + * operation has been committed but the wait for completion > > > > > + * (DRM_XE_SYNCS_FLAG_WAIT_FOR_OP is set) is interrupted. Value of > > > > > + * *cookie MBZ for IOCTL operations to be executed, if non-zero > > > > > + * operations are skipped and blocks until exec queue for IOCTL is idle. > > > > > + */ > > > > > + __u64 cookie; > > > > > > > > just left a comment in v2. > > > > pointer in the comment is misleading, looks like UMD needs to allocate memory and set it in here. > > > > about the name I think it should be named as reserved, so UMDs dont touch it at all in fact I think UMDs should not even know that the reserved field > > > > is being used for something. > > > > > > > > > > The UMD does need to allocate memory, here is an IGT snippet: > > > > > > 93 int __xe_vm_bind(int fd, uint32_t vm, uint32_t exec_queue, uint32_t bo, > > > 94 uint64_t offset, uint64_t addr, uint64_t size, uint32_t op, > > > 95 uint32_t flags, struct drm_xe_sync *sync, uint32_t num_syncs, > > > 96 uint32_t prefetch_region, uint8_t pat_index, uint64_t ext) > > > 97 { > > > 98 uint64_t cookie = 0; > > > 99 struct drm_xe_vm_bind bind = { > > > 100 .extensions = ext, > > > 101 .vm_id = vm, > > > 102 .num_binds = 1, > > > 103 .bind.obj = bo, > > > 104 .bind.obj_offset = offset, > > > 105 .bind.range = size, > > > 106 .bind.addr = addr, > > > 107 .bind.op = op, > > > 108 .bind.flags = flags, > > > 109 .bind.prefetch_mem_region_instance = prefetch_region, > > > 110 .syncs.num_syncs = num_syncs, > > > 111 .syncs.syncs = (uintptr_t)sync, > > > 112 .syncs.flags = num_syncs == 0 ? > > > 113 DRM_XE_SYNCS_FLAG_WAIT_FOR_OP : 0, > > > 114 .syncs.cookie = num_syncs == 0 ? (uintptr_t)&cookie : 0, > > > 115 .exec_queue_id = exec_queue, > > > 116 .bind.pat_index = (pat_index == DEFAULT_PAT_INDEX) ? > > > 117 intel_get_pat_idx_wb(fd) : pat_index, > > > 118 }; > > > 119 > > > 120 if (igt_ioctl(fd, DRM_IOCTL_XE_VM_BIND, &bind)) > > > 121 return -errno; > > > 122 > > > 123 return 0; > > > 124 } > > > > > > The cookie is a user pointer. If this IOCTL has interrupted and then > > > restarted by the UMD the value of cookie would tell the KMD what to do > > > on the restart. > > > > I cant see a reason to not use .syncs.cookie directly without any pointer. > > > > We'd have to mark the IOCTL RW which the results in the entire contents > of the IOCTL being copied back to the user on every IOCTL. A userptr > allows the KMD to only copy this field back when required. You can copy just one field back to user-space pointer with put_user() take a look query_engine_cycles() > > > > > > > > > Does this make sense? > > > > > > Matt > > > > > > > > + > > > > > + /** @syncs: pointer to struct drm_xe_sync array */ > > > > > + __u64 syncs; > > > > > + > > > > > + /** @reserved: Reserved */ > > > > > + __u64 reserved[2]; > > > > > +}; > > > > > + > > > > > struct drm_xe_vm_bind { > > > > > /** @extensions: Pointer to the first extension struct, if any */ > > > > > __u64 extensions; > > > > > @@ -839,14 +866,8 @@ struct drm_xe_vm_bind { > > > > > __u64 vector_of_binds; > > > > > }; > > > > > > > > > > - /** @pad: MBZ */ > > > > > - __u32 pad2; > > > > > - > > > > > - /** @num_syncs: amount of syncs to wait on */ > > > > > - __u32 num_syncs; > > > > > - > > > > > - /** @syncs: pointer to struct drm_xe_sync array */ > > > > > - __u64 syncs; > > > > > + /** @syncs: syncs for bind */ > > > > > + struct drm_xe_syncs syncs; > > > > > > > > > > /** @reserved: Reserved */ > > > > > __u64 reserved[2]; > > > > > @@ -975,14 +996,14 @@ struct drm_xe_exec { > > > > > /** @extensions: Pointer to the first extension struct, if any */ > > > > > __u64 extensions; > > > > > > > > > > + /** @pad: MBZ */ > > > > > + __u32 pad; > > > > > + > > > > > /** @exec_queue_id: Exec queue ID for the batch buffer */ > > > > > __u32 exec_queue_id; > > > > > > > > > > - /** @num_syncs: Amount of struct drm_xe_sync in array. */ > > > > > - __u32 num_syncs; > > > > > - > > > > > - /** @syncs: Pointer to struct drm_xe_sync array. */ > > > > > - __u64 syncs; > > > > > + /** @syncs: syncs for exec */ > > > > > + struct drm_xe_syncs syncs; > > > > > > > > if not implemented should not be used > > > > > > > > > > The idea is 'struct drm_xe_syncs' is a unified interface between IOCTLs > > > that require syncs. Currently execs implement a subset of 'struct > > > drm_xe_syncs' features. > > > > But not mentioned anywere. > > I`m against it, Rodrigo and Francois might have a better opinion here about leaving stuff in the uAPI that is not used. > > But if leaving it shout at least have a comment saying what wont work with drm_xe_exec. > > > > Yes we need a comment. Let's get everyone opinion but I do like the OO > design of drm_xe_syncs. > > Also btw we might just drop sync mode too [1]. Any opinion on that? > > Matt > > [1] https://patchwork.freedesktop.org/series/127780/ > > > > > > > Matt > > > > > > > > > > > > > /** > > > > > * @address: address of batch buffer if num_batch_buffer == 1 or an > > > > > @@ -996,8 +1017,8 @@ struct drm_xe_exec { > > > > > */ > > > > > __u16 num_batch_buffer; > > > > > > > > > > - /** @pad: MBZ */ > > > > > - __u16 pad[3]; > > > > > + /** @pad2: MBZ */ > > > > > + __u16 pad2[3]; > > > > > > > > > > /** @reserved: Reserved */ > > > > > __u64 reserved[2]; > > > > > > ^ permalink raw reply [flat|nested] 14+ messages in thread
* ✗ CI.BAT: failure for drm/xe/uapi: Uniform async vs sync handling (rev3) 2023-12-13 22:29 [PATCH v3] drm/xe/uapi: Uniform async vs sync handling Matthew Brost ` (6 preceding siblings ...) 2023-12-13 22:49 ` [PATCH v3] drm/xe/uapi: Uniform async vs sync handling Souza, Jose @ 2023-12-13 23:19 ` Patchwork 2023-12-14 11:14 ` [PATCH v3] drm/xe/uapi: Uniform async vs sync handling Thomas Hellström 8 siblings, 0 replies; 14+ messages in thread From: Patchwork @ 2023-12-13 23:19 UTC (permalink / raw) To: Matthew Brost; +Cc: intel-xe [-- Attachment #1: Type: text/plain, Size: 8104 bytes --] == Series Details == Series: drm/xe/uapi: Uniform async vs sync handling (rev3) URL : https://patchwork.freedesktop.org/series/127442/ State : failure == Summary == CI Bug Log - changes from xe-577-5cd1893366708380854f4694ae57417192458a6b_BAT -> xe-pw-127442v3_BAT ==================================================== Summary ------- **FAILURE** Serious unknown changes coming with xe-pw-127442v3_BAT absolutely need to be verified manually. If you think the reported changes have nothing to do with the changes introduced in xe-pw-127442v3_BAT, please notify your bug team (I915-ci-infra@lists.freedesktop.org) to allow them to document this new failure mode, which will reduce false positives in CI. Participating hosts (4 -> 4) ------------------------------ No changes in participating hosts Possible new issues ------------------- Here are the unknown changes that may have been introduced in xe-pw-127442v3_BAT: ### IGT changes ### #### Possible regressions #### * igt@xe_exec_compute_mode@twice-userptr-invalidate: - bat-atsm-2: [PASS][1] -> [FAIL][2] +123 other tests fail [1]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-577-5cd1893366708380854f4694ae57417192458a6b/bat-atsm-2/igt@xe_exec_compute_mode@twice-userptr-invalidate.html [2]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-127442v3/bat-atsm-2/igt@xe_exec_compute_mode@twice-userptr-invalidate.html * igt@xe_exec_threads@threads-mixed-fd-basic: - bat-pvc-2: [PASS][3] -> [TIMEOUT][4] +2 other tests timeout [3]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-577-5cd1893366708380854f4694ae57417192458a6b/bat-pvc-2/igt@xe_exec_threads@threads-mixed-fd-basic.html [4]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-127442v3/bat-pvc-2/igt@xe_exec_threads@threads-mixed-fd-basic.html * igt@xe_intel_bb@create-in-region: - bat-dg2-oem2: [PASS][5] -> [FAIL][6] +182 other tests fail [5]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-577-5cd1893366708380854f4694ae57417192458a6b/bat-dg2-oem2/igt@xe_intel_bb@create-in-region.html [6]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-127442v3/bat-dg2-oem2/igt@xe_intel_bb@create-in-region.html * igt@xe_intel_bb@intel-bb-blit-y: - bat-pvc-2: [PASS][7] -> [FAIL][8] +106 other tests fail [7]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-577-5cd1893366708380854f4694ae57417192458a6b/bat-pvc-2/igt@xe_intel_bb@intel-bb-blit-y.html [8]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-127442v3/bat-pvc-2/igt@xe_intel_bb@intel-bb-blit-y.html * igt@xe_intel_bb@offset-control: - bat-adlp-7: [PASS][9] -> [FAIL][10] +149 other tests fail [9]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-577-5cd1893366708380854f4694ae57417192458a6b/bat-adlp-7/igt@xe_intel_bb@offset-control.html [10]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-127442v3/bat-adlp-7/igt@xe_intel_bb@offset-control.html #### Warnings #### * igt@kms_pipe_crc_basic@compare-crc-sanitycheck-nv12: - bat-dg2-oem2: [FAIL][11] ([Intel XE#400] / [Intel XE#616]) -> [FAIL][12] +2 other tests fail [11]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-577-5cd1893366708380854f4694ae57417192458a6b/bat-dg2-oem2/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-nv12.html [12]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-127442v3/bat-dg2-oem2/igt@kms_pipe_crc_basic@compare-crc-sanitycheck-nv12.html * igt@xe_create@create-execqueues-noleak: - bat-adlp-7: [FAIL][13] ([Intel XE#524]) -> [FAIL][14] [13]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-577-5cd1893366708380854f4694ae57417192458a6b/bat-adlp-7/igt@xe_create@create-execqueues-noleak.html [14]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-127442v3/bat-adlp-7/igt@xe_create@create-execqueues-noleak.html - bat-atsm-2: [FAIL][15] ([Intel XE#524]) -> [FAIL][16] [15]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-577-5cd1893366708380854f4694ae57417192458a6b/bat-atsm-2/igt@xe_create@create-execqueues-noleak.html [16]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-127442v3/bat-atsm-2/igt@xe_create@create-execqueues-noleak.html * igt@xe_evict@evict-beng-small-external: - bat-pvc-2: [FAIL][17] ([Intel XE#1000]) -> [FAIL][18] +3 other tests fail [17]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-577-5cd1893366708380854f4694ae57417192458a6b/bat-pvc-2/igt@xe_evict@evict-beng-small-external.html [18]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-127442v3/bat-pvc-2/igt@xe_evict@evict-beng-small-external.html * igt@xe_evict@evict-small-external-cm: - bat-pvc-2: [DMESG-FAIL][19] ([Intel XE#482]) -> [FAIL][20] +3 other tests fail [19]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-577-5cd1893366708380854f4694ae57417192458a6b/bat-pvc-2/igt@xe_evict@evict-small-external-cm.html [20]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-127442v3/bat-pvc-2/igt@xe_evict@evict-small-external-cm.html * igt@xe_evict_ccs@evict-overcommit-parallel-nofree-samefd: - bat-pvc-2: [INCOMPLETE][21] ([Intel XE#392]) -> [FAIL][22] [21]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-577-5cd1893366708380854f4694ae57417192458a6b/bat-pvc-2/igt@xe_evict_ccs@evict-overcommit-parallel-nofree-samefd.html [22]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-127442v3/bat-pvc-2/igt@xe_evict_ccs@evict-overcommit-parallel-nofree-samefd.html #### Suppressed #### The following results come from untrusted machines, tests, or statuses. They do not affect the overall result. * {igt@kms_psr@psr-cursor-plane-move}: - bat-adlp-7: [PASS][23] -> [FAIL][24] +8 other tests fail [23]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-577-5cd1893366708380854f4694ae57417192458a6b/bat-adlp-7/igt@kms_psr@psr-cursor-plane-move.html [24]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-127442v3/bat-adlp-7/igt@kms_psr@psr-cursor-plane-move.html * {igt@xe_pat@pat-index-xehpc@blt}: - bat-pvc-2: [PASS][25] -> [FAIL][26] +1 other test fail [25]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-577-5cd1893366708380854f4694ae57417192458a6b/bat-pvc-2/igt@xe_pat@pat-index-xehpc@blt.html [26]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-127442v3/bat-pvc-2/igt@xe_pat@pat-index-xehpc@blt.html * {igt@xe_pat@pat-index-xelp@render}: - bat-dg2-oem2: [PASS][27] -> [FAIL][28] +2 other tests fail [27]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-577-5cd1893366708380854f4694ae57417192458a6b/bat-dg2-oem2/igt@xe_pat@pat-index-xelp@render.html [28]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-127442v3/bat-dg2-oem2/igt@xe_pat@pat-index-xelp@render.html - bat-atsm-2: [PASS][29] -> [FAIL][30] +2 other tests fail [29]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-577-5cd1893366708380854f4694ae57417192458a6b/bat-atsm-2/igt@xe_pat@pat-index-xelp@render.html [30]: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-127442v3/bat-atsm-2/igt@xe_pat@pat-index-xelp@render.html {name}: This element is suppressed. This means it is ignored when computing the status of the difference (SUCCESS, WARNING, or FAILURE). [Intel XE#1000]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/1000 [Intel XE#392]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/392 [Intel XE#400]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/400 [Intel XE#482]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/482 [Intel XE#524]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/524 [Intel XE#616]: https://gitlab.freedesktop.org/drm/xe/kernel/issues/616 Build changes ------------- * IGT: IGT_7636 -> IGT_7639 * Linux: xe-577-5cd1893366708380854f4694ae57417192458a6b -> xe-pw-127442v3 IGT_7636: 7636 IGT_7639: 18afc09e362b605a3c88c000331708f105d2c23a @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git xe-577-5cd1893366708380854f4694ae57417192458a6b: 5cd1893366708380854f4694ae57417192458a6b xe-pw-127442v3: 127442v3 == Logs == For more details see: https://intel-gfx-ci.01.org/tree/intel-xe/xe-pw-127442v3/index.html [-- Attachment #2: Type: text/html, Size: 9169 bytes --] ^ permalink raw reply [flat|nested] 14+ messages in thread
* Re: [PATCH v3] drm/xe/uapi: Uniform async vs sync handling 2023-12-13 22:29 [PATCH v3] drm/xe/uapi: Uniform async vs sync handling Matthew Brost ` (7 preceding siblings ...) 2023-12-13 23:19 ` ✗ CI.BAT: failure for drm/xe/uapi: Uniform async vs sync handling (rev3) Patchwork @ 2023-12-14 11:14 ` Thomas Hellström 8 siblings, 0 replies; 14+ messages in thread From: Thomas Hellström @ 2023-12-14 11:14 UTC (permalink / raw) To: Matthew Brost, intel-xe; +Cc: Francois Dugast, Rodrigo Vivi On 12/13/23 23:29, Matthew Brost wrote: > Remove concept of async vs sync VM bind queues, rather make async vs > sync a per IOCTL choice. Since this is per IOCTL, it makes sense to have > a singular flag IOCTL rather than per VM bind op flag too. Add > DRM_XE_SYNCS_FLAG_WAIT_FOR_OP which is an input sync flag to support > this. Support this new flag for both the VM bind IOCTL only with a path > to support this for execs too. > > v2: Add cookie, move sync wait outside of any locks. > v3: Skip bind operations if *cookie non-zero, check reserved bits zero A couple of review comments not addressed since previous review, and also one comment about a __copy_from_user usage, Please see below. > > Cc: Rodrigo Vivi <rodrigo.vivi@intel.com> > Cc: Thomas Hellström <thomas.hellstrom@linux.intel.com> > Cc: Francois Dugast <francois.dugast@intel.com> > Signed-off-by: Matthew Brost <matthew.brost@intel.com> > --- > drivers/gpu/drm/xe/xe_exec.c | 13 ++- > drivers/gpu/drm/xe/xe_exec_queue.c | 7 +- > drivers/gpu/drm/xe/xe_exec_queue_types.h | 2 - > drivers/gpu/drm/xe/xe_vm.c | 140 ++++++++++++----------- > drivers/gpu/drm/xe/xe_vm_types.h | 13 +-- > include/uapi/drm/xe_drm.h | 65 +++++++---- > 6 files changed, 131 insertions(+), 109 deletions(-) > > diff --git a/drivers/gpu/drm/xe/xe_exec.c b/drivers/gpu/drm/xe/xe_exec.c > index ba92e5619da3..af2b676c8eef 100644 > --- a/drivers/gpu/drm/xe/xe_exec.c > +++ b/drivers/gpu/drm/xe/xe_exec.c > @@ -104,7 +104,7 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > struct xe_device *xe = to_xe_device(dev); > struct xe_file *xef = to_xe_file(file); > struct drm_xe_exec *args = data; > - struct drm_xe_sync __user *syncs_user = u64_to_user_ptr(args->syncs); > + struct drm_xe_sync __user *syncs_user = u64_to_user_ptr(args->syncs.syncs); > u64 __user *addresses_user = u64_to_user_ptr(args->address); > struct xe_exec_queue *q; > struct xe_sync_entry *syncs = NULL; > @@ -120,7 +120,10 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > int err = 0; > > if (XE_IOCTL_DBG(xe, args->extensions) || > - XE_IOCTL_DBG(xe, args->pad[0] || args->pad[1] || args->pad[2]) || > + XE_IOCTL_DBG(xe, args->pad || args->pad2[0] || args->pad2[1] || args->pad2[2]) || > + XE_IOCTL_DBG(xe, args->syncs.flags) || > + XE_IOCTL_DBG(xe, args->syncs.cookie) || > + XE_IOCTL_DBG(xe, args->syncs.reserved[0] || args->syncs.reserved[1]) || > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > return -EINVAL; > > @@ -140,8 +143,8 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > goto err_exec_queue; > } > > - if (args->num_syncs) { > - syncs = kcalloc(args->num_syncs, sizeof(*syncs), GFP_KERNEL); > + if (args->syncs.num_syncs) { > + syncs = kcalloc(args->syncs.num_syncs, sizeof(*syncs), GFP_KERNEL); > if (!syncs) { > err = -ENOMEM; > goto err_exec_queue; > @@ -150,7 +153,7 @@ int xe_exec_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > vm = q->vm; > > - for (i = 0; i < args->num_syncs; i++) { > + for (i = 0; i < args->syncs.num_syncs; i++) { > err = xe_sync_entry_parse(xe, xef, &syncs[num_syncs++], > &syncs_user[i], SYNC_PARSE_FLAG_EXEC | > (xe_vm_in_lr_mode(vm) ? > diff --git a/drivers/gpu/drm/xe/xe_exec_queue.c b/drivers/gpu/drm/xe/xe_exec_queue.c > index eeb9605dd45f..a25d67971fdd 100644 > --- a/drivers/gpu/drm/xe/xe_exec_queue.c > +++ b/drivers/gpu/drm/xe/xe_exec_queue.c > @@ -625,10 +625,7 @@ int xe_exec_queue_create_ioctl(struct drm_device *dev, void *data, > if (XE_IOCTL_DBG(xe, eci[0].gt_id >= xe->info.gt_count)) > return -EINVAL; > > - if (eci[0].engine_class >= DRM_XE_ENGINE_CLASS_VM_BIND_ASYNC) { > - bool sync = eci[0].engine_class == > - DRM_XE_ENGINE_CLASS_VM_BIND_SYNC; > - > + if (eci[0].engine_class == DRM_XE_ENGINE_CLASS_VM_BIND) { > for_each_gt(gt, xe, id) { > struct xe_exec_queue *new; > > @@ -654,8 +651,6 @@ int xe_exec_queue_create_ioctl(struct drm_device *dev, void *data, > args->width, hwe, > EXEC_QUEUE_FLAG_PERSISTENT | > EXEC_QUEUE_FLAG_VM | > - (sync ? 0 : > - EXEC_QUEUE_FLAG_VM_ASYNC) | > (id ? > EXEC_QUEUE_FLAG_BIND_ENGINE_CHILD : > 0)); > diff --git a/drivers/gpu/drm/xe/xe_exec_queue_types.h b/drivers/gpu/drm/xe/xe_exec_queue_types.h > index c7aefa1c8c31..0f7f6cded4a3 100644 > --- a/drivers/gpu/drm/xe/xe_exec_queue_types.h > +++ b/drivers/gpu/drm/xe/xe_exec_queue_types.h > @@ -84,8 +84,6 @@ struct xe_exec_queue { > #define EXEC_QUEUE_FLAG_VM BIT(4) > /* child of VM queue for multi-tile VM jobs */ > #define EXEC_QUEUE_FLAG_BIND_ENGINE_CHILD BIT(5) > -/* VM jobs for this queue are asynchronous */ > -#define EXEC_QUEUE_FLAG_VM_ASYNC BIT(6) > > /** > * @flags: flags for this exec queue, should statically setup aside from ban > diff --git a/drivers/gpu/drm/xe/xe_vm.c b/drivers/gpu/drm/xe/xe_vm.c > index 2f3df9ee67c9..8407c4d54a45 100644 > --- a/drivers/gpu/drm/xe/xe_vm.c > +++ b/drivers/gpu/drm/xe/xe_vm.c > @@ -1343,9 +1343,7 @@ struct xe_vm *xe_vm_create(struct xe_device *xe, u32 flags) > struct xe_gt *gt = tile->primary_gt; > struct xe_vm *migrate_vm; > struct xe_exec_queue *q; > - u32 create_flags = EXEC_QUEUE_FLAG_VM | > - ((flags & XE_VM_FLAG_ASYNC_DEFAULT) ? > - EXEC_QUEUE_FLAG_VM_ASYNC : 0); > + u32 create_flags = EXEC_QUEUE_FLAG_VM; > > if (!vm->pt_root[id]) > continue; > @@ -1712,12 +1710,6 @@ xe_vm_bind_vma(struct xe_vma *vma, struct xe_exec_queue *q, > return ERR_PTR(err); > } > > -static bool xe_vm_sync_mode(struct xe_vm *vm, struct xe_exec_queue *q) > -{ > - return q ? !(q->flags & EXEC_QUEUE_FLAG_VM_ASYNC) : > - !(vm->flags & XE_VM_FLAG_ASYNC_DEFAULT); > -} > - > static int __xe_vm_bind(struct xe_vm *vm, struct xe_vma *vma, > struct xe_exec_queue *q, struct xe_sync_entry *syncs, > u32 num_syncs, bool immediate, bool first_op, > @@ -1747,8 +1739,6 @@ static int __xe_vm_bind(struct xe_vm *vm, struct xe_vma *vma, > > if (last_op) > xe_exec_queue_last_fence_set(wait_exec_queue, vm, fence); > - if (last_op && xe_vm_sync_mode(vm, q)) > - dma_fence_wait(fence, true); > dma_fence_put(fence); > > return 0; > @@ -1791,8 +1781,6 @@ static int xe_vm_unbind(struct xe_vm *vm, struct xe_vma *vma, > xe_vma_destroy(vma, fence); > if (last_op) > xe_exec_queue_last_fence_set(wait_exec_queue, vm, fence); > - if (last_op && xe_vm_sync_mode(vm, q)) > - dma_fence_wait(fence, true); > dma_fence_put(fence); > > return 0; > @@ -1800,7 +1788,6 @@ static int xe_vm_unbind(struct xe_vm *vm, struct xe_vma *vma, > > #define ALL_DRM_XE_VM_CREATE_FLAGS (DRM_XE_VM_CREATE_FLAG_SCRATCH_PAGE | \ > DRM_XE_VM_CREATE_FLAG_LR_MODE | \ > - DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT | \ > DRM_XE_VM_CREATE_FLAG_FAULT_MODE) > > int xe_vm_create_ioctl(struct drm_device *dev, void *data, > @@ -1854,8 +1841,6 @@ int xe_vm_create_ioctl(struct drm_device *dev, void *data, > flags |= XE_VM_FLAG_SCRATCH_PAGE; > if (args->flags & DRM_XE_VM_CREATE_FLAG_LR_MODE) > flags |= XE_VM_FLAG_LR_MODE; > - if (args->flags & DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT) > - flags |= XE_VM_FLAG_ASYNC_DEFAULT; > if (args->flags & DRM_XE_VM_CREATE_FLAG_FAULT_MODE) > flags |= XE_VM_FLAG_FAULT_MODE; > > @@ -2263,8 +2248,7 @@ static int xe_vma_op_commit(struct xe_vm *vm, struct xe_vma_op *op) > static int vm_bind_ioctl_ops_parse(struct xe_vm *vm, struct xe_exec_queue *q, > struct drm_gpuva_ops *ops, > struct xe_sync_entry *syncs, u32 num_syncs, > - struct list_head *ops_list, bool last, > - bool async) > + struct list_head *ops_list, bool last) > { > struct xe_vma_op *last_op = NULL; > struct drm_gpuva_op *__op; > @@ -2696,28 +2680,28 @@ static int vm_bind_ioctl_ops_execute(struct xe_vm *vm, > > #ifdef TEST_VM_ASYNC_OPS_ERROR > #define SUPPORTED_FLAGS \ > - (FORCE_ASYNC_OP_ERROR | DRM_XE_VM_BIND_FLAG_ASYNC | \ > - DRM_XE_VM_BIND_FLAG_READONLY | DRM_XE_VM_BIND_FLAG_IMMEDIATE | \ > - DRM_XE_VM_BIND_FLAG_NULL | 0xffff) > + (FORCE_ASYNC_OP_ERROR | DRM_XE_VM_BIND_FLAG_READONLY | \ > + DRM_XE_VM_BIND_FLAG_IMMEDIATE | DRM_XE_VM_BIND_FLAG_NULL | 0xffff) > #else > #define SUPPORTED_FLAGS \ > - (DRM_XE_VM_BIND_FLAG_ASYNC | DRM_XE_VM_BIND_FLAG_READONLY | \ > + (DRM_XE_VM_BIND_FLAG_READONLY | \ > DRM_XE_VM_BIND_FLAG_IMMEDIATE | DRM_XE_VM_BIND_FLAG_NULL | \ > 0xffff) > #endif > #define XE_64K_PAGE_MASK 0xffffull > +#define ALL_DRM_XE_SYNCS_FLAGS (DRM_XE_SYNCS_FLAG_WAIT_FOR_OP) > > #define MAX_BINDS 512 /* FIXME: Picking random upper limit */ > > static int vm_bind_ioctl_check_args(struct xe_device *xe, > struct drm_xe_vm_bind *args, > struct drm_xe_vm_bind_op **bind_ops, > - bool *async) > + bool *async, bool *skip_ops) > { > int err; > int i; > > - if (XE_IOCTL_DBG(xe, args->pad || args->pad2) || > + if (XE_IOCTL_DBG(xe, args->pad) || > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > return -EINVAL; > > @@ -2745,6 +2729,30 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, > *bind_ops = &args->bind; > } > > + *async = !(args->syncs.flags & DRM_XE_SYNCS_FLAG_WAIT_FOR_OP); > + *skip_ops = false; > + > + if (XE_IOCTL_DBG(xe, args->syncs.flags & ~ALL_DRM_XE_SYNCS_FLAGS) || > + XE_IOCTL_DBG(xe, *async && args->syncs.cookie) || > + XE_IOCTL_DBG(xe, args->syncs.reserved[0] || args->syncs.reserved[1]) || > + XE_IOCTL_DBG(xe, !*async && args->syncs.num_syncs)) { > + err = -EINVAL; > + goto free_bind_ops; > + } > + > + if (!*async) { > + u64 __user *cookie = u64_to_user_ptr(args->syncs.cookie); > + u64 value; > + > + err = __copy_from_user(&value, cookie, sizeof(u64)); get_user() instead of __copy_from_user? > + if (XE_IOCTL_DBG(xe, err)) { > + err = -EFAULT; > + goto free_bind_ops; > + } > + if (value) > + *skip_ops = true; > + } > + > for (i = 0; i < args->num_binds; ++i) { > u64 range = (*bind_ops)[i].range; > u64 addr = (*bind_ops)[i].addr; > @@ -2775,18 +2783,6 @@ static int vm_bind_ioctl_check_args(struct xe_device *xe, > goto free_bind_ops; > } > > - if (i == 0) { > - *async = !!(flags & DRM_XE_VM_BIND_FLAG_ASYNC); > - if (XE_IOCTL_DBG(xe, !*async && args->num_syncs)) { > - err = -EINVAL; > - goto free_bind_ops; > - } > - } else if (XE_IOCTL_DBG(xe, *async != > - !!(flags & DRM_XE_VM_BIND_FLAG_ASYNC))) { > - err = -EINVAL; > - goto free_bind_ops; > - } > - > if (XE_IOCTL_DBG(xe, op > DRM_XE_VM_BIND_OP_PREFETCH) || > XE_IOCTL_DBG(xe, flags & ~SUPPORTED_FLAGS) || > XE_IOCTL_DBG(xe, obj && is_null) || > @@ -2854,12 +2850,25 @@ static int vm_bind_ioctl_signal_fences(struct xe_vm *vm, > > xe_exec_queue_last_fence_set(to_wait_exec_queue(vm, q), vm, > fence); > + dma_fence_put(fence); > > - if (xe_vm_sync_mode(vm, q)) { > - long timeout = dma_fence_wait(fence, true); > + return err; > +} > + > +static int vm_bind_ioctl_sync_wait(struct xe_vm *vm, > + struct dma_fence *fence, > + u64 __user *cookie) > +{ > + long timeout; > + int err = 0; > + > + timeout = dma_fence_wait(fence, true); Review comments on previous patch not addressed. > + if (timeout < 0) { > + u64 value = 1; > > - if (timeout < 0) > - err = -EINTR; > + err = -ERESTARTSYS; > + if (copy_to_user(cookie, &value, sizeof(value))) > + err = -EFAULT; > } > > dma_fence_put(fence); > @@ -2875,21 +2884,22 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > struct drm_xe_sync __user *syncs_user; > struct xe_bo **bos = NULL; > struct drm_gpuva_ops **ops = NULL; > + struct dma_fence *fence = NULL; > struct xe_vm *vm; > struct xe_exec_queue *q = NULL; > u32 num_syncs; > struct xe_sync_entry *syncs = NULL; > struct drm_xe_vm_bind_op *bind_ops; > LIST_HEAD(ops_list); > - bool async; > + bool async, skip_ops; > int err; > int i; > > - err = vm_bind_ioctl_check_args(xe, args, &bind_ops, &async); > + err = vm_bind_ioctl_check_args(xe, args, &bind_ops, &async, &skip_ops); > if (err) > return err; > > - if (XE_IOCTL_DBG(xe, args->pad || args->pad2) || > + if (XE_IOCTL_DBG(xe, args->pad) || > XE_IOCTL_DBG(xe, args->reserved[0] || args->reserved[1])) > return -EINVAL; > > @@ -2904,12 +2914,6 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > err = -EINVAL; > goto put_exec_queue; > } > - > - if (XE_IOCTL_DBG(xe, args->num_binds && async != > - !!(q->flags & EXEC_QUEUE_FLAG_VM_ASYNC))) { > - err = -EINVAL; > - goto put_exec_queue; > - } > } > > vm = xe_vm_lookup(xef, args->vm_id); > @@ -2918,14 +2922,6 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > goto put_exec_queue; > } > > - if (!args->exec_queue_id) { > - if (XE_IOCTL_DBG(xe, args->num_binds && async != > - !!(vm->flags & XE_VM_FLAG_ASYNC_DEFAULT))) { > - err = -EINVAL; > - goto put_vm; > - } > - } > - > err = down_write_killable(&vm->lock); > if (err) > goto put_vm; > @@ -3015,16 +3011,16 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > } > } > > - if (args->num_syncs) { > - syncs = kcalloc(args->num_syncs, sizeof(*syncs), GFP_KERNEL); > + if (args->syncs.num_syncs) { > + syncs = kcalloc(args->syncs.num_syncs, sizeof(*syncs), GFP_KERNEL); > if (!syncs) { > err = -ENOMEM; > goto put_obj; > } > } > > - syncs_user = u64_to_user_ptr(args->syncs); > - for (num_syncs = 0; num_syncs < args->num_syncs; num_syncs++) { > + syncs_user = u64_to_user_ptr(args->syncs.syncs); > + for (num_syncs = 0; num_syncs < args->syncs.num_syncs; num_syncs++) { > err = xe_sync_entry_parse(xe, xef, &syncs[num_syncs], > &syncs_user[num_syncs], > (xe_vm_in_lr_mode(vm) ? > @@ -3035,7 +3031,7 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > goto free_syncs; > } > > - if (!args->num_binds) { > + if (!args->num_binds || skip_ops) { > err = -ENODATA; > goto free_syncs; > } > @@ -3060,8 +3056,7 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > > err = vm_bind_ioctl_ops_parse(vm, q, ops[i], syncs, num_syncs, > &ops_list, > - i == args->num_binds - 1, > - async); > + i == args->num_binds - 1); > if (err) > goto unwind_ops; > } > @@ -3077,7 +3072,10 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > xe_exec_queue_get(q); > > err = vm_bind_ioctl_ops_execute(vm, &ops_list); > - > + if (!err && !async) { > + fence = xe_exec_queue_last_fence_get(to_wait_exec_queue(vm, q), vm); > + dma_fence_get(fence); > + } > up_write(&vm->lock); > > if (q) > @@ -3092,13 +3090,19 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > if (args->num_binds > 1) > kfree(bind_ops); > > - return err; > + return fence ? vm_bind_ioctl_sync_wait(vm, fence, u64_to_user_ptr(args->syncs.cookie)) : > + err; > > unwind_ops: > vm_bind_ioctl_ops_unwind(vm, ops, args->num_binds); > free_syncs: > - if (err == -ENODATA) > + if (err == -ENODATA) { > err = vm_bind_ioctl_signal_fences(vm, q, syncs, num_syncs); > + if (!async) { > + fence = xe_exec_queue_last_fence_get(to_wait_exec_queue(vm, q), vm); > + dma_fence_get(fence); > + } > + } > while (num_syncs--) > xe_sync_entry_cleanup(&syncs[num_syncs]); > > @@ -3108,6 +3112,8 @@ int xe_vm_bind_ioctl(struct drm_device *dev, void *data, struct drm_file *file) > xe_bo_put(bos[i]); > release_vm_lock: > up_write(&vm->lock); > + if (fence) > + err = vm_bind_ioctl_sync_wait(vm, fence, u64_to_user_ptr(args->syncs.cookie)); > put_vm: > xe_vm_put(vm); > put_exec_queue: > diff --git a/drivers/gpu/drm/xe/xe_vm_types.h b/drivers/gpu/drm/xe/xe_vm_types.h > index 2e023596cb15..63e8a50b88e9 100644 > --- a/drivers/gpu/drm/xe/xe_vm_types.h > +++ b/drivers/gpu/drm/xe/xe_vm_types.h > @@ -138,13 +138,12 @@ struct xe_vm { > */ > #define XE_VM_FLAG_64K BIT(0) > #define XE_VM_FLAG_LR_MODE BIT(1) > -#define XE_VM_FLAG_ASYNC_DEFAULT BIT(2) > -#define XE_VM_FLAG_MIGRATION BIT(3) > -#define XE_VM_FLAG_SCRATCH_PAGE BIT(4) > -#define XE_VM_FLAG_FAULT_MODE BIT(5) > -#define XE_VM_FLAG_BANNED BIT(6) > -#define XE_VM_FLAG_TILE_ID(flags) FIELD_GET(GENMASK(8, 7), flags) > -#define XE_VM_FLAG_SET_TILE_ID(tile) FIELD_PREP(GENMASK(8, 7), (tile)->id) > +#define XE_VM_FLAG_MIGRATION BIT(2) > +#define XE_VM_FLAG_SCRATCH_PAGE BIT(3) > +#define XE_VM_FLAG_FAULT_MODE BIT(4) > +#define XE_VM_FLAG_BANNED BIT(5) > +#define XE_VM_FLAG_TILE_ID(flags) FIELD_GET(GENMASK(7, 6), flags) > +#define XE_VM_FLAG_SET_TILE_ID(tile) FIELD_PREP(GENMASK(7, 6), (tile)->id) > unsigned long flags; > > /** @composite_fence_ctx: context composite fence */ > diff --git a/include/uapi/drm/xe_drm.h b/include/uapi/drm/xe_drm.h > index 0895e4d2a981..8cbe7ca6fe57 100644 > --- a/include/uapi/drm/xe_drm.h > +++ b/include/uapi/drm/xe_drm.h > @@ -140,8 +140,7 @@ struct drm_xe_engine_class_instance { > * Kernel only classes (not actual hardware engine class). Used for > * creating ordered queues of VM bind operations. > */ > -#define DRM_XE_ENGINE_CLASS_VM_BIND_ASYNC 5 > -#define DRM_XE_ENGINE_CLASS_VM_BIND_SYNC 6 > +#define DRM_XE_ENGINE_CLASS_VM_BIND 5 > /** @engine_class: engine class id */ > __u16 engine_class; > /** @engine_instance: engine instance id */ > @@ -661,7 +660,6 @@ struct drm_xe_vm_create { > * still enable recoverable pagefaults if supported by the device. > */ > #define DRM_XE_VM_CREATE_FLAG_LR_MODE (1 << 1) > -#define DRM_XE_VM_CREATE_FLAG_ASYNC_DEFAULT (1 << 2) > /* > * DRM_XE_VM_CREATE_FLAG_FAULT_MODE requires also > * DRM_XE_VM_CREATE_FLAG_LR_MODE. It allows memory to be allocated > @@ -669,7 +667,7 @@ struct drm_xe_vm_create { > * The xe driver internally uses recoverable pagefaults to implement > * this. > */ > -#define DRM_XE_VM_CREATE_FLAG_FAULT_MODE (1 << 3) > +#define DRM_XE_VM_CREATE_FLAG_FAULT_MODE (1 << 2) > /** @flags: Flags */ > __u32 flags; > > @@ -777,12 +775,11 @@ struct drm_xe_vm_bind_op { > __u32 op; > > #define DRM_XE_VM_BIND_FLAG_READONLY (1 << 0) > -#define DRM_XE_VM_BIND_FLAG_ASYNC (1 << 1) > /* > * Valid on a faulting VM only, do the MAP operation immediately rather > * than deferring the MAP to the page fault handler. > */ > -#define DRM_XE_VM_BIND_FLAG_IMMEDIATE (1 << 2) > +#define DRM_XE_VM_BIND_FLAG_IMMEDIATE (1 << 1) > /* > * When the NULL flag is set, the page tables are setup with a special > * bit which indicates writes are dropped and all reads return zero. In > @@ -790,7 +787,7 @@ struct drm_xe_vm_bind_op { > * operations, the BO handle MBZ, and the BO offset MBZ. This flag is > * intended to implement VK sparse bindings. > */ > -#define DRM_XE_VM_BIND_FLAG_NULL (1 << 3) > +#define DRM_XE_VM_BIND_FLAG_NULL (1 << 2) > /** @flags: Bind flags */ > __u32 flags; > > @@ -808,6 +805,36 @@ struct drm_xe_vm_bind_op { > __u64 reserved[3]; > }; > > +/** > + * struct drm_xe_syncs - In / out syncs for IOCTLs. > + */ > +struct drm_xe_syncs { > + /** @num_syncs: amount of syncs to wait on */ > + __u32 num_syncs; > + > + /* > + * Block in IOCTL until operation complete, num_syncs MBZ if set. > + */ > +#define DRM_XE_SYNCS_FLAG_WAIT_FOR_OP (1 << 0) > + /** @flags: Sync flags */ > + __u32 flags; > + > + /** > + * @cookie: pointer which is written with an non-zero value if IOCTL > + * operation has been committed but the wait for completion > + * (DRM_XE_SYNCS_FLAG_WAIT_FOR_OP is set) is interrupted. Value of > + * *cookie MBZ for IOCTL operations to be executed, if non-zero > + * operations are skipped and blocks until exec queue for IOCTL is idle. > + */ > + __u64 cookie; Also here, review comments were not addressed. User-space must regard this as a pointer to an opaque u64 which MBZ on initial submission. Any information to user-space on what's stored in that cookie, when and why shouldn't be there. /Thomas > + > + /** @syncs: pointer to struct drm_xe_sync array */ > + __u64 syncs; > + > + /** @reserved: Reserved */ > + __u64 reserved[2]; > +}; > + > struct drm_xe_vm_bind { > /** @extensions: Pointer to the first extension struct, if any */ > __u64 extensions; > @@ -839,14 +866,8 @@ struct drm_xe_vm_bind { > __u64 vector_of_binds; > }; > > - /** @pad: MBZ */ > - __u32 pad2; > - > - /** @num_syncs: amount of syncs to wait on */ > - __u32 num_syncs; > - > - /** @syncs: pointer to struct drm_xe_sync array */ > - __u64 syncs; > + /** @syncs: syncs for bind */ > + struct drm_xe_syncs syncs; > > /** @reserved: Reserved */ > __u64 reserved[2]; > @@ -975,14 +996,14 @@ struct drm_xe_exec { > /** @extensions: Pointer to the first extension struct, if any */ > __u64 extensions; > > + /** @pad: MBZ */ > + __u32 pad; > + > /** @exec_queue_id: Exec queue ID for the batch buffer */ > __u32 exec_queue_id; > > - /** @num_syncs: Amount of struct drm_xe_sync in array. */ > - __u32 num_syncs; > - > - /** @syncs: Pointer to struct drm_xe_sync array. */ > - __u64 syncs; > + /** @syncs: syncs for exec */ > + struct drm_xe_syncs syncs; > > /** > * @address: address of batch buffer if num_batch_buffer == 1 or an > @@ -996,8 +1017,8 @@ struct drm_xe_exec { > */ > __u16 num_batch_buffer; > > - /** @pad: MBZ */ > - __u16 pad[3]; > + /** @pad2: MBZ */ > + __u16 pad2[3]; > > /** @reserved: Reserved */ > __u64 reserved[2]; ^ permalink raw reply [flat|nested] 14+ messages in thread
end of thread, other threads:[~2023-12-14 13:32 UTC | newest] Thread overview: 14+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-12-13 22:29 [PATCH v3] drm/xe/uapi: Uniform async vs sync handling Matthew Brost 2023-12-13 22:35 ` ✓ CI.Patch_applied: success for drm/xe/uapi: Uniform async vs sync handling (rev3) Patchwork 2023-12-13 22:35 ` ✓ CI.checkpatch: " Patchwork 2023-12-13 22:36 ` ✓ CI.KUnit: " Patchwork 2023-12-13 22:43 ` ✓ CI.Build: " Patchwork 2023-12-13 22:44 ` ✓ CI.Hooks: " Patchwork 2023-12-13 22:45 ` ✓ CI.checksparse: " Patchwork 2023-12-13 22:49 ` [PATCH v3] drm/xe/uapi: Uniform async vs sync handling Souza, Jose 2023-12-14 0:26 ` Matthew Brost 2023-12-14 1:51 ` Souza, Jose 2023-12-14 3:23 ` Matthew Brost 2023-12-14 13:31 ` Souza, Jose 2023-12-13 23:19 ` ✗ CI.BAT: failure for drm/xe/uapi: Uniform async vs sync handling (rev3) Patchwork 2023-12-14 11:14 ` [PATCH v3] drm/xe/uapi: Uniform async vs sync handling Thomas Hellström
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.