drm/amdgpu: Decrease compute timeout to 10 s for sriov multiple VF
authorEmily.Deng <Emily.Deng@amd.com>
Wed, 6 Jan 2021 11:34:58 +0000 (19:34 +0800)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 14 Jan 2021 04:46:17 +0000 (23:46 -0500)
For multiple VF, after engine hang,as host driver will first
encounter FLR, so has no meanning to set compute to 60s.

v2:
   Refine the patch and comment

Signed-off-by: Emily.Deng <Emily.Deng@amd.com>
Acked-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c

index dd67b58..76d4a8a 100644 (file)
@@ -3117,7 +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))
+               adev->compute_timeout = amdgpu_sriov_is_pp_one_vf(adev) ?
+                                       msecs_to_jiffies(60000) : msecs_to_jiffies(10000);
+       else if (amdgpu_passthrough(adev))
                adev->compute_timeout =  msecs_to_jiffies(60000);
        else
                adev->compute_timeout = MAX_SCHEDULE_TIMEOUT;