tu: Free pre_chain patchpoint data

Fixes a leak in:
dEQP-VK.dynamic_rendering.primary_cmd_buff.random.seed42
dEQP-VK.dynamic_rendering.primary_cmd_buff.random.seed60_geometry
dEQP-VK.dynamic_rendering.primary_cmd_buff.random.seed95_geometry_multiview

Signed-off-by: Karmjit Mahil <karmjit.mahil@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/33084>
This commit is contained in:
Karmjit Mahil 2025-01-17 10:48:54 +01:00 committed by Marge Bot
parent 2d3c50d484
commit 5846172f15

View file

@ -2545,7 +2545,9 @@ tu_cmd_buffer_destroy(struct vk_command_buffer *vk_cmd_buffer)
}
ralloc_free(cmd_buffer->patchpoints_ctx);
ralloc_free(cmd_buffer->pre_chain.patchpoints_ctx);
util_dynarray_fini(&cmd_buffer->fdm_bin_patchpoints);
util_dynarray_fini(&cmd_buffer->pre_chain.fdm_bin_patchpoints);
vk_command_buffer_finish(&cmd_buffer->vk);
vk_free2(&cmd_buffer->device->vk.alloc, &cmd_buffer->vk.pool->alloc,
@ -2593,8 +2595,11 @@ tu_reset_cmd_buffer(struct vk_command_buffer *vk_cmd_buffer,
cmd_buffer->prev_fsr_is_null = false;
ralloc_free(cmd_buffer->patchpoints_ctx);
ralloc_free(cmd_buffer->pre_chain.patchpoints_ctx);
cmd_buffer->patchpoints_ctx = NULL;
cmd_buffer->pre_chain.patchpoints_ctx = NULL;
util_dynarray_clear(&cmd_buffer->fdm_bin_patchpoints);
util_dynarray_clear(&cmd_buffer->pre_chain.fdm_bin_patchpoints);
}
const struct vk_command_buffer_ops tu_cmd_buffer_ops = {