[Libreoffice-commits] core.git: unotools/source
Stephan Bergmann (via logerrit)
logerrit at kemper.freedesktop.org
Mon Mar 1 14:45:51 UTC 2021
unotools/source/ucbhelper/ucblockbytes.cxx | 3 +++
1 file changed, 3 insertions(+)
New commits:
commit 2977dc5846b557bb9c7dc33ac92921f7b4096763
Author: Stephan Bergmann <sbergman at redhat.com>
AuthorDate: Mon Mar 1 12:11:19 2021 +0100
Commit: Stephan Bergmann <sbergman at redhat.com>
CommitDate: Mon Mar 1 15:45:12 2021 +0100
At least warn about the missing osl::Thread::join with a TODO comment
(as is already done in other such cases, too). This apparently randomly hit
e.g. <https://ci.libreoffice.org/job/gerrit_linux_clang_dbgutil/81371/> now,
> Program terminated with signal 11, Segmentation fault.
>
> Thread 2 (Thread 0x2b2d9ec16600 (LWP 23008)):
[...]
> #72 0x00002b2d9edff4d2 in configmgr::Components::~Components() (this=0x2b2d9ef26e58 <configmgr::Components::getSingleton(com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&)::singleton>) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/configmgr/source/components.cxx:641
> #73 0x00002b2d854cdce9 in __run_exit_handlers () at /lib64/libc.so.6
> #74 0x00002b2d854cdd37 in () at /lib64/libc.so.6
> #75 0x00002b2d854b655c in __libc_start_main () at /lib64/libc.so.6
> #76 0x00000000004007a9 in _start ()
>
> Thread 1 (Thread 0x2b2db04a5700 (LWP 24092)):
> #0 0x00002b2d8672a36b in pthread_rwlock_wrlock () at /lib64/libpthread.so.0
> #1 0x00002b2db00d97d5 in CRYPTO_THREAD_write_lock (lock=0x0) at crypto/threads_pthread.c:78
> #2 0x00002b2db00a9b69 in RAND_get_rand_method () at crypto/rand/rand_lib.c:847
> #3 0x00002b2db00aa30d in RAND_status () at crypto/rand/rand_lib.c:956
> #4 0x00002b2daff92b9d in seed_ssl_prng () at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/workdir/UnpackedTarball/neon/src/ne_socket.c:265
> #5 0x00002b2daff929c9 in ne_sock_connect_ssl (sock=0x29845a0, ctx=0x34e6150, userdata=0x1e224e0) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/workdir/UnpackedTarball/neon/src/ne_socket.c:1800
> #6 0x00002b2daff9ac02 in ne__negotiate_ssl (sess=0x1e224e0) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/workdir/UnpackedTarball/neon/src/ne_openssl.c:717
> #7 0x00002b2daff8de68 in open_connection (sess=0x1e224e0) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/workdir/UnpackedTarball/neon/src/ne_request.c:1716
> #8 0x00002b2daff8cfd6 in send_request (req=0x351d930, request=0x2ea4460) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/workdir/UnpackedTarball/neon/src/ne_request.c:1021
> #9 0x00002b2daff8c698 in ne_begin_request (req=0x351d930) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/workdir/UnpackedTarball/neon/src/ne_request.c:1255
> #10 0x00002b2daff8db25 in ne_request_dispatch (req=0x351d930) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/workdir/UnpackedTarball/neon/src/ne_request.c:1466
> #11 0x00002b2dafe4921b in webdav_ucp::NeonSession::OPTIONS(rtl::OUString const&, webdav_ucp::DAVOptions&, webdav_ucp::DAVRequestEnvironment const&) (this=0x34e6390, inPath="/api/Icons.json", rOptions=..., rEnv=...) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/ucb/source/ucp/webdav-neon/NeonSession.cxx:879
> #12 0x00002b2dafe11bbc in webdav_ucp::DAVResourceAccess::OPTIONS(webdav_ucp::DAVOptions&, com::sun::star::uno::Reference<com::sun::star::ucb::XCommandEnvironment> const&) (this=0x34e7880, rOptions=..., xEnv=uno::Reference to (utl::(anonymous namespace)::UcbTaskEnvironment *) 0x34e8908) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/ucb/source/ucp/webdav-neon/DAVResourceAccess.cxx:187
> #13 0x00002b2dafe9fc28 in webdav_ucp::Content::getResourceOptions(com::sun::star::uno::Reference<com::sun::star::ucb::XCommandEnvironment> const&, webdav_ucp::DAVOptions&, std::unique_ptr<webdav_ucp::DAVResourceAccess, std::default_delete<webdav_ucp::DAVResourceAccess> > const&, bool*) (this=0x34e8970, xEnv=uno::Reference to (utl::(anonymous namespace)::UcbTaskEnvironment *) 0x34e8908, rDAVOptions=..., rResAccess=..., networkAccessAllowed=0x0) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/ucb/source/ucp/webdav-neon/webdavcontent.cxx:3928
> #14 0x00002b2dafe90664 in webdav_ucp::Content::open(com::sun::star::ucb::OpenCommandArgument3 const&, com::sun::star::uno::Reference<com::sun::star::ucb::XCommandEnvironment> const&) (this=0x34e8970, rArg=..., xEnv=uno::Reference to (utl::(anonymous namespace)::UcbTaskEnvironment *) 0x34e8908) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/ucb/source/ucp/webdav-neon/webdavcontent.cxx:2225
> #15 0x00002b2dafe87e0d in webdav_ucp::Content::execute(com::sun::star::ucb::Command const&, int, com::sun::star::uno::Reference<com::sun::star::ucb::XCommandEnvironment> const&) (this=0x34e8970, aCommand=..., Environment=uno::Reference to (utl::(anonymous namespace)::UcbTaskEnvironment *) 0x34e8908) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/ucb/source/ucp/webdav-neon/webdavcontent.cxx:553
> #16 0x00002b2dafe997c1 in non-virtual thunk to webdav_ucp::Content::execute(com::sun::star::ucb::Command const&, int, com::sun::star::uno::Reference<com::sun::star::ucb::XCommandEnvironment> const&) () at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/instdir/program/../program/libucpdav1.so
> #17 0x00002b2d8d5436aa in ucbhelper::Content_Impl::executeCommand(com::sun::star::ucb::Command const&) (this=0x34cbbd0, rCommand=...) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/ucbhelper/source/client/content.cxx:1255
> #18 0x00002b2d8d5447b6 in ucbhelper::Content::executeCommand(rtl::OUString const&, com::sun::star::uno::Any const&) (this=0x34e8858, rCommandName="open", rCommandArgument=uno::Any("com.sun.star.ucb.OpenCommandArgument2": {<com::sun::star::ucb::OpenCommandArgument> = {Mode = 2, Priority = 0, Sink = uno::Reference to (utl::(anonymous namespace)::ModeratorsActiveDataSink *) 0x34e7100, Properties = empty uno::Sequence}, SortingInfo = empty uno::Sequence})) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/ucbhelper/source/client/content.cxx:558
> #19 0x00002b2d8d8257a6 in utl::(anonymous namespace)::Moderator::run() (this=0x34e87b0) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/unotools/source/ucbhelper/ucblockbytes.cxx:580
> #20 0x00002b2d8d82cd9e in threadFunc(void*) (param=0x34e87b0) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/include/osl/thread.hxx:189
> #21 0x00002b2d850b3f3a in osl_thread_start_Impl(void*) (pData=0x34e7200) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/sal/osl/unx/thread.cxx:264
> #22 0x00002b2d86726ea5 in start_thread () at /lib64/libpthread.so.0
> #23 0x00002b2d8559296d in clone () at /lib64/libc.so.6
during UITest_sw_options
Change-Id: I739bca5c27fba12efb9ed0e902e8d9d1a06c49af
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111742
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman at redhat.com>
diff --git a/unotools/source/ucbhelper/ucblockbytes.cxx b/unotools/source/ucbhelper/ucblockbytes.cxx
index 1eeb47b229d4..a02652290b6a 100644
--- a/unotools/source/ucbhelper/ucblockbytes.cxx
+++ b/unotools/source/ucbhelper/ucblockbytes.cxx
@@ -680,6 +680,9 @@ static bool UCBOpenContentSync(
{
pMod = new Moderator(xContent,xInteract,rArg);
pMod->create();
+ //TODO: a protocol is missing how to join with the launched thread before exit(3), to
+ // ensure the thread is no longer relying on any infrastructure while that
+ // infrastructure is being shut down in atexit handlers
}
catch (const ContentCreationException&)
{
More information about the Libreoffice-commits
mailing list