]> Gentwo Git Trees - linux/.git/commitdiff
drm/amdgpu: Forward VMID reservation errors
authorNatalie Vock <natalie.vock@gmx.de>
Mon, 1 Dec 2025 17:52:38 +0000 (12:52 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 2 Dec 2025 16:02:07 +0000 (11:02 -0500)
Otherwise userspace may be fooled into believing it has a reserved VMID
when in reality it doesn't, ultimately leading to GPU hangs when SPM is
used.

Fixes: 80e709ee6ecc ("drm/amdgpu: add option params to enforce process isolation between graphics and compute")
Cc: stable@vger.kernel.org
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Natalie Vock <natalie.vock@gmx.de>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c

index d7cd84d3301869c3163df3b82c56bec0f60cbdb7..a67285118c37ba68a97e395fcf389a99d9207128 100644 (file)
@@ -2916,8 +2916,7 @@ int amdgpu_vm_ioctl(struct drm_device *dev, void *data, struct drm_file *filp)
        switch (args->in.op) {
        case AMDGPU_VM_OP_RESERVE_VMID:
                /* We only have requirement to reserve vmid from gfxhub */
-               amdgpu_vmid_alloc_reserved(adev, vm, AMDGPU_GFXHUB(0));
-               break;
+               return amdgpu_vmid_alloc_reserved(adev, vm, AMDGPU_GFXHUB(0));
        case AMDGPU_VM_OP_UNRESERVE_VMID:
                amdgpu_vmid_free_reserved(adev, vm, AMDGPU_GFXHUB(0));
                break;