diff options
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, 6 insertions, 4 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c index b60afeade50a..8a078f4ae73d 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | |||
| @@ -3476,14 +3476,16 @@ static void amdgpu_device_lock_adev(struct amdgpu_device *adev) | |||
| 3476 | mutex_lock(&adev->lock_reset); | 3476 | mutex_lock(&adev->lock_reset); |
| 3477 | atomic_inc(&adev->gpu_reset_counter); | 3477 | atomic_inc(&adev->gpu_reset_counter); |
| 3478 | adev->in_gpu_reset = 1; | 3478 | adev->in_gpu_reset = 1; |
| 3479 | /* Block kfd */ | 3479 | /* Block kfd: SRIOV would do it separately */ |
| 3480 | amdgpu_amdkfd_pre_reset(adev); | 3480 | if (!amdgpu_sriov_vf(adev)) |
| 3481 | amdgpu_amdkfd_pre_reset(adev); | ||
| 3481 | } | 3482 | } |
| 3482 | 3483 | ||
| 3483 | static void amdgpu_device_unlock_adev(struct amdgpu_device *adev) | 3484 | static void amdgpu_device_unlock_adev(struct amdgpu_device *adev) |
| 3484 | { | 3485 | { |
| 3485 | /*unlock kfd */ | 3486 | /*unlock kfd: SRIOV would do it separately */ |
| 3486 | amdgpu_amdkfd_post_reset(adev); | 3487 | if (!amdgpu_sriov_vf(adev)) |
| 3488 | amdgpu_amdkfd_post_reset(adev); | ||
| 3487 | amdgpu_vf_error_trans_all(adev); | 3489 | amdgpu_vf_error_trans_all(adev); |
| 3488 | adev->in_gpu_reset = 0; | 3490 | adev->in_gpu_reset = 0; |
| 3489 | mutex_unlock(&adev->lock_reset); | 3491 | mutex_unlock(&adev->lock_reset); |
