From 2bc85abbf2b1f62b625732c9c301e24626fb63c3 Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Wed, 21 Feb 2024 14:28:14 +1000 Subject: [PATCH] nouveau/winsys: fix bda heap leak. found with valgrind. Fixes: b4cfac64c8a9 ("nvk: Add a separate VMA heap for BDA capture/replay") Part-of: (cherry picked from commit fd04c14306882693e5ba95fd7a128800c3069f5b) --- .pick_status.json | 2 +- src/nouveau/winsys/nouveau_device.c | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.pick_status.json b/.pick_status.json index d9b04f16b60..2e77c1c96f4 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -2054,7 +2054,7 @@ "description": "nouveau/winsys: fix bda heap leak.", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": "b4cfac64c8a98026d3698a2231c09a21bbe5a2f4", "notes": null diff --git a/src/nouveau/winsys/nouveau_device.c b/src/nouveau/winsys/nouveau_device.c index 904a7ad6241..5e0f0f9c94c 100644 --- a/src/nouveau/winsys/nouveau_device.c +++ b/src/nouveau/winsys/nouveau_device.c @@ -351,6 +351,7 @@ nouveau_ws_device_new(drmDevicePtr drm_device) out_err: if (device->has_vm_bind) { util_vma_heap_finish(&device->vma_heap); + util_vma_heap_finish(&device->bda_heap); simple_mtx_destroy(&device->vma_mutex); } if (ver) @@ -372,6 +373,7 @@ nouveau_ws_device_destroy(struct nouveau_ws_device *device) if (device->has_vm_bind) { util_vma_heap_finish(&device->vma_heap); + util_vma_heap_finish(&device->bda_heap); simple_mtx_destroy(&device->vma_mutex); }