Print

Print


Hey,

I'm seeing a crash on destruction with XRD 4.6.0 when built against older GNU C library (< 2.21). I don't see this crash when using XrdSysSemaphore from XrdSysPthread with recent GNU C library versions.

Here's the backtrace (from gdb "thread apply all bt"):

`
Thread 6 (Thread 0x7fffa4469700 (LWP 11919)):
#0  0x00007fffe098d309 in syscall () from /lib64/libc.so.6
#1  0x00007fffdbf9865d in XrdSys::LinuxSemaphore::Wait() () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/./XrdSys/XrdSysLinuxSemaphore.hh:161
#2  0x00007fffdc005d40 in XrdCl::SyncQueue<XrdCl::JobManager::JobHelper>::Get() () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/./XrdCl/XrdClSyncQueue.hh:67
#3  0x00007fffdc005ba3 in XrdCl::JobManager::RunJobs() () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/XrdCl/XrdClJobManager.cc:146
#4  0x00007fffdc005752 in RunRunnerThread () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/XrdCl/XrdClJobManager.cc:33
#5  0x00007fffe0c43aa1 in start_thread () from /lib64/libpthread.so.0
#6  0x00007fffe0990aad in clone () from /lib64/libc.so.6

Thread 5 (Thread 0x7fffaf06a700 (LWP 11918)):
#0  0x00007fffe098d309 in syscall () from /lib64/libc.so.6
#1  0x00007fffdbf9865d in XrdSys::LinuxSemaphore::Wait() () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/./XrdSys/XrdSysLinuxSemaphore.hh:161
#2  0x00007fffdc005d40 in XrdCl::SyncQueue<XrdCl::JobManager::JobHelper>::Get() () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/./XrdCl/XrdClSyncQueue.hh:67
#3  0x00007fffdc005ba3 in XrdCl::JobManager::RunJobs() () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/XrdCl/XrdClJobManager.cc:146
#4  0x00007fffdc005752 in RunRunnerThread () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/XrdCl/XrdClJobManager.cc:33
#5  0x00007fffe0c43aa1 in start_thread () from /lib64/libpthread.so.0
#6  0x00007fffe0990aad in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7fffb9c6b700 (LWP 11917)):
#0  0x00007fffe08da5e5 in raise () from /lib64/libc.so.6
#1  0x00007fffe08dbdc5 in abort () from /lib64/libc.so.6
#2  0x00007fffe30150a8 in _Unwind_SetGR () from /homea/vsk10/vsk1011/ams/gbatch/analysis/lib/linuxx8664icc6.08/libntuple_slc6_PG_dynamic.so
#3  0x00007fffe2f76532 in __gxx_personality_v0 () at ../../../../libstdc++-v3/libsupc++/eh_personality.cc:713
#4  0x00007ffff522a019 in _Unwind_ForcedUnwind_Phase2 () from /usr/local/software/juropatest/Stages/2016b/software/GCCcore/6.3.0/lib64/libgcc_s.so.1
#5  0x00007ffff522a374 in _Unwind_ForcedUnwind () from /usr/local/software/juropatest/Stages/2016b/software/GCCcore/6.3.0/lib64/libgcc_s.so.1
#6  0x00007fffe0c49f60 in __pthread_unwind () from /lib64/libpthread.so.0
#7  0x00007fffe0c41d3a in sigcancel_handler () from /lib64/libpthread.so.0
#8  <signal handler called>
#9  0x00007fffe098d309 in syscall () from /lib64/libc.so.6
#10 0x00007fffdbf9865d in XrdSys::LinuxSemaphore::Wait() () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/./XrdSys/XrdSysLinuxSemaphore.hh:161
#11 0x00007fffdc005d40 in XrdCl::SyncQueue<XrdCl::JobManager::JobHelper>::Get() () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/./XrdCl/XrdClSyncQueue.hh:67
#12 0x00007fffdc005ba3 in XrdCl::JobManager::RunJobs() () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/XrdCl/XrdClJobManager.cc:146
#13 0x00007fffdc005752 in RunRunnerThread () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/XrdCl/XrdClJobManager.cc:33
#14 0x00007fffe0c43aa1 in start_thread () from /lib64/libpthread.so.0
#15 0x00007fffe0990aad in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7fffc486c700 (LWP 11916)):
#0  0x00007fffe0c4b00d in nanosleep () from /lib64/libpthread.so.0
#1  0x00007fffdc13d6be in XrdSysTimer::Wait(int) () from /homea/vsk10/vsk1011/public/sw/xrootd/4.6.0-gcc-debug/lib/libXrdUtils.so.2
#2  0x00007fffdbfb2d7b in XrdCl::TaskManager::RunTasks() () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/XrdCl/XrdClTaskManager.cc:244
#3  0x00007fffdbfb20ec in RunRunnerThread () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/XrdCl/XrdClTaskManager.cc:37
#4  0x00007fffe0c43aa1 in start_thread () from /lib64/libpthread.so.0
#5  0x00007fffe0990aad in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7fffcf46d700 (LWP 11915)):
#0  0x00007fffe09910a3 in epoll_wait () from /lib64/libc.so.6
#1  0x00007fffdc142f9a in XrdSys::IOEvents::PollE::Begin(XrdSysSemaphore*, int&, char const**) () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/./XrdSys/XrdSysIOEventsPollE.icc:213
#2  0x00007fffdc13fc56 in XrdSys::IOEvents::BootStrap::Start(void*) () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/XrdSys/XrdSysIOEvents.cc:131
#3  0x00007fffdc13cb5a in XrdSysThread_Xeq () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/XrdSys/XrdSysPthread.cc:86
#4  0x00007fffe0c43aa1 in start_thread () from /lib64/libpthread.so.0
#5  0x00007fffe0990aad in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7fffdb2a1000 (LWP 11882)):
#0  0x00007fffe0c442fd in pthread_join () from /lib64/libpthread.so.0
#1  0x00007fffdc005b06 in XrdCl::JobManager::StopWorkers(unsigned int) () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/XrdCl/XrdClJobManager.cc:127
#2  0x00007fffdc0059d6 in XrdCl::JobManager::Stop() () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/XrdCl/XrdClJobManager.cc:103
#3  0x00007fffdbf93528 in XrdCl::PostMaster::Stop() () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/XrdCl/XrdClPostMaster.cc:144
#4  0x00007fffdbf813b8 in XrdCl::DefaultEnv::Finalize() () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/XrdCl/XrdClDefaultEnv.cc:697
#5  0x00007fffdbf824de in EnvInitializer::~EnvInitializer() () at /homea/vsk10/vsk1011/src/xrootd/xrootd/src/XrdCl/XrdClDefaultEnv.cc:847
#6  0x00007fffe08dde7d in __cxa_finalize () from /lib64/libc.so.6
#7  0x00007fffdbf6dc73 in __do_global_dtors_aux () from /homea/vsk10/vsk1011/public/sw/xrootd/4.6.0-gcc-debug/lib/libXrdCl.so.2
#8  0x00007ffffffed860 in ?? ()
#9  0x00007ffff51ead3c in _dl_fini () from /lib64/ld-linux-x86-64.so.2
`

Thanks for your help in resolving this issue.
Bastian

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/xrootd/xrootd/issues/458

########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1