Re: [PATCH] drm/amd: fix memory leak in amdgpu_cs_sync_rings

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 02.02.23 um 20:02 schrieb Bert Karwatzki:
I hope I got it right this time:
Here is the fix for
Bug: https://gitlab.freedesktop.org/drm/amd/-/issues/2360

 From 6e064c9565ef0da890f3fcb2a4f6a8cd44a12fdb Mon Sep 17 00:00:00 2001
From: Bert Karwatzki <spasswolf@xxxxxx>
Date: Thu, 2 Feb 2023 19:50:27 +0100
Subject: [PATCH] Fix memory leak in amdgpu_cs_sync_rings.

Signed-off-by: Bert Karwatzki <spasswolf@xxxxxx>

Well this patch header is not properly formated, but I think Alex can fix this when he picks it up. If not I will take care of this next week.

Reviewed-by: Christian König <christian.koenig@xxxxxxx> on the code change.

Thanks,
Christian.

---
  drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 5 ++++-
  1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
index 0f4cb41078c1..08eced097bd8 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c
@@ -1222,10 +1222,13 @@ static int amdgpu_cs_sync_rings(struct
amdgpu_cs_parser *p)
  		 * next job actually sees the results from the
previous one
  		 * before we start executing on the same scheduler
ring.
  		 */
-		if (!s_fence || s_fence->sched != sched)
+		if (!s_fence || s_fence->sched != sched) {
+			dma_fence_put(fence);
  			continue;
+		}
r = amdgpu_sync_fence(&p->gang_leader->explicit_sync,
fence);
+		dma_fence_put(fence);
  		if (r)
  			return r;
  	}




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux