[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug binutils/868] bfd leaks memory in several places

From: andrejoh at gmail dot com
Subject: [Bug binutils/868] bfd leaks memory in several places
Date: 10 Apr 2008 09:09:00 -0000

------- Additional Comments From andrejoh at gmail dot com  2008-04-10 09:08 
Nick, I'm not sure reverting the cleanup is correct.  At least in binutils 
2.18, the function concat_filename uses bfd_malloc, which again uses malloc.  
As far as I can see, it does the same in current CVS.

I get leak reports like this when running under Valgrind:

==28969== 120,701 bytes in 1,422 blocks are definitely lost in loss record 2 
of 2
==28969==    at 0x4904A06: malloc (vg_replace_malloc.c:149)
==28969==    by 0x407305: bfd_malloc (libbfd.c:173)
==28969==    by 0x46BC09: concat_filename (dwarf2.c:1064)
==28969==    by 0x46CBFC: scan_unit_for_symbols (dwarf2.c:1936)
==28969==    by 0x46CFFE: comp_unit_find_nearest_line (dwarf2.c:2262)
==28969==    by 0x46DD9D: find_line (dwarf2.c:3093)
==28969==    by 0x46E4A6: _bfd_dwarf2_find_nearest_line (dwarf2.c:3127)
==28969==    by 0x41F3DA: _bfd_elf_find_nearest_line (elf.c:6889)

Running with a change similar to the one in comment #14 plus freeing 
caller_file removes the leaks I see when doing call-stack mapping.
(CentOS 4.5/x86_64. using GCC 4 gcc4-4.1.1-53.EL4 and BFD from binutils 2.18.)

           What    |Removed                     |Added
                 CC|                            |andrejoh at gmail dot com
             Status|RESOLVED                    |REOPENED
         Resolution|FIXED                       |


------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.

reply via email to

[Prev in Thread] Current Thread [Next in Thread]