Mesa (master): nir: free dead_ctx in case of no progress
GitLab Mirror
gitlab-mirror at kemper.freedesktop.org
Thu Mar 7 05:41:12 UTC 2019
Module: Mesa
Branch: master
Commit: 8b010f35578205eecbe574e8ef3914b398ba0b55
URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=8b010f35578205eecbe574e8ef3914b398ba0b55
Author: Tapani Pälli <tapani.palli at intel.com>
Date: Wed Mar 6 12:30:22 2019 +0200
nir: free dead_ctx in case of no progress
Fixes a leak:
==7576== 320 (48 direct, 272 indirect) bytes in 1 blocks are definitely lost in loss record 26 of 26
==7576== at 0x4C2EE3B: malloc (vg_replace_malloc.c:309)
==7576== by 0x53EF0E4: ralloc_size (ralloc.c:119)
==7576== by 0x53EF0C2: ralloc_context (ralloc.c:113)
==7576== by 0x5471F64: nir_split_per_member_structs (nir_split_per_member_structs.c:176)
==7576== by 0x51288CF: anv_shader_compile_to_nir (anv_pipeline.c:216)
Signed-off-by: Tapani Pälli <tapani.palli at intel.com>
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin at intel.com>
Reviewed-by: Eric Engestrom <eric.engestrom at intel.com>
---
src/compiler/nir/nir_split_per_member_structs.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/src/compiler/nir/nir_split_per_member_structs.c b/src/compiler/nir/nir_split_per_member_structs.c
index c4de52d1461..592225ba644 100644
--- a/src/compiler/nir/nir_split_per_member_structs.c
+++ b/src/compiler/nir/nir_split_per_member_structs.c
@@ -183,8 +183,10 @@ nir_split_per_member_structs(nir_shader *shader)
var_to_member_map, dead_ctx);
progress |= split_variables_in_list(&shader->system_values, shader,
var_to_member_map, dead_ctx);
- if (!progress)
+ if (!progress) {
+ ralloc_free(dead_ctx);
return false;
+ }
nir_foreach_function(function, shader) {
if (!function->impl)
More information about the mesa-commit
mailing list