OSDN Git Service

drm/amdgpu_gem: fix error handling path in amdgpu_gem_va_update_vm
authorGustavo A. R. Silva <gustavo@embeddedor.com>
Thu, 15 Feb 2018 05:20:00 +0000 (23:20 -0600)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 19 Feb 2018 19:20:19 +0000 (14:20 -0500)
Currently, if amdgpu_vm_bo_update() fails, the returned error
is being ignored.

Fix this by properly checking _r_ after calling amdgpu_vm_bo_update.
Also, remove redundant code just before label _error_.

Addresses-Coverity-ID: 1464280 ("Unused value")
Fixes: 0abc6878fc2d ("drm/amdgpu: update VM PDs after the PTs")
Signed-off-by: Gustavo A. R. Silva <gustavo@embeddedor.com>
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c

index a66f4c5..55a840a 100644 (file)
@@ -523,12 +523,13 @@ static void amdgpu_gem_va_update_vm(struct amdgpu_device *adev,
                goto error;
 
        if (operation == AMDGPU_VA_OP_MAP ||
-           operation == AMDGPU_VA_OP_REPLACE)
+           operation == AMDGPU_VA_OP_REPLACE) {
                r = amdgpu_vm_bo_update(adev, bo_va, false);
+               if (r)
+                       goto error;
+       }
 
        r = amdgpu_vm_update_directories(adev, vm);
-       if (r)
-               goto error;
 
 error:
        if (r && r != -ERESTARTSYS)