Commit ddc7d4c5 authored by Matthew Brost's avatar Matthew Brost Committed by Thomas Hellström

drm/xe: Fix loop in vm_bind_ioctl_ops_unwind

The logic for the unwind loop is incorrect resulting in an infinite
loop. Fix to unwind to go from the last operations list to he first.

Fixes: 617eebb9 ("drm/xe: Fix array of binds")
Signed-off-by: default avatarMatthew Brost <matthew.brost@intel.com>
Reviewed-by: default avatarMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240201175532.2303168-1-matthew.brost@intel.com
(cherry picked from commit 3acc1ff1)
Signed-off-by: default avatarThomas Hellström <thomas.hellstrom@linux.intel.com>
parent 54be6c6c
...@@ -2669,7 +2669,7 @@ static void vm_bind_ioctl_ops_unwind(struct xe_vm *vm, ...@@ -2669,7 +2669,7 @@ static void vm_bind_ioctl_ops_unwind(struct xe_vm *vm,
{ {
int i; int i;
for (i = num_ops_list - 1; i; ++i) { for (i = num_ops_list - 1; i >= 0; --i) {
struct drm_gpuva_ops *__ops = ops[i]; struct drm_gpuva_ops *__ops = ops[i];
struct drm_gpuva_op *__op; struct drm_gpuva_op *__op;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment