drm/amdgpu: Trigger a wedged event for ring reset
authorAndré Almeida <andrealmeid@igalia.com>
Tue, 25 Feb 2025 01:02:21 +0000 (22:02 -0300)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 10 Mar 2025 18:56:25 +0000 (14:56 -0400)
Instead of only triggering a wedged event for complete GPU resets,
trigger for ring resets. Regardless of the reset, it's useful for
userspace to know that it happened because the kernel will reject
further submissions from that app.

Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: André Almeida <andrealmeid@igalia.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_job.c

index 1d26be3..935df2c 100644 (file)
@@ -166,6 +166,7 @@ static enum drm_gpu_sched_stat amdgpu_job_timedout(struct drm_sched_job *s_job)
                        if (amdgpu_ring_sched_ready(ring))
                                drm_sched_start(&ring->sched, 0);
                        dev_err(adev->dev, "Ring %s reset succeeded\n", ring->sched.name);
+                       drm_dev_wedged_event(adev_to_drm(adev), DRM_WEDGE_RECOVERY_NONE);
                        goto exit;
                }
                dev_err(adev->dev, "Ring %s reset failure\n", ring->sched.name);