From: Bart Van Assche Date: Sun, 6 Apr 2008 07:51:24 +0000 (+0000) Subject: Data races on *stdout / *stderr are now suppressed via these objects itselves instead... X-Git-Tag: svn/VALGRIND_3_4_0~751 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=14c1f6c8d1f74f82e3909729103a34d3e9d81b93;p=thirdparty%2Fvalgrind.git Data races on *stdout / *stderr are now suppressed via these objects itselves instead of via suppression patterns. git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7848 --- diff --git a/exp-drd/drd_pthread_intercepts.c b/exp-drd/drd_pthread_intercepts.c index 36793c6812..6e1e6d8dfa 100644 --- a/exp-drd/drd_pthread_intercepts.c +++ b/exp-drd/drd_pthread_intercepts.c @@ -98,6 +98,11 @@ void _init(void) { check_threading_library(); vg_set_main_thread_state(); + /* glibc up to and including version 2.7 triggers conflicting accesses */ + /* on stdout and stderr when sending output to one of these streams from */ + /* more than one thread. Suppress data race reports on these objects. */ + DRD_IGNORE_VAR(*stdout); + DRD_IGNORE_VAR(*stderr); } static MutexT pthread_to_drd_mutex_type(const int kind) diff --git a/glibc-2.X-drd.supp b/glibc-2.X-drd.supp index 9253186fd3..26e1735286 100644 --- a/glibc-2.X-drd.supp +++ b/glibc-2.X-drd.supp @@ -75,29 +75,6 @@ fun:__libc_disable_asynccancel obj:/lib*/libc-* } -{ - libc-race-in-vfprintf - exp-drd:ConflictingAccess - fun:vfprintf -} -{ - libc-race-in-vsnprintf - exp-drd:ConflictingAccess - fun:vsnprintf -} -{ - libc-race-in-vsnprintf - exp-drd:ConflictingAccess - obj:/lib*/libc-* - fun:vsnprintf -} -{ - libc-race-in-vsnprintf - exp-drd:ConflictingAccess - obj:/lib*/libc-* - obj:/lib*/libc-* - fun:vsnprintf -} { librt exp-drd:ConflictingAccess