From 3e9b21734759414df7366c8a0b29d46dac83d81e Mon Sep 17 00:00:00 2001 From: Friedrich Vock Date: Mon, 3 Jun 2024 16:04:27 +0200 Subject: [PATCH] radv/rt: Fix memory leak when compiling libraries Cc: mesa-stable Part-of: (cherry picked from commit f1742d36f368851861681c14afecf5abf43d7558) --- .pick_status.json | 2 +- src/amd/vulkan/radv_pipeline_rt.c | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/.pick_status.json b/.pick_status.json index 4a4b0fba545..53d0f702932 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -384,7 +384,7 @@ "description": "radv/rt: Fix memory leak when compiling libraries", "nominated": true, "nomination_type": 0, - "resolution": 0, + "resolution": 1, "main_sha": null, "because_sha": null, "notes": null diff --git a/src/amd/vulkan/radv_pipeline_rt.c b/src/amd/vulkan/radv_pipeline_rt.c index b8f1853772b..f67f64f3874 100644 --- a/src/amd/vulkan/radv_pipeline_rt.c +++ b/src/amd/vulkan/radv_pipeline_rt.c @@ -678,8 +678,10 @@ radv_rt_compile_shaders(struct radv_device *device, struct vk_pipeline_cache *ca * shaders. */ bool traversal_needed = !library && (!monolithic || raygen_imported); - if (!traversal_needed) - return VK_SUCCESS; + if (!traversal_needed) { + result = VK_SUCCESS; + goto cleanup; + } struct radv_ray_tracing_stage_info traversal_info = { .set_flags = 0xFFFFFFFF,