Print

Print


From Helgrind:

==29093== Locks held: 1, at address 0x200EE9B0
==29093== at 0x650773C9: XrdCl::DefaultEnv::SetLogLevel(std::string const&) (in /afs/cern.ch/cms/sw/ReleaseCandidates/vol0/slc6_amd64_gcc481/external/xrootd/4.0.4/lib/libXrdCl.so.2.0.0)

==29093== Locks held: none
==29093== at 0x65073D21: XrdCl::Log::Dump(unsigned long, char const*, ...) (in /afs/cern.ch/cms/sw/ReleaseCandidates/vol0/slc6_amd64_gcc481/external/xrootd/4.0.4/lib/libXrdCl.so.2.0.0)

The current use of SetLogLevel / Dump are not thread-safe. Here's the corresponding code:

https://github.com/xrootd/xrootd/blob/master/src/XrdCl/XrdClLog.hh#L195
https://github.com/xrootd/xrootd/blob/master/src/XrdCl/XrdClLog.hh#L222

simultaneous calls result in undefined behavior.


Reply to this email directly or view it on GitHub.



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