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.
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::raiseExce ption (pUnoExc= 0xbed9652c, pUno2Cpp=0x1742c4) ll/src/ ooo-build/ build/ooo320- m12/bridges/ source/ cpp_uno/ gcc3_linux_ arm/except. cxx:284 ption (pUnoExc= 0xbed9652c, pUno2Cpp=0x1742c4) ll/src/ ooo-build/ build/ooo320- m12/bridges/ source/ cpp_uno/ gcc3_linux_ arm/except. cxx:284 r=0x1749a0, pReturnTypeRef= 0x83b28, nParams=1, 0x174748, pCallStack= 0xbed96648, pRegisterReturn =0xbed96628) ll/src/ ooo-build/ build/ooo320- m12/bridges/ source/ cpp_uno/ gcc3_linux_ arm/cpp2uno. cxx:211 0xbed96648, pRegisterReturn =0xbed96628) ll/src/ ooo-build/ build/ooo320- m12/bridges/ source/ cpp_uno/ gcc3_linux_ arm/cpp2uno. cxx:388 fset=0x4408d024 , pCallStack= 0xbed96648) ll/src/ ooo-build/ build/ooo320- m12/bridges/ source/ cpp_uno/ gcc3_linux_ arm/cpp2uno. cxx:417 xecutor () from /home/mcasadeva ll/tmp/ OOO/ure/ lib/libgcc3_ uno.so ption (exc=...) ll/src/ ooo-build/ build/ooo320- m12/cppuhelper/ source/ exc_thrower. cxx:242 :cancelCommandE xecution (eError=<value optimized out>, rArgs=<value optimized out>, ll/src/ ooo-build/ build/ooo320- m12/ucbhelper/ source/ provider/ cancelcommandex ecution. cxx:127 :throw_ handler (errorCode=<value optimized out>, minorCode=<value optimized out>, xEnv=..., ll/src/ ooo-build/ build/ooo320- m12/ucb/ source/ ucp/file/ filglob. cxx:396 :TaskManager: :endTask (this=0x1543a4, CommandId=2, aUncPath=<value optimized out>, ll/src/ ooo-build/ build/ooo320- m12/ucb/ source/ ucp/file/ filtask. cxx:105 :BaseContent: :endTask (this=0x4408d01c, CommandId= -1093048640) ll/src/ ooo-build/ build/ooo320- m12/ucb/ source/ ucp/file/ bc.cxx: 1312 :BaseContent: :execute (this=0x16dbc0, aCommand=..., CommandId=<value optimized out>, =...) at /home/mcasadeva ll/src/ ooo-build/ build/ooo320- m12/ucb/ source/ ucp/file/ bc.cxx: 446 :Content_ Impl::executeCo mmand (this=<value optimized out>, rCommand=<value optimized out>) ll/src/ ooo-build/ build/ooo320- m12/ucbhelper/ source/ client/ content. cxx:1809 :Content: :executeCommand (this=0x4408d01c, rCommandName=<value optimized out>, ument=. ..) at /home/mcasadeva ll/src/ ooo-build/ build/ooo320- m12/ucbhelper/ source/ client/ content. cxx:832 ll/src/ ooo-build/ build/ooo320- m12/unotools/ source/ ucbhelper/ ucblockbytes. cxx:1223 ll/src/ ooo-build/ build/ooo320- m12/unotools/ source/ ucbhelper/ ucblockbytes. cxx:973 es::CreateLockB ytes (xContent=<value optimized out>, rProps=<value optimized out>, <value optimized out>, xInteractionHan dler=.. ., pHandler=0x0) ll/src/ ooo-build/ build/ooo320- m12/unotools/ source/ ucbhelper/ ucblockbytes. cxx:1748 nHandler= <value optimized out>, pHandler=<value optimized out>, bEnsureFileExists=1 '\001') ll/src/ ooo-build/ build/ooo320- m12/unotools/ source/ ucbhelper/ ucbstreamhelper .cxx:132 elper:: CreateStream (rFileName=..., eOpenMode=26304, pHandler= 0x401ce134, ron=<value optimized out>) ll/src/ ooo-build/ build/ooo320- m12/unotools/ source/ ucbhelper/ ucbstreamhelper .cxx:162 :GetDisabledSlo tList_Impl (this=<value optimized out>) ll/src/ ooo-build/ build/ooo320- m12/sfx2/ source/ appl/appmisc. cxx:234 :Construct_ Impl (this=0x16e338, pParent=0x0) ll/src/ ooo-build/ build/ooo320- m12/sfx2/ source/ control/ dispatch. cxx:387 ll/src/ ooo-build/ build/ooo320- m12/sfx2/ source/ control/ dispatch. cxx:408 :Initialize_ Impl (this=0x15f6d0) ll/src/ ooo-build/ build/ooo320- m12/sfx2/ source/ appl/appinit. cxx:289 :GetOrCreate () ll/src/ ooo-build/ build/ooo320- m12/sfx2/ source/ appl/app. cxx:321 sfx2/app. hxx:336 _Impl (this=0x15f758, xSMGR=...) ll/src/ ooo-build/ build/ooo320- m12/sfx2/ source/ notify/ eventsupplier. cxx:628 _Impl:: impl_createInst ance (xServiceManage r=...) ll/src/ ooo-build/ build/ooo320- m12/sfx2/ source/ notify/ eventsupplier. cxx:616 ctoryHelper: :createInstance EveryTime (this=0x15fa64, xContext=<value optimized out>) ll/src/ ooo-build/ build/ooo320- m12/cppuhelper/ source/ factory. cxx:186 ctoryHelper: :createInstance WithContext (this=0xbed966c0, xContext=...) ll/src/ ooo-build/ build/ooo320- m12/cppuhelper/ source/ factory. cxx:218 omponentHelper: :createInstance WithContext (this=0x15fa30, xContext=...) ll/src/ ooo-build/ build/ooo320- m12/cppuhelper/ source/ factory. cxx:490 FactoryHelper: :createInstance EveryTime (this=0x15f3c8, xContext=...) ll/src/ ooo-build/ build/ooo320- m12/cppuhelper/ source/ factory. cxx:758 ctoryHelper: :createInstance WithContext (this=0xbed966c0, xContext=...) ll/src/ ooo-build/ build/ooo320- m12/cppuhelper/ source/ factory. cxx:218 omponentHelper: :createInstance WithContext (this=0x15f3c8, xContext=...) ll/src/ ooo-build/ build/ooo320- m12/cppuhelper/ source/ factory. cxx:494 :OServiceManage r::createInstan ceWithContext (this=<value optimized out>, cifier= <value optimized out>, xContext=<value optimized out>) ll/src/ ooo-build/ build/ooo320- m12/stoc/ source/ servicemanager/ servicemanager. cxx:1253 :OServiceManage r::createInstan ce (this=0xbed966c0, rServiceSpecifi er=...) ll/src/ ooo-build/ build/ooo320- m12/stoc/ source/ servicemanager/ servicemanager. cxx:1363 :Desktop: :Main (this=0xbed972ec) ll/src/ ooo-build/ build/ooo320- m12/desktop/ source/ app/app. cxx:1417 ll/src/ ooo-build/ build/ooo320- m12/vcl/ source/ app/svmain. cxx:186 ll/src/ ooo-build/ build/ooo320- m12/vcl/ source/ app/svmain. cxx:227 ll/src/ ooo-build/ build/ooo320- m12/desktop/ source/ app/sofficemain .cxx:52
at /home/mcasadeva
284 __cxa_throw( pCppExc, rtti, deleteException );
(gdb) bt
#0 gcc3::raiseExce
at /home/mcasadeva
#1 0x4419cad2 in cpp2uno_call (pThis=0x174980, pMemberTypeDesc
pParams=
at /home/mcasadeva
#2 0x4419cff2 in cpp_mediate (nFunctionIndex=3, nVtableOffset=0, pCallStack=
at /home/mcasadeva
#3 0x4419d12c in cpp_vtable_call (pFunctionAndOf
at /home/mcasadeva
#4 0x441a202c in privateSnippetE
#5 0x40626f54 in cppu::throwExce
at /home/mcasadeva
#6 0x41204656 in ucbhelper:
xEnv=<value optimized out>, rMessage=..., xContext=...)
at /home/mcasadeva
#7 0x46d6ea24 in fileaccess:
aUncPath=<value optimized out>, pContent=0x16dbc0, isHandled=true)
at /home/mcasadeva
#8 0x46d61a38 in fileaccess:
pContent=<value optimized out>) at /home/mcasadeva
#9 0x46d54736 in fileaccess:
at /home/mcasadeva
#10 0x46d57774 in fileaccess:
Environment
#11 0x411e3486 in ucbhelper:
at /home/mcasadeva
#12 0x411e3d92 in ucbhelper:
rCommandArg
#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/mcasadeva
#14 UCBOpenContentSync (xLockBytes=<value optimized out>, xContent=<value optimized out>, rArg=<value optimized out>,
xSink=<value optimized out>, xInteract=..., xProgress=..., xHandler=...)
at /home/mcasadeva
#15 0x4127c4ac in utl::UcbLockByt
eOpenMode=
at /home/mcasadeva
#16 0x4128318a in lcl_CreateStream (rFileName=<value optimized out>, eOpenMode=<value optimized out>,
xInteractio
at /home/mcasadeva
#17 0x412833bc in utl::UcbStreamH
bForceSynch
at /home/mcasadeva
#18 0x408359ca in SfxApplication:
at /home/mcasadeva
#19 0x40920398 in SfxDispatcher:
at /home/mcasadeva
#20 0x40920534 in SfxDispatcher (this=0x16e338, pParent=0x0)
at /home/mcasadeva
#21 0x40834aa0 in SfxApplication:
at /home/mcasadeva
#22 0x4082e6b2 in SfxApplication:
at /home/mcasadeva
#23 0x409472ec in SfxGetpApp (this=0x15f758, xSMGR=...) at ../../inc/
#24 SfxGlobalEvents
at /home/mcasadeva
#25 0x4094742c in SfxGlobalEvents
at /home/mcasadeva
#26 0x40643d24 in cppu::OSingleFa
at /home/mcasadeva
#27 0x40642554 in cppu::OSingleFa
at /home/mcasadeva
#28 0x40642c12 in cppu::OFactoryC
at /home/mcasadeva
#29 0x4064454a in cppu::ORegistry
at /home/mcasadeva
#30 0x40642554 in cppu::OSingleFa
at /home/mcasadeva
#31 0x40642c5c in cppu::OFactoryC
at /home/mcasadeva
#32 0x441d042c in stoc_smgr:
rServiceSpe
at /home/mcasadeva
#33 0x441cd5e4 in stoc_smgr:
at /home/mcasadeva
#34 0x401e8c50 in desktop:
at /home/mcasadeva
#35 0x413c8f56 in ImplSVMain () at /home/mcasadeva
#36 0x413c907e in SVMain () at /home/mcasadeva
#37 0x40203ea6 in soffice_main () at /home/mcasadeva
#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.