Closed Bug 1093782 Opened 10 years ago Closed 10 years ago

frequent plugin hangs on osx with e10s

Categories

(Core Graveyard :: Plug-ins, defect)

x86
macOS
defect
Not set
normal

Tracking

(e10sm4+)

RESOLVED WORKSFORME
Tracking Status
e10s m4+ ---

People

(Reporter: blassey, Assigned: handyman)

Details

(Keywords: hang)

Attachments

(1 file)

I've seen flash hang my browser frequently today. Here's a stack I got from the last one: * thread #1: tid = 0x9805, 0x00007fff83acda1a libsystem_kernel.dylib`mach_msg_trap + 10, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP * frame #0: 0x00007fff83acda1a libsystem_kernel.dylib`mach_msg_trap + 10 frame #1: 0x00007fff83accd18 libsystem_kernel.dylib`mach_msg + 64 frame #2: 0x00007fff905a429e IOKit`io_service_open_extended + 147 frame #3: 0x00007fff9054afea IOKit`IOServiceOpen + 45 frame #4: 0x00007fff86656f50 OpenGL`___lldb_unnamed_function47$$OpenGL + 102 frame #5: 0x00007fff8665a6d8 OpenGL`___lldb_unnamed_function62$$OpenGL + 2147 frame #6: 0x00007fff86659e0a OpenGL`CGLChoosePixelFormat + 126 frame #7: 0x0000000100dfbbf6 XUL`nsCARenderer::SetupRenderer(void*, int, int, double, AllowOfflineRendererEnum) + 150 frame #8: 0x0000000101c3208b XUL`mozilla::plugins::PluginUtilsOSX::nsDoubleBufferCARenderer::InitFrontSurface(unsigned long, unsigned long, double, AllowOfflineRendererEnum) + 459 frame #9: 0x0000000101c186aa XUL`mozilla::plugins::PluginInstanceChild::EnsureCurrentBuffer() + 394 frame #10: 0x0000000101c18f86 XUL`mozilla::plugins::PluginInstanceChild::ShowPluginFrame() + 310 frame #11: 0x0000000101c193bb XUL`mozilla::plugins::PluginInstanceChild::InvalidateRectDelayed() + 75 frame #12: 0x000000010073cf14 XUL`MessageLoop::DeferOrRunPendingTask(MessageLoop::PendingTask const&) + 132 frame #13: 0x000000010073d22a XUL`MessageLoop::DoWork() + 170 frame #14: 0x000000010075906a XUL`base::MessagePumpCFRunLoopBase::RunWorkSource(void*) + 42 frame #15: 0x00007fff84ce95b1 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17 frame #16: 0x00007fff84cdac62 CoreFoundation`__CFRunLoopDoSources0 + 242 frame #17: 0x00007fff84cda3ef CoreFoundation`__CFRunLoopRun + 831 frame #18: 0x00007fff84cd9e75 CoreFoundation`CFRunLoopRunSpecific + 309 frame #19: 0x00007fff8a766a0d HIToolbox`RunCurrentEventLoopInMode + 226 frame #20: 0x00007fff8a7667b7 HIToolbox`ReceiveNextEventCommon + 479 frame #21: 0x00007fff8a7665bc HIToolbox`_BlockUntilNextEventMatchingListInModeWithFilter + 65 frame #22: 0x00007fff8c88324e AppKit`_DPSNextEvent + 1434 frame #23: 0x00007fff8c88289b AppKit`-[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 122 frame #24: 0x00007fff8c87699c AppKit`-[NSApplication run] + 553 frame #25: 0x000000010075a023 XUL`base::MessagePumpNSApplication::DoRun(base::MessagePump::Delegate*) + 259 frame #26: 0x00000001007595aa XUL`base::MessagePumpCFRunLoopBase::Run(base::MessagePump::Delegate*) + 138 frame #27: 0x000000010073c84d XUL`MessageLoop::Run() + 77 frame #28: 0x000000010268ed01 XUL`XRE_InitChildProcess + 1377 frame #29: 0x0000000100000efb plugin-container`main + 43 frame #30: 0x0000000100000e84 plugin-container`start + 52
and the corresponding content process stack: * thread #1: tid = 0x8ccc, 0x00007fff83ad1716 libsystem_kernel.dylib`__psynch_cvwait + 10, queue = 'com.apple.main-thread', stop reason = signal SIGSTOP * frame #0: 0x00007fff83ad1716 libsystem_kernel.dylib`__psynch_cvwait + 10 frame #1: 0x00007fff8fb2ac3b libsystem_pthread.dylib`_pthread_cond_wait + 727 frame #2: 0x000000010023f169 libnss3.dylib`PR_WaitCondVar + 105 frame #3: 0x00000001007666c5 XUL`mozilla::ipc::MessageChannel::WaitForSyncNotify() + 69 frame #4: 0x00000001007669ec XUL`mozilla::ipc::MessageChannel::Call(IPC::Message*, IPC::Message*) + 540 frame #5: 0x00000001009dad8b XUL`mozilla::plugins::PPluginInstanceParent::CallPBrowserStreamConstructor(mozilla::plugins::PBrowserStreamParent*, nsCString const&, unsigned int const&, unsigned int const&, mozilla::plugins::PStreamNotifyParent*, nsCString const&, nsCString const&, bool const&, short*, unsigned short*) + 1035 frame #6: 0x0000000101c220e5 XUL`mozilla::plugins::PluginInstanceParent::NPP_NewStream(char*, _NPStream*, unsigned char, unsigned short*) + 693 frame #7: 0x0000000101c250c5 XUL`mozilla::plugins::PluginModuleParent::NPP_NewStream(_NPP*, char*, _NPStream*, unsigned char, unsigned short*) + 229 frame #8: 0x0000000101c0773b XUL`nsNPAPIPluginStreamListener::OnStartBinding(nsPluginStreamListenerPeer*) + 331 frame #9: 0x0000000101c0f82f XUL`nsPluginStreamListenerPeer::SetUpStreamListener(nsIRequest*, nsIURI*) + 1327 frame #10: 0x0000000101c0f24a XUL`nsPluginStreamListenerPeer::OnStartRequest(nsIRequest*, nsISupports*) + 1050 frame #11: 0x0000000100fd8abe XUL`nsObjectLoadingContent::OnStartRequest(nsIRequest*, nsISupports*) + 510 frame #12: 0x000000010060d45f XUL`mozilla::net::HttpChannelChild::DoOnStartRequest(nsIRequest*, nsISupports*) + 31 frame #13: 0x000000010060d358 XUL`mozilla::net::HttpChannelChild::OnStartRequest(tag_nsresult const&, mozilla::net::nsHttpResponseHead const&, bool const&, mozilla::net::nsHttpHeaderArray const&, bool const&, bool const&, unsigned int const&, nsCString const&, nsCString const&, mozilla::net::NetAddr const&, mozilla::net::NetAddr const&) + 600 frame #14: 0x000000010060d078 XUL`mozilla::net::HttpChannelChild::RecvOnStartRequest(tag_nsresult const&, mozilla::net::nsHttpResponseHead const&, bool const&, mozilla::net::nsHttpHeaderArray const&, bool const&, bool const&, unsigned int const&, nsCString const&, nsCString const&, mozilla::net::NetAddr const&, mozilla::net::NetAddr const&, short const&) + 616 frame #15: 0x0000000100931cb7 XUL`mozilla::net::PHttpChannelChild::OnMessageReceived(IPC::Message const&) + 6327 frame #16: 0x000000010087745e XUL`mozilla::dom::PContentChild::OnMessageReceived(IPC::Message const&) + 158 frame #17: 0x0000000100767c21 XUL`mozilla::ipc::MessageChannel::DispatchAsyncMessage(IPC::Message const&) + 97 frame #18: 0x00000001007648b5 XUL`mozilla::ipc::MessageChannel::OnMaybeDequeueOne() + 245 frame #19: 0x000000010073cf14 XUL`MessageLoop::DeferOrRunPendingTask(MessageLoop::PendingTask const&) + 132 frame #20: 0x000000010073d22a XUL`MessageLoop::DoWork() + 170 frame #21: 0x0000000100769be0 XUL`mozilla::ipc::DoWorkRunnable::Run() + 48 frame #22: 0x0000000100487048 XUL`nsThread::ProcessNextEvent(bool, bool*) + 984 frame #23: 0x00000001004a6e71 XUL`NS_ProcessPendingEvents(nsIThread*, unsigned int) + 81 frame #24: 0x0000000101e21e17 XUL`nsBaseAppShell::NativeEventCallback() + 119 frame #25: 0x0000000101e69450 XUL`nsAppShell::ProcessGeckoEvents(void*) + 288 frame #26: 0x00007fff84ce95b1 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17 frame #27: 0x00007fff84cdac62 CoreFoundation`__CFRunLoopDoSources0 + 242 frame #28: 0x00007fff84cda3ef CoreFoundation`__CFRunLoopRun + 831 frame #29: 0x00007fff84cd9e75 CoreFoundation`CFRunLoopRunSpecific + 309 frame #30: 0x00007fff8a766a0d HIToolbox`RunCurrentEventLoopInMode + 226 frame #31: 0x00007fff8a7667b7 HIToolbox`ReceiveNextEventCommon + 479 frame #32: 0x00007fff8a7665bc HIToolbox`_BlockUntilNextEventMatchingListInModeWithFilter + 65 frame #33: 0x00007fff8c88324e AppKit`_DPSNextEvent + 1434 frame #34: 0x00007fff8c88289b AppKit`-[NSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 122 frame #35: 0x0000000101e68a96 XUL`-[GeckoNSApplication nextEventMatchingMask:untilDate:inMode:dequeue:] + 86 frame #36: 0x00007fff8c87699c AppKit`-[NSApplication run] + 553 frame #37: 0x0000000101e69b5d XUL`nsAppShell::Run() + 253 frame #38: 0x000000010268f00c XUL`XRE_RunAppShell + 204 frame #39: 0x000000010073c84d XUL`MessageLoop::Run() + 77 frame #40: 0x000000010268ed01 XUL`XRE_InitChildProcess + 1377 frame #41: 0x0000000100000efb plugin-container`main + 43 frame #42: 0x0000000100000e84 plugin-container`start + 52
Brad, if you can get them, all-thread stack traces would probably be more useful. It will be very long, so attach it rather than pasting it in.
(In reply to Steven Michaud from comment #2) > Brad, if you can get them, all-thread stack traces would probably be more > useful. > > It will be very long, so attach it rather than pasting it in. Steve, lldb has been befuddling me. Can you reply with the command(s) you'd like me to run?
Flags: needinfo?(smichaud)
I don't know lldb very well, either. I always refer to the following: http://lldb.llvm.org/lldb-gdb.html As it says, the lldb equivalent of gdb's "thread apply all bt" is "bt all".
Flags: needinfo?(smichaud)
Attached file stacks.txt (deleted) —
Summary: frequent plugin hangs with e10s → frequent plugin hangs on osx with e10s
Assignee: nobody → davidp99
I stopped getting these hangs with Monday's nightly (it could have been an earlier one though, I enabled c2p to avoid them). Lots of other plugin work landing recently, so hard to tell which patch did it. Resolving as WFM.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → WORKSFORME
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: