[PATCH] drm/amdgpu: For sriov reset, move IB test into exclusive mode

Deng, Emily Emily.Deng at amd.com
Thu Apr 26 02:06:06 UTC 2018


Ping...

> -----Original Message-----
> From: Emily Deng [mailto:Emily.Deng at amd.com]
> Sent: Wednesday, April 25, 2018 11:26 AM
> To: amd-gfx at lists.freedesktop.org
> Cc: Deng, Emily <Emily.Deng at amd.com>
> Subject: [PATCH] drm/amdgpu: For sriov reset, move IB test into exclusive
> mode
> 
> When put the IB test out of exclusive mode, and do sriov reset, the IB test
> will randomly fail. As out of exclusive mode it uses kiq to do read and write
> registers, but as it has world switch, the kiq read and write time will be
> random, sometimes it will beyond the MAX_KIQ_REG_WAIT and then the
> read or write register will fail, which will result the IB test fail. So move the
> 
> Signed-off-by: Emily Deng <Emily.Deng at amd.com>
> ---
>  drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 5 ++---
>  1 file changed, 2 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> index 211f1af..dc921d6 100644
> --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
> @@ -3156,20 +3156,19 @@ static int amdgpu_device_reset_sriov(struct
> amdgpu_device *adev,
> 
>  	/* now we are okay to resume SMC/CP/SDMA */
>  	r = amdgpu_device_ip_reinit_late_sriov(adev);
> -	amdgpu_virt_release_full_gpu(adev, true);
>  	if (r)
>  		goto error;
> 
>  	amdgpu_irq_gpu_reset_resume_helper(adev);
>  	r = amdgpu_ib_ring_tests(adev);
> 
> +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);
>  	}
> 
> -error:
> -
>  	return r;
>  }
> 
> --
> 2.7.4



More information about the amd-gfx mailing list