]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commitdiff
drm/xe: Rename exec_queue_kill_compute to xe_vm_remove_compute_exec_queue
authorMatthew Brost <matthew.brost@intel.com>
Wed, 20 Sep 2023 19:29:29 +0000 (15:29 -0400)
committerRodrigo Vivi <rodrigo.vivi@intel.com>
Thu, 21 Dec 2023 16:43:13 +0000 (11:43 -0500)
Much better name and aligns with xe_vm_add_compute_exec_queue. As part
of the rename, move the implementation from xe_exec_queue.c to xe_vm.c.

Suggested-by: Niranjana Vishwanathapura <niranjana.vishwanathapura@intel.com>
Signed-off-by: Matthew Brost <matthew.brost@intel.com>
Reviewed-by: Niranjana Vishwanathapura <niranjana.vishwanathapura@intel.com>
Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
drivers/gpu/drm/xe/xe_exec_queue.c
drivers/gpu/drm/xe/xe_vm.c
drivers/gpu/drm/xe/xe_vm.h

index b9e645e86b4f4a7ed2974b1387085bf73361b770..d400e2bb37856ac96717a1af98d0fa7b9cbe42f7 100644 (file)
@@ -775,22 +775,6 @@ int xe_exec_queue_get_property_ioctl(struct drm_device *dev, void *data,
        return ret;
 }
 
-static void exec_queue_kill_compute(struct xe_exec_queue *q)
-{
-       if (!xe_vm_in_compute_mode(q->vm))
-               return;
-
-       down_write(&q->vm->lock);
-       list_del(&q->compute.link);
-       --q->vm->preempt.num_exec_queues;
-       if (q->compute.pfence) {
-               dma_fence_enable_sw_signaling(q->compute.pfence);
-               dma_fence_put(q->compute.pfence);
-               q->compute.pfence = NULL;
-       }
-       up_write(&q->vm->lock);
-}
-
 /**
  * xe_exec_queue_is_lr() - Whether an exec_queue is long-running
  * @q: The exec_queue
@@ -861,11 +845,11 @@ void xe_exec_queue_kill(struct xe_exec_queue *q)
        list_for_each_entry_safe(eq, next, &eq->multi_gt_list,
                                 multi_gt_link) {
                q->ops->kill(eq);
-               exec_queue_kill_compute(eq);
+               xe_vm_remove_compute_exec_queue(q->vm, eq);
        }
 
        q->ops->kill(q);
-       exec_queue_kill_compute(q);
+       xe_vm_remove_compute_exec_queue(q->vm, q);
 }
 
 int xe_exec_queue_destroy_ioctl(struct drm_device *dev, void *data,
index 1a0546beef878ce383b71fda1dda7fe59d0fa3e8..d02c0db5e2ae181586c11f7b0680703cac9a6162 100644 (file)
@@ -387,6 +387,27 @@ out_unlock:
        return err;
 }
 
+/**
+ * xe_vm_remove_compute_exec_queue() - Remove compute exec queue from VM
+ * @vm: The VM.
+ * @q: The exec_queue
+ */
+void xe_vm_remove_compute_exec_queue(struct xe_vm *vm, struct xe_exec_queue *q)
+{
+       if (!xe_vm_in_compute_mode(vm))
+               return;
+
+       down_write(&vm->lock);
+       list_del(&q->compute.link);
+       --vm->preempt.num_exec_queues;
+       if (q->compute.pfence) {
+               dma_fence_enable_sw_signaling(q->compute.pfence);
+               dma_fence_put(q->compute.pfence);
+               q->compute.pfence = NULL;
+       }
+       up_write(&vm->lock);
+}
+
 /**
  * __xe_vm_userptr_needs_repin() - Check whether the VM does have userptrs
  * that need repinning.
index 694f9e689b058d02b5a51f881e1f9dbc3a59f3fc..59dcbd1adf15a2dbcaba2fc7dd2bb6de11fe3d00 100644 (file)
@@ -165,6 +165,7 @@ static inline bool xe_vm_no_dma_fences(struct xe_vm *vm)
 }
 
 int xe_vm_add_compute_exec_queue(struct xe_vm *vm, struct xe_exec_queue *q);
+void xe_vm_remove_compute_exec_queue(struct xe_vm *vm, struct xe_exec_queue *q);
 
 int xe_vm_userptr_pin(struct xe_vm *vm);