From: Monk Liu Date: Fri, 7 Jun 2019 10:56:18 +0000 (+0800) Subject: drm/amdgpu: drop the incorrect soft_reset for SRIOV X-Git-Tag: v5.3-rc1~81^2~10^2~541 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=ae1589f669b5e2c557a6edc9599fc1f424003b70;p=thirdparty%2Fkernel%2Flinux.git drm/amdgpu: drop the incorrect soft_reset for SRIOV It's incorrect to do soft reset for SRIOV, when GFX hang the WREG would stuck there becuase it goes KIQ way. the GPU reset counter is incorrect: always increase twice for each timedout Signed-off-by: Monk Liu Reviewed-by: Alex Deucher Signed-off-by: Alex Deucher --- diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c index 8f5026c123ef3..ff6976eaa9193 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c @@ -399,7 +399,7 @@ bool amdgpu_ring_soft_recovery(struct amdgpu_ring *ring, unsigned int vmid, { ktime_t deadline = ktime_add_us(ktime_get(), 10000); - if (!ring->funcs->soft_recovery || !fence) + if (amdgpu_sriov_vf(ring->adev) || !ring->funcs->soft_recovery || !fence) return false; atomic_inc(&ring->adev->gpu_reset_counter);