Comment 9 for bug 2012978

Revision history for this message
Marco Trevisan (Treviño) (3v1n0) wrote :

Currently we're getting

❯ env G_SLICE=always-malloc valgrind --leak-check=full --suppressions=/usr/share/glib-2.0/valgrind/glib.supp gjs -c "const GLib=imports.gi['GLib'];function leak(){const l=GLib.Variant['new']('i',1)};leak();imports.system.gc();"
==131398== Memcheck, a memory error detector
==131398== Copyright (C) 2002-2017, and GNU GPL'd, by Julian Seward et al.
==131398== Using Valgrind-3.18.1 and LibVEX; rerun with -h for copyright info
==131398== Command: gjs -c const\ GLib=imports.gi['GLib'];function\ leak(){const\ l=GLib.Variant['new']('i',1)};leak();imports.system.gc();
==131398==
==131398== Warning: set address range perms: large range [0x1663bc3af000, 0x16643bfaf000) (noaccess)
==131398== Warning: set address range perms: large range [0x1663bc3af000, 0x16643bfaf000) (noaccess)
==131398==
==131398== HEAP SUMMARY:
==131398== in use at exit: 191,779 bytes in 2,483 blocks
==131398== total heap usage: 18,733 allocs, 16,250 frees, 8,376,620 bytes allocated
==131398==
==131398== 108 (64 direct, 44 indirect) bytes in 1 blocks are definitely lost in loss record 1,885 of 2,041
==131398== at 0x4844899: malloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==131398== by 0x4A22948: g_malloc (gmem.c:130)
==131398== by 0x4A6598F: UnknownInlinedFun (gvariant-core.c:565)
==131398== by 0x4A6598F: g_variant_new_from_bytes (gvariant-core.c:608)
==131398== by 0x4A65EF3: UnknownInlinedFun (gvariant.c:327)
==131398== by 0x4A65EF3: g_variant_new_int32 (gvariant.c:491)
==131398== by 0x51B8E2D: ??? (in /usr/lib/x86_64-linux-gnu/libffi.so.8.1.0)
==131398== by 0x51B5492: ??? (in /usr/lib/x86_64-linux-gnu/libffi.so.8.1.0)
==131398== by 0x48C8198: ??? (in /usr/lib/x86_64-linux-gnu/libgjs.so.0.0.0)
==131398== by 0x48C8A06: ??? (in /usr/lib/x86_64-linux-gnu/libgjs.so.0.0.0)
==131398== by 0x532FC81: js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct, js::CallReason) (Interpreter.cpp:420)
==131398== by 0x533A46B: UnknownInlinedFun (Interpreter.cpp:574)
==131398== by 0x533A46B: UnknownInlinedFun (Interpreter.cpp:578)
==131398== by 0x533A46B: Interpret(JSContext*, js::RunState&) [clone .lto_priv.0] (Interpreter.cpp:3314)
==131398== by 0x532F692: js::RunScript(JSContext*, js::RunState&) (Interpreter.cpp:389)
==131398== by 0x532FA8E: js::InternalCallOrConstruct(JSContext*, JS::CallArgs const&, js::MaybeConstruct, js::CallReason) (Interpreter.cpp:539)
==131398==
==131398== 352 bytes in 1 blocks are possibly lost in loss record 1,999 of 2,041
==131398== at 0x4849A83: calloc (in /usr/libexec/valgrind/vgpreload_memcheck-amd64-linux.so)
==131398== by 0x4012949: calloc (rtld-malloc.h:44)
==131398== by 0x4012949: allocate_dtv (dl-tls.c:375)
==131398== by 0x4012949: _dl_allocate_tls (dl-tls.c:634)
==131398== by 0x5019F99: allocate_stack (allocatestack.c:423)
==131398== by 0x5019F99: pthread_create@@GLIBC_2.34 (pthread_create.c:650)
==131398== by 0x5A97B54: mozilla::TimeStamp::ComputeProcessUptime() (TimeStamp_posix.cpp:275)
==131398== by 0x5A97BE7: mozilla::TimeStamp::ProcessCreation() (TimeStamp.cpp:62)
==131398== by 0x53FD5FC: JS::detail::InitWithFailureDiagnostic(bool) (Initialization.cpp:145)
==131398== by 0x48A3E25: ??? (in /usr/lib/x86_64-linux-gnu/libgjs.so.0.0.0)
==131398== by 0x4004FBD: call_init.part.0 (dl-init.c:70)
==131398== by 0x40050A7: call_init (dl-init.c:33)
==131398== by 0x40050A7: _dl_init (dl-init.c:117)
==131398== by 0x401D8AF: ??? (in /usr/lib/x86_64-linux-gnu/ld-linux-x86-64.so.2)
==131398== by 0x2: ???
==131398== by 0x1FFEFFF606: ???
==131398==
==131398== LEAK SUMMARY:
==131398== definitely lost: 64 bytes in 1 blocks
==131398== indirectly lost: 44 bytes in 2 blocks
==131398== possibly lost: 352 bytes in 1 blocks
==131398== still reachable: 75,986 bytes in 985 blocks
==131398== suppressed: 97,525 bytes in 1,306 blocks
==131398== Reachable blocks (those to which a pointer was found) are not shown.
==131398== To see them, rerun with: --leak-check=full --show-leak-kinds=all
==131398==
==131398== For lists of detected and suppressed errors, rerun with: -s
==131398== ERROR SUMMARY: 2 errors from 2 contexts (suppressed: 2 from 2