Message ID | ceeca12c-f9d6-7ed5-dd3d-b228b4380af6@suse.cz |
---|---|
State | New |
Headers | show |
On Tue, Feb 14, 2017 at 12:28 PM, Martin Liška <mliska@suse.cz> wrote: > Hi. > > The patch fixes: > > ==137424== 24 bytes in 1 blocks are definitely lost in loss record 23 of 748 > > ==137424== at 0x4C29110: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) > > ==137424== by 0x10C39D7: xmalloc (xmalloc.c:147) > > ==137424== by 0x10C3AE9: xstrdup (xstrdup.c:34) > > ==137424== by 0x61273F: lto_obj_file_open(char const*, bool) (lto-object.c:93) > > ==137424== by 0x60AE62: do_stream_out(char*, lto_symtab_encoder_d*) (lto.c:2284) > > ==137424== by 0x60FC72: stream_out (lto.c:2333) > > ==137424== by 0x60FC72: lto_wpa_write_files (lto.c:2470) > > ==137424== by 0x60FC72: do_whole_program_analysis (lto.c:3156) > > ==137424== by 0x60FC72: lto_main() (lto.c:3316) > > ==137424== by 0x9B830E: compile_file() (toplev.c:467) > > ==137424== by 0x5E2D98: do_compile (toplev.c:1984) > > ==137424== by 0x5E2D98: toplev::main(int, char**) (toplev.c:2118) > > ==137424== by 0x5E4B76: main (main.c:39) > > > > Patch can bootstrap on ppc64le-redhat-linux and survives regression tests. > > Ready to be installed? Ok. Richard. > Martin
From 66b97767a498d438eb5740141a299ac8347d4ebc Mon Sep 17 00:00:00 2001 From: marxin <mliska@suse.cz> Date: Tue, 14 Feb 2017 10:35:09 +0100 Subject: [PATCH] Fix memory leak in LTO gcc/lto/ChangeLog: 2017-02-14 Martin Liska <mliska@suse.cz> * lto.c (do_stream_out): Free LTO file filename string. --- gcc/lto/lto.c | 2 ++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/gcc/lto/lto.c b/gcc/lto/lto.c index d77d85defb6..99d58cff4d4 100644 --- a/gcc/lto/lto.c +++ b/gcc/lto/lto.c @@ -2288,6 +2288,8 @@ do_stream_out (char *temp_filename, lto_symtab_encoder_t encoder) ipa_write_optimization_summaries (encoder); + free (CONST_CAST (char *, file->filename)); + lto_set_current_out_file (NULL); lto_obj_file_close (file); free (file); -- 2.11.0