Closed
Bug 377638
Opened 18 years ago
Closed 18 years ago
firefox hangs in waitpid system call if java_vm is running
Categories
(Firefox :: General, defect)
Tracking
()
RESOLVED
INVALID
People
(Reporter: n0dalus+firefox, Unassigned)
Details
(Keywords: hang, qawanted)
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.10) Gecko/20070223 Fedora/1.5.0.10-1.fc5 Firefox/1.5.0.10
Build Identifier: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.0.10) Gecko/20070223 Fedora/1.5.0.10-1.fc5 Firefox/1.5.0.10
Sometimes firefox hangs, and I strace it, getting:
waitpid(-1, ...
Which means it is waiting for all children to exit. This would all be fine, except when a Java applet is running, java_vm is a child process of Firefox. That means that instead of the waitpid call taking a fraction of a second waiting for some worker program I assume, it just hangs. This could concievably be a problem if any plugin or extension has generated a child program attached to firefox-bin, so I don't think it's a Java's fault.
I thought I could "fix" it by killing java_vm, but that just made firefox crash.
Reproducible: Didn't try
Steps to Reproduce:
I really am not sure what causes it. Java needs to be running.
I will get a stack trace next time the bug occurs, and maybe do some poking.
After it happened again, I did a stack trace. In this case it looks like mplayer-plugin is invlolved somehow, but the stack trace still shows a waitpid being called from within Firefox. I'm not sure if it can be triggered without mplayer-plugin running.
In case anyone happens to stumble into this issue, there is a way of un-hanging firefox. Attach gdb to firefox (gdb -p PID), change to one of the wait(pid) frames (in this case, I do 'frame 1' in gdb), and do 'ret 1', then exit gdb.
(gdb) bt
#0 0x00c5e402 in ?? ()
#1 0x0036cc5c in wait () from /lib/libpthread.so.0
#2 0x01a4a85e in mypopen () from /usr/lib/mozilla/plugins/mplayerplug-in.so
#3 <signal handler called>
#4 0x00c5e402 in ?? ()
#5 0x0036cceb in __waitpid_nocancel () from /lib/libpthread.so.0
#6 0x0762232d in fork_exec_with_pipes (intermediate_child=1,
working_directory=0x0, argv=0x13d8c3b0, envp=0x0, close_descriptors=1,
search_path=1, stdout_to_null=0, stderr_to_null=0, child_inherits_stdin=0,
file_and_argv_zero=0, child_setup=0, user_data=0x0, child_pid=0x0,
standard_input=0x0, standard_output=0x0, standard_error=0x0, error=0x0)
at gspawn.c:1205
#7 0x0762281a in IA__g_spawn_async_with_pipes (working_directory=0x0,
argv=0x13d8c3b0, envp=0x0, flags=G_SPAWN_SEARCH_PATH, child_setup=0,
user_data=0x0, child_pid=0x0, standard_input=0x0, standard_output=0x0,
standard_error=0x0, error=0x0) at gspawn.c:587
#8 0x076228ba in IA__g_spawn_async (working_directory=0x0, argv=0x13d8c3b0,
envp=0x0, flags=G_SPAWN_SEARCH_PATH, child_setup=0, user_data=0x0,
child_pid=0x0, error=0x0) at gspawn.c:105
#9 0x07debfbd in gnome_vfs_mime_application_launch_with_env ()
from /usr/lib/libgnomevfs-2.so.0
#10 0x07dec19c in gnome_vfs_mime_application_launch ()
from /usr/lib/libgnomevfs-2.so.0
---Type <return> to continue, or q <return> to quit---
#11 0x00c1afb8 in nsMIMEInfoUnix::LaunchDefaultWithFile (this=0x1301a008,
aFile=0x13305268) at ./unix/nsMIMEInfoUnix.cpp:181
#12 0x00c147ef in nsMIMEInfoBase::LaunchWithFile (this=0x1301a008,
aFile=0x13305268) at nsMIMEInfoImpl.cpp:298
#13 0x00c101e3 in nsExternalAppHandler::OpenWithApplication (this=0x143cf5c8)
at nsExternalHelperAppService.cpp:2314
#14 0x00c10a97 in nsExternalAppHandler::ExecuteDesiredAction (this=0x143cf5c8)
at nsExternalHelperAppService.cpp:2040
#15 0x00c10bab in nsExternalAppHandler::SetWebProgressListener (
this=0x143cf5c8, aWebProgressListener=0xbe082d8)
at nsExternalHelperAppService.cpp:1415
#16 0x00c0d69c in nsExternalAppHandler::CreateProgressListener (
this=0x143cf5c8) at nsExternalHelperAppService.cpp:2127
#17 0x00c1014d in nsExternalAppHandler::LaunchWithApplication (
this=0x143cf5c8, aApplication=0x0, aRememberThisPreference=0)
at nsExternalHelperAppService.cpp:2429
#18 0x0078e859 in XPTC_InvokeByIndex ()
at ../../../../../../dist/include/xpcom/xptcstubsdef.inc:251
#19 0x00a5cb02 in XPCWrappedNative::CallMethod (ccx=@0xbf98040c,
mode=XPCWrappedNative::CALL_METHOD) at xpcwrappednative.cpp:2156
#20 0x00a616bf in XPC_WN_CallMethod (cx=0x10b27b78, obj=0xd485438, argc=2,
argv=0x1594d1c4, vp=0xbf98052c) at xpcwrappednativejsops.cpp:1451
#21 0x001b6a25 in js_Invoke (cx=0x10b27b78, argc=2, flags=0) at jsinterp.c:1187
---Type <return> to continue, or q <return> to quit---
#22 0x001bd9e3 in js_Interpret (cx=0x10b27b78, pc=0xce7a264 ":",
result=0xbf9807f8) at jsinterp.c:3609
#23 0x001b6a7e in js_Invoke (cx=0x10b27b78, argc=1, flags=2) at jsinterp.c:1207
#24 0x00a59088 in nsXPCWrappedJSClass::CallMethod (this=0x9f9cf18,
wrapper=0x117e8fb8, methodIndex=3, info=0x9d02de0, nativeParams=0xbf980abc)
at xpcwrappedjsclass.cpp:1410
#25 0x00a54edd in nsXPCWrappedJS::CallMethod (this=0x117e8fb8, methodIndex=3,
info=0x9d02de0, params=0xbf980abc) at xpcwrappedjs.cpp:461
#26 0x0078f397 in PrepareAndDispatch (methodIndex=Variable "methodIndex" is not available.
)
at xptcstubs_gcc_x86_unix.cpp:100
#27 0x01344663 in nsEventListenerManager::HandleEventSubType (this=0x12f72e28,
aListenerStruct=0x139c3cc8, aDOMEvent=0x1441f788,
aCurrentTarget=0xe936a90, aSubType=8, aPhaseFlags=7)
at nsEventListenerManager.cpp:1687
#28 0x01345f3f in nsEventListenerManager::HandleEvent (this=0x12f72e28,
aPresContext=0x10487020, aEvent=0xbf980f40, aDOMEvent=0xbf980dfc,
aCurrentTarget=0xe936a90, aFlags=7, aEventStatus=0xbf980f88)
at nsEventListenerManager.cpp:1788
#29 0x013f4017 in nsXULElement::HandleDOMEvent (this=0xec5e128,
aPresContext=0x10487020, aEvent=0xbf980f40, aDOMEvent=0xbf980dfc,
aFlags=7, aEventStatus=0xbf980f88) at nsXULElement.cpp:2153
#30 0x011a581b in PresShell::HandleDOMEventWithTarget (this=0x12592eb8,
aTargetContent=0xec5e128, aEvent=0xbf980f40, aStatus=0xbf980f88)
---Type <return> to continue, or q <return> to quit---
at nsPresShell.cpp:6521
#31 0x012bac0c in nsButtonBoxFrame::DoMouseClick (this=0xf45a6d8,
aEvent=0xbf981138, aTrustEvent=0) at nsButtonBoxFrame.cpp:179
#32 0x012b13a9 in nsButtonBoxFrame::MouseClicked (this=0xf45a6d8,
aPresContext=0x10487020, aEvent=0xbf981138) at nsButtonBoxFrame.h:61
#33 0x012bae66 in nsButtonBoxFrame::HandleEvent (this=0xf45a6d8,
aPresContext=0x10487020, aEvent=0xbf981138, aEventStatus=0xbf9815f0)
at nsButtonBoxFrame.cpp:149
#34 0x011acf65 in PresShell::HandleEventInternal (this=0x12592eb8,
aEvent=0xbf981138, aView=0x0, aFlags=1, aStatus=0xbf9815f0)
at nsPresShell.cpp:6466
#35 0x011ad154 in PresShell::HandleEventWithTarget (this=0x12592eb8,
aEvent=0xbf981138, aFrame=0xf45a6d8, aContent=0xec5e128, aFlags=1,
aStatus=0xbf9815f0) at nsPresShell.cpp:6322
#36 0x013483fa in nsEventStateManager::CheckForAndDispatchClick (
this=0xf90b910, aPresContext=0x10487020, aEvent=0xbf981750,
aStatus=0xbf9815f0) at nsEventStateManager.cpp:3049
#37 0x0134bd54 in nsEventStateManager::PostHandleEvent (this=0xf90b910,
aPresContext=0x10487020, aEvent=0xbf981750, aTargetFrame=0xf45a6d8,
aStatus=0xbf9815f0, aView=0x11812330) at nsEventStateManager.cpp:2027
#38 0x011ad096 in PresShell::HandleEventInternal (this=0x12592eb8,
aEvent=0xbf981750, aView=0x11812330, aFlags=513, aStatus=0xbf9815f0)
at nsPresShell.cpp:6497
---Type <return> to continue, or q <return> to quit---
#39 0x011ad70d in PresShell::HandleEvent (this=0x12592eb8, aView=0x11812330,
aEvent=0xbf981750, aEventStatus=0xbf9815f0, aForceHandle=1,
aHandled=@0xbf9815e8) at nsPresShell.cpp:6261
#40 0x0141618c in nsViewManager::HandleEvent (this=0xa68cb88,
aView=0x11812330, aEvent=0xbf981750, aCaptured=0) at nsViewManager.cpp:2557
#41 0x014180ce in nsViewManager::DispatchEvent (this=0xa68cb88,
aEvent=0xbf981750, aStatus=0xbf9816fc) at nsViewManager.cpp:2246
#42 0x0140e4d7 in HandleEvent (aEvent=0xbf981750) at nsView.cpp:171
#43 0x002a084a in nsCommonWidget::DispatchEvent (this=0xc55b920,
aEvent=0xbf981750, aStatus=@0xbf981798) at nsCommonWidget.cpp:219
#44 0x002991f9 in nsWindow::OnButtonReleaseEvent (this=0xc55b920,
aWidget=0xde05af0, aEvent=0x167c08b0) at nsWindow.cpp:1611
#45 0x0029922e in button_release_event_cb (widget=0xde05af0, event=0x167c08b0)
at nsWindow.cpp:3742
#46 0x0357658e in gtk_marshal_BOOLEAN__VOID ()
from /usr/lib/libgtk-x11-2.0.so.0
#47 0x004fdf8b in IA__g_closure_invoke (closure=0xdac0b30,
return_value=0xbf981920, n_param_values=2, param_values=0xbf9819fc,
invocation_hint=0xbf98190c) at gclosure.c:490
#48 0x0050ee3d in signal_emit_unlocked_R (node=0x9b738e8, detail=0,
instance=0xde05af0, emission_return=0xbf981bbc,
instance_and_params=0xbf9819fc) at gsignal.c:2438
#49 0x0051010f in IA__g_signal_emit_valist (instance=0xde05af0, signal_id=28,
---Type <return> to continue, or q <return> to quit---
detail=0, var_args=Variable "var_args" is not available.
) at gsignal.c:2207
#50 0x00510509 in IA__g_signal_emit (instance=0xde05af0, signal_id=28,
detail=0) at gsignal.c:2241
#51 0x03661858 in gtk_widget_get_default_style ()
from /usr/lib/libgtk-x11-2.0.so.0
#52 0x0356ff63 in gtk_propagate_event () from /usr/lib/libgtk-x11-2.0.so.0
#53 0x035711b7 in gtk_main_do_event () from /usr/lib/libgtk-x11-2.0.so.0
#54 0x02bc985a in gdk_add_client_message_filter ()
from /usr/lib/libgdk-x11-2.0.so.0
#55 0x075f815d in IA__g_main_context_dispatch (context=0x9ac9628)
at gmain.c:1916
#56 0x075fb3ef in g_main_context_iterate (context=0x9ac9628, block=1,
dispatch=1, self=0x9b7f0d0) at gmain.c:2547
#57 0x075fb799 in IA__g_main_loop_run (loop=0x9cdb418) at gmain.c:2751
#58 0x03571634 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
#59 0x0029f2c7 in nsAppShell::Run (this=0x9b93b60) at nsAppShell.cpp:139
#60 0x00685b70 in nsAppStartup::Run (this=0x9b9cbc0) at nsAppStartup.cpp:150
#61 0x080520eb in XRE_main (argc=1, argv=0xbf9823a4, aAppData=0x8068620)
at nsAppRunner.cpp:2380
#62 0x0804d650 in main (argc=0, argv=0x76641c8) at nsBrowserApp.cpp:61
#63 0x005494e4 in __libc_start_main () from /lib/libc.so.6
#64 0x0804d5a1 in _start ()
Updated•18 years ago
|
Bug filed at mplayerplug-in site.
http://sourceforge.net/tracker/index.php?func=detail&aid=1726363&group_id=71239&atid=530623
Closing this, since it's not a bug in Firefox.
Status: UNCONFIRMED → RESOLVED
Closed: 18 years ago
Resolution: --- → INVALID
You need to log in
before you can comment on or make changes to this bug.
Description
•