]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/msm: Fix VM_BIND UNMAP locking
authorRob Clark <robin.clark@oss.qualcomm.com>
Tue, 24 Mar 2026 22:05:18 +0000 (15:05 -0700)
committerRob Clark <robin.clark@oss.qualcomm.com>
Tue, 31 Mar 2026 20:47:28 +0000 (13:47 -0700)
Wrong argument meant that the objs involved in UNMAP ops were not always
getting locked.

Since _NO_SHARE objs share a common resv with the VM (which is always
locked) this would only show up with non-_NO_SHARE BOs.

Reported-by: Victoria Brekenfeld <victoria@system76.com>
Fixes: 2e6a8a1fe2b2 ("drm/msm: Add VM_BIND ioctl")
Closes: https://gitlab.freedesktop.org/drm/msm/-/issues/94
Signed-off-by: Rob Clark <robin.clark@oss.qualcomm.com>
Patchwork: https://patchwork.freedesktop.org/patch/713898/
Message-ID: <20260324220519.1221471-2-robin.clark@oss.qualcomm.com>

drivers/gpu/drm/msm/msm_gem_vma.c

index 43d61e0919bd899a44c06aee07d6fd99d1cc38c8..953a2403f59803ad707406e2f5152e9c24c92d9c 100644 (file)
@@ -1251,7 +1251,7 @@ vm_bind_job_lock_objects(struct msm_vm_bind_job *job, struct drm_exec *exec)
                        case MSM_VM_BIND_OP_UNMAP:
                                ret = drm_gpuvm_sm_unmap_exec_lock(job->vm, exec,
                                                              op->iova,
-                                                             op->obj_offset);
+                                                             op->range);
                                break;
                        case MSM_VM_BIND_OP_MAP:
                        case MSM_VM_BIND_OP_MAP_NULL: {