NEW 245143
Leaking too much memory via ContentExtensions
https://bugs.webkit.org/show_bug.cgi?id=245143
Summary Leaking too much memory via ContentExtensions
Michael Catanzaro
Reported 2022-09-13 08:29:10 PDT
Not yet sure whether this is a WebCore bug, a GTK/WPE port bug, or an Epiphany bug, but when valgrinding Epiphany I see by far the biggest leaks are coming via content extensions: ==32456== 786,448 bytes in 1 blocks are possibly lost in loss record 21,967 of 21,973 ==32456== at 0x484286F: malloc (vg_replace_malloc.c:381) ==32456== by 0x9EBFD2F: UnknownInlinedFun (pas_debug_heap.h:101) ==32456== by 0x9EBFD2F: UnknownInlinedFun (pas_try_allocate_intrinsic.h:104) ==32456== by 0x9EBFD2F: bmalloc_allocate_impl_casual_case.constprop.0 (bmalloc_heap_inlines.h:70) ==32456== by 0x9E4B0BC: bmalloc_allocate_casual (bmalloc_heap.c:64) ==32456== by 0x73B0517: UnknownInlinedFun (FastMalloc.h:219) ==32456== by 0x73B0517: UnknownInlinedFun (HashTable.h:1167) ==32456== by 0x73B0517: UnknownInlinedFun (HashTable.h:1277) ==32456== by 0x73B0517: WTF::HashTable<WebCore::ContentExtensions::PrefixTreeVertex const*, WTF::KeyValuePair<WebCore::ContentExtensions::PrefixTreeVertex const*, WTF::Vector<unsigned long, 0ul, WTF::CrashOnOverflow, 1ul, WTF::FastMalloc> >, WTF::KeyValuePairKeyExtractor<WTF::KeyValuePair<WebCore::ContentExtensions::PrefixTreeVertex const*, WTF::Vector<unsigned long, 0ul, WTF::CrashOnOverflow, 1ul, WTF::FastMalloc> > >, WTF::DefaultHash<WebCore::ContentExtensions::PrefixTreeVertex const*>, WTF::HashMap<WebCore::ContentExtensions::PrefixTreeVertex const*, WTF::Vector<unsigned long, 0ul, WTF::CrashOnOverflow, 1ul, WTF::FastMalloc>, WTF::DefaultHash<WebCore::ContentExtensions::PrefixTreeVertex const*>, WTF::HashTraits<WebCore::ContentExtensions::PrefixTreeVertex const*>, WTF::HashTraits<WTF::Vector<unsigned long, 0ul, WTF::CrashOnOverflow, 1ul, WTF::FastMalloc> >, WTF::HashTableTraits>::KeyValuePairTraits, WTF::HashTraits<WebCore::ContentExtensions::PrefixTreeVertex const*> >::expand(WTF::KeyValuePair<WebCore::ContentExtensions::PrefixTreeVertex const*, WTF::Vector<unsigned long, 0ul, WTF::CrashOnOverflow, 1ul, WTF::FastMalloc> >*) (HashTable.h:1199) ==32456== by 0x73C1A07: UnknownInlinedFun (HashTable.h:953) ==32456== by 0x73C1A07: UnknownInlinedFun (HashMap.h:382) ==32456== by 0x73C1A07: UnknownInlinedFun (HashMap.h:417) ==32456== by 0x73C1A07: WebCore::ContentExtensions::CombinedURLFilters::addPattern(unsigned long, WTF::Vector<WebCore::ContentExtensions::Term, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc> const&) (CombinedURLFilters.cpp:171) ==32456== by 0x73ED1CE: UnknownInlinedFun (URLFilterParser.cpp:71) ==32456== by 0x73ED1CE: WebCore::ContentExtensions::URLFilterParser::addPattern(WTF::StringView, bool, unsigned long) (URLFilterParser.cpp:362) ==32456== by 0x6841982: UnknownInlinedFun (ContentExtensionCompiler.cpp:314) ==32456== by 0x6841982: API::compiledToFile(WTF::String&&, WTF::Vector<WebCore::ContentExtensions::ContentExtensionRule, 0ul, WTF::CrashOnOverflow, 16ul, WTF::FastMalloc>&&, WTF::String const&) (APIContentRuleListStore.cpp:386) ==32456== by 0x6844406: API::ContentRuleListStore::compileContentRuleList(WTF::String&&, WTF::String&&, WTF::CompletionHandler<void (WTF::RefPtr<API::ContentRuleList, WTF::RawPtrTraits<API::ContentRuleList>, WTF::DefaultRefDerefTraits<API::ContentRuleList> >, std::error_code)>)::{lambda()#1}::operator()() [clone .lto_priv.0] (APIContentRuleListStore.cpp:557) ==32456== by 0x9E4DF24: UnknownInlinedFun (Function.h:82) ==32456== by 0x9E4DF24: UnknownInlinedFun (RunLoop.cpp:133) ==32456== by 0x9E4DF24: UnknownInlinedFun (RunLoopGLib.cpp:80) ==32456== by 0x9E4DF24: WTF::RunLoop::RunLoop()::{lambda(void*)#1}::_FUN(void*) [clone .lto_priv.0] (RunLoopGLib.cpp:82) ==32456== by 0x9E63352: UnknownInlinedFun (RunLoopGLib.cpp:53) ==32456== by 0x9E63352: WTF::RunLoop::{lambda(_GSource*, int (*)(void*), void*)#1}::_FUN(_GSource*, int (*)(void*), void*) [clone .lto_priv.0] (RunLoopGLib.cpp:56) ==32456== by 0x5496C3E: UnknownInlinedFun (gmain.c:3444) ==32456== by 0x5496C3E: g_main_context_dispatch (gmain.c:4162) ==32456== by 0x54EC4C7: g_main_context_iterate.constprop.0 (gmain.c:4238)
Attachments
Radar WebKit Bug Importer
Comment 1 2022-09-20 08:30:20 PDT
Note You need to log in before you can comment on or make changes to this bug.