Description of problem: Firefox 64bit runs in an infinite loop on startup on Fedora 16 Alpha for PPC64 in xulrunner js engine. Version-Release number of selected component (if applicable): [root@power02 ~]# rpm -q firefox xulrunner libX11 glibc kernel firefox-6.0-1.fc16.ppc64 xulrunner-6.0-1.fc16.ppc64 libX11-1.4.3-1.fc16.ppc64 glibc-2.14.90-10.ppc64 glibc-2.14.90-10.ppc kernel-3.1.0-0.rc8.git0.0.fc16.kh.ppc64 How reproducible: Always Steps to Reproduce: 1. Install latest Fedora 16 Alpha for PPC64 from http://ppc.koji.fedoraproject.org/scratch/karsten/iso/ 2. Try to run firefox 3. Watch it loop endlessly Actual results: Firefox doesn't start, no window showing. Expected results: Firefox starts without problems. Additional info: We've tried various other versions as well, including but not limited to the latest firefox-7, firefox-5 and even older ones. Haven't verified RHEL-6 version yet, but will give that a shot sometime soon. gdb output: (gdb) where #0 JSObject::getGlobal (this=0xfff9ec0b480) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsobj.cpp:6552 #1 0x00000fffa549da60 in js_GetClassPrototype (cx=0xfff9eb10c00, scopeobj=<optimized out>, protoKey=<optimized out>, protop=<optimized out>, clasp=<optimized out>) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsobj.cpp:6180 #2 0x00000fffa5411d18 in FindProto (proto=0xfffc0d14da0, parent=0x0, clasp=0xfffa55e0210, cx=0xfff9eb10c00) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsobjinlines.h:1195 #3 NewObject<false, false> (proto=0x0, kind=<optimized out>, parent=0x0, clasp=0xfffa55e0210, cx=0xfff9eb10c00) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsobjinlines.h:1212 #4 NewNonFunction<(js::WithProto::e)0> (parent=0x0, proto=0x0, clasp=0xfffa55e0210, cx=0xfff9eb10c00) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsobjinlines.h:1287 #5 js::NewSlowEmptyArray (cx=0xfff9eb10c00) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsarray.cpp:3157 #6 0x00000fffa5504fd8 in createResult (matchItemCount=<optimized out>, buf=0xfff9e843028, input=0xfff9e772420, cx=0xfff9eb10c00) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsregexpinlines.h:286 #7 executeInternal (rval=0xfff9ed00290, test=false, lastIndex=read_sleb128: Corrupted DWARF expression. ) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsregexpinlines.h:406 #8 execute (rval=0xfff9ed00290, test=false, lastIndex=read_sleb128: Corrupted DWARF expression. ) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsregexpinlines.h:162 #9 ExecuteRegExp (cx=0xfff9eb10c00, execType=<optimized out>, argc=<optimized out>, vp=0xfff9ed00290) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsregexp.cpp:697 #10 0x00000fffa547cfdc in CallJSNative (vp=<optimized out>, argc=<optimized out>, native=<optimized out>, cx=<optimized out>) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jscntxtinlines.h:277 #11 js::Interpret (cx=0xfff9eb10c00, entryFrame=0xfff9ed00170, inlineCallCount=1, interpMode=<optimized out>) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsinterp.cpp:4685 #12 0x00000fffa5481390 in js::RunScript (cx=0xfff9eb10c00, script=<optimized out>, fp=<optimized out>) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsinterp.cpp:613 #13 0x00000fffa54817d8 in js::Invoke (cx=0xfff9eb10c00, argsRef=<optimized out>, option=<optimized out>) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsinterp.cpp:694 #14 0x00000fffa5482370 in js::ExternalInvoke (cx=0xfff9eb10c00, thisv=..., fval=..., argc=<optimized out>, argv=0xfffc0d15a68, rval=0xfffc0d158b8) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsinterp.cpp:816 #15 0x00000fffa53fb53c in JS_CallFunctionValue (cx=0xfff9eb10c00, obj=<optimized out>, fval=18445495026869045048, argc=<optimized out>, argv=<optimized out>, rval=<optimized out>) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsapi.cpp:5080 #16 0x00000fffa47d39d4 in nsXPCWrappedJSClass::CallMethod (this=0xfffa05c5800, wrapper=<optimized out>, methodIndex=<optimized out>, info=0xfffa0ea9c58, nativeParams=0xfffc0d15c88) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/xpconnect/src/xpcwrappedjsclass.cpp:1662 #17 0x00000fffa47cda00 in nsXPCWrappedJS::CallMethod (this=0xfffa2d25880, methodIndex=<optimized out>, info=0xfffa0ea9c58, params=0xfffc0d15c88) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/xpconnect/src/xpcwrappedjs.cpp:586 #18 0x00000fffa4c3c31c in PrepareAndDispatch (self=0xfff9eb224a0, methodIndex=<optimized out>, args=<optimized out>, gprData=0xfffc0d15e48, fprData=0xfffc0d15de0) at /usr/src/debug/xulrunner-6.0/mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcstubs_ppc64_linux.cpp:164 #19 0x00000fffa4c3c570 in .SharedStub () from /usr/lib64/xulrunner-2/libxul.so #20 0x00000fffa4bf4120 in nsObserverList::NotifyObservers (this=<optimized out>, aSubject=0x0, aTopic=0xfff9eb2ca80 "browser-ui-startup-complete", someData=0xfff9ec00030) at /usr/src/debug/xulrunner-6.0/mozilla-release/xpcom/ds/nsObserverList.cpp:130 #21 0x00000fffa4bf4664 in NotifyObservers (someData=0xfff9ec00030, aTopic=0xfff9eb2ca80 "browser-ui-startup-complete", aSubject=0x0, this=0xfffa56a7600) at /usr/src/debug/xulrunner-6.0/mozilla-release/xpcom/ds/nsObserverService.cpp:182 #22 nsObserverService::NotifyObservers (this=0xfffa56a7600, aSubject=0x0, aTopic=0xfff9eb2ca80 "browser-ui-startup-complete", someData=0xfff9ec00030) at /usr/src/debug/xulrunner-6.0/mozilla-release/xpcom/ds/nsObserverService.cpp:171 #23 0x00000fffa4c3c4e0 in .NS_InvokeByIndex_P () from /usr/lib64/xulrunner-2/libxul.so #24 0x00000fffa47d9a20 in Invoke (this=0xfffc0d16200) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/xpconnect/src/xpcwrappednative.cpp:3141 #25 Call (this=0xfffc0d16200) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/xpconnect/src/xpcwrappednative.cpp:2407 #26 XPCWrappedNative::CallMethod (ccx=<optimized out>, mode=<optimized out>) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/xpconnect/src/xpcwrappednative.cpp:2371 #27 0x00000fffa47e0144 in XPC_WN_CallMethod (cx=0xfff9eb10c00, argc=<optimized out>, vp=0xfff9ed00120) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/xpconnect/src/xpcwrappednativejsops.cpp:1610 #28 0x00000fffa547cfdc in CallJSNative (vp=<optimized out>, argc=<optimized out>, native=<optimized out>, cx=<optimized out>) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jscntxtinlines.h:277 #29 js::Interpret (cx=0xfff9eb10c00, entryFrame=0xfff9ed00060, inlineCallCount=1, interpMode=<optimized out>) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsinterp.cpp:4685 #30 0x00000fffa5481390 in js::RunScript (cx=0xfff9eb10c00, script=<optimized out>, fp=<optimized out>) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsinterp.cpp:613 #31 0x00000fffa54817d8 in js::Invoke (cx=0xfff9eb10c00, argsRef=<optimized out>, option=<optimized out>) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsinterp.cpp:694 #32 0x00000fffa5482370 in js::ExternalInvoke (cx=0xfff9eb10c00, thisv=..., fval=..., argc=<optimized out>, argv=0xfffc0d17248, rval=0xfffc0d17098) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsinterp.cpp:816 #33 0x00000fffa53fb53c in JS_CallFunctionValue (cx=0xfff9eb10c00, obj=<optimized out>, fval=18445495026869172992, argc=<optimized out>, argv=<optimized out>, rval=<optimized out>) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/jsapi.cpp:5080 #34 0x00000fffa47d39d4 in nsXPCWrappedJSClass::CallMethod (this=0xfffa05c5800, wrapper=<optimized out>, methodIndex=<optimized out>, info=0xfffa0ea9c58, nativeParams=0xfffc0d17468) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/xpconnect/src/xpcwrappedjsclass.cpp:1662 #35 0x00000fffa47cda00 in nsXPCWrappedJS::CallMethod (this=0xfffa2d26f00, methodIndex=<optimized out>, info=0xfffa0ea9c58, params=0xfffc0d17468) at /usr/src/debug/xulrunner-6.0/mozilla-release/js/src/xpconnect/src/xpcwrappedjs.cpp:586 #36 0x00000fffa4c3c31c in PrepareAndDispatch (self=0xfff9eb23380, methodIndex=<optimized out>, args=<optimized out>, gprData=0xfffc0d17628, fprData=0xfffc0d175c0) at /usr/src/debug/xulrunner-6.0/mozilla-release/xpcom/reflect/xptcall/src/md/unix/xptcstubs_ppc64_linux.cpp:164 #37 0x00000fffa4c3c570 in .SharedStub () from /usr/lib64/xulrunner-2/libxul.so #38 0x00000fffa4bf4120 in nsObserverList::NotifyObservers (this=<optimized out>, aSubject=0x0, aTopic=0xfffa4d617be "final-ui-startup", someData=0x0) at /usr/src/debug/xulrunner-6.0/mozilla-release/xpcom/ds/nsObserverList.cpp:130 #39 0x00000fffa4bf4664 in NotifyObservers (someData=0x0, aTopic=0xfffa4d617be "final-ui-startup", aSubject=0x0, this=0xfffa56a7600) at /usr/src/debug/xulrunner-6.0/mozilla-release/xpcom/ds/nsObserverService.cpp:182 #40 nsObserverService::NotifyObservers (this=0xfffa56a7600, aSubject=0x0, aTopic=0xfffa4d617be "final-ui-startup", someData=0x0) at /usr/src/debug/xulrunner-6.0/mozilla-release/xpcom/ds/nsObserverService.cpp:171 #41 0x00000fffa3eeec1c in XRE_main (argc=<optimized out>, argv=<optimized out>, aAppData=<optimized out>) at /usr/src/debug/xulrunner-6.0/mozilla-release/toolkit/xre/nsAppRunner.cpp:3642 #42 0x0000000010002010 in main (argc=1, argv=0xfffc0d1c578) at /usr/src/debug/xulrunner-6.0/mozilla-release/xulrunner/stub/nsXULStub.cpp:496 strace output appended as it's a bit too long to be inserted here directly
Created attachment 529860 [details] Firefox strace
A few updates with further testing and thanks to some ideas from Martin Stransky: When building the latest RHEL-6 Firefox-8beta with the associated xulrunner-8beta i'm getting a bit further: I can now successfully start firefox when i use the -safe-mode option. I get the safe-mode dialog, activate everything in there and then continue and it works like a charm. I've also had one gdb session where i managed to get it to work without the -safe-mode option, here's what happened: 1) Started firefox in gdb using "gdb firefox" 2) Ran it till it started looping 3) Interrupted it and investigated where the heck it was looping 4) Added and removed a few breakpoints here and there to see where the topmost stackframe was which started looping (aka, where the breakpoint wouldn't be reached anymore) 5) GDB barfed a bit about something, but i told it to continue 6) I then suddenly got a message like: "Lost DBus connection" 7) It then suddenly worked I hope this gives a bit more information as to where the problem might be coming from. Thanks & regards, Phil
Tested the latest rawhide version and that works like a charm. We'll be using that for our Fedora 16 release then for Power. Closing this out as RAWHIDE. Thanks again Martin for all the help! Regards, Phil