[macOS] Crash in [@ IPCError-browser | ShutDownKill | __psynch_cvwait | mozilla::TaskController::GetRunnableForMTTask | mozilla::ipc::MessagePump::Run]
Categories
(Core :: XPCOM, defect)
Tracking
()
Fission Milestone | MVP |
People
(Reporter: aryx, Assigned: jesup)
References
(Blocks 1 open bug)
Details
(Keywords: crash)
Crash Data
Only affects Nightly, and >=80.0a1.
Maybe Fission related. (DOMFissionEnabled=1)
Crash report: https://crash-stats.mozilla.org/report/index/ef627e47-6a28-47ba-b19e-e10180201030
Reason: EXC_BREAKPOINT / EXC_I386_BPT
Top 10 frames of crashing thread:
0 libsystem_kernel.dylib __psynch_cvwait
1 libmozglue.dylib mozilla::detail::ConditionVariableImpl::wait mozglue/misc/ConditionVariable_posix.cpp:108
2 XUL mozilla::TaskController::GetRunnableForMTTask xpcom/threads/TaskController.cpp:283
3 XUL nsThread::ProcessNextEvent xpcom/threads/nsThread.cpp:1143
4 XUL mozilla::ipc::MessagePump::Run ipc/glue/MessagePump.cpp:109
5 XUL MessageLoop::Run ipc/chromium/src/base/message_loop.cc:309
6 XUL nsBaseAppShell::Run widget/nsBaseAppShell.cpp:137
7 XUL nsAppShell::Run widget/cocoa/nsAppShell.mm:694
8 XUL XRE_RunAppShell toolkit/xre/nsEmbedFunctions.cpp:913
9 XUL MessageLoop::Run ipc/chromium/src/base/message_loop.cc:309
Updated•4 years ago
|
Comment 1•4 years ago
|
||
Appears to be a regression in 80.0a1. The first crashing build ID for this crash signature is 20200726095051:
I'm not sure why the Crash Data graph above shows no crashes before 2020-08-21.
This crash is Nightly-only but it's not a Fission bug: only 11% of the crash reports have Fission enabled:
Reporter | ||
Updated•3 years ago
|
Comment 2•3 years ago
|
||
Change the status for beta to have the same as nightly and release.
For more information, please visit auto_nag documentation.
Comment 3•3 years ago
|
||
The volume of this crash on nightly has tripled since last month, could that be the related to the wider rollout of FIssion?
Comment 4•3 years ago
|
||
Around 85% of the most common signature, IPCError-browser | ShutDownKill | __psynch_cvwait | mozilla::TaskController::GetRunnableForMTTask | mozilla::ipc::MessagePump::Run, have Fission enabled.
Despite these being mostly Fission crashes, I don't see a single crash where there is a remote type annotation on the crash report, which I think implies that ContentChild::RecvRemoteType has never run, which in turn I think implies that these are preallocated processes.
Comment 5•3 years ago
|
||
Maybe there's some kind of race where the preallocated process manager is in the middle of starting up a new process? I'm not sure why the preallocated process manager doesn't call CloseProcesses() when it observes that shutdown has begun. It looks like the behavior was intentionally changed to this in bug 1363601. It looks like ContentParent::ReleaseCachedProcesses() might clear those out, but I don't understand how that is invoked.
Comment 6•3 years ago
|
||
For what it is worth, the last 5 crashes on my OSX machine looked like this.
Comment 7•3 years ago
|
||
(In reply to Pascal Chevrel:pascalc from comment #3)
The volume of this crash on nightly has tripled since last month, could that be the related to the wider rollout of FIssion?
(In reply to Andrew McCreight [:mccr8] from comment #4)
Despite these being mostly Fission crashes, I don't see a single crash where there is a remote type annotation on the crash report, which I think implies that ContentChild::RecvRemoteType has never run, which in turn I think implies that these are preallocated processes.
CC'ing Jesup because these ShutDownKills look related to Fission's pre-allocated processes.
Tracking this bug for Fission M7a because we should understand this issue before we enable Fission for more users.
Assignee | ||
Comment 8•3 years ago
|
||
I'll investigate. Fission has 3x the number of preallocated processes -- and more to the point perhaps is far more likely to be in the process of preallocating a process when we shut down.
Updated•3 years ago
|
Reporter | ||
Comment 9•3 years ago
|
||
The signature changed from IPCError-browser | ShutDownKill | __psynch_cvwait | mozilla::TaskController::GetRunnableForMTTask | mozilla::ipc::MessagePump::Run
to [@ IPCError-browser | ShutDownKill | __psynch_cvwait | mozilla::ipc::MessagePump::Run]
. The signature for the latter got also added to bug 1279293.
Assignee | ||
Comment 10•3 years ago
|
||
This subset of the ShutDownKill errors is a mac-only, and the particular signature is likely related to process startup (given the lack of a remote type - not even Web or Prealloc). Since we're allocating processes more often, this overall makes sense.
This causes no significant negative impact to users, so pushing this out.
Updated•3 years ago
|
Comment 11•3 years ago
|
||
Dup'ing as discussed with Randell in the Fission meeting.
Description
•