Add some Helgrind suppressions for LinuxThreads.

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@7146
This commit is contained in:
Julian Seward 2007-11-11 06:13:01 +00:00
parent 3eb7b05a75
commit d511a7a7df
4 changed files with 76 additions and 6 deletions

View File

@ -20,7 +20,8 @@ DIST_SUBDIRS = $(SUBDIRS)
SUPP_FILES = \
glibc-2.2.supp glibc-2.3.supp glibc-2.4.supp glibc-2.5.supp \
glibc-2.6.supp aix5libc.supp xfree-3.supp xfree-4.supp \
glibc-2.X-helgrind.supp
glibc-2.3456-NPTL-helgrind.supp \
glibc-2.2-LinuxThreads-helgrind.supp
dist_val_DATA = $(SUPP_FILES) default.supp

View File

@ -473,30 +473,35 @@ case "${libc}" in
2.2)
AC_MSG_RESULT(2.2 family)
AC_DEFINE([GLIBC_2_2], 1, [Define to 1 if you're using glibc 2.2.x])
DEFAULT_SUPP="glibc-2.2.supp glibc-2.X-helgrind.supp ${DEFAULT_SUPP}"
DEFAULT_SUPP="glibc-2.2.supp ${DEFAULT_SUPP}"
DEFAULT_SUPP="glibc-2.2-LinuxThreads-helgrind.supp ${DEFAULT_SUPP}"
;;
2.3)
AC_MSG_RESULT(2.3 family)
AC_DEFINE([GLIBC_2_3], 1, [Define to 1 if you're using glibc 2.3.x])
DEFAULT_SUPP="glibc-2.3.supp glibc-2.X-helgrind.supp ${DEFAULT_SUPP}"
DEFAULT_SUPP="glibc-2.3.supp ${DEFAULT_SUPP}"
DEFAULT_SUPP="glibc-2.3456-NPTL-helgrind.supp ${DEFAULT_SUPP}"
;;
2.4)
AC_MSG_RESULT(2.4 family)
AC_DEFINE([GLIBC_2_4], 1, [Define to 1 if you're using glibc 2.4.x])
DEFAULT_SUPP="glibc-2.4.supp glibc-2.X-helgrind.supp ${DEFAULT_SUPP}"
DEFAULT_SUPP="glibc-2.4.supp ${DEFAULT_SUPP}"
DEFAULT_SUPP="glibc-2.3456-NPTL-helgrind.supp ${DEFAULT_SUPP}"
;;
2.5)
AC_MSG_RESULT(2.5 family)
AC_DEFINE([GLIBC_2_5], 1, [Define to 1 if you're using glibc 2.5.x])
DEFAULT_SUPP="glibc-2.5.supp glibc-2.X-helgrind.supp ${DEFAULT_SUPP}"
DEFAULT_SUPP="glibc-2.5.supp ${DEFAULT_SUPP}"
DEFAULT_SUPP="glibc-2.3456-NPTL-helgrind.supp ${DEFAULT_SUPP}"
;;
2.6)
AC_MSG_RESULT(2.6 family)
AC_DEFINE([GLIBC_2_6], 1, [Define to 1 if you're using glibc 2.6.x])
DEFAULT_SUPP="glibc-2.6.supp glibc-2.X-helgrind.supp ${DEFAULT_SUPP}"
DEFAULT_SUPP="glibc-2.6.supp ${DEFAULT_SUPP}"
DEFAULT_SUPP="glibc-2.3456-NPTL-helgrind.supp ${DEFAULT_SUPP}"
;;
aix5)
AC_MSG_RESULT(AIX 5.1 or 5.2 or 5.3)

View File

@ -0,0 +1,64 @@
## Helgrind really doesn't support LinuxThreads-based threading
## (which is absolutely ancient by now). But just in case anyone
## is nuts enough to try it, here are some suppressions.
{
helgrind-glibc22-LinuxThreads-1
Helgrind:Race
obj:/lib*/libpthread-0.10.so*
}
{
helgrind-glibc22-LinuxThreads-2
Helgrind:Race
obj:/lib*/ld-2.2.*so*
obj:/lib*/ld-2.2.*so*
}
{
helgrind-glibc22-LinuxThreads-3
Helgrind:Race
obj:/lib*/libc-2.2.*so*
obj:/lib*/libc-2.2.*so*
}
{
helgrind-glibc22-LinuxThreads-4
Helgrind:Race
obj:/lib*/ld-2.2.*so*
obj:/lib*/libc-2.2.*so*
}
{
helgrind-glibc22-LinuxThreads-5
Helgrind:Race
obj:/lib*/libc-2.2.*so*
fun:pthread_*
}
{
helgrind-glibc22-LinuxThreads-6
Helgrind:Race
fun:pthread_*
obj:/lib*/libc-2.2.*so*
}
{
helgrind-glibc22-LinuxThreads-7
Helgrind:Race
fun:mythread_wrapper
fun:pthread_*
}
{
helgrind-glibc22-LinuxThreads-8
Helgrind:Misc
fun:pthread_mutex_lock
fun:_IO_*
}
{
helgrind-glibc22-LinuxThreads-9
Helgrind:UnlockForeign
fun:pthread_mutex_unlock
fun:_IO_*
}
{
helgrind-glibc22-LinuxThreads-10
Helgrind:Misc
fun:_Exit
obj:/lib*/libpthread-0.10.so*
}