WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED DUPLICATE of
bug 194811
194794
ASan LeakSanitizer reports leaks running jsc command shell
https://bugs.webkit.org/show_bug.cgi?id=194794
Summary
ASan LeakSanitizer reports leaks running jsc command shell
bugswebkits01
Reported
2019-02-18 15:04:01 PST
Build info: ``` git checkout `git svn find-rev
r241713
` git rev-parse HEAD 845ea4d1da5646b8fc9581b72d92218dcf9a7c20 Linux test 4.15.0-45-generic #48-Ubuntu SMP Tue Jan 29 16:28:13 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux lsb_release -a No LSB modules are available. Distributor ID: Ubuntu Description: Ubuntu 18.04.2 LTS Release: 18.04 Codename: bionic ``` Build steps ``` Tools/Scripts/set-webkit-configuration --asan Tools/Scripts/build-webkit --jsc-only --debug ``` To reproduce, run jsc and press enter in the shell. Crash log ``` ./WebKitBuild/Debug/bin/jsc WARNING: ASAN interferes with JSC signal handlers; useWebAssemblyFastMemory will be disabled.
>>>
================================================================= ==5251==ERROR: LeakSanitizer: detected memory leaks Direct leak of 96 byte(s) in 3 object(s) allocated from: #0 0x7fc3e031b458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458) #1 0x7fc3dd77f5d6 in __gnu_cxx::new_allocator<std::_Sp_counted_deleter<std::mutex*, std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::_Deleter<std::allocator<std::mutex> >, std::allocator<std::mutex>, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bed5d6) #2 0x7fc3dd77f388 in std::allocator_traits<std::allocator<std::_Sp_counted_deleter<std::mutex*, std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::_Deleter<std::allocator<std::mutex> >, std::allocator<std::mutex>, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator<std::_Sp_counted_deleter<std::mutex*, std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::_Deleter<std::allocator<std::mutex> >, std::allocator<std::mutex>, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bed388) #3 0x7fc3dd77e969 in std::__allocated_ptr<std::allocator<std::_Sp_counted_deleter<std::mutex*, std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::_Deleter<std::allocator<std::mutex> >, std::allocator<std::mutex>, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_deleter<std::mutex*, std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::_Deleter<std::allocator<std::mutex> >, std::allocator<std::mutex>, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_deleter<std::mutex*, std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::_Deleter<std::allocator<std::mutex> >, std::allocator<std::mutex>, (__gnu_cxx::_Lock_policy)2> >&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bec969) #4 0x7fc3dd77e2f6 in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<std::mutex*, std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::_Deleter<std::allocator<std::mutex> >, std::allocator<std::mutex> >(std::mutex*, std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::_Deleter<std::allocator<std::mutex> >, std::allocator<std::mutex>) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bec2f6) #5 0x7fc3dd77d6d3 in std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<std::mutex>>(std::_Sp_make_shared_tag, std::allocator<std::mutex> const&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5beb6d3) #6 0x7fc3dd77bc85 in std::shared_ptr<std::mutex>::shared_ptr<std::allocator<std::mutex>>(std::_Sp_make_shared_tag, std::allocator<std::mutex> const&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be9c85) #7 0x7fc3dd779ed2 in std::shared_ptr<std::mutex> std::allocate_shared<std::mutex, std::allocator<std::mutex>>(std::allocator<std::mutex> const&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be7ed2) #8 0x7fc3dd777779 in std::shared_ptr<std::mutex> std::make_shared<std::mutex>() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be5779) #9 0x7fc3dd776cc0 in std::_V2::condition_variable_any::condition_variable_any() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be4cc0) #10 0x7fc3dd76170f in bmalloc::Heap::Heap(bmalloc::HeapKind, std::lock_guard<bmalloc::Mutex>&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bcf70f) #11 0x7fc3dd75908e in bmalloc::PerHeapKindBase<bmalloc::Heap>::PerHeapKindBase<std::lock_guard<bmalloc::Mutex>&>(std::lock_guard<bmalloc::Mutex>&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc708e) #12 0x7fc3dd758ca1 in bmalloc::PerHeapKind<bmalloc::Heap>::PerHeapKind<std::lock_guard<bmalloc::Mutex>&>(std::lock_guard<bmalloc::Mutex>&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc6ca1) #13 0x7fc3dd75874b in bmalloc::PerProcess<bmalloc::PerHeapKind<bmalloc::Heap> >::getSlowCase() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc674b) #14 0x7fc3dd7584ae in bmalloc::PerProcess<bmalloc::PerHeapKind<bmalloc::Heap> >::get() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc64ae) #15 0x7fc3dd757df8 in bmalloc::Cache::Cache(bmalloc::HeapKind) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc5df8) #16 0x7fc3dd758d25 in bmalloc::PerHeapKindBase<bmalloc::Cache>::PerHeapKindBase<>() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc6d25) #17 0x7fc3dd75886f in bmalloc::PerHeapKind<bmalloc::Cache>::PerHeapKind<>() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc686f) #18 0x7fc3dd75856c in bmalloc::PerThread<bmalloc::PerHeapKind<bmalloc::Cache> >::getSlowCase() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc656c) #19 0x7fc3dd757eb2 in bmalloc::Cache::allocateSlowCaseNullCache(bmalloc::HeapKind, unsigned long) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc5eb2) #20 0x7fc3dd5dd52d in bmalloc::Cache::allocate(bmalloc::HeapKind, unsigned long) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5a4b52d) #21 0x7fc3dd5dda12 in bmalloc::api::malloc(unsigned long, bmalloc::HeapKind) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5a4ba12) #22 0x7fc3dd5dc2c8 in WTF::fastMalloc(unsigned long) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5a4a2c8) #23 0x7fc3dd6f397b in WTF::Ref<WTF::StringImpl, WTF::DumbPtrTraits<WTF::StringImpl> > WTF::StringImpl::createUninitializedInternalNonEmpty<unsigned char>(unsigned int, unsigned char*&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b6197b) #24 0x7fc3dd6f3766 in WTF::Ref<WTF::StringImpl, WTF::DumbPtrTraits<WTF::StringImpl> > WTF::StringImpl::createInternal<unsigned char>(unsigned char const*, unsigned int) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b61766) #25 0x7fc3dd6e1b8a in WTF::StringImpl::create(unsigned char const*, unsigned int) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b4fb8a) #26 0x7fc3dd6e200c in WTF::StringImpl::create(unsigned char const*) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b5000c) #27 0x7fc3dd717cd9 in WTF::String::String(char const*) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b85cd9) #28 0x7fc3dd613190 in WTF::numberOfProcessorCores() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5a81190) #29 0x7fc3dcf105ab in JSC::computeNumberOfWorkerThreads(int, int) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x537e5ab) Direct leak of 32 byte(s) in 1 object(s) allocated from: #0 0x7fc3e031b458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458) #1 0x7fc3dd77f5d6 in __gnu_cxx::new_allocator<std::_Sp_counted_deleter<std::mutex*, std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::_Deleter<std::allocator<std::mutex> >, std::allocator<std::mutex>, (__gnu_cxx::_Lock_policy)2> >::allocate(unsigned long, void const*) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bed5d6) #2 0x7fc3dd77f388 in std::allocator_traits<std::allocator<std::_Sp_counted_deleter<std::mutex*, std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::_Deleter<std::allocator<std::mutex> >, std::allocator<std::mutex>, (__gnu_cxx::_Lock_policy)2> > >::allocate(std::allocator<std::_Sp_counted_deleter<std::mutex*, std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::_Deleter<std::allocator<std::mutex> >, std::allocator<std::mutex>, (__gnu_cxx::_Lock_policy)2> >&, unsigned long) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bed388) #3 0x7fc3dd77e969 in std::__allocated_ptr<std::allocator<std::_Sp_counted_deleter<std::mutex*, std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::_Deleter<std::allocator<std::mutex> >, std::allocator<std::mutex>, (__gnu_cxx::_Lock_policy)2> > > std::__allocate_guarded<std::allocator<std::_Sp_counted_deleter<std::mutex*, std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::_Deleter<std::allocator<std::mutex> >, std::allocator<std::mutex>, (__gnu_cxx::_Lock_policy)2> > >(std::allocator<std::_Sp_counted_deleter<std::mutex*, std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::_Deleter<std::allocator<std::mutex> >, std::allocator<std::mutex>, (__gnu_cxx::_Lock_policy)2> >&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bec969) #4 0x7fc3dd77e2f6 in std::__shared_count<(__gnu_cxx::_Lock_policy)2>::__shared_count<std::mutex*, std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::_Deleter<std::allocator<std::mutex> >, std::allocator<std::mutex> >(std::mutex*, std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::_Deleter<std::allocator<std::mutex> >, std::allocator<std::mutex>) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bec2f6) #5 0x7fc3dd77d6d3 in std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<std::mutex>>(std::_Sp_make_shared_tag, std::allocator<std::mutex> const&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5beb6d3) #6 0x7fc3dd77bc85 in std::shared_ptr<std::mutex>::shared_ptr<std::allocator<std::mutex>>(std::_Sp_make_shared_tag, std::allocator<std::mutex> const&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be9c85) #7 0x7fc3dd779ed2 in std::shared_ptr<std::mutex> std::allocate_shared<std::mutex, std::allocator<std::mutex>>(std::allocator<std::mutex> const&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be7ed2) #8 0x7fc3dd777779 in std::shared_ptr<std::mutex> std::make_shared<std::mutex>() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be5779) #9 0x7fc3dd776cc0 in std::_V2::condition_variable_any::condition_variable_any() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be4cc0) #10 0x7fc3dd785858 in bmalloc::Scavenger::Scavenger(std::lock_guard<bmalloc::Mutex>&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bf3858) #11 0x7fc3dd77a557 in bmalloc::PerProcess<bmalloc::Scavenger>::getSlowCase() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be8557) #12 0x7fc3dd7780a0 in bmalloc::PerProcess<bmalloc::Scavenger>::get() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be60a0) #13 0x7fc3dd761a55 in bmalloc::Heap::Heap(bmalloc::HeapKind, std::lock_guard<bmalloc::Mutex>&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bcfa55) #14 0x7fc3dd75908e in bmalloc::PerHeapKindBase<bmalloc::Heap>::PerHeapKindBase<std::lock_guard<bmalloc::Mutex>&>(std::lock_guard<bmalloc::Mutex>&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc708e) #15 0x7fc3dd758ca1 in bmalloc::PerHeapKind<bmalloc::Heap>::PerHeapKind<std::lock_guard<bmalloc::Mutex>&>(std::lock_guard<bmalloc::Mutex>&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc6ca1) #16 0x7fc3dd75874b in bmalloc::PerProcess<bmalloc::PerHeapKind<bmalloc::Heap> >::getSlowCase() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc674b) #17 0x7fc3dd7584ae in bmalloc::PerProcess<bmalloc::PerHeapKind<bmalloc::Heap> >::get() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc64ae) #18 0x7fc3dd757df8 in bmalloc::Cache::Cache(bmalloc::HeapKind) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc5df8) #19 0x7fc3dd758d25 in bmalloc::PerHeapKindBase<bmalloc::Cache>::PerHeapKindBase<>() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc6d25) #20 0x7fc3dd75886f in bmalloc::PerHeapKind<bmalloc::Cache>::PerHeapKind<>() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc686f) #21 0x7fc3dd75856c in bmalloc::PerThread<bmalloc::PerHeapKind<bmalloc::Cache> >::getSlowCase() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc656c) #22 0x7fc3dd757eb2 in bmalloc::Cache::allocateSlowCaseNullCache(bmalloc::HeapKind, unsigned long) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc5eb2) #23 0x7fc3dd5dd52d in bmalloc::Cache::allocate(bmalloc::HeapKind, unsigned long) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5a4b52d) #24 0x7fc3dd5dda12 in bmalloc::api::malloc(unsigned long, bmalloc::HeapKind) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5a4ba12) #25 0x7fc3dd5dc2c8 in WTF::fastMalloc(unsigned long) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5a4a2c8) #26 0x7fc3dd6f397b in WTF::Ref<WTF::StringImpl, WTF::DumbPtrTraits<WTF::StringImpl> > WTF::StringImpl::createUninitializedInternalNonEmpty<unsigned char>(unsigned int, unsigned char*&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b6197b) #27 0x7fc3dd6f3766 in WTF::Ref<WTF::StringImpl, WTF::DumbPtrTraits<WTF::StringImpl> > WTF::StringImpl::createInternal<unsigned char>(unsigned char const*, unsigned int) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b61766) #28 0x7fc3dd6e1b8a in WTF::StringImpl::create(unsigned char const*, unsigned int) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b4fb8a) #29 0x7fc3dd6e200c in WTF::StringImpl::create(unsigned char const*) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b5000c) Indirect leak of 120 byte(s) in 3 object(s) allocated from: #0 0x7fc3e031b458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458) #1 0x7fc3dd77f314 in __gnu_cxx::new_allocator<std::mutex>::allocate(unsigned long, void const*) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bed314) #2 0x7fc3dd77e78a in std::allocator_traits<std::allocator<std::mutex> >::allocate(std::allocator<std::mutex>&, unsigned long) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bec78a) #3 0x7fc3dd77dffe in std::__allocated_ptr<std::allocator<std::mutex> > std::__allocate_guarded<std::allocator<std::mutex> >(std::allocator<std::mutex>&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bebffe) #4 0x7fc3dd77d643 in std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<std::mutex>>(std::_Sp_make_shared_tag, std::allocator<std::mutex> const&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5beb643) #5 0x7fc3dd77bc85 in std::shared_ptr<std::mutex>::shared_ptr<std::allocator<std::mutex>>(std::_Sp_make_shared_tag, std::allocator<std::mutex> const&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be9c85) #6 0x7fc3dd779ed2 in std::shared_ptr<std::mutex> std::allocate_shared<std::mutex, std::allocator<std::mutex>>(std::allocator<std::mutex> const&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be7ed2) #7 0x7fc3dd777779 in std::shared_ptr<std::mutex> std::make_shared<std::mutex>() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be5779) #8 0x7fc3dd776cc0 in std::_V2::condition_variable_any::condition_variable_any() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be4cc0) #9 0x7fc3dd76170f in bmalloc::Heap::Heap(bmalloc::HeapKind, std::lock_guard<bmalloc::Mutex>&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bcf70f) #10 0x7fc3dd75908e in bmalloc::PerHeapKindBase<bmalloc::Heap>::PerHeapKindBase<std::lock_guard<bmalloc::Mutex>&>(std::lock_guard<bmalloc::Mutex>&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc708e) #11 0x7fc3dd758ca1 in bmalloc::PerHeapKind<bmalloc::Heap>::PerHeapKind<std::lock_guard<bmalloc::Mutex>&>(std::lock_guard<bmalloc::Mutex>&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc6ca1) #12 0x7fc3dd75874b in bmalloc::PerProcess<bmalloc::PerHeapKind<bmalloc::Heap> >::getSlowCase() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc674b) #13 0x7fc3dd7584ae in bmalloc::PerProcess<bmalloc::PerHeapKind<bmalloc::Heap> >::get() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc64ae) #14 0x7fc3dd757df8 in bmalloc::Cache::Cache(bmalloc::HeapKind) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc5df8) #15 0x7fc3dd758d25 in bmalloc::PerHeapKindBase<bmalloc::Cache>::PerHeapKindBase<>() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc6d25) #16 0x7fc3dd75886f in bmalloc::PerHeapKind<bmalloc::Cache>::PerHeapKind<>() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc686f) #17 0x7fc3dd75856c in bmalloc::PerThread<bmalloc::PerHeapKind<bmalloc::Cache> >::getSlowCase() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc656c) #18 0x7fc3dd757eb2 in bmalloc::Cache::allocateSlowCaseNullCache(bmalloc::HeapKind, unsigned long) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc5eb2) #19 0x7fc3dd5dd52d in bmalloc::Cache::allocate(bmalloc::HeapKind, unsigned long) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5a4b52d) #20 0x7fc3dd5dda12 in bmalloc::api::malloc(unsigned long, bmalloc::HeapKind) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5a4ba12) #21 0x7fc3dd5dc2c8 in WTF::fastMalloc(unsigned long) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5a4a2c8) #22 0x7fc3dd6f397b in WTF::Ref<WTF::StringImpl, WTF::DumbPtrTraits<WTF::StringImpl> > WTF::StringImpl::createUninitializedInternalNonEmpty<unsigned char>(unsigned int, unsigned char*&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b6197b) #23 0x7fc3dd6f3766 in WTF::Ref<WTF::StringImpl, WTF::DumbPtrTraits<WTF::StringImpl> > WTF::StringImpl::createInternal<unsigned char>(unsigned char const*, unsigned int) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b61766) #24 0x7fc3dd6e1b8a in WTF::StringImpl::create(unsigned char const*, unsigned int) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b4fb8a) #25 0x7fc3dd6e200c in WTF::StringImpl::create(unsigned char const*) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b5000c) #26 0x7fc3dd717cd9 in WTF::String::String(char const*) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b85cd9) #27 0x7fc3dd613190 in WTF::numberOfProcessorCores() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5a81190) #28 0x7fc3dcf105ab in JSC::computeNumberOfWorkerThreads(int, int) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x537e5ab) #29 0x7fc3dcf17259 in JSC::Options::initialize()::{lambda()#1}::operator()() const (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5385259) Indirect leak of 40 byte(s) in 1 object(s) allocated from: #0 0x7fc3e031b458 in operator new(unsigned long) (/usr/lib/x86_64-linux-gnu/libasan.so.4+0xe0458) #1 0x7fc3dd77f314 in __gnu_cxx::new_allocator<std::mutex>::allocate(unsigned long, void const*) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bed314) #2 0x7fc3dd77e78a in std::allocator_traits<std::allocator<std::mutex> >::allocate(std::allocator<std::mutex>&, unsigned long) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bec78a) #3 0x7fc3dd77dffe in std::__allocated_ptr<std::allocator<std::mutex> > std::__allocate_guarded<std::allocator<std::mutex> >(std::allocator<std::mutex>&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bebffe) #4 0x7fc3dd77d643 in std::__shared_ptr<std::mutex, (__gnu_cxx::_Lock_policy)2>::__shared_ptr<std::allocator<std::mutex>>(std::_Sp_make_shared_tag, std::allocator<std::mutex> const&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5beb643) #5 0x7fc3dd77bc85 in std::shared_ptr<std::mutex>::shared_ptr<std::allocator<std::mutex>>(std::_Sp_make_shared_tag, std::allocator<std::mutex> const&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be9c85) #6 0x7fc3dd779ed2 in std::shared_ptr<std::mutex> std::allocate_shared<std::mutex, std::allocator<std::mutex>>(std::allocator<std::mutex> const&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be7ed2) #7 0x7fc3dd777779 in std::shared_ptr<std::mutex> std::make_shared<std::mutex>() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be5779) #8 0x7fc3dd776cc0 in std::_V2::condition_variable_any::condition_variable_any() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be4cc0) #9 0x7fc3dd785858 in bmalloc::Scavenger::Scavenger(std::lock_guard<bmalloc::Mutex>&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bf3858) #10 0x7fc3dd77a557 in bmalloc::PerProcess<bmalloc::Scavenger>::getSlowCase() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be8557) #11 0x7fc3dd7780a0 in bmalloc::PerProcess<bmalloc::Scavenger>::get() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5be60a0) #12 0x7fc3dd761a55 in bmalloc::Heap::Heap(bmalloc::HeapKind, std::lock_guard<bmalloc::Mutex>&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bcfa55) #13 0x7fc3dd75908e in bmalloc::PerHeapKindBase<bmalloc::Heap>::PerHeapKindBase<std::lock_guard<bmalloc::Mutex>&>(std::lock_guard<bmalloc::Mutex>&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc708e) #14 0x7fc3dd758ca1 in bmalloc::PerHeapKind<bmalloc::Heap>::PerHeapKind<std::lock_guard<bmalloc::Mutex>&>(std::lock_guard<bmalloc::Mutex>&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc6ca1) #15 0x7fc3dd75874b in bmalloc::PerProcess<bmalloc::PerHeapKind<bmalloc::Heap> >::getSlowCase() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc674b) #16 0x7fc3dd7584ae in bmalloc::PerProcess<bmalloc::PerHeapKind<bmalloc::Heap> >::get() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc64ae) #17 0x7fc3dd757df8 in bmalloc::Cache::Cache(bmalloc::HeapKind) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc5df8) #18 0x7fc3dd758d25 in bmalloc::PerHeapKindBase<bmalloc::Cache>::PerHeapKindBase<>() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc6d25) #19 0x7fc3dd75886f in bmalloc::PerHeapKind<bmalloc::Cache>::PerHeapKind<>() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc686f) #20 0x7fc3dd75856c in bmalloc::PerThread<bmalloc::PerHeapKind<bmalloc::Cache> >::getSlowCase() (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc656c) #21 0x7fc3dd757eb2 in bmalloc::Cache::allocateSlowCaseNullCache(bmalloc::HeapKind, unsigned long) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5bc5eb2) #22 0x7fc3dd5dd52d in bmalloc::Cache::allocate(bmalloc::HeapKind, unsigned long) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5a4b52d) #23 0x7fc3dd5dda12 in bmalloc::api::malloc(unsigned long, bmalloc::HeapKind) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5a4ba12) #24 0x7fc3dd5dc2c8 in WTF::fastMalloc(unsigned long) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5a4a2c8) #25 0x7fc3dd6f397b in WTF::Ref<WTF::StringImpl, WTF::DumbPtrTraits<WTF::StringImpl> > WTF::StringImpl::createUninitializedInternalNonEmpty<unsigned char>(unsigned int, unsigned char*&) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b6197b) #26 0x7fc3dd6f3766 in WTF::Ref<WTF::StringImpl, WTF::DumbPtrTraits<WTF::StringImpl> > WTF::StringImpl::createInternal<unsigned char>(unsigned char const*, unsigned int) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b61766) #27 0x7fc3dd6e1b8a in WTF::StringImpl::create(unsigned char const*, unsigned int) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b4fb8a) #28 0x7fc3dd6e200c in WTF::StringImpl::create(unsigned char const*) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b5000c) #29 0x7fc3dd717cd9 in WTF::String::String(char const*) (/home/test/webkit/WebKitBuild/Debug/lib/libJavaScriptCore.so.1+0x5b85cd9) SUMMARY: AddressSanitizer: 288 byte(s) leaked in 8 allocation(s). ```
Attachments
Add attachment
proposed patch, testcase, etc.
David Kilzer (:ddkilzer)
Comment 1
2019-02-19 19:01:22 PST
I think some stacks are being truncated at 30 stack frames, which makes them not very useful. Can you retest after
Bug 194811
in
r241789
? That will likely eliminate much of the bmalloc stack frames in the leaks traces.
Radar WebKit Bug Importer
Comment 2
2019-02-19 19:05:46 PST
<
rdar://problem/48224425
>
bugswebkits01
Comment 3
2019-02-20 15:51:01 PST
Yes,
Bug 194811
in
r241789
fixes this issue for me.
David Kilzer (:ddkilzer)
Comment 4
2019-03-20 12:42:31 PDT
(In reply to bugswebkits01 from
comment #3
)
> Yes,
Bug 194811
in
r241789
fixes this issue for me.
Duping to
Bug 194811
. *** This bug has been marked as a duplicate of
bug 194811
***
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug