GNU gdb 6.8 Copyright (C) 2008 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "i686-pc-linux-gnu"... (gdb) run /usr/bin/firefox Starting program: /bin/sh /usr/bin/firefox Executing new program: /usr/lib/mozilla-firefox/firefox [Thread debugging using libthread_db enabled] [New Thread 0xb7d6c6e0 (LWP 17269)] [New Thread 0xb54ffb70 (LWP 17813)] [New Thread 0xb4cfeb70 (LWP 17814)] [New Thread 0xb41ffb70 (LWP 17815)] [New Thread 0xb36ffb70 (LWP 17816)] [Thread 0xb36ffb70 (LWP 17816) exited] Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0xb7d6c6e0 (LWP 17269)] 0xb662c559 in sqlite3_randomness () from /usr/lib/libsqlite3.so.0 (gdb) bt #0 0xb662c559 in sqlite3_randomness () from /usr/lib/libsqlite3.so.0 #1 0xb662cb5c in writeJournalHdr () from /usr/lib/libsqlite3.so.0 #2 0xb662cd1a in pager_open_journal () from /usr/lib/libsqlite3.so.0 #3 0xb662d065 in pager_write () from /usr/lib/libsqlite3.so.0 #4 0xb662fb00 in sqlite3PagerWrite () from /usr/lib/libsqlite3.so.0 #5 0xb662fb5f in newDatabase () from /usr/lib/libsqlite3.so.0 #6 0xb662fea7 in sqlite3BtreeBeginTrans () from /usr/lib/libsqlite3.so.0 #7 0xb6663f22 in sqlite3VdbeExec () from /usr/lib/libsqlite3.so.0 #8 0xb665400d in sqlite3_step () from /usr/lib/libsqlite3.so.0 #9 0xb665494a in sqlite3_exec () from /usr/lib/libsqlite3.so.0 #10 0xb7140eb3 in mozStorageConnection::ExecuteSimpleSQL (this=0xb3805040, aSQLStatement=@0xbff9b598) at mozStorageConnection.cpp:372 #11 0xb7157b56 in nsNavHistory::InitTempTables (this=0xb42f3000) at nsNavHistory.cpp:1073 #12 0xb71594a2 in nsNavHistory::InitAdditionalDBItems (this=0xb42f3000) at nsNavHistory.cpp:978 #13 0xb7161551 in nsNavHistory::Init (this=0xb42f3000) at nsNavHistory.cpp:510 #14 0xb7161c38 in nsNavHistory::GetSingleton () at nsNavHistory.cpp:414 #15 0xb7190685 in nsNavHistoryConstructor (aOuter=0x0, aIID=@0xb744df34, aResult=0xbff9b7ac) at nsPlacesModule.cpp:18 #16 0xb727d18e in nsGenericFactory::CreateInstance (this=0xb3802130, aOuter=0x0, aIID=@0xb744df34, aResult=0xbff9b7ac) at nsGenericFactory.cpp:80 #17 0xb72b368d in nsComponentManagerImpl::CreateInstanceByContractID (this=0xb7a4f220, aContractID=0xb744d69c "@mozilla.org/browser/nav-history-service;1", aDelegate=0x0, aIID=@0xb744df34, aResult=0xbff9b7ac) at nsComponentManager.cpp:1687 #18 0xb72b2bf4 in nsComponentManagerImpl::GetServiceByContractID (this=0xb7a4f220, aContractID=0xb744d69c "@mozilla.org/browser/nav-history-service;1", aIID=@0xb744df34, result=0xbff9b840) at nsComponentManager.cpp:2253 #19 0xb7276829 in CallGetService (aContractID=0xb744d69c "@mozilla.org/browser/nav-history-service;1", aIID=@0xb744df34, aResult=0xbff9b840) at nsComponentManagerUtils.cpp:94 #20 0xb72768ab in nsGetServiceByContractID::operator() (this=, aIID=@0x4, aInstancePtr=0x1) at nsComponentManagerUtils.cpp:278 #21 0xb7275b39 in nsCOMPtr_base::assign_from_gs_contractid (this=0xbff9b88c, gs={mContractID = 0xb744d69c "@mozilla.org/browser/nav-history-service;1"}, iid=@0x4) at nsCOMPtr.cpp:132 #22 0xb718df56 in nsNavBookmarks::Init (this=0xb423ab40) at ../../../../dist/include/xpcom/nsCOMPtr.h:604 #23 0xb7190586 in nsNavBookmarksConstructor (aOuter=0x0, aIID=@0xb7aeb9f8, aResult=0xbff9b9bc) at nsPlacesModule.cpp:23 #24 0xb727d18e in nsGenericFactory::CreateInstance (this=0xb3802120, aOuter=0x0, aIID=@0xb7aeb9f8, aResult=0xbff9b9bc) at nsGenericFactory.cpp:80 #25 0xb72b3767 in nsComponentManagerImpl::CreateInstance (this=0xb7a4f220, aClass=@0xb4297f84, aDelegate=0x0, aIID=@0xb7aeb9f8, aResult=0xbff9b9bc) at nsComponentManager.cpp:1601 #26 0xb72b5dcc in nsComponentManagerImpl::GetService (this=0xb7a4f220, aClass=@0xb4297f84, aIID=@0xb7aeb9f8, result=0xbff9ba30) at nsComponentManager.cpp:1903 ---Type to continue, or q to quit--- #27 0xb6843e79 in nsJSCID::GetService (this=0xb4297f70, _retval=0xbff9bbcc) at xpcjsid.cpp:891 #28 0xb72c81df in NS_InvokeByIndex_P () from /usr/lib/xulrunner-1.9.1/libxul.so #29 0xb6855b1b in XPCWrappedNative::CallMethod (ccx=@0xbff9bd28, mode=XPCWrappedNative::CALL_METHOD) at xpcwrappednative.cpp:2454 #30 0xb685ecd2 in XPC_WN_CallMethod (cx=0xb7997c00, obj=0xb38030a0, argc=1, argv=0xb7a4f644, vp=0xbff9be68) at xpcwrappednativejsops.cpp:1590 #31 0xb78431c0 in js_Invoke (cx=0xb7997c00, argc=1, vp=0xb7a4f63c, flags=2) at jsinterp.cpp:1386 #32 0xb7833ffa in js_Interpret (cx=0xb7997c00) at jsinterp.cpp:5179 #33 0xb78434f6 in js_Invoke (cx=0xb7997c00, argc=2, vp=0xb7a4f5a0, flags=0) at jsinterp.cpp:1394 #34 0xb6853c7f in nsXPCWrappedJSClass::CallMethod (this=0xb55ea460, wrapper=0xb42fd480, methodIndex=3, info=0xb55d2300, nativeParams=0xbff9c434) at xpcwrappedjsclass.cpp:1697 #35 0xb684cf33 in nsXPCWrappedJS::CallMethod (this=0x4, methodIndex=1, info=0xb55d2300, params=0xbff9c434) at xpcwrappedjs.cpp:561 #36 0xb72c8d9d in PrepareAndDispatch (methodIndex=, self=, args=) at xptcstubs_gcc_x86_unix.cpp:95 #37 0xb72b368d in nsComponentManagerImpl::CreateInstanceByContractID (this=0xb7a4f220, aContractID=0xb4298660 "@mozilla.org/places/sync;1", aDelegate=0x0, aIID=@0xb73419d8, aResult=0xbff9c588) at nsComponentManager.cpp:1687 #38 0xb72b2bf4 in nsComponentManagerImpl::GetServiceByContractID (this=0xb7a4f220, aContractID=0xb4298660 "@mozilla.org/places/sync;1", aIID=@0xb73419d8, result=0xbff9c60c) at nsComponentManager.cpp:2253 #39 0xb7276829 in CallGetService (aContractID=0xb4298660 "@mozilla.org/places/sync;1", aIID=@0xb73419d8, aResult=0xbff9c60c) at nsComponentManagerUtils.cpp:94 #40 0xb7276862 in nsGetServiceByContractIDWithError::operator() (this=0xbff9c6d4, aIID=@0x4, aInstancePtr=0x1) at nsComponentManagerUtils.cpp:288 #41 0xb7275af5 in nsCOMPtr_base::assign_from_gs_contractid_with_error (this=0xbff9c6f8, gs=@0xb6675ee0, iid=@0x4) at nsCOMPtr.cpp:141 #42 0xb72ad6e0 in NS_CreateServicesFromCategory (category=0xb7344344 "profile-after-change", origin=0x0, observerTopic=0xb7344344 "profile-after-change") at ../../dist/include/xpcom/nsCOMPtr.h:948 #43 0xb682181c in nsXREDirProvider::DoStartup (this=0xbff9c9f4) at nsXREDirProvider.cpp:810 #44 0xb681f0c3 in XRE_main (argc=1, argv=0xbffa0e74, aAppData=0xb7a2dac0) at nsAppRunner.cpp:3146 #45 0x08049c1c in ?? () #46 0xb7daca66 in __libc_start_main (main=0x80499b0 , argc=1, ubp_av=0xbffa0e74, init=0x805a980, fini=0x805a970, rtld_fini=0xb8054a60 <_dl_fini>, stack_end=0xbffa0e6c) at libc-start.c:220 #47 0x080498b1 in ?? () (gdb) disass Dump of assembler code for function sqlite3_randomness: 0xb662c460 : push %ebp 0xb662c461 : mov $0x5,%eax 0xb662c466 : mov %esp,%ebp 0xb662c468 : push %edi 0xb662c469 : push %esi 0xb662c46a : push %ebx 0xb662c46b : call 0xb660cf37 <__i686.get_pc_thunk.bx> 0xb662c470 : add $0x48b84,%ebx 0xb662c476 : sub $0x15c,%esp 0xb662c47c : call 0xb660d610 0xb662c481 : mov %eax,-0x130(%ebp) 0xb662c487 : mov %eax,(%esp) 0xb662c48a : call 0xb660ce24 0xb662c48f : mov 0x8(%ebp),%edx 0xb662c492 : test %edx,%edx 0xb662c494 : je 0xb662c6f2 0xb662c49a : lea 0xdec(%ebx),%esi 0xb662c4a0 : movdqa -0x1d94(%ebx),%xmm4 0xb662c4a8 : lea 0x100(%esi),%eax 0xb662c4ae : movl $0x0,-0x128(%ebp) 0xb662c4b8 : mov %eax,-0x12c(%ebp) 0xb662c4be : jmp 0xb662c53e 0xb662c4c0 : movzbl 0xded(%ebx),%eax 0xb662c4c7 : add $0x1,%eax 0xb662c4ca : mov %al,0xded(%ebx) 0xb662c4d0 : movzbl %al,%eax 0xb662c4d3 : movzbl 0xdef(%ebx,%eax,1),%edx 0xb662c4db : mov %eax,-0x120(%ebp) ---Type to continue, or q to quit--- 0xb662c4e1 : mov -0x120(%ebp),%edi 0xb662c4e7 : mov %edx,%ecx 0xb662c4e9 : add 0xdee(%ebx),%cl 0xb662c4ef : mov %cl,0xdee(%ebx) 0xb662c4f5 : movzbl %cl,%ecx 0xb662c4f8 : movzbl 0xdef(%ebx,%ecx,1),%eax 0xb662c500 : mov %al,0xdef(%ebx,%edi,1) 0xb662c507 : mov %dl,0xdef(%ebx,%ecx,1) 0xb662c50e : mov 0xc(%ebp),%ecx 0xb662c511 : add 0xdef(%ebx,%edi,1),%dl 0xb662c518 : movzbl %dl,%edx 0xb662c51b : movzbl 0xdef(%ebx,%edx,1),%eax 0xb662c523 : mov -0x128(%ebp),%edx 0xb662c529 : mov %al,(%ecx,%edx,1) 0xb662c52c : add $0x1,%edx 0xb662c52f : cmp %edx,0x8(%ebp) 0xb662c532 : mov %edx,-0x128(%ebp) 0xb662c538 : je 0xb662c6f2 0xb662c53e : cmpb $0x0,0xdec(%ebx) 0xb662c545 : jne 0xb662c4c0 0xb662c54b : movb $0x0,0xdee(%ebx) 0xb662c552 : movb $0x0,0xded(%ebx) 0xb662c559 : movdqa %xmm4,-0x148(%ebp) 0xb662c561 : movl $0x0,(%esp) 0xb662c568 : call 0xb660cb54 0xb662c56d : lea -0x118(%ebp),%edx 0xb662c573 : mov %edx,-0x120(%ebp) 0xb662c579 : mov %edx,0x8(%esp) 0xb662c57d : movl $0x100,0x4(%esp) ---Type to continue, or q to quit--- 0xb662c585 : mov %eax,(%esp) 0xb662c588 : call *0x38(%eax) 0xb662c58b : xor %eax,%eax 0xb662c58d : movdqa -0x148(%ebp),%xmm4 0xb662c595 : lea 0x0(%esi),%esi 0xb662c598 : mov %al,0x3(%esi,%eax,1) 0xb662c59c : add $0x1,%eax 0xb662c59f : cmp $0xd,%eax 0xb662c5a2 : jne 0xb662c598 0xb662c5a4 : lea -0x1da4(%ebx),%ecx 0xb662c5aa : xor %al,%al 0xb662c5ac : movdqa -0x1d84(%ebx),%xmm3 0xb662c5b4 : movdqa (%ecx),%xmm0 0xb662c5b8 : movdqa %xmm0,%xmm5 0xb662c5bc : paddd %xmm3,%xmm5 0xb662c5c0 : movdqa %xmm0,%xmm6 0xb662c5c4 : movdqa %xmm5,%xmm1 0xb662c5c8 : paddd %xmm3,%xmm1 0xb662c5cc : punpckhwd %xmm5,%xmm6 0xb662c5d0 : movdqa %xmm0,%xmm2 0xb662c5d4 : punpcklwd %xmm5,%xmm2 0xb662c5d8 : movdqa %xmm2,%xmm7 0xb662c5dc : punpcklwd %xmm6,%xmm2 0xb662c5e0 : punpckhwd %xmm6,%xmm7 0xb662c5e4 : movdqa %xmm1,%xmm6 0xb662c5e8 : paddd %xmm3,%xmm6 0xb662c5ec : punpcklwd %xmm7,%xmm2 0xb662c5f0 : movdqa %xmm1,%xmm5 0xb662c5f4 : punpcklwd %xmm6,%xmm1 ---Type to continue, or q to quit--- 0xb662c5f8 : punpckhwd %xmm6,%xmm5 0xb662c5fc : movdqa %xmm1,%xmm6 0xb662c600 : punpcklwd %xmm5,%xmm1 0xb662c604 : punpckhwd %xmm5,%xmm6 0xb662c608 : punpcklwd %xmm6,%xmm1 0xb662c60c : movdqa %xmm2,%xmm6 0xb662c610 : punpcklbw %xmm1,%xmm2 0xb662c614 : punpckhbw %xmm1,%xmm6 0xb662c618 : movdqa %xmm2,%xmm5 0xb662c61c : punpcklbw %xmm6,%xmm2 0xb662c620 : punpckhbw %xmm6,%xmm5 0xb662c624 : movdqa %xmm2,%xmm1 0xb662c628 : punpcklbw %xmm5,%xmm2 0xb662c62c : punpckhbw %xmm5,%xmm1 0xb662c630 : punpcklbw %xmm1,%xmm2 0xb662c634 : movdqa %xmm2,0x10(%esi,%eax,1) 0xb662c63a : add $0x10,%eax 0xb662c63d : cmp $0xf0,%eax 0xb662c642 : paddd %xmm4,%xmm0 0xb662c646 : jne 0xb662c5b8 0xb662c64c : mov -0x12c(%ebp),%edx 0xb662c652 : mov $0xfd,%al 0xb662c654 : lea 0x0(%esi,%eiz,1),%esi 0xb662c658 : mov %al,(%edx) 0xb662c65a : add $0x1,%eax 0xb662c65d : add $0x1,%edx 0xb662c660 : cmp $0x100,%eax 0xb662c665 : jne 0xb662c658 0xb662c667 : movzbl 0xdee(%ebx),%edx ---Type to continue, or q to quit--- 0xb662c66e : xor %ax,%ax 0xb662c671 : mov %esi,-0x124(%ebp) 0xb662c677 : mov %dl,-0x149(%ebp) 0xb662c67d : lea 0x0(%esi),%esi 0xb662c680 : mov -0x124(%ebp),%ecx 0xb662c686 : mov -0x120(%ebp),%edx 0xb662c68c : add %eax,%ecx 0xb662c68e : movzbl 0x3(%ecx),%edi 0xb662c692 : movzbl (%edx,%eax,1),%edx 0xb662c696 : add $0x1,%eax 0xb662c699 : lea (%edx,%edi,1),%esi 0xb662c69c : mov %esi,%edx 0xb662c69e : add %dl,-0x149(%ebp) 0xb662c6a4 : cmp $0x100,%eax 0xb662c6a9 : movzbl -0x149(%ebp),%esi 0xb662c6b0 : movzbl 0xdef(%ebx,%esi,1),%edx 0xb662c6b8 : mov %dl,-0x119(%ebp) 0xb662c6be : mov %edi,%edx 0xb662c6c0 : mov %dl,0xdef(%ebx,%esi,1) 0xb662c6c7 : movzbl -0x119(%ebp),%edx 0xb662c6ce : mov %dl,0x3(%ecx) 0xb662c6d1 : jne 0xb662c680 0xb662c6d3 : movzbl -0x149(%ebp),%edx 0xb662c6da : mov -0x124(%ebp),%esi 0xb662c6e0 : movb $0x1,0xdec(%ebx) 0xb662c6e7 : mov %dl,0xdee(%ebx) 0xb662c6ed : jmp 0xb662c4c0 0xb662c6f2 : mov -0x130(%ebp),%edi 0xb662c6f8 : mov %edi,(%esp) ---Type to continue, or q to quit--- 0xb662c6fb : call 0xb660cbd4 0xb662c700 : add $0x15c,%esp 0xb662c706 : pop %ebx 0xb662c707 : pop %esi 0xb662c708 : pop %edi 0xb662c709 : pop %ebp 0xb662c70a : ret End of assembler dump. (gdb) info registers eax 0xb6675ee0 -1234739488 ecx 0x1 1 edx 0x4 4 ebx 0xb6674ff4 -1234743308 esp 0xbff9ab44 0xbff9ab44 ebp 0xbff9acac 0xbff9acac esi 0xb6675de0 -1234739744 edi 0xb42cd808 -1272129528 eip 0xb662c559 0xb662c559 eflags 0x10246 [ PF ZF IF RF ] cs 0x73 115 ss 0x7b 123 ds 0x7b 123 es 0x7b 123 fs 0x0 0 gs 0x33 51