|
|
], | ], |
glibc="2.6") | glibc="2.6") |
| |
|
AC_EGREP_CPP([GLIBC_27], [ |
|
#include <features.h> |
|
#ifdef __GNU_LIBRARY__ |
|
#if (__GLIBC__ == 2 && __GLIBC_MINOR__ == 7) |
|
GLIBC_27 |
|
#endif |
|
#endif |
|
], |
|
glibc="2.7") |
|
|
AC_MSG_CHECKING([the glibc version]) | AC_MSG_CHECKING([the glibc version]) |
| |
case "${glibc}" in | case "${glibc}" in |
|
|
DEFAULT_SUPP="glibc-2.6.supp ${DEFAULT_SUPP}" | DEFAULT_SUPP="glibc-2.6.supp ${DEFAULT_SUPP}" |
;; | ;; |
| |
|
2.7) |
|
AC_MSG_RESULT(2.7 family) |
|
AC_DEFINE([GLIBC_2_7], 1, [Define to 1 if you're using glibc 2.7.x]) |
|
DEFAULT_SUPP="glibc-2.7.supp ${DEFAULT_SUPP}" |
|
;; |
|
|
*) | *) |
AC_MSG_RESULT(unsupported version) | AC_MSG_RESULT(unsupported version) |
AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.6]) |
AC_MSG_ERROR([Valgrind requires glibc version 2.2 - 2.7]) |
;; | ;; |
esac | esac |
| |
|
|
|
|
|
##----------------------------------------------------------------------## |
|
|
|
# Errors to suppress by default with glibc 2.7.x |
|
|
|
# Format of this file is: |
|
# { |
|
# name_of_suppression |
|
# tool_name:supp_kind |
|
# (optional extra info for some suppression types) |
|
# caller0 name, or /name/of/so/file.so |
|
# caller1 name, or ditto |
|
# (optionally: caller2 name) |
|
# (optionally: caller3 name) |
|
# } |
|
# |
|
# For Memcheck, the supp_kinds are: |
|
# |
|
# Param Value1 Value2 Value4 Value8 Value16 |
|
# Free Addr1 Addr2 Addr4 Addr8 Addr16 |
|
# Cond (previously known as Value0) |
|
# |
|
# and the optional extra info is: |
|
# if Param: name of system call param |
|
# if Free: name of free-ing fn) |
|
|
|
{ |
|
dl-hack1 |
|
Memcheck:Cond |
|
fun:_dl_start |
|
fun:_start |
|
} |
|
|
|
{ |
|
dl-hack2 |
|
Memcheck:Cond |
|
obj:/lib*/ld-2.7*.so |
|
obj:/lib*/ld-2.7*.so |
|
obj:/lib*/ld-2.7*.so |
|
obj:/lib*/ld-2.7*.so |
|
} |
|
|
|
{ |
|
dl-hack3 |
|
Memcheck:Cond |
|
obj:/lib*/ld-2.7*.so |
|
obj:/lib*/ld-2.7*.so |
|
obj:/lib*/ld-2.7*.so |
|
} |
|
|
|
##----------------------------------------------------------------------## |
|
{ |
|
glibc-2.5.x-on-SUSE-10.2-(PPC)-1 |
|
Memcheck:Cond |
|
fun:_dl_start_final |
|
fun:_dl_start |
|
fun:_start |
|
} |
|
{ |
|
glibc-2.5.x-on-SUSE-10.2-(PPC)-2a |
|
Memcheck:Cond |
|
fun:index |
|
obj:*ld-2.7*.so |
|
} |
|
{ |
|
glibc-2.5.x-on-SuSE-10.2-(PPC)-2b |
|
Memcheck:Addr4 |
|
fun:index |
|
fun:expand_dynamic_string_token |
|
} |
|
{ |
|
glibc-2.5.5-on-SuSE-10.2-(PPC)-2c |
|
Memcheck:Addr4 |
|
fun:index |
|
obj:*ld-2.7*.so |
|
} |
|
{ |
|
glibc-2.3.5-on-SuSE-10.1-(PPC)-3 |
|
Memcheck:Addr4 |
|
fun:*wordcopy_fwd_dest_aligned* |
|
fun:mem*cpy |
|
obj:*lib*2.7*.so |
|
} |
|
|
|
##----------------------------------------------------------------------## |
|
## Various structure padding things on SUSE 10.2 |
|
## |
|
{ |
|
X11-64bit-padding-1a |
|
Memcheck:Param |
|
write(buf) |
|
fun:__write_nocancel |
|
obj:/usr/lib*/libX11.so* |
|
obj:/usr/lib*/libX11.so* |
|
fun:X* |
|
} |
|
{ |
|
X11-64bit-padding-1b |
|
Memcheck:Param |
|
write(buf) |
|
fun:__write_nocancel |
|
obj:/usr/lib*/libX11.so* |
|
obj:/usr/lib*/libX11.so* |
|
fun:_X* |
|
} |
|
{ |
|
X11-64bit-padding-1c |
|
Memcheck:Param |
|
write(buf) |
|
fun:__write_nocancel |
|
obj:/usr/lib*/libX11.so* |
|
obj:/usr/lib*/libX11.so* |
|
obj:/usr/lib*/libX11.so* |
|
} |
|
{ |
|
X11-64bit-padding-1d |
|
Memcheck:Param |
|
write(buf) |
|
fun:__write_nocancel |
|
obj:/usr/lib*/libICE.so* |
|
obj:/usr/lib*/libICE.so* |
|
obj:/usr/lib*/libICE.so* |
|
} |
|
{ |
|
X11-64bit-padding-2a |
|
Memcheck:Param |
|
writev(vector[...]) |
|
fun:do_writev |
|
obj:/usr/lib*/libX11.so* |
|
obj:/usr/lib*/libX11.so* |
|
obj:/usr/lib*/libX11.so* |
|
} |
|
{ |
|
X11-64bit-padding-2b |
|
Memcheck:Param |
|
writev(vector[...]) |
|
fun:do_writev |
|
fun:writev |
|
obj:/usr/lib*/libX11.so* |
|
obj:/usr/lib*/libX11.so* |
|
} |
|
|
|
{ |
|
glibc24-64bit-padding-1a |
|
Memcheck:Param |
|
socketcall.sendto(msg) |
|
fun:send |
|
fun:get_mapping |
|
fun:__nscd_get_map_ref |
|
fun:nscd* |
|
} |
|
{ |
|
glibc24-64bit-padding-1b |
|
Memcheck:Param |
|
socketcall.sendto(msg) |
|
fun:__sendto_nocancel |
|
obj:/*libc-2.7*.so |
|
obj:/*libc-2.7*.so |
|
obj:/*libc-2.7*.so |
|
} |
|
{ |
|
glibc24-64bit-padding-1c |
|
Memcheck:Param |
|
socketcall.send(msg) |
|
fun:send |
|
fun:__nscd_get_map_ref |
|
fun:nscd_get*_r |
|
fun:*nscd* |
|
obj:/*libc-2.7*.so |
|
} |
|
|
|
|
|
{ |
|
X11-64bit-padding-3a |
|
Memcheck:Param |
|
write(buf) |
|
obj:/*libpthread-2.7*.so* |
|
obj:/usr/lib*/libX11.so* |
|
obj:/usr/lib*/libX11.so* |
|
obj:/usr/lib*/libX11.so* |
|
} |
|
|
|
{ |
|
X11-64bit-padding-4a |
|
Memcheck:Param |
|
socketcall.sendto(msg) |
|
fun:send |
|
obj:/*libc-2.7*.so |
|
obj:/*libc-2.7*.so |
|
obj:/*libc-2.7*.so |
|
} |
|
{ |
|
X11-64bit-padding-4b |
|
Memcheck:Param |
|
socketcall.send(msg) |
|
fun:send |
|
obj:/*libc-2.7*.so |
|
obj:/*libc-2.7*.so |
|
obj:/*libc-2.7*.so |
|
} |
|
|
|
##----------------------------------------------------------------------## |
|
# MontaVista Linux 4.0.1 on ppc32 |
|
{ |
|
MVL-401-linuxthreads-pthread_create |
|
Memcheck:Param |
|
write(buf) |
|
fun:pthread_create |
|
} |
|
{ |
|
MVL-401-linuxthreads-pthread_create |
|
Memcheck:Param |
|
write(buf) |
|
obj:/lib/libpthread-0.10.so |
|
fun:pthread_create |
|
} |
|
|
DIST_SUBDIRS = $(SUBDIRS) | DIST_SUBDIRS = $(SUBDIRS) |
| |
SUPP_FILES = \ | SUPP_FILES = \ |
glibc-2.2.supp glibc-2.3.supp glibc-2.4.supp glibc-2.5.supp glibc-2.6.supp \ |
glibc-2.2.supp glibc-2.3.supp glibc-2.4.supp glibc-2.5.supp glibc-2.6.supp glibc-2.7.supp \ |
xfree-3.supp xfree-4.supp | xfree-3.supp xfree-4.supp |
| |
dist_val_DATA = $(SUPP_FILES) default.supp | dist_val_DATA = $(SUPP_FILES) default.supp |