[Libreoffice-bugs] [Bug 114025] New: deadlock from lock dialog: Singleton vs. SolarMutex in framework
bugzilla-daemon at bugs.documentfoundation.org
bugzilla-daemon at bugs.documentfoundation.org
Fri Nov 24 13:30:09 UTC 2017
https://bugs.documentfoundation.org/show_bug.cgi?id=114025
Bug ID: 114025
Summary: deadlock from lock dialog: Singleton vs. SolarMutex in
framework
Product: LibreOffice
Version: 5.4.2.2 release
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: normal
Priority: medium
Component: LibreOffice
Assignee: libreoffice-bugs at lists.freedesktop.org
Reporter: michael.meeks at collabora.com
I append an annotated stack trace that describes the issue.
Lets discuss the more general issue somewhere linked from here (if there is
one) - I'd like to get this closed =)
(gdb) thread apply all backtrace
---Type <return> to continue, or q <return> to quit---
Thread 2 (Thread 0x7fc1dd47b700 (LWP 970)):
#0 0x00007fc1ffa0242d in __lll_lock_wait () from /lib64/libpthread.so.0
#1 0x00007fc1ff9fdde6 in _L_lock_870 () from /lib64/libpthread.so.0
#2 0x00007fc1ff9fdcdf in pthread_mutex_lock () from /lib64/libpthread.so.0
#3 0x00007fc201036680 in osl_acquireMutex (pMutex=<optimized out>)
at /opt/collaboraoffice5.3/debugsource/sal/osl/unx/mutex.cxx:99
#4 0x00007fc2043a578d in SalYieldMutex::acquire() ()
from /opt/collaboraoffice5.3/program/libmergedlo.so
#5 0x00007fc202b62e71 in framework::HandlerCache::HandlerCache() ()
from /opt/collaboraoffice5.3/program/libmergedlo.so
#6 0x00007fc202b9ecfb in
framework::DispatchProvider::DispatchProvider(com::sun::star::uno:---Type
<return> to continue, or q <return> to quit---
:Reference<com::sun::star::uno::XComponentContext> const&,
com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&) () from
/opt/collaboraoffice5.3/program/libmergedlo.so
#7 0x00007fc202c345dc in framework::Desktop::constructorInit() ()
from /opt/collaboraoffice5.3/program/libmergedlo.so
#8 0x00007fc202c3635b in
com_sun_star_comp_framework_Desktop_get_implementation ()
from /opt/collaboraoffice5.3/program/libmergedlo.so
extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface * SAL_CALL
com_sun_star_comp_framework_Desktop_get_implementation(
css::uno::XComponentContext *context,
css::uno::Sequence<css::uno::Any> const &)
{
return cppu::acquire(Singleton::get(context).instance.get());
}
#9 0x00007fc1fb04cc0f in
cppuhelper::ServiceManager::Data::Implementation::createInstance
(this=0x2539e80, context=...,
singletonRequest=singletonRequest at entry=false)
at
/opt/collaboraoffice5.3/debugsource/cppuhelper/source/servicemanager.cxx:693
#10 0x00007fc1fb050512 in cppuhelper::ServiceManager::createInstanceWithContext
(
this=<optimized out>, aServiceSpecifier=..., Context=...)
---Type <return> to continue, or q <return> to quit---
at
/opt/collaboraoffice5.3/debugsource/cppuhelper/source/servicemanager.cxx:1050
#11 0x00007fc1e7bd03cb in x11::SelectionManager::run(void*) ()
from /opt/collaboraoffice5.3/program/libvclplug_genlo.so
#12 0x00007fc20103cc87 in osl_thread_start_Impl (pData=0x33fb5d0)
at /opt/collaboraoffice5.3/debugsource/sal/osl/unx/thread.cxx:240
#13 0x00007fc1ff9fbe25 in start_thread () from /lib64/libpthread.so.0
#14 0x00007fc200d3234d in clone () from /lib64/libc.so.6
...
Thread 1 (Thread 0x7fc2062dca40 (LWP 961)):
#0 0x00007fc200d2c7f9 in syscall () from /lib64/libc.so.6
#1 0x00007fc1f965eeab in __cxa_guard_acquire () from /lib64/libstdc++.so.6
---Type <return> to continue, or q <return> to quit---
#2 0x00007fc202c3631c in
com_sun_star_comp_framework_Desktop_get_implementation ()
from /opt/collaboraoffice5.3/program/libmergedlo.so
framework/source/services/desktop.cxx:
extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface * SAL_CALL
com_sun_star_comp_framework_Desktop_get_implementation(
css::uno::XComponentContext *context,
css::uno::Sequence<css::uno::Any> const &)
{
return cppu::acquire(Singleton::get(context).instance.get());
}
#3 0x00007fc1fb04cc0f in
cppuhelper::ServiceManager::Data::Implementation::createInstance
(this=0x2539e80, context=...,
singletonRequest=singletonRequest at entry=false)
at
/opt/collaboraoffice5.3/debugsource/cppuhelper/source/servicemanager.cxx:693
#4 0x00007fc1fb050512 in cppuhelper::ServiceManager::createInstanceWithContext
(
this=<optimized out>, aServiceSpecifier=..., Context=...)
at
/opt/collaboraoffice5.3/debugsource/cppuhelper/source/servicemanager.cxx:1050
#5 0x00007fc202fd1359 in SfxApplication::Initialize_Impl() ()
from /opt/collaboraoffice5.3/program/libmergedlo.so
#6 0x00007fc202fc8d24 in SfxApplication::GetOrCreate() ()
---Type <return> to continue, or q <return> to quit---
from /opt/collaboraoffice5.3/program/libmergedlo.so
#7 0x00007fc203254232 in
com_sun_star_comp_sfx2_GlobalEventBroadcaster_get_implementation
() from /opt/collaboraoffice5.3/program/libmergedlo.so
#8 0x00007fc1fb04cc0f in
cppuhelper::ServiceManager::Data::Implementation::createInstance
(this=0x2560c40, context=..., singletonRequest=singletonRequest at entry=true)
at
/opt/collaboraoffice5.3/debugsource/cppuhelper/source/servicemanager.cxx:693
#9 0x00007fc1fb04dc21 in (anonymous
namespace)::SingletonFactory::createInstanceWithContext (this=0x7fc2061da268,
Context=...)
at
/opt/collaboraoffice5.3/debugsource/cppuhelper/source/servicemanager.cxx:535
#10 0x00007fc1faff63ed in cppu::ComponentContext::lookupMap (
this=this at entry=0x7fc2061d5848, rName=...)
---Type <return> to continue, or q <return> to quit---
at
/opt/collaboraoffice5.3/debugsource/cppuhelper/source/component_context.cxx:330
#11 0x00007fc1faff8090 in cppu::ComponentContext::getValueByName
(this=0x7fc2061d5848,
rName=...)
at
/opt/collaboraoffice5.3/debugsource/cppuhelper/source/component_context.cxx:409
#12 0x00007fc204050ee9 in Dialog::Execute() ()
from /opt/collaboraoffice5.3/program/libmergedlo.so
+ must be this guy:
+ Holding the SolarMutex at this point.
css::uno::Reference< css::uno::XComponentContext > xContext(
comphelper::getProcessComponentContext() );
css::uno::Reference<css::frame::XGlobalEventBroadcaster>
xEventBroadcaster(css::frame::theGlobalEventBroadcaster::get(xContext),
css::uno::UNO_QUERY_THROW);
css::document::DocumentEvent aObject;
aObject.EventName = "DialogExecute";
xEventBroadcaster->documentEventOccured(aObject);
#13 0x00007fc204071c2a in MessageDialog::Execute() ()
from /opt/collaboraoffice5.3/program/libmergedlo.so
#14 0x00007fc203313ddf in desktop::Lockfile_execWarning(desktop::Lockfile*) ()
desktop/source/app/lockfile2.cxx
+ bool Lockfile_execWarning( Lockfile const * that )
from /opt/collaboraoffice5.3/program/libmergedlo.so
#15 0x00007fc2028d91f9 in desktop::Lockfile::check(bool
(*)(desktop::Lockfile*)) ()
---Type <return> to continue, or q <return> to quit---
from /opt/collaboraoffice5.3/program/libmergedlo.so
#16 0x00007fc2032fcfb1 in desktop::Desktop::Main() ()
from /opt/collaboraoffice5.3/program/libmergedlo.so
#17 0x00007fc2042f6626 in ImplSVMain() ()
from /opt/collaboraoffice5.3/program/libmergedlo.so
#18 0x00007fc2042f6712 in SVMain() () from
/opt/collaboraoffice5.3/program/libmergedlo.so
#19 0x00007fc20331e37a in soffice_main ()
from /opt/collaboraoffice5.3/program/libmergedlo.so
#20 0x000000000040075b in sal_main ()
at /opt/collaboraoffice5.3/debugsource/desktop/source/app/main.c:48
#21 main (argc=<optimized out>, argv=<optimized out>)
---Type <return> to continue, or q <return> to quit---
at /opt/collaboraoffice5.3/debugsource/desktop/source/app/main.c:47
(gdb)
--
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/libreoffice-bugs/attachments/20171124/3646673b/attachment-0001.html>
More information about the Libreoffice-bugs
mailing list