Closed Bug 944133 Opened 12 years ago Closed 12 years ago

Valgrind-on-TBPL: Suppress an intentional leak

Categories

(Core :: General, defect)

x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla28

People

(Reporter: n.nethercote, Assigned: n.nethercote)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

Valgrind-on-TBPL reports the following leak. It's an intended leak, because it gets passed to PR_SetEnv and so must live for the life of the process. I will suppress it. ==4553== 33 bytes in 1 blocks are definitely lost in loss record 2,461 of 5,156 ==4553== at 0x4C28A49: malloc (vg_replace_malloc.c:270) ==4553== by 0x7614457: moz_xmalloc (mozalloc.cpp:52) ==4553== by 0x813BC80: NS_Alloc (nsMemoryImpl.cpp:197) ==4553== by 0x812C405: ToNewCString(nsACString_internal const&) (nsMemory.h:36) ==4553== by 0x96B120C: CrashReporter::SetRestartArgs(int, char**) (nsExceptionHandler.cpp:1652) ==4553== by 0x969F269: XREMain::XRE_mainInit(bool*) (nsAppRunner.cpp:3025) ==4553== by 0x96A3522: XREMain::XRE_main(int, char**, nsXREAppData const*) (nsAppRunner.cpp:4022) ==4553== by 0x96A383E: XRE_main (nsAppRunner.cpp:4244) ==4553== by 0x404933: do_main(int, char**, nsIFile*) (nsBrowserApp.cpp:280) ==4553== by 0x404A5A: main (nsBrowserApp.cpp:647) ==4553== { <insert_a_suppression_name_here> Memcheck:Leak fun:malloc fun:moz_xmalloc fun:NS_Alloc fun:_Z12ToNewCStringRK19nsACString_internal fun:_ZN13CrashReporter14SetRestartArgsEiPPc fun:_ZN7XREMain12XRE_mainInitEPb fun:_ZN7XREMain8XRE_mainEiPPcPK12nsXREAppData fun:XRE_main fun:_ZL7do_mainiPPcP7nsIFile fun:main } ==4553== 258 bytes in 4 blocks are definitely lost in loss record 4,891 of 5,156 ==4553== at 0x4C28A49: malloc (vg_replace_malloc.c:270) ==4553== by 0x7614457: moz_xmalloc (mozalloc.cpp:52) ==4553== by 0x813BC80: NS_Alloc (nsMemoryImpl.cpp:197) ==4553== by 0x812C405: ToNewCString(nsACString_internal const&) (nsMemory.h:36) ==4553== by 0x96B1193: CrashReporter::SetRestartArgs(int, char**) (nsExceptionHandler.cpp:1638) ==4553== by 0x969F269: XREMain::XRE_mainInit(bool*) (nsAppRunner.cpp:3025) ==4553== by 0x96A3522: XREMain::XRE_main(int, char**, nsXREAppData const*) (nsAppRunner.cpp:4022) ==4553== by 0x96A383E: XRE_main (nsAppRunner.cpp:4244) ==4553== by 0x404933: do_main(int, char**, nsIFile*) (nsBrowserApp.cpp:280) ==4553== by 0x404A5A: main (nsBrowserApp.cpp:647) ==4553== { <insert_a_suppression_name_here> Memcheck:Leak fun:malloc fun:moz_xmalloc fun:NS_Alloc fun:_Z12ToNewCStringRK19nsACString_internal fun:_ZN13CrashReporter14SetRestartArgsEiPPc fun:_ZN7XREMain12XRE_mainInitEPb fun:_ZN7XREMain8XRE_mainEiPPcPK12nsXREAppData fun:XRE_main fun:_ZL7do_mainiPPcP7nsIFile fun:main }
This patch: - Adds the suppression. - Fixes the bug references for some old suppressions. - Marks three suppressions as being in third-party libraries. Once this patch lands, I think we won't have any errors in the Valgrind-on-TBPL runs.
Attachment #8339567 - Flags: review?(gary)
Blocks: 944141
Attachment #8339567 - Flags: review?(gary) → review+
Fixed! From https://tbpl.mozilla.org/php/getParsedLog.php?id=31190681&tree=Mozilla-Central&full=1: ==4847== Memcheck, a memory error detector ==4847== Copyright (C) 2002-2012, and GNU GPL'd, by Julian Seward et al. ==4847== Using Valgrind-3.8.2.SVN.MOZ-13022-2546 and LibVEX; rerun with -h for copyright info ==4847== Command: /builds/slave/m-cen-l64-valgrind-00000000000/objdir/dist/firefox/firefox http://localhost:8888/index.html -profile /tmp/tmpy7M8qC ==4847== ==4850== ==4850== HEAP SUMMARY: ==4850== in use at exit: 216,510 bytes in 634 blocks ==4850== total heap usage: 791 allocs, 157 frees, 237,352 bytes allocated ==4850== ==4850== LEAK SUMMARY: ==4850== definitely lost: 0 bytes in 0 blocks ==4850== indirectly lost: 0 bytes in 0 blocks ==4850== possibly lost: 1,117 bytes in 32 blocks ==4850== still reachable: 215,393 bytes in 602 blocks ==4850== suppressed: 0 bytes in 0 blocks ==4850== Reachable blocks (those to which a pointer was found) are not shown. ==4850== To see them, rerun with: --leak-check=full --show-reachable=yes ==4850== ==4850== For counts of detected and suppressed errors, rerun with: -v ==4850== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 6 from 6) Xlib: extension "RANDR" missing on display ":2.0". JavaScript error: , line 0: uncaught exception: 2147942487 ==4847== ==4847== HEAP SUMMARY: ==4847== in use at exit: 844,921 bytes in 9,126 blocks ==4847== total heap usage: 435,629 allocs, 426,503 frees, 365,174,873 bytes allocated ==4847== ==4847== LEAK SUMMARY: ==4847== definitely lost: 0 bytes in 0 blocks ==4847== indirectly lost: 5,432 bytes in 169 blocks ==4847== possibly lost: 2,129 bytes in 59 blocks ==4847== still reachable: 307,176 bytes in 2,145 blocks ==4847== suppressed: 530,184 bytes in 6,753 blocks ==4847== Reachable blocks (those to which a pointer was found) are not shown. ==4847== To see them, rerun with: --leak-check=full --show-reachable=yes ==4847== ==4847== For counts of detected and suppressed errors, rerun with: -v ==4847== ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 65 from 59)
Target Milestone: --- → mozilla28
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: