From: Piotr Piórkowski Date: Wed, 11 Feb 2026 17:14:41 +0000 (+0100) Subject: drm/xe: Force EXEC_QUEUE_FLAG_KERNEL for kernel internal VMs X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=aafbb42be589d4a3d282b377f50a1ddb42400628;p=thirdparty%2Flinux.git drm/xe: Force EXEC_QUEUE_FLAG_KERNEL for kernel internal VMs VMs created without an associated xe_file originate from kernel contexts and should use kernel exec queues. Ensure such VMs create bind exec queues with EXEC_QUEUE_FLAG_KERNEL set. Let's ensure bind exec queues created for kernel VMs are always marked with EXEC_QUEUE_FLAG_KERNEL. Signed-off-by: Piotr Piórkowski Reviewed-by: Matthew Brost Signed-off-by: Michal Wajdeczko Link: https://patch.msgid.link/20260211171441.3246686-1-piotr.piorkowski@intel.com --- diff --git a/drivers/gpu/drm/xe/xe_vm.c b/drivers/gpu/drm/xe/xe_vm.c index e6cfa5dc7f62b..a46f11a71c372 100644 --- a/drivers/gpu/drm/xe/xe_vm.c +++ b/drivers/gpu/drm/xe/xe_vm.c @@ -1657,6 +1657,9 @@ struct xe_vm *xe_vm_create(struct xe_device *xe, u32 flags, struct xe_file *xef) if (!vm->pt_root[id]) continue; + if (!xef) /* Not from userspace */ + create_flags |= EXEC_QUEUE_FLAG_KERNEL; + q = xe_exec_queue_create_bind(xe, tile, vm, create_flags, 0); if (IS_ERR(q)) { err = PTR_ERR(q);