diff options
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_device.c')
| -rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 6 | 
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c index 79a7cb60c2c7..7d4a11d7f5c3 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c @@ -3193,6 +3193,12 @@ void amdgpu_device_fini(struct amdgpu_device *adev)  	flush_delayed_work(&adev->delayed_init_work);  	adev->shutdown = true; +	/* make sure IB test finished before entering exclusive mode +	 * to avoid preemption on IB test +	 * */ +	if (amdgpu_sriov_vf(adev)) +		amdgpu_virt_request_full_gpu(adev, false); +  	/* disable all interrupts */  	amdgpu_irq_disable_all(adev);  	if (adev->mode_info.mode_config_initialized){  | 
