[PATCH] drm/amdgpu: For sriov multiple VF, set compute timeout to 10s

Emily.Deng Emily.Deng at amd.com
Wed Jan 6 11:41:57 UTC 2021


For multiple VF, after engine hang,as host driver will first
encounter FLR, so has no meanning to set compute to 60s.

Signed-off-by: Emily.Deng <Emily.Deng at amd.com>
---
 drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
index b69c34074d8d..ed36bf97df29 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_device.c
@@ -3117,8 +3117,10 @@ static int amdgpu_device_get_job_timeout_settings(struct amdgpu_device *adev)
 	 */
 	adev->gfx_timeout = msecs_to_jiffies(10000);
 	adev->sdma_timeout = adev->video_timeout = adev->gfx_timeout;
-	if (amdgpu_sriov_vf(adev) || amdgpu_passthrough(adev))
+	if ((amdgpu_sriov_vf(adev) && amdgpu_sriov_is_pp_one_vf(adev)) || amdgpu_passthrough(adev))
 		adev->compute_timeout =  msecs_to_jiffies(60000);
+	else if (amdgpu_sriov_vf(adev))
+		adev->compute_timeout =  msecs_to_jiffies(10000);
 	else
 		adev->compute_timeout = MAX_SCHEDULE_TIMEOUT;
 
-- 
2.25.1



More information about the amd-gfx mailing list