From: Philip Yang Date: Wed, 28 Apr 2021 22:57:57 +0000 (-0400) Subject: drm/amdkfd: handle errors returned by svm_migrate_copy_to_vram/ram X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=04fe3fd10e9a2d90de73fc068a102ccaa3603865;p=linux.git drm/amdkfd: handle errors returned by svm_migrate_copy_to_vram/ram If migration copy failed because process is killed, or out of VRAM or system memory, pass error code back to caller to handle error gracefully. Signed-off-by: Philip Yang Reviewed-by: Felix Kuehling Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c b/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c index bc2fc528ad58e..fd8f544f0de28 100644 --- a/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c +++ b/drivers/gpu/drm/amd/amdkfd/kfd_migrate.c @@ -460,8 +460,8 @@ retry: } if (migrate.cpages) { - svm_migrate_copy_to_vram(adev, prange, &migrate, &mfence, - scratch); + r = svm_migrate_copy_to_vram(adev, prange, &migrate, &mfence, + scratch); migrate_vma_pages(&migrate); svm_migrate_copy_done(adev, mfence); migrate_vma_finalize(&migrate); @@ -663,8 +663,8 @@ svm_migrate_vma_to_ram(struct amdgpu_device *adev, struct svm_range *prange, pr_debug("cpages %ld\n", migrate.cpages); if (migrate.cpages) { - svm_migrate_copy_to_ram(adev, prange, &migrate, &mfence, - scratch); + r = svm_migrate_copy_to_ram(adev, prange, &migrate, &mfence, + scratch); migrate_vma_pages(&migrate); svm_migrate_copy_done(adev, mfence); migrate_vma_finalize(&migrate);