[PATCH 04/28] drm/amdgpu/gfx9: re-emit unprocessed state on kcq reset
Alex Deucher
alexdeucher at gmail.com
Mon Jul 7 13:58:29 UTC 2025
On Sun, Jul 6, 2025 at 10:56 AM Rodrigo Siqueira <siqueira at igalia.com> wrote:
>
> On 07/01, Alex Deucher wrote:
> > Re-emit the unprocessed state after resetting the queue.
> >
> > Signed-off-by: Alex Deucher <alexander.deucher at amd.com>
> > ---
> > drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c | 12 +++---------
> > 1 file changed, 3 insertions(+), 9 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
> > index 76ba664efecb3..30f6b04cf82e4 100644
> > --- a/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
> > +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v9_0.c
> > @@ -7187,7 +7187,7 @@ static int gfx_v9_0_reset_kcq(struct amdgpu_ring *ring,
> > if (!kiq->pmf || !kiq->pmf->kiq_unmap_queues)
> > return -EINVAL;
> >
> > - drm_sched_wqueue_stop(&ring->sched);
> > + amdgpu_ring_reset_helper_begin(ring, timedout_fence);
> >
> > spin_lock_irqsave(&kiq->ring_lock, flags);
> >
> > @@ -7238,19 +7238,13 @@ 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);
>
> Is this `spin_unlock_irqrestore` part something that maybe should be in
> another commit? Maybe one commit that make this change for all of the
> GFXs?
Sure. I'll split them out as bug fixes.
Alex
>
> Thanks
>
> > if (r) {
> > DRM_ERROR("fail to remap queue\n");
> > return r;
> > }
> > -
> > - r = amdgpu_ring_test_ring(ring);
> > - if (r)
> > - return r;
> > - amdgpu_fence_driver_force_completion(ring);
> > - drm_sched_wqueue_start(&ring->sched);
> > - return 0;
> > + return amdgpu_ring_reset_helper_end(ring, timedout_fence);
> > }
> >
> > static void gfx_v9_ip_print(struct amdgpu_ip_block *ip_block, struct drm_printer *p)
> > --
> > 2.50.0
> >
>
> --
> Rodrigo Siqueira
More information about the amd-gfx
mailing list