New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 724815 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Last visit > 30 days ago
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 2
Type: Bug
Hotlist-MemoryInfra



Sign in to add a comment

Check failed: 0u == pmd->os_dump.resident_set_kb (0 vs. 301556)

Project Member Reported by erikc...@chromium.org, May 20 2017

Issue description



[94990:775:0520/110158.357920:FATAL:coordinator_impl.cc(246)] Check failed: 0u == pmd->os_dump.resident_set_kb (0 vs. 301556)
0   libbase.dylib                       0x000000010204634e base::debug::StackTrace::StackTrace(unsigned long) + 174
1   libbase.dylib                       0x00000001020463ed base::debug::StackTrace::StackTrace(unsigned long) + 29
2   libbase.dylib                       0x000000010204487c base::debug::StackTrace::StackTrace() + 28
3   libbase.dylib                       0x00000001020e368f logging::LogMessage::~LogMessage() + 479
4   libbase.dylib                       0x00000001020e1005 logging::LogMessage::~LogMessage() + 21
5   libcontent.dylib                    0x0000000116c8be67 memory_instrumentation::CoordinatorImpl::FinalizeGlobalMemoryDumpIfAllManagersReplied() + 1319
6   libcontent.dylib                    0x0000000116c8b833 memory_instrumentation::CoordinatorImpl::OnProcessMemoryDumpResponse(memory_instrumentation::mojom::ProcessLocalDumpManager*, unsigned long long, bool, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump>) + 3187
7   libcontent.dylib                    0x0000000116c9a04e void base::internal::FunctorTraits<void (memory_instrumentation::CoordinatorImpl::*)(memory_instrumentation::mojom::ProcessLocalDumpManager*, unsigned long long, bool, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump>), void>::Invoke<memory_instrumentation::CoordinatorImpl*, memory_instrumentation::mojom::ProcessLocalDumpManager* const&, unsigned long long, bool, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump> >(void (memory_instrumentation::CoordinatorImpl::*)(memory_instrumentation::mojom::ProcessLocalDumpManager*, unsigned long long, bool, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump>), memory_instrumentation::CoordinatorImpl*&&, memory_instrumentation::mojom::ProcessLocalDumpManager* const&&&, unsigned long long&&, bool&&, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump>&&) + 334
8   libcontent.dylib                    0x0000000116c99ef1 void base::internal::InvokeHelper<false, void>::MakeItSo<void (memory_instrumentation::CoordinatorImpl::* const&)(memory_instrumentation::mojom::ProcessLocalDumpManager*, unsigned long long, bool, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump>), memory_instrumentation::CoordinatorImpl*, memory_instrumentation::mojom::ProcessLocalDumpManager* const&, unsigned long long, bool, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump> >(void (memory_instrumentation::CoordinatorImpl::* const&&&)(memory_instrumentation::mojom::ProcessLocalDumpManager*, unsigned long long, bool, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump>), memory_instrumentation::CoordinatorImpl*&&, memory_instrumentation::mojom::ProcessLocalDumpManager* const&&&, unsigned long long&&, bool&&, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump>&&) + 161
9   libcontent.dylib                    0x0000000116c99e20 void base::internal::Invoker<base::internal::BindState<void (memory_instrumentation::CoordinatorImpl::*)(memory_instrumentation::mojom::ProcessLocalDumpManager*, unsigned long long, bool, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump>), base::internal::UnretainedWrapper<memory_instrumentation::CoordinatorImpl>, memory_instrumentation::mojom::ProcessLocalDumpManager*>, void (unsigned long long, bool, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump>)>::RunImpl<void (memory_instrumentation::CoordinatorImpl::* const&)(memory_instrumentation::mojom::ProcessLocalDumpManager*, unsigned long long, bool, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump>), std::__1::tuple<base::internal::UnretainedWrapper<memory_instrumentation::CoordinatorImpl>, memory_instrumentation::mojom::ProcessLocalDumpManager*> const&, 0ul, 1ul>(void (memory_instrumentation::CoordinatorImpl::* const&&&)(memory_instrumentation::mojom::ProcessLocalDumpManager*, unsigned long long, bool, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump>), std::__1::tuple<base::internal::UnretainedWrapper<memory_instrumentation::CoordinatorImpl>, memory_instrumentation::mojom::ProcessLocalDumpManager*> const&&&, base::IndexSequence<0ul, 1ul>, unsigned long long&&, bool&&, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump>&&) + 208
10  libcontent.dylib                    0x0000000116c99caf base::internal::Invoker<base::internal::BindState<void (memory_instrumentation::CoordinatorImpl::*)(memory_instrumentation::mojom::ProcessLocalDumpManager*, unsigned long long, bool, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump>), base::internal::UnretainedWrapper<memory_instrumentation::CoordinatorImpl>, memory_instrumentation::mojom::ProcessLocalDumpManager*>, void (unsigned long long, bool, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump>)>::Run(base::internal::BindStateBase*, unsigned long long&&, bool&&, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump>&&) + 111
11  libresource_coordinator_cpp.dylib   0x00000001226de952 base::Callback<void (unsigned long long, bool, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump>), (base::internal::CopyMode)1, (base::internal::RepeatMode)1>::Run(unsigned long long, bool, mojo::StructPtr<memory_instrumentation::mojom::ProcessMemoryDump>) + 146
12  libresource_coordinator_cpp.dylib   0x00000001226de733 memory_instrumentation::mojom::ProcessLocalDumpManager_RequestProcessMemoryDump_ForwardToCallback::Accept(mojo::Message*) + 563
13  libbindings.dylib                   0x0000000101f17e76 mojo::InterfaceEndpointClient::HandleValidatedMessage(mojo::Message*) + 5350
14  libbindings.dylib                   0x0000000101f16981 mojo::InterfaceEndpointClient::HandleIncomingMessageThunk::Accept(mojo::Message*) + 33
15  libbindings.dylib                   0x0000000101f148e5 mojo::FilterChain::Accept(mojo::Message*) + 821
16  libbindings.dylib                   0x0000000101f1b8f2 mojo::InterfaceEndpointClient::HandleIncomingMessage(mojo::Message*) + 242
17  libbindings.dylib                   0x0000000101f38a12 mojo::internal::MultiplexRouter::ProcessIncomingMessage(mojo::Message*, mojo::internal::MultiplexRouter::ClientCallBehavior, base::SingleThreadTaskRunner*) + 1474
18  libbindings.dylib                   0x0000000101f38014 mojo::internal::MultiplexRouter::Accept(mojo::Message*) + 660
19  libbindings.dylib                   0x0000000101f148e5 mojo::FilterChain::Accept(mojo::Message*) + 821
20  libbindings.dylib                   0x0000000101f069cc mojo::Connector::ReadSingleMessage(unsigned int*) + 476
21  libbindings.dylib                   0x0000000101f079c8 mojo::Connector::ReadAllAvailableMessages() + 120
22  libbindings.dylib                   0x0000000101f0772f mojo::Connector::OnHandleReadyInternal(unsigned int) + 271
23  libbindings.dylib                   0x0000000101f0760b mojo::Connector::OnWatcherHandleReady(unsigned int) + 27
24  libbindings.dylib                   0x0000000101f0a1b7 void base::internal::FunctorTraits<void (mojo::Connector::*)(unsigned int), void>::Invoke<mojo::Connector*, unsigned int>(void (mojo::Connector::*)(unsigned int), mojo::Connector*&&, unsigned int&&) + 151
25  libbindings.dylib                   0x0000000101f0a0df void base::internal::InvokeHelper<false, void>::MakeItSo<void (mojo::Connector::* const&)(unsigned int), mojo::Connector*, unsigned int>(void (mojo::Connector::* const&&&)(unsigned int), mojo::Connector*&&, unsigned int&&) + 95
26  libbindings.dylib                   0x0000000101f0a053 void base::internal::Invoker<base::internal::BindState<void (mojo::Connector::*)(unsigned int), base::internal::UnretainedWrapper<mojo::Connector> >, void (unsigned int)>::RunImpl<void (mojo::Connector::* const&)(unsigned int), std::__1::tuple<base::internal::UnretainedWrapper<mojo::Connector> > const&, 0ul>(void (mojo::Connector::* const&&&)(unsigned int), std::__1::tuple<base::internal::UnretainedWrapper<mojo::Connector> > const&&&, base::IndexSequence<0ul>, unsigned int&&) + 115
27  libbindings.dylib                   0x0000000101f09f54 base::internal::Invoker<base::internal::BindState<void (mojo::Connector::*)(unsigned int), base::internal::UnretainedWrapper<mojo::Connector> >, void (unsigned int)>::Run(base::internal::BindStateBase*, unsigned int&&) + 68
28  libmojo_public_system_cpp.dylib     0x00000001027135b7 base::Callback<void (unsigned int), (base::internal::CopyMode)1, (base::internal::RepeatMode)1>::Run(unsigned int) const + 87
29  libmojo_public_system_cpp.dylib     0x000000010271330e mojo::SimpleWatcher::OnHandleReady(int, unsigned int) + 446
30  libmojo_public_system_cpp.dylib     0x000000010271401b void base::internal::FunctorTraits<void (mojo::SimpleWatcher::*)(int, unsigned int), void>::Invoke<base::WeakPtr<mojo::SimpleWatcher> const&, int const&, unsigned int const&>(void (mojo::SimpleWatcher::*)(int, unsigned int), base::WeakPtr<mojo::SimpleWatcher> const&&&, int const&&&, unsigned int const&&&) + 171
31  libmojo_public_system_cpp.dylib     0x0000000102713ed5 void base::internal::InvokeHelper<true, void>::MakeItSo<void (mojo::SimpleWatcher::* const&)(int, unsigned int), base::WeakPtr<mojo::SimpleWatcher> const&, int const&, unsigned int const&>(void (mojo::SimpleWatcher::* const&&&)(int, unsigned int), base::WeakPtr<mojo::SimpleWatcher> const&&&, int const&&&, unsigned int const&&&) + 133
32  libmojo_public_system_cpp.dylib     0x0000000102713e3d void base::internal::Invoker<base::internal::BindState<void (mojo::SimpleWatcher::*)(int, unsigned int), base::WeakPtr<mojo::SimpleWatcher>, int, unsigned int>, void ()>::RunImpl<void (mojo::SimpleWatcher::* const&)(int, unsigned int), std::__1::tuple<base::WeakPtr<mojo::SimpleWatcher>, int, unsigned int> const&, 0ul, 1ul, 2ul>(void (mojo::SimpleWatcher::* const&&&)(int, unsigned int), std::__1::tuple<base::WeakPtr<mojo::SimpleWatcher>, int, unsigned int> const&&&, base::IndexSequence<0ul, 1ul, 2ul>) + 173
33  libmojo_public_system_cpp.dylib     0x0000000102713cdc base::internal::Invoker<base::internal::BindState<void (mojo::SimpleWatcher::*)(int, unsigned int), base::WeakPtr<mojo::SimpleWatcher>, int, unsigned int>, void ()>::Run(base::internal::BindStateBase*) + 44
34  libbase.dylib                       0x0000000101fe3d4f base::Callback<void (), (base::internal::CopyMode)0, (base::internal::RepeatMode)0>::Run() + 95
35  libbase.dylib                       0x0000000102048890 base::debug::TaskAnnotator::RunTask(char const*, base::PendingTask*) + 1024
36  libbase.dylib                       0x000000010213aa5e base::MessageLoop::RunTask(base::PendingTask*) + 894
37  libbase.dylib                       0x000000010213afb7 base::MessageLoop::DeferOrRunPendingTask(base::PendingTask) + 71
38  libbase.dylib                       0x000000010213b719 base::MessageLoop::DoWork() + 681
39  libbase.dylib                       0x000000010214b8e8 base::MessagePumpCFRunLoopBase::RunWork() + 104
40  libbase.dylib                       0x000000010214b86c ___ZN4base24MessagePumpCFRunLoopBase13RunWorkSourceEPv_block_invoke + 28
41  libbase.dylib                       0x00000001020eb9ea base::mac::CallWithEHFrame(void () block_pointer) + 10
42  libbase.dylib                       0x000000010214ad65 base::MessagePumpCFRunLoopBase::RunWorkSource(void*) + 101
43  CoreFoundation                      0x00007fffb56dd3c1 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
44  CoreFoundation                      0x00007fffb56be2cd __CFRunLoopDoSources0 + 557
45  CoreFoundation                      0x00007fffb56bd7c6 __CFRunLoopRun + 934
46  CoreFoundation                      0x00007fffb56bd1c4 CFRunLoopRunSpecific + 420
47  HIToolbox                           0x00007fffb4c1eebc RunCurrentEventLoopInMode + 240
48  HIToolbox                           0x00007fffb4c1ecf1 ReceiveNextEventCommon + 432
49  HIToolbox                           0x00007fffb4c1eb26 _BlockUntilNextEventMatchingListInModeWithFilter + 71
50  AppKit                              0x00007fffb31b9e24 _DPSNextEvent + 1120
51  AppKit                              0x00007fffb393585e -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 2796
52  libchrome_dll.dylib                 0x00000001062f8a7a __71-[BrowserCrApplication nextEventMatchingMask:untilDate:inMode:dequeue:]_block_invoke + 106
53  libbase.dylib                       0x00000001020eb9ea base::mac::CallWithEHFrame(void () block_pointer) + 10
54  libchrome_dll.dylib                 0x00000001062f8918 -[BrowserCrApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 248
55  AppKit                              0x00007fffb31ae7ab -[NSApplication run] + 926
56  libbase.dylib                       0x000000010214c622 base::MessagePumpNSApplication::DoRun(base::MessagePump::Delegate*) + 306
57  libbase.dylib                       0x000000010214a4fa base::MessagePumpCFRunLoopBase::Run(base::MessagePump::Delegate*) + 122
58  libbase.dylib                       0x000000010213a39b base::MessageLoop::Run() + 299
59  libbase.dylib                       0x000000010222a72e base::RunLoop::Run() + 286
60  libchrome_dll.dylib                 0x00000001063060f9 ChromeBrowserMainParts::MainMessageLoopRun(int*) + 361
61  libcontent.dylib                    0x000000011552a637 content::BrowserMainLoop::RunMainMessageLoopParts() + 455
 
I was doing a bunch of test runs with the same profile [used to be empty]. At some point, this problem deterministically occurred every time I tried to take a memory-infra trace via chrome://tracing. Switching to a totally new profile makes the problem go away.
profile in question attached
ah92.zip
1.4 MB Download
Cc: primiano@chromium.org
Components: Internals>Instrumentation>Memory
Labels: -Pri-3 OS-Mac Pri-2
Owner: hjd@chromium.org
moving this to hjd@
can you see if you can repro this (I think on mac)
looks like there is some path such that two processes collide and provide the os_dump for the same PID.
I have seen some zero-pids showing up on logs, I suspect that is broken there (Two processes selling themselves as pid:0) but we should confirm that's the case.

Sign in to add a comment