]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
drm/amdgpu: fix userq hang detection and reset
authorChristian König <christian.koenig@amd.com>
Mon, 20 Apr 2026 14:08:35 +0000 (16:08 +0200)
committerAlex Deucher <alexander.deucher@amd.com>
Mon, 11 May 2026 20:08:42 +0000 (16:08 -0400)
commit1b62077f045ac6ffde7c97005c6659569ac5c1ec
tree6a8c997536ed0ddab34807cb6ecc226ad128f7f0
parent71bea36b54ccfb14cbc90f94267af6369af4e702
drm/amdgpu: fix userq hang detection and reset

Fix lock inversions pointed out by Prike and Sunil. The hang detection
timeout *CAN'T* grab locks under which we wait for fences, especially
not the userq_mutex lock.

Then instead of this completely broken handling with the
hang_detect_fence just cancel the work when fences are processed and
re-start if necessary.

Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Sunil Khatri <sunil.khatri@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c
drivers/gpu/drm/amd/amdgpu/amdgpu_userq.h
drivers/gpu/drm/amd/amdgpu/amdgpu_userq_fence.c
drivers/gpu/drm/amd/amdgpu/amdgpu_userq_fence.h