Memory Leak
commit 57723b8c
Running jamid
by itself and not doing anything else, memory keeps rising, and quickly.
From ~120 MB to ~365 MB in < 2 hours.
==90523==ERROR: AddressSanitizer: alloc-dealloc-mismatch (operator new vs free) on 0x613000020100
#0 0x7f7df2d99f19 in __interceptor_free /build/gcc/src/gcc/libsanitizer/asan/asan_malloc_linux.cpp:127
#1 0x7f7df1916ef1 in asio::detail::scheduler::run(std::error_code&) [clone .isra.0] (/usr/local/lib/libring.so.0+0x353ef1)
#2 0x7f7df19183f9 in std::thread::_State_impl<std::thread::_Invoker<std::tuple<jami::Manager::ManagerPimpl::ManagerPimpl(jami::Manager&)::{lambda()#1}> > >::_M_run() (/usr/local/lib/libring.so.0+0x3553f9)
#3 0x7f7dedf133c3 in execute_native_thread_routine /build/gcc/src/gcc/libstdc++-v3/src/c++11/thread.cc:82
#4 0x7f7df1049258 in start_thread (/usr/lib/libpthread.so.0+0x9258)
#5 0x7f7dedc135e2 in __GI___clone (/usr/lib/libc.so.6+0xfe5e2)
0x613000020100 is located 0 bytes inside of 321-byte region [0x613000020100,0x613000020241)
allocated by thread T5 here:
#0 0x7f7df2d9bca1 in operator new(unsigned long) /build/gcc/src/gcc/libsanitizer/asan/asan_new_delete.cpp:99
#1 0x7f7df0d0fc47 in void* asio::detail::thread_info_base::allocate<asio::detail::thread_info_base::default_tag>(asio::detail::thread_info_base::default_tag, asio::detail::thread_info_base*, unsigned long, unsigned long) [clone .constprop.0] (/usr/local/lib/libopendht.so.2+0x5a2c47)
Thread T3 created by T0 here:
#0 0x7f7df2d3bfa7 in __interceptor_pthread_create /build/gcc/src/gcc/libsanitizer/asan/asan_interceptors.cpp:216
#1 0x7f7dedf136aa in std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) /build/gcc/src/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu/bits/gthr-default.h:663
#2 0x7ffc9dadb62f ([stack]+0x1962f)
Thread T5 created by T0 here:
#0 0x7f7df2d3bfa7 in __interceptor_pthread_create /build/gcc/src/gcc/libsanitizer/asan/asan_interceptors.cpp:216
#1 0x7f7dedf136aa in std::thread::_M_start_thread(std::unique_ptr<std::thread::_State, std::default_delete<std::thread::_State> >, void (*)()) /build/gcc/src/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/include/x86_64-pc-linux-gnu/bits/gthr-default.h:663
#2 0x7ffc9dadaa0f ([stack]+0x18a0f)
SUMMARY: AddressSanitizer: alloc-dealloc-mismatch /build/gcc/src/gcc/libsanitizer/asan/asan_malloc_linux.cpp:127 in __interceptor_free
I can't use valgrind or heaptrack with it for whatever reason.