Description
$ sudo env MallocStackLogging=1 ./proxy/traffic_server -R 1 -r PARENTSELECTION ... leaks Report Version: 2.0 Process 94249: 30288 nodes malloced for 53365 KB Failed to map remote region: [0x7ffffffcd000-0x7ffffffce000] r-x shared memory (1 page) [root] (error: 1) Process 94249: 502 leaks for 577728 total leaked bytes. Leak: 0x1081f000 size=299008 zone: DefaultMallocZone_0xcf5f000 0x00000001 0x00000000 0xefbeadde 0xefbeadde ................ 0xefbeadde 0xefbeadde 0xefbeadde 0xefbeadde ................ 0xefbeadde 0xefbeadde 0xefbeadde 0xefbeadde ................ 0xefbeadde 0xefbeadde 0xefbeadde 0xefbeadde ................ 0xefbeadde 0xefbeadde 0xefbeadde 0xefbeadde ................ 0xefbeadde 0xefbeadde 0xefbeadde 0xefbeadde ................ 0xefbeadde 0xefbeadde 0xefbeadde 0xefbeadde ................ 0xefbeadde 0xefbeadde 0xefbeadde 0xefbeadde ................ ... Call stack: [thread 0x7fff7c1c0000]: | start | main Main.cc:1793 | HostDBProcessor::start(int, unsigned long) HostDB.cc:531 | ClassAllocator<HostDBContinuation>::alloc() Allocator.h:122 | ink_freelist_new ink_queue.cc:181 | freelist_new(_InkFreeList*) ink_queue.cc:211 | ats_memalign ink_memory.cc:100 | posix_memalign | malloc_zone_memalign Leak: 0x11c4e000 size=262144 zone: DefaultMallocZone_0xcf5f000 0x00000001 0x00000000 0xefbeadde 0xefbeadde ................ 0xefbeadde 0xefbeadde 0xefbeadde 0xefbeadde ................ 0xefbeadde 0xefbeadde 0xefbeadde 0xefbeadde ................ 0xefbeadde 0xefbeadde 0xefbeadde 0xefbeadde ................ 0xefbeadde 0xefbeadde 0xefbeadde 0xefbeadde ................ 0xefbeadde 0xefbeadde 0xefbeadde 0xefbeadde ................ 0xefbeadde 0xefbeadde 0xefbeadde 0xefbeadde ................ 0xefbeadde 0xefbeadde 0xefbeadde 0xefbeadde ................ ... Call stack: [thread 0x700000287000]: | thread_start | _pthread_body | _pthread_body | spawn_thread_internal(void*) Thread.cc:87 | EThread::execute() UnixEThread.cc:200 | EThread::process_event(Event*, int) UnixEThread.cc:128 | Continuation::handleEvent(int, void*) I_Continuation.h:146 | RegressionCont::mainEvent(int, Event*) Main.cc:1248 | RegressionTest::run(char*) Regression.cc:105 | RegressionTest::run_some() Regression.cc:126 | start_test(RegressionTest*) Regression.cc:79 | RegressionTest_PARENTSELECTION(RegressionTest*, int, int*) ParentSelection.cc:1023 | br(HttpRequestData*, char const*, sockaddr const*) ParentSelection.cc:1114 | HTTPHdr::create(HTTPType, HdrHeap*) HTTP.h:802 | new_HdrHeap(int) HdrHeap.cc:121 | thread_alloc(Allocator&, ProxyAllocator&) ProxyAllocator.cc:41 | Allocator::alloc_void() Allocator.h:63 | ink_freelist_new ink_queue.cc:181 | freelist_new(_InkFreeList*) ink_queue.cc:211 | ats_memalign ink_memory.cc:100 | posix_memalign | malloc_zone_memalign Leak: 0x7ff172d1cfd0 size=16 zone: DefaultMallocZone_0xcf5f000 length: 15 "i.am.rabbit.net" Call stack: [thread 0x700000287000]: | thread_start | _pthread_body | _pthread_body | spawn_thread_internal(void*) Thread.cc:87 | EThread::execute() UnixEThread.cc:200 | EThread::process_event(Event*, int) UnixEThread.cc:128 | Continuation::handleEvent(int, void*) I_Continuation.h:146 | RegressionCont::mainEvent(int, Event*) Main.cc:1248 | RegressionTest::run(char*) Regression.cc:105 | RegressionTest::run_some() Regression.cc:126 | start_test(RegressionTest*) Regression.cc:79 | RegressionTest_PARENTSELECTION(RegressionTest*, int, int*) ParentSelection.cc:1023 | br(HttpRequestData*, char const*, sockaddr const*) ParentSelection.cc:1114 | _xstrdup ink_memory.cc:225 | ats_malloc ink_memory.cc:54 | malloc | malloc_zone_malloc Leak: 0x7ff172d1e230 size=16 zone: DefaultMallocZone_0xcf5f000 0x00000000 0x00000000 0xffffffff 0x00010100 ................
I think most of the leaks are from the sloppy implementation of the regression test, but I haven't looked at them all carefully. We should fix the regressions so that real problems are visible.