summaryrefslogtreecommitdiff
path: root/scripts/stackusage
diff options
context:
space:
mode:
authorHongyan Xu <getshell@seu.edu.cn>2026-04-22 15:38:17 +0300
committerAlex Deucher <alexander.deucher@amd.com>2026-04-24 18:08:58 +0300
commit508babf310365f1107a2e8831c267c292a286818 (patch)
tree75e1d7303abeb0d85a162e18b3175adbd902bab6 /scripts/stackusage
parent4867cef03b58ca53651593842efcfd0587a707f2 (diff)
downloadlinux-508babf310365f1107a2e8831c267c292a286818.tar.xz
drm/amdgpu: avoid double drm_exec_fini() in userq validate
When new_addition is true, amdgpu_userq_vm_validate() calls drm_exec_fini(&exec) before iterating over the collected HMM ranges and calling amdgpu_ttm_tt_get_user_pages(). If amdgpu_ttm_tt_get_user_pages() fails in that path, the code jumps to unlock_all and calls drm_exec_fini(&exec) a second time on the same exec object. drm_exec_fini() is not idempotent: it frees exec->objects and may also drop exec->contended and finalize the ww acquire context. Route that error path directly to the range cleanup once exec has already been finalized. Fixes: 42f148788469 ("drm/amdgpu/userqueue: validate userptrs for userqueues") Issue found using a prototype static analysis tool and confirmed by code review. Reviewed-by: Christian König <christian.koenig@amd.com> Signed-off-by: Hongyan Xu <getshell@seu.edu.cn> Signed-off-by: Slavin Liu <220245772@seu.edu.cn> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> (cherry picked from commit 2802952e4a07306da6ebe813ff1acacc5691851a)
Diffstat (limited to 'scripts/stackusage')
0 files changed, 0 insertions, 0 deletions