[PATCH 01/36] drm/amdgpu/gfx9: fix kiq locking in KCQ reset

Christian König christian.koenig at amd.com
Tue Jul 8 09:20:29 UTC 2025


Patches #1-#3 are Reviewed-by: Christian König <christian.koenig at amd.com>

I need to wrap my head around the SDMA stuff, but at the moment won't have time for that. Would be really good if somebody else could take a look at that as well.

Regards,
Christian.

On 07.07.25 21:03, Alex Deucher wrote:
> The ring test needs to be inside the lock.
> 
> Fixes: fdbd69486b46 ("drm/amdgpu/gfx9: wait for reset done before remap")
> Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
> Cc: Jiadong Zhu <Jiadong.Zhu at amd.com>
> ---
>  drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
> index 76ba664efecb3..4c61157405b07 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
> @@ -7238,8 +7238,8 @@ static int gfx_v9_0_reset_kcq(struct amdgpu_ring *ring,
>  	}
>  	kiq->pmf->kiq_map_queues(kiq_ring, ring);
>  	amdgpu_ring_commit(kiq_ring);
> -	spin_unlock_irqrestore(&kiq->ring_lock, flags);
>  	r = amdgpu_ring_test_ring(kiq_ring);
> +	spin_unlock_irqrestore(&kiq->ring_lock, flags);
>  	if (r) {
>  		DRM_ERROR("fail to remap queue\n");
>  		return r;



More information about the amd-gfx mailing list