On Sat, Jun 5, 2010 at 5:47 AM, Bart Van Assche <bvanass...@acm.org> wrote: > On Sat, Jun 5, 2010 at 2:52 AM, Jorge Moraleda <jorge.moral...@gmail.com> > wrote: >> >> I got a drd error in one of my programs, and searching on the web I >> found the following boost bug report, including a test sample >> reporting the same error found with drd. >> https://svn.boost.org/trac/boost/ticket/3526 with a similar error. >> >> There they seem to conclude that this is not a real problem, but I >> wanted to get your opinion. I can reproduce the error. I am running >> boost 1.43 and valgrind 11150M (with Bart's linker fix, thank you!!!). > > You are welcome to test Valgrind r11146 or later (unmodified) -- > Julian has fixed the "mmap(...) failed in UME with error 22 (Invalid > argument)" error message. > >> This is the test code they provide in the link above. >> [ ... ] >> This is my valgrind output when compiled with "g++ -l boost_thread main.cpp" >> valgrind --tool=drd ./a.out >> ==7014== drd, a thread error detector >> ==7014== Copyright (C) 2006-2010, and GNU GPL'd, by Bart Van Assche. >> ==7014== Using Valgrind-3.6.0.SVN and LibVEX; rerun with -h for copyright >> info >> ==7014== Command: ./a.out >> ==7014== >> ==7014== Thread 3: >> ==7014== Conflicting store by thread 3 at 0x0504c750 size 8 >> ==7014== at 0x4E41A23: T.1292 (in >> /usr/local/lib/libboost_thread.so.1.43.0) >> [ ... ] > > Looks like a false positive on current_thread_tls_key to me, so I have > added a suppression pattern in r11152. > > Bart. >
Thank you Bart. I still get an error using r11158: ==19714== drd, a thread error detector ==19714== Copyright (C) 2006-2010, and GNU GPL'd, by Bart Van Assche. ==19714== Using Valgrind-3.6.0.SVN and LibVEX; rerun with -h for copyright info ==19714== Command: ./a.out ==19714== ==19714== Thread 3: ==19714== Conflicting load by thread 3 at 0x0504c750 size 8 ==19714== at 0x4E41994: T.1292 (in /usr/local/lib/libboost_thread.so.1.43.0) ==19714== Allocation context: BSS section of /usr/local/lib/libboost_thread.so.1.43.0 ==19714== Other segment start (thread 2) ==19714== at 0x4C2F283: pthread_mutex_lock (drd_pthread_intercepts.c:578) ==19714== by 0x4E41A4D: T.1292 (in /usr/local/lib/libboost_thread.so.1.43.0) ==19714== by 0x4E41D98: boost::detail::set_current_thread_data(boost::detail::thread_data_base*) (in /usr/local/lib/libboost_thread.so.1.43.0) ==19714== by 0x4E41F54: thread_proxy (in /usr/local/lib/libboost_thread.so.1.43.0) ==19714== by 0x4C2EA60: vgDrd_thread_wrapper (drd_pthread_intercepts.c:272) ==19714== by 0x5B608B9: start_thread (pthread_create.c:300) ==19714== by 0x58C803C: clone (clone.S:112) ==19714== Other segment end (thread 2) ==19714== at 0x4C2FE7F: pthread_mutex_unlock (drd_pthread_intercepts.c:631) ==19714== Other segment start (thread 2) ==19714== at 0x4C2F283: pthread_mutex_lock (drd_pthread_intercepts.c:578) ==19714== by 0x4E419BB: T.1292 (in /usr/local/lib/libboost_thread.so.1.43.0) ==19714== by 0x4E41D98: boost::detail::set_current_thread_data(boost::detail::thread_data_base*) (in /usr/local/lib/libboost_thread.so.1.43.0) ==19714== by 0x4E41F54: thread_proxy (in /usr/local/lib/libboost_thread.so.1.43.0) ==19714== by 0x4C2EA60: vgDrd_thread_wrapper (drd_pthread_intercepts.c:272) ==19714== by 0x5B608B9: start_thread (pthread_create.c:300) ==19714== by 0x58C803C: clone (clone.S:112) ==19714== Other segment end (thread 2) ==19714== at 0x4C2FE7F: pthread_mutex_unlock (drd_pthread_intercepts.c:631) ==19714== by 0x4E41A32: T.1292 (in /usr/local/lib/libboost_thread.so.1.43.0) ==19714== by 0x4E41D98: boost::detail::set_current_thread_data(boost::detail::thread_data_base*) (in /usr/local/lib/libboost_thread.so.1.43.0) ==19714== by 0x4E41F54: thread_proxy (in /usr/local/lib/libboost_thread.so.1.43.0) ==19714== by 0x4C2EA60: vgDrd_thread_wrapper (drd_pthread_intercepts.c:272) ==19714== by 0x5B608B9: start_thread (pthread_create.c:300) ==19714== by 0x58C803C: clone (clone.S:112) ==19714== ==19714== ==19714== For counts of detected and suppressed errors, rerun with: -v ==19714== ERROR SUMMARY: 1 errors from 1 contexts (suppressed: 46 from 46) ------------------------------------------------------------------------------ ThinkGeek and WIRED's GeekDad team up for the Ultimate GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the lucky parental unit. See the prize list and enter to win: http://p.sf.net/sfu/thinkgeek-promo _______________________________________________ Valgrind-users mailing list Valgrind-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/valgrind-users