deadlock in sd cppunit test

Michael Stahl mstahl at redhat.com
Mon Aug 6 07:11:01 PDT 2012


hi Andrzej,

i got this deadlock from a unit test during a build with MSVC today.

also, the Windows Firewall warned about cppunittester.cxx wanting
network access, i wonder if that could be avoided, or if it's actually a
problem...

-------------- next part --------------
thread 2152:

 	ntdll.dll!76ff013d() 	
 	[Frames below may be incorrect and/or missing, no symbols loaded for ntdll.dll]	
 	ntdll.dll!76ff013d() 	
 	KernelBase.dll!75840bdd() 	
 	user32.dll!756e0b69() 	
>	sal3.dll!osl_waitCondition(void * Condition=0x00000244, const TimeValue * pTimeout=0x00000000)  Line 99 + 0x10 bytes	C
 	fwilo.dll!framework::Gate::wait(const TimeValue * pTimeOut=0x00000000)  Line 220 + 0xc bytes	C++
 	fwilo.dll!framework::TransactionManager::setWorkingMode(framework::EWorkingMode eMode=E_BEFORECLOSE)  Line 152	C++
 	fwklo.dll!framework::Desktop::dispose()  Line 1207	C++
 	cppuhelper3MSC.dll!cppu::OFactoryComponentHelper::dispose()  Line 528 + 0x6 bytes	C++
 	cppuhelper3MSC.dll!cppu::OComponentHelper::release()  Line 100 + 0x9 bytes	C++
 	cppuhelper3MSC.dll!`anonymous namespace'::Implementation::~Implementation()  + 0x49 bytes	C++
 	cppuhelper3MSC.dll!`anonymous namespace'::Implementation::`scalar deleting destructor'()  + 0xb bytes	C++
 	cppuhelper3MSC.dll!boost::checked_delete<`anonymous namespace'::Implementation>(`anonymous-namespace'::Implementation * x=0x00826200)  Line 35	C++
 	cppuhelper3MSC.dll!boost::detail::sp_counted_impl_p<`anonymous namespace'::Implementation>::dispose()  Line 78 + 0x8 bytes	C++
 	cppuhelper3MSC.dll!boost::detail::sp_counted_base::release()  Line 103	C++
 	cppuhelper3MSC.dll!boost::shared_ptr<`anonymous namespace'::Implementation>::~shared_ptr<`anonymous namespace'::Implementation>()  + 0x1f bytes	C++
 	cppuhelper3MSC.dll!boost::shared_ptr<`anonymous namespace'::Implementation>::`scalar deleting destructor'()  + 0xb bytes	C++
 	cppuhelper3MSC.dll!std::_Destroy_range<std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > >(boost::shared_ptr<`anonymous namespace'::Implementation> * _First=0x00827d20, boost::shared_ptr<`anonymous namespace'::Implementation> * _Last=0x00827d28, std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > & _Al={...}, std::_Nonscalar_ptr_iterator_tag __formal={...})  Line 234 + 0x9 bytes	C++
 	cppuhelper3MSC.dll!std::_Destroy_range<std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > >(boost::shared_ptr<`anonymous namespace'::Implementation> * _First=0x00827d20, boost::shared_ptr<`anonymous namespace'::Implementation> * _Last=0x00827d28, std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > & _Al={...})  Line 225 + 0x11 bytes	C++
 	cppuhelper3MSC.dll!std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > >::_Destroy(boost::shared_ptr<`anonymous namespace'::Implementation> * _First=0x00827d20, boost::shared_ptr<`anonymous namespace'::Implementation> * _Last=0x00827d28)  Line 1119 + 0xf bytes	C++
 	cppuhelper3MSC.dll!std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > >::_Tidy()  Line 1132	C++
 	cppuhelper3MSC.dll!std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > >::~vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > >()  Line 560	C++
 	cppuhelper3MSC.dll!std::pair<rtl::OUString const ,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > > >::~pair<rtl::OUString const ,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > > >()  + 0x1d bytes	C++
 	cppuhelper3MSC.dll!std::_Tree_nod<std::_Tmap_traits<rtl::OUString,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > >,std::less<rtl::OUString>,std::allocator<std::pair<rtl::OUString const ,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > > > >,0> >::_Node::~_Node()  + 0x1b bytes	C++
 	cppuhelper3MSC.dll!std::_Tree_nod<std::_Tmap_traits<rtl::OUString,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > >,std::less<rtl::OUString>,std::allocator<std::pair<rtl::OUString const ,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > > > >,0> >::_Node::`scalar deleting destructor'()  + 0xb bytes	C++
 	cppuhelper3MSC.dll!std::_Tree<std::_Tmap_traits<rtl::OUString,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > >,std::less<rtl::OUString>,std::allocator<std::pair<rtl::OUString const ,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > > > >,0> >::_Erase(std::_Tree_nod<std::_Tmap_traits<rtl::OUString,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > >,std::less<rtl::OUString>,std::allocator<std::pair<rtl::OUString const ,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > > > >,0> >::_Node * _Rootnode=0x00828060)  Line 1172	C++
 	cppuhelper3MSC.dll!std::_Tree<std::_Tmap_traits<rtl::OUString,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > >,std::less<rtl::OUString>,std::allocator<std::pair<rtl::OUString const ,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > > > >,0> >::_Erase(std::_Tree_nod<std::_Tmap_traits<rtl::OUString,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > >,std::less<rtl::OUString>,std::allocator<std::pair<rtl::OUString const ,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > > > >,0> >::_Node * _Rootnode=0x00828648)  Line 1170	C++
 	cppuhelper3MSC.dll!std::_Tree<std::_Tmap_traits<rtl::OUString,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > >,std::less<rtl::OUString>,std::allocator<std::pair<rtl::OUString const ,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > > > >,0> >::_Erase(std::_Tree_nod<std::_Tmap_traits<rtl::OUString,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > >,std::less<rtl::OUString>,std::allocator<std::pair<rtl::OUString const ,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > > > >,0> >::_Node * _Rootnode=0x008dd158)  Line 1170	C++
 	cppuhelper3MSC.dll!std::_Tree<std::_Tmap_traits<rtl::OUString,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > >,std::less<rtl::OUString>,std::allocator<std::pair<rtl::OUString const ,std::vector<boost::shared_ptr<`anonymous namespace'::Implementation>,std::allocator<boost::shared_ptr<`anonymous namespace'::Implementation> > > > >,0> >::clear()  Line 972	C++
 	cppuhelper3MSC.dll!`anonymous namespace'::ServiceManager::disposing()  Line 1360	C++
 	cppuhelper3MSC.dll!cppu::WeakComponentImplHelperBase::dispose()  Line 277 + 0x6 bytes	C++
 	cppuhelper3MSC.dll!cppu::try_dispose(const com::sun::star::uno::Reference<com::sun::star::uno::XInterface> & xInstance={...})  Line 284 + 0x6 bytes	C++
 	cppuhelper3MSC.dll!cppu::ComponentContext::disposing()  Line 748	C++
 	cppuhelper3MSC.dll!cppu::WeakComponentImplHelperBase::dispose()  Line 277 + 0x6 bytes	C++
 	unobootstrapprotector.dll!`anonymous namespace'::Prot::~Prot()  Line 94 + 0x17 bytes	C++
 	unobootstrapprotector.dll!`anonymous namespace'::Prot::`scalar deleting destructor'()  + 0xb bytes	C++
 	cppunit_dll.dll!CppUnit::ProtectorChain::pop()  + 0x17 bytes	C++
 	cppunittester.exe!`anonymous namespace'::ProtectedFixtureFunctor::run()  Line 159 + 0x8 bytes	C++
 	cppunittester.exe!sal_main()  Line 248	C++
 	cppunittester.exe!main(int argc=15, char * * argv=0x008d31b8)  Line 172 + 0x17 bytes	C++
 	cppunittester.exe!__tmainCRTStartup()  Line 586 + 0x17 bytes	C
 	kernel32.dll!7523339a() 	
 	ntdll.dll!77009ef2() 	
 	ntdll.dll!77009ec5() 	

thread 2292:

 	ntdll.dll!76fef8b1() 	
 	[Frames below may be incorrect and/or missing, no symbols loaded for ntdll.dll]	
 	ntdll.dll!76fef8b1() 	
 	ntdll.dll!77008df4() 	
 	ntdll.dll!77008cd8() 	
>	sal3.dll!osl_acquireMutex(_oslMutexImpl * Mutex=0x0377ec20)  Line 81	C
 	vcllo.dll!vcl::SolarMutexObject::acquire()  Line 44 + 0xc bytes	C++
 	vcllo.dll!SalYieldMutex::acquire()  Line 138	C++
 	fwilo.dll!framework::LockHelper::acquireReadAccess()  Line 263 + 0x8 bytes	C++
 	fwklo.dll!framework::ReadGuard::lock()  Line 114	C++
 	fwklo.dll!framework::ReadGuard::ReadGuard(framework::IRWLock & rLock={...})  Line 80	C++
 	fwklo.dll!framework::FrameContainer::getActive()  Line 322 + 0x17 bytes	C++
 	fwklo.dll!framework::Desktop::getActiveFrame()  Line 873 + 0xe bytes	C++
 	sdlo.dll!sd::RemoteServer::listenThread()  Line 48 + 0xd bytes	C++
 	sdlo.dll!sd::RemoteServer::execute()  Line 117	C++
 	salhelper3MSC.dll!salhelper::Thread::run()  Line 65535	C++
 	salhelper3MSC.dll!threadFunc(void * param=0x037864b0)  Line 197	C++
 	sal3.dll!oslWorkerWrapperFunction(void * pData=0x037805c0)  Line 60 + 0x9 bytes	C
 	msvcr90.dll!74603433() 	
 	msvcr90.dll!746034c7() 	
 	kernel32.dll!7523339a() 	
 	ntdll.dll!77009ef2() 	
 	ntdll.dll!77009ec5() 	

thread 2556:

 	ntdll.dll!76ff013d() 	
 	[Frames below may be incorrect and/or missing, no symbols loaded for ntdll.dll]	
 	ntdll.dll!76ff013d() 	
 	KernelBase.dll!75840bdd() 	
 	user32.dll!756e0b69() 	
>	sal3.dll!osl_waitCondition(void * Condition=0x00000278, const TimeValue * pTimeout=0x00000000)  Line 99 + 0x10 bytes	C
 	sdlo.dll!sd::Transmitter::execute()  Line 30 + 0xc bytes	C++
 	salhelper3MSC.dll!salhelper::Thread::run()  Line 65535	C++
 	salhelper3MSC.dll!threadFunc(void * param=0x0379c7d0)  Line 197	C++
 	sal3.dll!oslWorkerWrapperFunction(void * pData=0x0377eca0)  Line 60 + 0x9 bytes	C
 	msvcr90.dll!74603433() 	
 	msvcr90.dll!746034c7() 	
 	kernel32.dll!7523339a() 	
 	ntdll.dll!77009ef2() 	
 	ntdll.dll!77009ec5() 	


More information about the LibreOffice mailing list