diff options
| author | Christian König <christian.koenig@amd.com> | 2018-09-11 11:36:16 +0300 | 
|---|---|---|
| committer | Alex Deucher <alexander.deucher@amd.com> | 2018-09-19 20:38:35 +0300 | 
| commit | c33adbc7285f72dbd86aedba858e9570cd9f9c99 (patch) | |
| tree | 8f4b0171599b96cd8883faf20c307f5f11df36e9 /drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | |
| parent | 7fcb0657ffa93544142f6a0bb20b7fecf1cc1dca (diff) | |
| download | linux-c33adbc7285f72dbd86aedba858e9570cd9f9c99.tar.xz | |
drm/amdgpu: always recover VRAM during GPU recovery
It shouldn't add much overhead and we should make sure that critical
VRAM content is always restored.
Signed-off-by: Christian König <christian.koenig@amd.com>
Acked-by: Junwei Zhang <Jerry.Zhang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_device.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 10 | 
1 files changed, 5 insertions, 5 deletions
| diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c index 354f0557d697..0267fae316d7 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c @@ -2999,7 +2999,7 @@ err:  }  /** - * amdgpu_device_handle_vram_lost - Handle the loss of VRAM contents + * amdgpu_device_recover_vram - Recover some VRAM contents   *   * @adev: amdgpu_device pointer   * @@ -3008,7 +3008,7 @@ err:   * the contents of VRAM might be lost.   * Returns 0 on success, 1 on failure.   */ -static int amdgpu_device_handle_vram_lost(struct amdgpu_device *adev) +static int amdgpu_device_recover_vram(struct amdgpu_device *adev)  {  	struct amdgpu_ring *ring = adev->mman.buffer_funcs_ring;  	struct amdgpu_bo *bo, *tmp; @@ -3135,8 +3135,8 @@ out:  		}  	} -	if (!r && ((need_full_reset && !(adev->flags & AMD_IS_APU)) || vram_lost)) -		r = amdgpu_device_handle_vram_lost(adev); +	if (!r) +		r = amdgpu_device_recover_vram(adev);  	return r;  } @@ -3182,7 +3182,7 @@ error:  	amdgpu_virt_release_full_gpu(adev, true);  	if (!r && adev->virt.gim_feature & AMDGIM_FEATURE_GIM_FLR_VRAMLOST) {  		atomic_inc(&adev->vram_lost_counter); -		r = amdgpu_device_handle_vram_lost(adev); +		r = amdgpu_device_recover_vram(adev);  	}  	return r; | 
