New issue
Advanced search Search tips

Issue 805457 link

Starred by 1 user

Issue metadata

Status: Available
Owner: ----
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug



Sign in to add a comment

blink: memory leaks in BrowserCloseManagerBrowserTest/BrowserCloseManagerBrowserTest.TestUnloadMultipleSlowTabs/1

Project Member Reported by ellyjo...@chromium.org, Jan 24 2018

Issue description

When running this test under LSan, many leaks are reported. Here are a couple:

==30785==ERROR: LeakSanitizer: detected memory leaks
Direct leak of 256 byte(s) in 1 object(s) allocated from:
    #0 0x97db13 in __interceptor_malloc /b/build/slave/linux_upload_clang/build/src/third_party/llvm/compiler-rt/lib/asan/asan_malloc_linux.cc:88:3
    #1 0x19be5600 in PartitionAllocGenericFlags base/allocator/partition_allocator/partition_alloc.h:946:18
    #2 0x19be5600 in Alloc base/allocator/partition_allocator/partition_alloc.h:966
    #3 0x19be5600 in BufferMalloc third_party/WebKit/Source/platform/wtf/allocator/Partitions.h:109
    #4 0x19be5600 in WTF::PartitionAllocator::AllocateBacking(unsigned long, char const*) third_party/WebKit/Source/platform/wtf/allocator/PartitionAllocator.cpp:13
    #5 0x1a73fbe2 in AllocateHashTableBacking<WTF::KeyValuePair<int, WTF::AtomicString>, WTF::HashTable<int, WTF::KeyValuePair<int, WTF::AtomicString>, WTF::KeyValuePairKeyExtractor, WTF::IntHash<unsigned int>, WTF::HashMapValueTraits<blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::HashTraits<WTF::AtomicString> >, blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::PartitionAllocator> > third_party/WebKit/Source/platform/wtf/allocator/PartitionAllocator.h:77:9
    #6 0x1a73fbe2 in AllocateTable third_party/WebKit/Source/platform/wtf/HashTable.h:1590
    #7 0x1a73fbe2 in WTF::HashTable<int, WTF::KeyValuePair<int, WTF::AtomicString>, WTF::KeyValuePairKeyExtractor, WTF::IntHash<unsigned int>, WTF::HashMapValueTraits<blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::HashTraits<WTF::AtomicString> >, blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::PartitionAllocator>::Rehash(unsigned int, WTF::KeyValuePair<int, WTF::AtomicString>*) third_party/WebKit/Source/platform/wtf/HashTable.h:1798
    #8 0x1a73f77c in WTF::HashTable<int, WTF::KeyValuePair<int, WTF::AtomicString>, WTF::KeyValuePairKeyExtractor, WTF::IntHash<unsigned int>, WTF::HashMapValueTraits<blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::HashTraits<WTF::AtomicString> >, blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::PartitionAllocator>::ReserveCapacityForSize(unsigned int) third_party/WebKit/Source/platform/wtf/HashTable.h:1014:5
    #9 0x1a73eee3 in WTF::HashTable<int, WTF::KeyValuePair<int, WTF::AtomicString>, WTF::KeyValuePairKeyExtractor, WTF::IntHash<unsigned int>, WTF::HashMapValueTraits<blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::HashTraits<WTF::AtomicString> >, blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::PartitionAllocator>::HashTable(WTF::HashTable<int, WTF::KeyValuePair<int, WTF::AtomicString>, WTF::KeyValuePairKeyExtractor, WTF::IntHash<unsigned int>, WTF::HashMapValueTraits<blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::HashTraits<WTF::AtomicString> >, blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::PartitionAllocator> const&) third_party/WebKit/Source/platform/wtf/HashTable.h:1859:5
    #10 0x1a73a858 in HashMap third_party/WebKit/Source/platform/wtf/HashMap.h:99:3
    #11 0x1a73a858 in blink::GenericFontFamilySettings::GenericFontFamilySettings(blink::GenericFontFamilySettings const&) third_party/WebKit/Source/platform/fonts/GenericFontFamilySettings.cpp:43
    #12 0x22a78a2f in blink::CSSFontSelector::CSSFontSelector(blink::Document*) third_party/WebKit/Source/core/css/CSSFontSelector.cpp:48:7
    #13 0x1ae20dba in Create third_party/WebKit/Source/core/css/CSSFontSelector.h:46:16
    #14 0x1ae20dba in blink::StyleEngine::StyleEngine(blink::Document&) third_party/WebKit/Source/core/css/StyleEngine.cpp:76
    #15 0x1b3d68c2 in Create third_party/WebKit/Source/core/css/StyleEngine.h:92:16
    #16 0x1b3d68c2 in blink::Document::Document(blink::DocumentInit const&, unsigned char) third_party/WebKit/Source/core/dom/Document.cpp:720
    #17 0x1c0044cf in blink::HTMLDocument::HTMLDocument(blink::DocumentInit const&, unsigned char) third_party/WebKit/Source/core/html/HTMLDocument.cpp:67:7
    #18 0x1b3ab36a in Create third_party/WebKit/Source/core/html/HTMLDocument.h:37:16
    #19 0x1b3ab36a in blink::DOMImplementation::createDocument(WTF::String const&, blink::DocumentInit const&, bool) third_party/WebKit/Source/core/dom/DOMImplementation.cpp:233
    #20 0x1bd39ab8 in blink::LocalDOMWindow::CreateDocument(WTF::String const&, blink::DocumentInit const&, bool) third_party/WebKit/Source/core/frame/LocalDOMWindow.cpp:299:16
    #21 0x1bd39f94 in blink::LocalDOMWindow::InstallNewDocument(WTF::String const&, blink::DocumentInit const&, bool) third_party/WebKit/Source/core/frame/LocalDOMWindow.cpp:321:15
    #22 0x1d282f29 in blink::DocumentLoader::InstallNewDocument(blink::KURL const&, blink::Document*, blink::WebGlobalObjectReusePolicy, WTF::AtomicString const&, WTF::AtomicString const&, blink::DocumentLoader::InstallNewDocumentReason, blink::ParserSynchronizationPolicy, blink::KURL const&) third_party/WebKit/Source/core/loader/DocumentLoader.cpp:1051:45
    #23 0x1d282537 in blink::DocumentLoader::CommitNavigation(WTF::AtomicString const&, blink::KURL const&) third_party/WebKit/Source/core/loader/DocumentLoader.cpp:694:3
    #24 0x1d27e8eb in blink::DocumentLoader::CommitData(char const*, unsigned long) third_party/WebKit/Source/core/loader/DocumentLoader.cpp:707:3
    #25 0x1d27d644 in blink::DocumentLoader::FinishedLoading(double) third_party/WebKit/Source/core/loader/DocumentLoader.cpp:462:7
    #26 0x1d284e0b in blink::DocumentLoader::MaybeLoadEmpty() third_party/WebKit/Source/core/loader/DocumentLoader.cpp:842:3
    #27 0x1d28520b in blink::DocumentLoader::StartLoading() third_party/WebKit/Source/core/loader/DocumentLoader.cpp:852:7
    #28 0x1d2bb6c8 in blink::FrameLoader::StartLoad(blink::FrameLoadRequest&, blink::FrameLoadType, blink::NavigationPolicy, blink::HistoryItem*) third_party/WebKit/Source/core/loader/FrameLoader.cpp:1587:35
    #29 0x1d2b9a1c in blink::FrameLoader::Load(blink::FrameLoadRequest const&, blink::FrameLoadType, blink::HistoryItem*, blink::HistoryLoadType) third_party/WebKit/Source/core/loader/FrameLoader.cpp:967:3
    #30 0x1bed9082 in blink::WebLocalFrameImpl::Load(blink::WebURLRequest const&, blink::WebFrameLoadType, blink::WebHistoryItem const&, blink::WebHistoryLoadType, bool, base::UnguessableToken const&) third_party/WebKit/Source/core/frame/WebLocalFrameImpl.cpp:2050:24
    #31 0x1f73f749 in content::RenderFrameImpl::CommitNavigation(network::ResourceResponseHead const&, GURL const&, content::CommonNavigationParams const&, content::RequestNavigationParams const&, mojo::StructPtr<network::mojom::URLLoaderClientEndpoints>, std::__1::unique_ptr<content::URLLoaderFactoryBundleInfo, std::__1::default_delete<content::URLLoaderFactoryBundleInfo> >, mojo::StructPtr<content::mojom::ControllerServiceWorkerInfo>, base::UnguessableToken const&) content/renderer/render_frame_impl.cc:3287:15
    #32 0x61bdcb8 in content::mojom::FrameNavigationControlStubDispatch::Accept(content::mojom::FrameNavigationControl*, mojo::Message*) out/Release/gen/content/common/frame.mojom.cc:1053:13
    #33 0x123f6182 in mojo::InterfaceEndpointClient::HandleValidatedMessage(mojo::Message*) mojo/public/cpp/bindings/lib/interface_endpoint_client.cc:419:32
    #34 0x124510c7 in mojo::FilterChain::Accept(mojo::Message*) mojo/public/cpp/bindings/lib/filter_chain.cc:40:17
    #35 0x123fa46c in mojo::InterfaceEndpointClient::HandleIncomingMessage(mojo::Message*) mojo/public/cpp/bindings/lib/interface_endpoint_client.cc:306:19
    #36 0x124e95e1 in IPC::(anonymous namespace)::ChannelAssociatedGroupController::AcceptOnProxyThread(mojo::Message) ipc/ipc_mojo_bootstrap.cc:789:24
    #37 0x124e280f in Invoke<const scoped_refptr<IPC::(anonymous namespace)::ChannelAssociatedGroupController> &, mojo::Message> base/bind_internal.h:211:12
    #38 0x124e280f in MakeItSo<void (IPC::(anonymous namespace)::ChannelAssociatedGroupController::*const &)(mojo::Message), const scoped_refptr<IPC::(anonymous namespace)::ChannelAssociatedGroupController> &, mojo::Message> base/bind_internal.h:294
    #39 0x124e280f in RunImpl<void (IPC::(anonymous namespace)::ChannelAssociatedGroupController::*const &)(mojo::Message), const std::__1::tuple<scoped_refptr<IPC::(anonymous namespace)::ChannelAssociatedGroupController>, base::internal::PassedWrapper<mojo::Message> > &, 0, 1> base/bind_internal.h:368
    #40 0x124e280f in base::internal::Invoker<base::internal::BindState<void (IPC::(anonymous namespace)::ChannelAssociatedGroupController::*)(mojo::Message), scoped_refptr<IPC::(anonymous namespace)::ChannelAssociatedGroupController>, base::internal::PassedWrapper<mojo::Message> >, void ()>::Run(base::internal::BindStateBase*) base/bind_internal.h:350
    #41 0xdcbc392 in Run base/callback.h:65:12
    #42 0xdcbc392 in base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) base/debug/task_annotator.cc:55
Direct leak of 256 byte(s) in 1 object(s) allocated from:
    #0 0x97db13 in __interceptor_malloc /b/build/slave/linux_upload_clang/build/src/third_party/llvm/compiler-rt/lib/asan/asan_malloc_linux.cc:88:3
    #1 0x19be5600 in PartitionAllocGenericFlags base/allocator/partition_allocator/partition_alloc.h:946:18
    #2 0x19be5600 in Alloc base/allocator/partition_allocator/partition_alloc.h:966
    #3 0x19be5600 in BufferMalloc third_party/WebKit/Source/platform/wtf/allocator/Partitions.h:109
    #4 0x19be5600 in WTF::PartitionAllocator::AllocateBacking(unsigned long, char const*) third_party/WebKit/Source/platform/wtf/allocator/PartitionAllocator.cpp:13
    #5 0x1a73fbe2 in AllocateHashTableBacking<WTF::KeyValuePair<int, WTF::AtomicString>, WTF::HashTable<int, WTF::KeyValuePair<int, WTF::AtomicString>, WTF::KeyValuePairKeyExtractor, WTF::IntHash<unsigned int>, WTF::HashMapValueTraits<blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::HashTraits<WTF::AtomicString> >, blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::PartitionAllocator> > third_party/WebKit/Source/platform/wtf/allocator/PartitionAllocator.h:77:9
    #6 0x1a73fbe2 in AllocateTable third_party/WebKit/Source/platform/wtf/HashTable.h:1590
    #7 0x1a73fbe2 in WTF::HashTable<int, WTF::KeyValuePair<int, WTF::AtomicString>, WTF::KeyValuePairKeyExtractor, WTF::IntHash<unsigned int>, WTF::HashMapValueTraits<blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::HashTraits<WTF::AtomicString> >, blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::PartitionAllocator>::Rehash(unsigned int, WTF::KeyValuePair<int, WTF::AtomicString>*) third_party/WebKit/Source/platform/wtf/HashTable.h:1798
    #8 0x1a73f77c in WTF::HashTable<int, WTF::KeyValuePair<int, WTF::AtomicString>, WTF::KeyValuePairKeyExtractor, WTF::IntHash<unsigned int>, WTF::HashMapValueTraits<blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::HashTraits<WTF::AtomicString> >, blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::PartitionAllocator>::ReserveCapacityForSize(unsigned int) third_party/WebKit/Source/platform/wtf/HashTable.h:1014:5
    #9 0x1a73eee3 in WTF::HashTable<int, WTF::KeyValuePair<int, WTF::AtomicString>, WTF::KeyValuePairKeyExtractor, WTF::IntHash<unsigned int>, WTF::HashMapValueTraits<blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::HashTraits<WTF::AtomicString> >, blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::PartitionAllocator>::HashTable(WTF::HashTable<int, WTF::KeyValuePair<int, WTF::AtomicString>, WTF::KeyValuePairKeyExtractor, WTF::IntHash<unsigned int>, WTF::HashMapValueTraits<blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::HashTraits<WTF::AtomicString> >, blink::GenericFontFamilySettings::UScriptCodeHashTraits, WTF::PartitionAllocator> const&) third_party/WebKit/Source/platform/wtf/HashTable.h:1859:5
    #10 0x1a73a83e in HashMap third_party/WebKit/Source/platform/wtf/HashMap.h:99:3
    #11 0x1a73a83e in blink::GenericFontFamilySettings::GenericFontFamilySettings(blink::GenericFontFamilySettings const&) third_party/WebKit/Source/platform/fonts/GenericFontFamilySettings.cpp:41
    #12 0x22a78a2f in blink::CSSFontSelector::CSSFontSelector(blink::Document*) third_party/WebKit/Source/core/css/CSSFontSelector.cpp:48:7
    #13 0x1ae20dba in Create third_party/WebKit/Source/core/css/CSSFontSelector.h:46:16
    #14 0x1ae20dba in blink::StyleEngine::StyleEngine(blink::Document&) third_party/WebKit/Source/core/css/StyleEngine.cpp:76
    #15 0x1b3d68c2 in Create third_party/WebKit/Source/core/css/StyleEngine.h:92:16
    #16 0x1b3d68c2 in blink::Document::Document(blink::DocumentInit const&, unsigned char) third_party/WebKit/Source/core/dom/Document.cpp:720
    #17 0x1c0044cf in blink::HTMLDocument::HTMLDocument(blink::DocumentInit const&, unsigned char) third_party/WebKit/Source/core/html/HTMLDocument.cpp:67:7
    #18 0x1b3ab36a in Create third_party/WebKit/Source/core/html/HTMLDocument.h:37:16
    #19 0x1b3ab36a in blink::DOMImplementation::createDocument(WTF::String const&, blink::DocumentInit const&, bool) third_party/WebKit/Source/core/dom/DOMImplementation.cpp:233
    #20 0x1bd39ab8 in blink::LocalDOMWindow::CreateDocument(WTF::String const&, blink::DocumentInit const&, bool) third_party/WebKit/Source/core/frame/LocalDOMWindow.cpp:299:16
    #21 0x1bd39f94 in blink::LocalDOMWindow::InstallNewDocument(WTF::String const&, blink::DocumentInit const&, bool) third_party/WebKit/Source/core/frame/LocalDOMWindow.cpp:321:15
    #22 0x1d282f29 in blink::DocumentLoader::InstallNewDocument(blink::KURL const&, blink::Document*, blink::WebGlobalObjectReusePolicy, WTF::AtomicString const&, WTF::AtomicString const&, blink::DocumentLoader::InstallNewDocumentReason, blink::ParserSynchronizationPolicy, blink::KURL const&) third_party/WebKit/Source/core/loader/DocumentLoader.cpp:1051:45
    #23 0x1d282537 in blink::DocumentLoader::CommitNavigation(WTF::AtomicString const&, blink::KURL const&) third_party/WebKit/Source/core/loader/DocumentLoader.cpp:694:3
    #24 0x1d27e8eb in blink::DocumentLoader::CommitData(char const*, unsigned long) third_party/WebKit/Source/core/loader/DocumentLoader.cpp:707:3
    #25 0x1d27d644 in blink::DocumentLoader::FinishedLoading(double) third_party/WebKit/Source/core/loader/DocumentLoader.cpp:462:7
    #26 0x1d284e0b in blink::DocumentLoader::MaybeLoadEmpty() third_party/WebKit/Source/core/loader/DocumentLoader.cpp:842:3
    #27 0x1d28520b in blink::DocumentLoader::StartLoading() third_party/WebKit/Source/core/loader/DocumentLoader.cpp:852:7
    #28 0x1d2b16e1 in blink::FrameLoader::Init() third_party/WebKit/Source/core/loader/FrameLoader.cpp:288:33
    #29 0x1bd7377f in blink::LocalFrame::Init() third_party/WebKit/Source/core/frame/LocalFrame.cpp:162:11
    #30 0x1bee8bb5 in blink::WebLocalFrameImpl::InitializeCoreFrame(blink::Page&, blink::FrameOwner*, WTF::AtomicString const&) third_party/WebKit/Source/core/frame/WebLocalFrameImpl.cpp:1755:11
    #31 0x1bee7bb8 in blink::WebLocalFrameImpl::CreateMainFrame(blink::WebView*, blink::WebFrameClient*, blink::InterfaceRegistry*, blink::WebFrame*, blink::WebString const&, blink::WebSandboxFlags) third_party/WebKit/Source/core/frame/WebLocalFrameImpl.cpp:1633:10
    #32 0x1f6fa94d in content::RenderFrameImpl::CreateMainFrame(content::RenderViewImpl*, int, mojo::InterfacePtr<service_manager::mojom::InterfaceProvider>, int, bool, content::ScreenInfo const&, content::CompositorDependencies*, blink::WebFrame*, base::UnguessableToken const&, content::FrameReplicationState const&, bool) content/renderer/render_frame_impl.cc:1089:30
    #33 0x1f802010 in content::RenderViewImpl::Initialize(mojo::StructPtr<content::mojom::CreateViewParams>, base::RepeatingCallback<void (content::RenderWidget*, blink::WebNavigationPolicy, gfx::Rect const&)> const&) content/renderer/render_view_impl.cc:608:26
    #34 0x1f80a44b in content::RenderViewImpl::Create(content::CompositorDependencies*, mojo::StructPtr<content::mojom::CreateViewParams>, base::RepeatingCallback<void (content::RenderWidget*, blink::WebNavigationPolicy, gfx::Rect const&)> const&, scoped_refptr<base::SingleThreadTaskRunner>) content/renderer/render_view_impl.cc:1027:16
    #35 0x1f7e2fec in content::RenderThreadImpl::CreateView(mojo::StructPtr<content::mojom::CreateViewParams>) content/renderer/render_thread_impl.cc:2169:3
    #36 0x63561d6 in content::mojom::RendererStubDispatch::Accept(content::mojom::Renderer*, mojo::Message*) out/Release/gen/content/common/renderer.mojom.cc:745:13
    #37 0x123f6182 in mojo::InterfaceEndpointClient::HandleValidatedMessage(mojo::Message*) mojo/public/cpp/bindings/lib/interface_endpoint_client.cc:419:32
    #38 0x124510c7 in mojo::FilterChain::Accept(mojo::Message*) mojo/public/cpp/bindings/lib/filter_chain.cc:40:17

It isn't immediately obvious how to diagnose these, so marking for Blink triage.
 
Components: -Blink Blink>Fonts

Comment 2 by e...@chromium.org, Jan 26 2018

Status: WontFix (was: Untriaged)

Comment 3 by mcnee@chromium.org, Feb 9 2018

Cc: e...@chromium.org
Labels: OS-Chrome
Status: Untriaged (was: WontFix)
This test is still flaky on Linux Chromium OS ASan LSan Tests (1)
https://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=BrowserCloseManagerBrowserTest%2FBrowserCloseManagerBrowserTest.TestUnloadMultipleSlowTabs%2F1&testType=browser_tests

I'll disable the test for ChromeOS ASan:  https://chromium-review.googlesource.com/c/chromium/src/+/911814

Comment 4 by mcnee@chromium.org, Feb 9 2018

Labels: -OS-Linux Sheriff-Chromium
Project Member

Comment 5 by bugdroid1@chromium.org, Feb 9 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/98ba00f13cb501af330a9bff3b6a004270b9d927

commit 98ba00f13cb501af330a9bff3b6a004270b9d927
Author: Kevin McNee <mcnee@chromium.org>
Date: Fri Feb 09 19:19:36 2018

Disable BrowserCloseManagerBrowserTest.TestUnloadMultipleSlowTabs on ChromeOS ASan

This test is flaky under ChromeOS ASan.

Bug: 805457
Change-Id: I49cfa6efeebe8dca4331ac2e10580bc7ca046612
Reviewed-on: https://chromium-review.googlesource.com/911814
Reviewed-by: John Abd-El-Malek <jam@chromium.org>
Commit-Queue: Kevin McNee <mcnee@chromium.org>
Cr-Commit-Position: refs/heads/master@{#535778}
[modify] https://crrev.com/98ba00f13cb501af330a9bff3b6a004270b9d927/chrome/browser/lifetime/browser_close_manager_browsertest.cc

Comment 6 by mcnee@chromium.org, Feb 9 2018

Labels: -Sheriff-Chromium
Removing Sheriff-Chromium as the test is now disabled for ChromeOS ASan.

Comment 7 by e...@chromium.org, Feb 9 2018

Cc: drott@chromium.org
Status: Available (was: Untriaged)

Sign in to add a comment