Re: [Boost-bugs] [Boost C++ Libraries] #3526: Data races in boost::thread detected by drd/helgrind

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #3526: Data races in boost::thread detected by drd/helgrind
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2009-10-19 20:17:51


#3526: Data races in boost::thread detected by drd/helgrind
------------------------------------+---------------------------------------
 Reporter: m.strashun@… | Owner: anthonyw
     Type: Bugs | Status: new
Milestone: To Be Determined | Component: thread
  Version: Boost 1.40.0 | Severity: Regression
 Keywords: valgrind,drd,threading |
------------------------------------+---------------------------------------

Comment(by anonymous):

 Yes, of course. Here is the output for current boost svn version (now in
 Arch Linux):
 {BUILD}

 {{{
 make all
 Building file: ../src/test.cpp
 Invoking: GCC C++ Compiler
 g++ -O0 -g3 -Wall -c -fmessage-length=0 -MMD -MP -MF"src/test.d"
 -MT"src/test.d" -o"src/test.o" "../src/test.cpp"
 Finished building: ../src/test.cpp

 Building target: test
 Invoking: GCC C++ Linker
 g++ -o"test" ./src/test.o -lboost_thread
 Finished building target: test
 }}}


 {RUN}

 {{{
 [mist_at_mist-pc test]$ valgrind --tool=drd ./Debug/test
 ==13143== drd, a thread error detector
 ==13143== Copyright (C) 2006-2009, and GNU GPL'd, by Bart Van Assche.
 ==13143== Using Valgrind-3.5.0 and LibVEX; rerun with -h for copyright
 info
 ==13143== Command: ./Debug/test
 ==13143==
 ==13143== Thread 3:
 ==13143== Conflicting load by thread 3 at 0x05043df0 size 8
 ==13143== at 0x4E3A684: ??? (in
 /usr/local/lib/libboost_thread.so.1.41.0)
 ==13143== by 0x4E3AA88:
 boost::detail::set_current_thread_data(boost::detail::thread_data_base*)
 (in /usr/local/lib/libboost_thread.so.1.41.0)
 ==13143== by 0x4E3B084: thread_proxy (in
 /usr/local/lib/libboost_thread.so.1.41.0)
 ==13143== by 0x4C2CC70: vgDrd_thread_wrapper (in /usr/lib/valgrind
 /vgpreload_drd-amd64-linux.so)
 ==13143== by 0x5D4B579: start_thread (in /lib/libpthread-2.10.1.so)
 ==13143== by 0x58B514C: clone (in /lib/libc-2.10.1.so)
 ==13143== Allocation context: BSS section of
 /usr/local/lib/libboost_thread.so.1.41.0
 ==13143== Other segment start (thread 2)
 ==13143== at 0x4C25533: pthread_mutex_lock (in /usr/lib/valgrind
 /vgpreload_drd-amd64-linux.so)
 ==13143== by 0x4E3A73D: ??? (in
 /usr/local/lib/libboost_thread.so.1.41.0)
 ==13143== by 0x4E3AA88:
 boost::detail::set_current_thread_data(boost::detail::thread_data_base*)
 (in /usr/local/lib/libboost_thread.so.1.41.0)
 ==13143== by 0x4E3B084: thread_proxy (in
 /usr/local/lib/libboost_thread.so.1.41.0)
 ==13143== by 0x4C2CC70: vgDrd_thread_wrapper (in /usr/lib/valgrind
 /vgpreload_drd-amd64-linux.so)
 ==13143== by 0x5D4B579: start_thread (in /lib/libpthread-2.10.1.so)
 ==13143== by 0x58B514C: clone (in /lib/libc-2.10.1.so)
 ==13143== Other segment end (thread 2)
 ==13143== at 0x4C2615F: pthread_mutex_unlock (in /usr/lib/valgrind
 /vgpreload_drd-amd64-linux.so)
 ==13143== by 0x4E3AA88:
 boost::detail::set_current_thread_data(boost::detail::thread_data_base*)
 (in /usr/local/lib/libboost_thread.so.1.41.0)
 ==13143== by 0x4E3B084: thread_proxy (in
 /usr/local/lib/libboost_thread.so.1.41.0)
 ==13143== by 0x4C2CC70: vgDrd_thread_wrapper (in /usr/lib/valgrind
 /vgpreload_drd-amd64-linux.so)
 ==13143== by 0x5D4B579: start_thread (in /lib/libpthread-2.10.1.so)
 ==13143== by 0x58B514C: clone (in /lib/libc-2.10.1.so)
 ==13143== Other segment start (thread 2)
 ==13143== at 0x4C25533: pthread_mutex_lock (in /usr/lib/valgrind
 /vgpreload_drd-amd64-linux.so)
 ==13143== by 0x4E3A6AB: ??? (in
 /usr/local/lib/libboost_thread.so.1.41.0)
 ==13143== by 0x4E3AA88:
 boost::detail::set_current_thread_data(boost::detail::thread_data_base*)
 (in /usr/local/lib/libboost_thread.so.1.41.0)
 ==13143== by 0x4E3B084: thread_proxy (in
 /usr/local/lib/libboost_thread.so.1.41.0)
 ==13143== by 0x4C2CC70: vgDrd_thread_wrapper (in /usr/lib/valgrind
 /vgpreload_drd-amd64-linux.so)
 ==13143== by 0x5D4B579: start_thread (in /lib/libpthread-2.10.1.so)
 ==13143== by 0x58B514C: clone (in /lib/libc-2.10.1.so)
 ==13143== Other segment end (thread 2)
 ==13143== at 0x4C2615F: pthread_mutex_unlock (in /usr/lib/valgrind
 /vgpreload_drd-amd64-linux.so)
 ==13143== by 0x4E3A722: ??? (in
 /usr/local/lib/libboost_thread.so.1.41.0)
 ==13143== by 0x4E3AA88:
 boost::detail::set_current_thread_data(boost::detail::thread_data_base*)
 (in /usr/local/lib/libboost_thread.so.1.41.0)
 ==13143== by 0x4E3B084: thread_proxy (in
 /usr/local/lib/libboost_thread.so.1.41.0)
 ==13143== by 0x4C2CC70: vgDrd_thread_wrapper (in /usr/lib/valgrind
 /vgpreload_drd-amd64-linux.so)
 ==13143== by 0x5D4B579: start_thread (in /lib/libpthread-2.10.1.so)
 ==13143== by 0x58B514C: clone (in /lib/libc-2.10.1.so)
 ==13143==
 ==13143==
 ==13143== For counts of detected and suppressed errors, rerun with: -v
 ==13143== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 34 from 29)
 }}}

-- 
Ticket URL: <https://svn.boost.org/trac/boost/ticket/3526#comment:2>
Boost C++ Libraries <http://www.boost.org/>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:01 UTC