Closed Bug 542147 Opened 14 years ago Closed 14 years ago

e10s: Assertion (WorkerLoop == MessageLoop::current()) fails after content process dies

Categories

(Core :: IPC, defect)

x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: jdm, Unassigned)

References

Details

Attachments

(1 file)

I'm creating multiple content processes in my Jetpack work (just make the constructor public, store the parent in the frameloader and delete it on destruction), and I run into this assertion failure after three processes have died:

###!!! ABORT: not on worker thread!: 'mWorkerLoop == MessageLoop::current()', file ../../dist/include/mozilla/ipc/AsyncChannel.h, line 130
Program received signal SIGTRAP, Trace/breakpoint trap.
[Switching to Thread 0xb4df7710 (LWP 24392)]
RealBreak () at /home/jdm/electrolysis/xpcom/base/nsDebugImpl.cpp:421
421	}

(gdb) bt
#0  RealBreak () at /home/jdm/electrolysis/xpcom/base/nsDebugImpl.cpp:421
#1  0xb780068c in NS_DebugBreak_P (aSeverity=3, aStr=0xb7d5a4d2 "not on worker thread!", aExpr=0xb7d5a4ac "mWorkerLoop == MessageLoop::current()", 
    aFile=0xb7d5a448 "../../dist/include/mozilla/ipc/AsyncChannel.h", aLine=130) at /home/jdm/electrolysis/xpcom/base/nsDebugImpl.cpp:324
#2  0xb76343cd in mozilla::ipc::AsyncChannel::AssertWorkerThread (this=0xacacfc88) at ../../dist/include/mozilla/ipc/AsyncChannel.h:129
#3  0xb7639871 in mozilla::ipc::RPCChannel::OnMaybeDequeueOne (this=0xacacfc88) at /home/jdm/electrolysis/ipc/glue/RPCChannel.cpp:273
#4  0xb763b0bd in DispatchToMethod<mozilla::ipc::RPCChannel, void (mozilla::ipc::RPCChannel::*)()> (obj=0xacacfc88, 
    method=0xb7639854 <mozilla::ipc::RPCChannel::OnMaybeDequeueOne()>, arg=@0xabb0dfdc) at /home/jdm/electrolysis/ipc/chromium/src/base/tuple.h:383
#5  0xb763b0f9 in RunnableMethod<mozilla::ipc::RPCChannel, void (mozilla::ipc::RPCChannel::*)(), Tuple0>::Run (this=0xabb0dfc0)
    at /home/jdm/electrolysis/ipc/chromium/src/base/task.h:307
#6  0xb76feb14 in MessageLoop::RunTask (this=0xb4b2a6e0, task=0xabb0dfc0) at /home/jdm/electrolysis/ipc/chromium/src/base/message_loop.cc:326
#7  0xb76fefad in MessageLoop::DeferOrRunPendingTask (this=0xb4b2a6e0, pending_task=@0xbfda5650)
    at /home/jdm/electrolysis/ipc/chromium/src/base/message_loop.cc:334
#8  0xb76ff32c in MessageLoop::DoWork (this=0xb4b2a6e0) at /home/jdm/electrolysis/ipc/chromium/src/base/message_loop.cc:434
#9  0xb7637f7e in mozilla::ipc::MessagePump::Run (this=0xb4b76790, aDelegate=0xb4b2a6e0) at /home/jdm/electrolysis/ipc/glue/MessagePump.cpp:122
#10 0xb76ff765 in MessageLoop::RunInternal (this=0xb4b2a6e0) at /home/jdm/electrolysis/ipc/chromium/src/base/message_loop.cc:211
#11 0xb76ff789 in MessageLoop::RunHandler (this=0xb4b2a6e0) at /home/jdm/electrolysis/ipc/chromium/src/base/message_loop.cc:194
#12 0xb76ff80d in MessageLoop::Run (this=0xb4b2a6e0) at /home/jdm/electrolysis/ipc/chromium/src/base/message_loop.cc:168
#13 0xb74e23fc in nsBaseAppShell::Run (this=0xb10802e0) at /home/jdm/electrolysis/widget/src/xpwidgets/nsBaseAppShell.cpp:174
#14 0xb724f9dd in nsAppStartup::Run (this=0xb1091400) at /home/jdm/electrolysis/toolkit/components/startup/src/nsAppStartup.cpp:182
#15 0xb639bb16 in XRE_main (argc=3, argv=0xbfda5d44, aAppData=0xb4b06540) at /home/jdm/electrolysis/toolkit/xre/nsAppRunner.cpp:3477
#16 0x08049ac2 in main (argc=3, argv=0xbfda5d44) at /home/jdm/electrolysis/browser/app/nsBrowserApp.cpp:158
Blocks: e10s
Since this seems to have gone away, I'll mark WORKSFORME.  Please reopen or file anew if it arises again with later patches.
Status: NEW → RESOLVED
Closed: 14 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: