On Sun, Jul 6, 2025 at 10:56 AM Rodrigo Siqueira <sique...@igalia.com> wrote: > > On 07/01, Alex Deucher wrote: > > Re-emit the unprocessed state after resetting the queue. > > > > Signed-off-by: Alex Deucher <alexander.deuc...@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