Qualifying suppression types with the skin name, like this:
memcheck:Addr4
Changed the `name' need of the memcheck skin from "valgrind" to "memcheck" for
this. But the name Valgrind will return when I print core and skin names in
the startup message.
One issue is that some skins share suppression types, eg. memcheck and
addrcheck. Might be useful to allow multi-skin suppressions, viz:
memcheck,addrcheck:Addr4
This won't be too hard to tack on, though.
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@1163 a5019735-40e9-0310-863c-91ae7b9d1cf9
diff --git a/glibc-2.2.supp b/glibc-2.2.supp
index 8dd0269..92f6b28 100644
--- a/glibc-2.2.supp
+++ b/glibc-2.2.supp
@@ -6,46 +6,54 @@
# Format of this file is:
# {
# name_of_suppression
-# kind: one of Param Value1 Value2 Value4 Value8
-# Free Addr1 Addr2 Addr4 Addr8
-# Cond (previously known as Value0)
-# (if Param: name of system call param, if Free: name of free-ing fn)
+# skin_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
+# Free Addr1 Addr2 Addr4 Addr8
+# 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)
#-------- SuSE 8.1 stuff (gcc-3.2, glibc-2.2.5 + SuSE's hacks)
{
__stpcpy/*
- Cond
+ memcheck:Cond
fun:__stpcpy
fun:*
}
{
strlen/decompose_rpath/_dl_map_object
- Cond
+ memcheck:Cond
fun:strlen
fun:decompose_rpath
fun:_dl_map_object
}
{
strlen/_dl_sym/dlsym_doit
- Cond
+ memcheck:Cond
fun:strlen
fun:_dl_sym
fun:dlsym_doit
}
{
trecurse/__gconv_release_shlib(Addr4)
- Addr4
+ memcheck:Addr4
fun:trecurse
fun:__gconv_release_shlib
}
{
do_release_shlib/trecurse(Addr4)
- Addr4
+ memcheck:Addr4
fun:do_release_shlib
fun:trecurse
}
@@ -53,28 +61,28 @@
#-------- R H Limbo (glibc-2.2.90) stuff
{
elf_dynamic_do_rela.8/_dl_relocate_object_internal
- Cond
+ memcheck:Cond
fun:elf_dynamic_do_rela.8
fun:_dl_relocate_object_internal
}
{
__strnlen/_nl_make_l10nflist(Cond)
- Cond
+ memcheck:Cond
fun:__strnlen
fun:_nl_make_l10nflist
}
{
__strnlen/*vfprintf*
- Cond
+ memcheck:Cond
fun:__strnlen
fun:*vfprintf*
}
{
libXaw.so.7.0(Cond)
- Cond
+ memcheck:Cond
obj:*libXaw.so.7.0
}
@@ -83,20 +91,20 @@
{
__twalk/*(Addr4)
- Addr4
+ memcheck:Addr4
fun:__twalk
}
{
do_release_shlib/__twalk(Addr4)
- Addr4
+ memcheck:Addr4
fun:do_release_shlib
fun:__twalk
}
{
__libc_freeres/free_mem/free(Free)
- Free
+ memcheck:Free
fun:free
fun:free_mem
fun:__libc_freeres
@@ -105,7 +113,7 @@
#-------- Data races
#{
# _dl_lookup_symbol/fixup/_dl_runtime_resolve
-# Eraser
+# helgrind:Eraser
# fun:_dl_lookup_symbol
# fun:fixup
# fun:_dl_runtime_resolve
@@ -113,7 +121,7 @@
#
#{
# _dl_lookup_versioned_symbol/fixup/_dl_runtime_resolve
-# Eraser
+# helgrind:Eraser
# fun:_dl_lookup_versioned_symbol
# fun:fixup
# fun:_dl_runtime_resolve
@@ -122,7 +130,7 @@
#-------- Threading bugs?
{
pthread_error/__pthread_mutex_destroy/__closedir
- PThread
+ core:PThread
fun:pthread_error
fun:__pthread_mutex_destroy
fun:__closedir
@@ -130,7 +138,7 @@
{
pthread_error/__pthread_mutex_destroy/_IO_default_finish
- PThread
+ core:PThread
fun:pthread_error
fun:__pthread_mutex_destroy
fun:_IO_default_finish*
@@ -138,14 +146,14 @@
{
__pthread_mutex_unlock/_IO_funlockfile
- PThread
+ core:PThread
fun:__pthread_mutex_unlock
fun:_IO_funlockfile
}
{
__pthread_mutex_unlock/__register_frame_info
- PThread
+ core:PThread
fun:__pthread_mutex_unlock
fun:__register_frame_info
}
@@ -153,14 +161,14 @@
# even more glibc suppressions ?
{
libc-2.2.4.so/libc-2.2.4.so/libc-2.2.4.so(Cond)
- Cond
+ memcheck:Cond
obj:*libc-2.2.?.so
obj:*libc-2.2.?.so
obj:*libc-2.2.?.so
}
{
libc-2.2.4.so/libc-2.2.4.so/libc-2.2.4.so(Value4)
- Value4
+ memcheck:Value4
obj:*libc-2.2.?.so
obj:*libc-2.2.?.so
obj:*libc-2.2.?.so
@@ -170,24 +178,24 @@
##### suppressions for coolo
{
strchr/dl_open_worker(Cond)
- Cond
+ memcheck:Cond
fun:strchr
fun:dl_open_worker
}
{
__rawmemchr(Cond)
- Cond
+ memcheck:Cond
fun:__rawmemchr
}
{
_IO_vfprintf/__strnlen(Cond)
- Cond
+ memcheck:Cond
fun:__strnlen
fun:_IO_vfprintf
}
{
__strchrnul/gethostbyname*(Cond)
- Cond
+ memcheck:Cond
fun:__strchrnul
fun:gethostbyname*
}
@@ -196,28 +204,28 @@
##----
{
strlen/*dl_map_object*(Cond)
- Cond
+ memcheck:Cond
fun:strlen
fun:*dl_map_object*
}
{
strlen/*dl_open_worker*(Cond)
- Cond
+ memcheck:Cond
fun:strlen
fun:*dl_open_worker*
}
{
*rawmemchr*/*nss*(Cond)
- Cond
+ memcheck:Cond
fun:*rawmemchr*
fun:*nss*
}
{
*strchrnul*/*nss*(Cond)
- Cond
+ memcheck:Cond
fun:*strchrnul*
fun:*nss*
}
@@ -229,13 +237,13 @@
# two:
{
__mpn_construct_double/*(Addr4)
- Addr4
+ memcheck:Addr4
fun:__mpn_construct_double
fun:*
}
{
__mpn_construct_double/*(Addr8)
- Addr8
+ memcheck:Addr8
fun:__mpn_construct_double
fun:*
}
@@ -243,13 +251,13 @@
# More of the same (gcc bug, I'm pretty sure)
{
__fabs/*(Addr4)
- Addr4
+ memcheck:Addr4
fun:__fabs
fun:*
}
{
__fabs/*(Addr8)
- Addr8
+ memcheck:Addr8
fun:__fabs
fun:*
}
@@ -258,7 +266,7 @@
# Not sure what this is about ... but anyway
{
pthread_sighandler/*(Addr4)
- Addr4
+ memcheck:Addr4
fun:pthread_sighandler
fun:*
}
@@ -268,7 +276,7 @@
{
__strnlen/__argz_stringify/_nl_make_l10nflist(Cond)
- Cond
+ memcheck:Cond
fun:__strnlen
fun:__argz_stringify
fun:_nl_make_l10nflist
@@ -277,14 +285,14 @@
#--------------
{
_dl_relocate_object*/dl_open_worker/_dl_catch_error*(Cond)
- Cond
+ memcheck:Cond
fun:_dl_relocate_object*
fun:dl_open_worker
fun:_dl_catch_error*
}
{
_dl_relocate_object/libc-2.2.4.so/_dl_catch_error(Cond)
- Cond
+ memcheck:Cond
fun:_dl_relocate_object
obj:*libc-2.2.?.so
fun:_dl_catch_error
@@ -292,7 +300,7 @@
{
strrchr/_dl_map_object_from_fd/_dl_map_object(Cond)
- Cond
+ memcheck:Cond
fun:strrchr
fun:_dl_map_object_from_fd
fun:_dl_map_object
@@ -301,14 +309,14 @@
#-------------------
{
socketcall.connect(serv_addr)/__libc_connect/*
- Param
+ memcheck:Param
socketcall.connect(serv_addr)
fun:__libc_connect
fun:*
}
{
socketcall.connect(serv_addr)/libc-2.2.4.so/libc-2.2.4.so
- Param
+ memcheck:Param
socketcall.connect(serv_addr)
obj:*libc-2.2.?.so
obj:*libc-2.2.?.so
@@ -317,7 +325,7 @@
#----------------------
{
write(buf)/__libc_write/libX11.so.6.2/libX11.so.6.2(Param)
- Param
+ memcheck:Param
write(buf)
fun:__libc_write
obj:/usr/X11R6/lib/libX11.so.6.2
@@ -325,7 +333,7 @@
}
{
write(buf)/libc-2.2.4.so/libX11.so.6.2/libX11.so.6.2(Param)
- Param
+ memcheck:Param
write(buf)
obj:*libc-2.2.?.so
obj:/usr/X11R6/lib/libX11.so.6.2
@@ -342,7 +350,7 @@
{
writev(vector[...])/__writev/libX11.so.6.2/libX11.so.6.2
- Param
+ memcheck:Param
writev(vector[...])
fun:__writev
obj:/usr/X11R6/lib/libX11.so.6.2
@@ -352,14 +360,14 @@
#----------------
{
__rawmemchr/libXt.so.6.0/libXt.so.6.0
- Cond
+ memcheck:Cond
fun:__rawmemchr
obj:/usr/X11R6/lib/libXt.so.6.0
obj:/usr/X11R6/lib/libXt.so.6.0
}
{
libc-2.2.4.so/libXt.so.6.0/libXt.so.6.0
- Cond
+ memcheck:Cond
obj:*libc-2.2.?.so
obj:/usr/X11R6/lib/libXt.so.6.0
obj:/usr/X11R6/lib/libXt.so.6.0