Browser crash upon DCHECK in mojo::internal::MessageDispatchContext |
|||
Issue description0. Build with dcheck_always_on 1. Start chrome, leave it unattended with just NTP open 2. In a few minutes, the browser crashes with the following stack: [37204:37641:0622/152638.718514:FATAL:thread_restrictions.cc(58)] Check failed: false. LazyInstance/Singleton is not allowed to be used on this thread. Most likely it's because this thread is not joinable (or the current task is running with TaskShutdownBehavior::CONTINUE_ON_SHUTDOWN semantics), so AtExitManager may have deleted the object on shutdown, leading to a potential shutdown crash. If you need to use the object from this context, it'll have to be updated to use Leaky traits. #0 0x555d39c33207 base::debug::StackTrace::StackTrace() #1 0x555d39c4d57d logging::LogMessage::~LogMessage() #2 0x555d39cacb65 base::ThreadRestrictions::AssertSingletonAllowed() #3 0x555d387c20b5 base::LazyInstance<>::Pointer() #4 0x555d3a8031fa mojo::internal::MessageDispatchContext::MessageDispatchContext() #5 0x555d37fcf3b4 chrome::mojom::FilePatcher_PatchFileBsdiff_ForwardToCallback::Accept() #6 0x555d3a7ff645 mojo::InterfaceEndpointClient::HandleValidatedMessage() #7 0x555d3a7ff206 mojo::FilterChain::Accept() #8 0x555d3a80081e mojo::InterfaceEndpointClient::HandleIncomingMessage() #9 0x555d3a80771d mojo::internal::MultiplexRouter::ProcessIncomingMessage() #10 0x555d3a806f5e mojo::internal::MultiplexRouter::Accept() #11 0x555d3a7ff206 mojo::FilterChain::Accept() #12 0x555d3a7fd8ac mojo::Connector::ReadSingleMessage() #13 0x555d3a7fe1d2 mojo::Connector::ReadAllAvailableMessages() #14 0x555d3a7fe03e mojo::Connector::OnHandleReadyInternal() #15 0x555d3a8134ef mojo::SimpleWatcher::OnHandleReady() #16 0x555d38921d08 _ZN4base8internal7InvokerINS0_9BindStateIMN7content25ServiceWorkerProviderHostEFviN5blink21WebServiceWorkerStateEEJNS_7WeakPtrIS4_EEiS6_EEEFvvEE7RunImplIRKS8_RKSt5tupleIJSA_iS6_EEJLm0ELm1ELm2EEEEvOT_OT0_NS_13IndexSequenceIJXspT1_EEEE #17 0x555d37fd1c71 _ZNO4base8CallbackIFvvELNS_8internal8CopyModeE1ELNS2_10RepeatModeE1EE3RunEv #18 0x555d39ce4633 base::debug::TaskAnnotator::RunTask() #19 0x555d39c9b446 base::internal::TaskTracker::PerformRunTask() #20 0x555d39c9bae0 base::internal::TaskTrackerPosix::PerformRunTask() #21 0x555d39c9ac4c base::internal::TaskTracker::RunNextTask() #22 0x555d39cefe8e base::internal::SchedulerWorker::Thread::ThreadMain() #23 0x555d39ca382c base::(anonymous namespace)::ThreadFunc() #24 0x7f960a092184 start_thread #25 0x7f9603da5bed clone
,
Jun 23 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/04e9abf62a06893b23adc4af4c5ce8f9af0dbd0e commit 04e9abf62a06893b23adc4af4c5ce8f9af0dbd0e Author: Sam McNally <sammc@chromium.org> Date: Fri Jun 23 01:40:52 2017 Change LazyInstances in mojo/public/cpp to be leaky. Bug: 736125 Change-Id: Icb66b30de6a7a9b2da77a2a733c9b889871edf6e Reviewed-on: https://chromium-review.googlesource.com/544448 Reviewed-by: Ken Rockot <rockot@chromium.org> Commit-Queue: Sam McNally <sammc@chromium.org> Cr-Commit-Position: refs/heads/master@{#481765} [modify] https://crrev.com/04e9abf62a06893b23adc4af4c5ce8f9af0dbd0e/mojo/public/cpp/bindings/lib/message.cc [modify] https://crrev.com/04e9abf62a06893b23adc4af4c5ce8f9af0dbd0e/mojo/public/cpp/bindings/lib/sync_call_restrictions.cc
,
Jun 23 2017
,
Jun 26 2017
Issue 736334 has been merged into this issue. |
|||
►
Sign in to add a comment |
|||
Comment 1 by caseq@chromium.org
, Jun 22 2017Status: Assigned (was: Untriaged)
Summary: Browser crash upon DCHECK in mojo::internal::MessageDispatchContext (was: Browser crash upon DCHECK in ServiceWorkerProviderHost)