| From 7838fb5f119191403560eca2e23613380c0e425e Mon Sep 17 00:00:00 2001 |
| From: Alex Deucher <alexander.deucher@amd.com> |
| Date: Thu, 4 Sep 2025 12:35:05 -0400 |
| Subject: drm/amdgpu: fix a memory leak in fence cleanup when unloading |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| From: Alex Deucher <alexander.deucher@amd.com> |
| |
| commit 7838fb5f119191403560eca2e23613380c0e425e upstream. |
| |
| Commit b61badd20b44 ("drm/amdgpu: fix usage slab after free") |
| reordered when amdgpu_fence_driver_sw_fini() was called after |
| that patch, amdgpu_fence_driver_sw_fini() effectively became |
| a no-op as the sched entities we never freed because the |
| ring pointers were already set to NULL. Remove the NULL |
| setting. |
| |
| Reported-by: Lin.Cao <lincao12@amd.com> |
| Cc: Vitaly Prosyak <vitaly.prosyak@amd.com> |
| Cc: Christian König <christian.koenig@amd.com> |
| Fixes: b61badd20b44 ("drm/amdgpu: fix usage slab after free") |
| Reviewed-by: Christian König <christian.koenig@amd.com> |
| Signed-off-by: Alex Deucher <alexander.deucher@amd.com> |
| (cherry picked from commit a525fa37aac36c4591cc8b07ae8957862415fbd5) |
| Cc: stable@vger.kernel.org |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c | 2 -- |
| 1 file changed, 2 deletions(-) |
| |
| --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c |
| +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c |
| @@ -389,8 +389,6 @@ void amdgpu_ring_fini(struct amdgpu_ring |
| dma_fence_put(ring->vmid_wait); |
| ring->vmid_wait = NULL; |
| ring->me = 0; |
| - |
| - ring->adev->rings[ring->idx] = NULL; |
| } |
| |
| /** |