mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-02-26 15:40:30 +01:00
anv/radv: release memory allocated by glsl types during spirv_to_nir
Fixes leaks for each glsl_type generated: ==32470== 384 bytes in 3 blocks are possibly lost in loss record 18 of 18 ==32470== at 0x483880B: malloc (vg_replace_malloc.c:309) ==32470== by 0x4C43F4A: ralloc_size (ralloc.c:119) ==32470== by 0x4C44014: rzalloc_size (ralloc.c:151) ==32470== by 0x4C44258: rzalloc_array_size (ralloc.c:215) ==32470== by 0x4D38957: glsl_type::glsl_type(glsl_struct_field const*, unsigned int, char const*) (glsl_types.cpp:114) ==32470== by 0x4D3BEED: glsl_type::get_struct_instance(glsl_struct_field const*, unsigned int, char const*) (glsl_types.cpp:1146) ==32470== by 0x4D42ECC: glsl_struct_type (nir_types.cpp:501) ==32470== by 0x4CDB5A1: vtn_handle_type (spirv_to_nir.c:1269) ==32470== by 0x4CE53DD: vtn_handle_variable_or_type_instruction (spirv_to_nir.c:4018) ==32470== by 0x4CD8CFF: vtn_foreach_instruction (spirv_to_nir.c:365) ==32470== by 0x4CE5E6B: spirv_to_nir (spirv_to_nir.c:4490) ==32470== by 0x497AF10: anv_shader_compile_to_nir (anv_pipeline.c:173) v2: move release call to vkDestroyInstance v3: apply fix also to radv driver Signed-off-by: Tapani Pälli <tapani.palli@intel.com> Cc: mesa-stable@lists.freedesktop.org Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
This commit is contained in:
parent
6e19348ad1
commit
4e1bbb000c
2 changed files with 4 additions and 0 deletions
|
|
@ -48,6 +48,7 @@
|
|||
#include "util/build_id.h"
|
||||
#include "util/debug.h"
|
||||
#include "util/mesa-sha1.h"
|
||||
#include "compiler/glsl_types.h"
|
||||
|
||||
static int
|
||||
radv_device_get_cache_uuid(enum radeon_family family, void *uuid)
|
||||
|
|
@ -610,6 +611,7 @@ void radv_DestroyInstance(
|
|||
|
||||
VG(VALGRIND_DESTROY_MEMPOOL(instance));
|
||||
|
||||
_mesa_glsl_release_types();
|
||||
_mesa_locale_fini();
|
||||
|
||||
vk_debug_report_instance_destroy(&instance->debug_report_callbacks);
|
||||
|
|
|
|||
|
|
@ -41,6 +41,7 @@
|
|||
#include "git_sha1.h"
|
||||
#include "vk_util.h"
|
||||
#include "common/gen_defines.h"
|
||||
#include "compiler/glsl_types.h"
|
||||
|
||||
#include "genxml/gen7_pack.h"
|
||||
|
||||
|
|
@ -736,6 +737,7 @@ void anv_DestroyInstance(
|
|||
|
||||
vk_debug_report_instance_destroy(&instance->debug_report_callbacks);
|
||||
|
||||
_mesa_glsl_release_types();
|
||||
_mesa_locale_fini();
|
||||
|
||||
vk_free(&instance->alloc, instance);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue