summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPrike Liang <Prike.Liang@amd.com>2025-09-19 14:31:50 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-11-13 15:37:49 -0500
commitb993999a20140dbfd02bd081b7689c428e99a454 (patch)
treee655ef351079755571940a620eb728ef0d051463
parent77d8c1e520e309306c4cef707df70cdcdcecebbd (diff)
downloadlinux-b993999a20140dbfd02bd081b7689c428e99a454.tar.gz
linux-b993999a20140dbfd02bd081b7689c428e99a454.tar.bz2
linux-b993999a20140dbfd02bd081b7689c428e99a454.zip
drm/amdgpu/userq: assign an error code for invalid userq va
commit 883bd89d00085c2c5f1efcd25861745cb039f9e3 upstream. It should return an error code if userq VA validation fails. Fixes: 9e46b8bb0539 ("drm/amdgpu: validate userq buffer virtual address and size") Signed-off-by: Prike Liang <Prike.Liang@amd.com> Reviewed-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c
index 695eb2b052fc..a0fb13172e8b 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c
@@ -71,6 +71,7 @@ int amdgpu_userq_input_va_validate(struct amdgpu_vm *vm, u64 addr,
return 0;
}
+ r = -EINVAL;
out_err:
amdgpu_bo_unreserve(vm->root.bo);
return r;
@@ -476,6 +477,7 @@ amdgpu_userq_create(struct drm_file *filp, union drm_amdgpu_userq *args)
if (amdgpu_userq_input_va_validate(&fpriv->vm, args->in.queue_va, args->in.queue_size) ||
amdgpu_userq_input_va_validate(&fpriv->vm, args->in.rptr_va, AMDGPU_GPU_PAGE_SIZE) ||
amdgpu_userq_input_va_validate(&fpriv->vm, args->in.wptr_va, AMDGPU_GPU_PAGE_SIZE)) {
+ r = -EINVAL;
kfree(queue);
goto unlock;
}