Comment 58 for bug 417009

Revision history for this message
Michael Casadevall (mcasadevall) wrote :

As requested by ARM toolchain engineers, I got a stacktrace of just before the crash in question (when the PC is stopped just before the __cxa_throw)

Breakpoint 5, gcc3::raiseException (pUnoExc=0xbed9652c, pUno2Cpp=0x1742c4)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/bridges/source/cpp_uno/gcc3_linux_arm/except.cxx:284
284 __cxa_throw( pCppExc, rtti, deleteException );
(gdb) bt
#0 gcc3::raiseException (pUnoExc=0xbed9652c, pUno2Cpp=0x1742c4)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/bridges/source/cpp_uno/gcc3_linux_arm/except.cxx:284
#1 0x4419cad2 in cpp2uno_call (pThis=0x174980, pMemberTypeDescr=0x1749a0, pReturnTypeRef=0x83b28, nParams=1,
    pParams=0x174748, pCallStack=0xbed96648, pRegisterReturn=0xbed96628)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/bridges/source/cpp_uno/gcc3_linux_arm/cpp2uno.cxx:211
#2 0x4419cff2 in cpp_mediate (nFunctionIndex=3, nVtableOffset=0, pCallStack=0xbed96648, pRegisterReturn=0xbed96628)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/bridges/source/cpp_uno/gcc3_linux_arm/cpp2uno.cxx:388
#3 0x4419d12c in cpp_vtable_call (pFunctionAndOffset=0x4408d024, pCallStack=0xbed96648)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/bridges/source/cpp_uno/gcc3_linux_arm/cpp2uno.cxx:417
#4 0x441a202c in privateSnippetExecutor () from /home/mcasadevall/tmp/OOO/ure/lib/libgcc3_uno.so
#5 0x40626f54 in cppu::throwException (exc=...)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/cppuhelper/source/exc_thrower.cxx:242
#6 0x41204656 in ucbhelper::cancelCommandExecution (eError=<value optimized out>, rArgs=<value optimized out>,
    xEnv=<value optimized out>, rMessage=..., xContext=...)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/ucbhelper/source/provider/cancelcommandexecution.cxx:127
#7 0x46d6ea24 in fileaccess::throw_handler (errorCode=<value optimized out>, minorCode=<value optimized out>, xEnv=...,
    aUncPath=<value optimized out>, pContent=0x16dbc0, isHandled=true)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/ucb/source/ucp/file/filglob.cxx:396
#8 0x46d61a38 in fileaccess::TaskManager::endTask (this=0x1543a4, CommandId=2, aUncPath=<value optimized out>,
    pContent=<value optimized out>) at /home/mcasadevall/src/ooo-build/build/ooo320-m12/ucb/source/ucp/file/filtask.cxx:105
#9 0x46d54736 in fileaccess::BaseContent::endTask (this=0x4408d01c, CommandId=-1093048640)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/ucb/source/ucp/file/bc.cxx:1312
#10 0x46d57774 in fileaccess::BaseContent::execute (this=0x16dbc0, aCommand=..., CommandId=<value optimized out>,
    Environment=...) at /home/mcasadevall/src/ooo-build/build/ooo320-m12/ucb/source/ucp/file/bc.cxx:446
#11 0x411e3486 in ucbhelper::Content_Impl::executeCommand (this=<value optimized out>, rCommand=<value optimized out>)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/ucbhelper/source/client/content.cxx:1809
#12 0x411e3d92 in ucbhelper::Content::executeCommand (this=0x4408d01c, rCommandName=<value optimized out>,
    rCommandArgument=...) at /home/mcasadevall/src/ooo-build/build/ooo320-m12/ucbhelper/source/client/content.cxx:832
#13 0x4127b25a in _UCBOpenContentSync (xLockBytes=<value optimized out>, xContent=<value optimized out>,
    rArg=<value optimized out>, xSink=<value optimized out>, xInteract=..., xProgress=..., xHandler=...)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/unotools/source/ucbhelper/ucblockbytes.cxx:1223
#14 UCBOpenContentSync (xLockBytes=<value optimized out>, xContent=<value optimized out>, rArg=<value optimized out>,
    xSink=<value optimized out>, xInteract=..., xProgress=..., xHandler=...)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/unotools/source/ucbhelper/ucblockbytes.cxx:973
#15 0x4127c4ac in utl::UcbLockBytes::CreateLockBytes (xContent=<value optimized out>, rProps=<value optimized out>,
    eOpenMode=<value optimized out>, xInteractionHandler=..., pHandler=0x0)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/unotools/source/ucbhelper/ucblockbytes.cxx:1748
#16 0x4128318a in lcl_CreateStream (rFileName=<value optimized out>, eOpenMode=<value optimized out>,
    xInteractionHandler=<value optimized out>, pHandler=<value optimized out>, bEnsureFileExists=1 '\001')
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/unotools/source/ucbhelper/ucbstreamhelper.cxx:132
#17 0x412833bc in utl::UcbStreamHelper::CreateStream (rFileName=..., eOpenMode=26304, pHandler=0x401ce134,
    bForceSynchron=<value optimized out>)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/unotools/source/ucbhelper/ucbstreamhelper.cxx:162
#18 0x408359ca in SfxApplication::GetDisabledSlotList_Impl (this=<value optimized out>)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/sfx2/source/appl/appmisc.cxx:234
#19 0x40920398 in SfxDispatcher::Construct_Impl (this=0x16e338, pParent=0x0)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/sfx2/source/control/dispatch.cxx:387
#20 0x40920534 in SfxDispatcher (this=0x16e338, pParent=0x0)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/sfx2/source/control/dispatch.cxx:408
#21 0x40834aa0 in SfxApplication::Initialize_Impl (this=0x15f6d0)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/sfx2/source/appl/appinit.cxx:289
#22 0x4082e6b2 in SfxApplication::GetOrCreate ()
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/sfx2/source/appl/app.cxx:321
#23 0x409472ec in SfxGetpApp (this=0x15f758, xSMGR=...) at ../../inc/sfx2/app.hxx:336
#24 SfxGlobalEvents_Impl (this=0x15f758, xSMGR=...)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/sfx2/source/notify/eventsupplier.cxx:628
#25 0x4094742c in SfxGlobalEvents_Impl::impl_createInstance (xServiceManager=...)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/sfx2/source/notify/eventsupplier.cxx:616
#26 0x40643d24 in cppu::OSingleFactoryHelper::createInstanceEveryTime (this=0x15fa64, xContext=<value optimized out>)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/cppuhelper/source/factory.cxx:186
#27 0x40642554 in cppu::OSingleFactoryHelper::createInstanceWithContext (this=0xbed966c0, xContext=...)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/cppuhelper/source/factory.cxx:218
#28 0x40642c12 in cppu::OFactoryComponentHelper::createInstanceWithContext (this=0x15fa30, xContext=...)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/cppuhelper/source/factory.cxx:490
#29 0x4064454a in cppu::ORegistryFactoryHelper::createInstanceEveryTime (this=0x15f3c8, xContext=...)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/cppuhelper/source/factory.cxx:758
#30 0x40642554 in cppu::OSingleFactoryHelper::createInstanceWithContext (this=0xbed966c0, xContext=...)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/cppuhelper/source/factory.cxx:218
#31 0x40642c5c in cppu::OFactoryComponentHelper::createInstanceWithContext (this=0x15f3c8, xContext=...)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/cppuhelper/source/factory.cxx:494
#32 0x441d042c in stoc_smgr::OServiceManager::createInstanceWithContext (this=<value optimized out>,
    rServiceSpecifier=<value optimized out>, xContext=<value optimized out>)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/stoc/source/servicemanager/servicemanager.cxx:1253
#33 0x441cd5e4 in stoc_smgr::OServiceManager::createInstance (this=0xbed966c0, rServiceSpecifier=...)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/stoc/source/servicemanager/servicemanager.cxx:1363
#34 0x401e8c50 in desktop::Desktop::Main (this=0xbed972ec)
    at /home/mcasadevall/src/ooo-build/build/ooo320-m12/desktop/source/app/app.cxx:1417
#35 0x413c8f56 in ImplSVMain () at /home/mcasadevall/src/ooo-build/build/ooo320-m12/vcl/source/app/svmain.cxx:186
#36 0x413c907e in SVMain () at /home/mcasadevall/src/ooo-build/build/ooo320-m12/vcl/source/app/svmain.cxx:227
#37 0x40203ea6 in soffice_main () at /home/mcasadevall/src/ooo-build/build/ooo320-m12/desktop/source/app/sofficemain.cxx:52
#38 0x00008e94 in sal_main (argc=<value optimized out>, argv=<value optimized out>) at main.c:38
#39 main (argc=<value optimized out>, argv=<value optimized out>) at main.c:37

As far as I can tell, if we're dying due to a phae2 exception, theres nothing clear here that should or shouldn't be unwindable. Its also possible that __cxa_throw can't find deleteException for whatever reason; I think debugging into the __cxa_throw is the next logical step, but I have no clear idea on how to do so, or properly read the stack frames as they are unwound.