summaryrefslogtreecommitdiff
path: root/glibc-2.3.supp
diff options
context:
space:
mode:
authorStephane Marchesin <marchesin@icps.u-strasbg.fr>2009-05-04 19:05:59 +0200
committerStephane Marchesin <marchesin@icps.u-strasbg.fr>2009-05-04 19:05:59 +0200
commit6e410b3bb6ff51580897431105aae14591cbf7fb (patch)
treef8aeba9352710f10cd6b1d5138c8fc3ece91c8c3 /glibc-2.3.supp
Initial import of fatgrind.HEADmaster
Diffstat (limited to 'glibc-2.3.supp')
-rw-r--r--glibc-2.3.supp563
1 files changed, 563 insertions, 0 deletions
diff --git a/glibc-2.3.supp b/glibc-2.3.supp
new file mode 100644
index 0000000..9ca9300
--- /dev/null
+++ b/glibc-2.3.supp
@@ -0,0 +1,563 @@
+
+##----------------------------------------------------------------------##
+
+# Errors to suppress by default with glibc 2.3.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 Jump
+# Free Addr1 Addr2 Addr4 Addr8 Addr16
+# Cond (previously known as Value0)
+#
+# and the optional extra info is:
+# if Param: name of system call param
+
+{
+ __GI___stpcpy/*
+ Memcheck:Cond
+ fun:__GI___stpcpy
+ fun:*
+}
+{
+ strlen/__GI__dl_open/dlopen_doit
+ Memcheck:Cond
+ fun:strlen
+ fun:__GI__dl_open
+ fun:dlopen_doit
+}
+{
+ strlen/_dl_signal_cerror/_dl_lookup_symbol_internal/do_dlsym
+ Memcheck:Cond
+ fun:_dl_signal_cerror
+ fun:_dl_lookup_symbol_internal
+ fun:do_dlsym
+}
+{
+ strlen/*dl_map_object*(Cond)
+ Memcheck:Cond
+ fun:strlen
+ fun:*dl_map_object*
+}
+
+{
+ strlen/*dl_open_worker*(Cond)
+ Memcheck:Cond
+ fun:strlen
+ fun:*dl_open_worker*
+}
+{
+ strlen/_dl_sym/dlsym_doit
+ Memcheck:Cond
+ fun:strlen
+ fun:_dl_sym
+ fun:dlsym_doit
+}
+{
+ realpath is inefficiently coded
+ Memcheck:Overlap
+ fun:memcpy
+ fun:realpath*
+}
+
+{
+ realpath stupidity part II
+ Memcheck:Overlap
+ fun:strcpy
+ fun:realpath*
+}
+{
+ strlen/decompose_rpath/_dl_map_object
+ Memcheck:Cond
+ fun:strlen
+ fun:decompose_rpath
+ fun:*dl_map_object*
+}
+{
+ stpcpy/_dl_sym*
+ Memcheck:Cond
+ fun:__stpcpy
+ fun:_dl_*
+}
+
+#-------- For R H 8.0
+{
+ elf_dynamic_do_rel.7/_dl_relocate_object_internal/dl_open_worker(Cond)
+ Memcheck:Cond
+ fun:elf_dynamic_do_rel.7
+ fun:_dl_relocate_object_internal
+ fun:dl_open_worker
+}
+{
+ dl_relocate/dl_open_worker
+ Memcheck:Cond
+ fun:_dl_relocate_object_internal
+ fun:dl_open_worker
+}
+{
+ RedHat8-1
+ Memcheck:Cond
+ fun:elf_dynamic_do_rela.8
+ fun:_dl_relocate_object
+ fun:dl_main
+ fun:_dl_sysdep_start
+}
+{
+ RedHat8-2
+ Memcheck:Cond
+ fun:elf_dynamic_do_rel.7
+ fun:_dl_relocate_object
+ fun:dl_main
+ fun:_dl_sysdep_start
+}
+{
+ RedHat8-3
+ Memcheck:Cond
+ fun:elf_dynamic_do_rela.8
+ fun:_dl_relocate_object
+ fun:dl_open_worker
+}
+
+#-------- glibc 2.3.2/ Fedora Core 1
+{
+ dl_relocate/dl_main
+ Memcheck:Cond
+ fun:_dl_relocate_object_internal
+ fun:dl_main
+}
+
+#-------- glibc 2.3.3/ Fedora Core 2
+{
+ dl_relocate_object/dl_main
+ Memcheck:Cond
+ fun:_dl_relocate_object
+ fun:dl_main
+}
+{
+ _dl_relocate_object/dl_open_worker
+ Memcheck:Cond
+ fun:_dl_relocate_object
+ fun:dl_open_worker
+}
+
+#-------- glibc 2.3.4/ Fedora Core 3
+{
+ dl_relocate_object
+ Memcheck:Cond
+ fun:_dl_relocate_object
+}
+
+##----------------------------------------------------------------------##
+## Bugs in helper library supplied with Intel Icc 7.0 (65)
+## in /opt/intel/compiler70/ia32/lib/libcxa.so.3
+{
+ Intel compiler70/ia32/lib/libcxa.so.3 below-esp accesses
+ Memcheck:Addr4
+ obj:/opt/intel/compiler70/ia32/lib/libcxa.so.3
+}
+
+##----------------------------------------------------------------------##
+## SuSE 9 after FV changes (post 2.1.0)
+
+{
+ strlen/_dl_init_paths/dl_main/_dl_sysdep_start(Cond)
+ Memcheck:Cond
+ fun:strlen
+ fun:_dl_init_paths
+ fun:dl_main
+ fun:_dl_sysdep_start
+}
+
+{
+ Ugly strchr error in /lib/ld-2.3.2.so
+ Memcheck:Cond
+ obj:/lib/ld-2.3.2.so
+}
+
+##----------------------------------------------------------------------##
+## SuSE 9.1 with post 2.1.2
+{
+ Ugly strchr error in /lib/ld-2.3.3.so
+ Memcheck:Cond
+ obj:/lib/ld-2.3.3.so
+}
+
+##----------------------------------------------------------------------##
+## SuSE 9.1 with 3.0 branch (x86)
+{
+ Strstr dubiousness in pthread_initialize
+ Memcheck:Cond
+ fun:strstr
+ fun:pthread_initialize
+ obj:/lib/libpthread.so.0
+ obj:/lib/libpthread.so.0
+}
+
+##----------------------------------------------------------------------##
+## glibc-2.3.3 on FC2
+## Assumes that sysctl returns \0-terminated strings in is_smp_system
+#{
+# Unterminated strstr string in is_smp_system() (NPTL)
+# Memcheck:Cond
+# fun:strstr
+# fun:__pthread_initialize_minimal
+# obj:/lib/tls/libpthread*.so*
+# obj:/lib/tls/libpthread*.so*
+#}
+#{
+# Unterminated strstr string in is_smp_system() (LinuxThreads)
+# Memcheck:Cond
+# fun:strstr
+# fun:pthread_initialize
+# obj:/lib/i686/libpthread*.so*
+# obj:/lib/i686/libpthread*.so*
+#}
+#{
+# Unterminated strstr string in is_smp_system() (LinuxThreads)
+# Memcheck:Cond
+# fun:strstr
+# fun:pthread_initialize
+# obj:/lib/libpthread-0.10.so
+# obj:/lib/libpthread-0.10.so
+#}
+
+## Bug in PRE(sys_clone), really. Some args are not used.
+{
+ LinuxThread clone use (parent_tidptr)
+ Memcheck:Param
+ clone(parent_tidptr)
+ fun:clone
+ fun:pthread_create
+}
+{
+ LinuxThread clone use (child_tidptr)
+ Memcheck:Param
+ clone(child_tidptr)
+ fun:clone
+ fun:pthread_create
+}
+{
+ LinuxThread clone use (tlsinfo)
+ Memcheck:Param
+ clone(tlsinfo)
+ fun:clone
+ fun:pthread_create
+}
+{
+ LinuxThread clone use (parent_tidptr)
+ Memcheck:Param
+ clone(parent_tidptr)
+ fun:clone
+ fun:pthread_create@@GLIBC_2.1
+}
+{
+ LinuxThread clone use (child_tidptr)
+ Memcheck:Param
+ clone(child_tidptr)
+ fun:clone
+ fun:pthread_create@@GLIBC_2.1
+}
+{
+ LinuxThread clone use (tlsinfo)
+ Memcheck:Param
+ clone(tlsinfo)
+ fun:clone
+ fun:pthread_create@@GLIBC_2.1
+}
+
+## LinuxThreads manager writes messages containing undefined bytes
+{
+ LinuxThreads: write/pthread_onexit_process
+ Memcheck:Param
+ write(buf)
+ fun:pthread_onexit_process
+ fun:exit
+}
+{
+ LinuxThreads: write/pthread_join
+ Memcheck:Param
+ write(buf)
+ fun:pthread_join
+}
+{
+ LinuxThreads: write/pthread_create
+ Memcheck:Param
+ write(buf)
+ fun:pthread_create@@GLIBC_2.1
+}
+{
+ LinuxThreads: write/pthread_create 2
+ Memcheck:Param
+ write(buf)
+ fun:write
+ fun:pthread_create@@GLIBC_2.1
+ fun:main
+}
+{
+ LinuxThreads: write/__pthread_initialize_manager/pthread_create
+ Memcheck:Param
+ write(buf)
+ fun:__pthread_initialize_manager
+ fun:pthread_create@@GLIBC_2.1
+}
+
+{
+ LinuxThreads: write/pthread_create
+ Memcheck:Param
+ write(buf)
+ fun:write
+ fun:pthread_create
+}
+
+## LinuxThreads leaks the stack and TLS data for the manager thread
+{
+ LinuxThreads: leaks stack of manager thread
+ Memcheck:Leak
+ fun:malloc
+ fun:__pthread_initialize_manager
+ fun:pthread_create@@GLIBC_2.1
+}
+{
+ LinuxThreads: leaks TLS data for manager thread
+ Memcheck:Leak
+ fun:calloc
+ fun:_dl_allocate_tls
+ fun:__pthread_initialize_minimal
+}
+{
+ LinuxThreads: leaks TLS data for manager thread
+ Memcheck:Leak
+ fun:memalign
+ fun:_dl_allocate_tls
+ fun:__pthread_initialize_minimal
+}
+
+##----------------------------------------------------------------------##
+## glibc-2.3.4 on FC3
+## Assumes that sysctl returns \0-terminated strings in is_smp_system
+#{
+# Unterminated strstr string in is_smp_system() (NPTL)
+# Memcheck:Cond
+# fun:strstr
+# fun:__pthread_initialize_minimal
+# obj:/lib/tls/libpthread-2.3.4.so
+# obj:/lib/tls/libpthread-2.3.4.so
+#}
+#{
+# Unterminated strstr string in is_smp_system() (NPTL)
+# Memcheck:Cond
+# fun:strstr
+# fun:__pthread_initialize_minimal
+# obj:/lib64/tls/libpthread*.so*
+#}
+
+##----------------------------------------------------------------------##
+## glibc-2.3.5 on FC4
+## Assumes that sysctl returns \0-terminated strings in is_smp_system
+#{
+# Unterminated strstr string in is_smp_system() (NPTL)
+# Memcheck:Cond
+# fun:strstr
+# fun:__pthread_initialize_minimal
+# obj:*/libpthread-2.3.5.so
+# obj:*/libpthread-2.3.5.so
+#}
+
+
+##----------------------------------------------------------------------##
+#
+# I don't know why this is needed, but still:
+{
+ glibc-2.3.x-on-SuSE-10.0-(PPC)-1
+ Memcheck:Cond
+ fun:_dl_start
+ fun:_start
+}
+{
+ glibc-2.3.x-on-SuSE-10.1-(PPC)-1
+ Memcheck:Cond
+ fun:_dl_start_final
+ fun:_dl_start
+ fun:_start
+}
+{
+ glibc-2.3.x-on-SuSE-10.0/10.1-(PPC)-2a
+ Memcheck:Cond
+ fun:index
+ obj:*ld-2.3.*.so
+}
+{
+ glibc-2.3.x-on-SuSE-10.0/10.1-(PPC)-2b
+ Memcheck:Addr4
+ fun:index
+ fun:expand_dynamic_string_token
+}
+{
+ glibc-2.3.5-on-SuSE-10.0/10.1-(PPC)-2c
+ Memcheck:Addr4
+ fun:index
+ obj:*ld-2.3.*.so
+}
+{
+ glibc-2.3.5-on-SuSE-10.0/10.1-(PPC)-3
+ Memcheck:Addr4
+ fun:*wordcopy_fwd_dest_aligned*
+ fun:mem*cpy
+ obj:*lib*2.3.*.so
+}
+{
+ glibc-2.3.5-on-SuSE-10.0/10.1-(PPC)-4
+ Memcheck:Addr4
+ fun:bcmp
+ fun:*rpath*
+ fun:*rpath*
+ fun:*rpath*
+}
+
+##----------------------------------------------------------------------##
+# Hacks pertaining to the fact that our intercept mechanism can't
+# always get hold of strlen early enough, due to idiocy in the low
+# level memory manager.
+
+## HACK to do with strlen not being intercepted early enough
+{
+ strlen-not-intercepted-early-enough-HACK-1
+ Memcheck:Addr4
+ fun:strlen
+ fun:_dl_map_object_from_fd
+ fun:_dl_map_object
+}
+
+{
+ strlen-not-intercepted-early-enough-HACK-2
+ Memcheck:Addr4
+ fun:strlen
+ fun:decompose_rpath
+ fun:cache_rpath
+ fun:_dl_map_object
+}
+
+{
+ strlen-not-intercepted-early-enough-HACK-3
+ Memcheck:Cond
+ fun:strlen
+ fun:_dl_new_object
+ fun:_dl_map_object_from_fd
+ fun:_dl_map_object
+}
+
+{
+ strlen-not-intercepted-early-enough-HACK-4
+ Memcheck:Cond
+ fun:strlen
+ fun:expand_dynamic_string_token
+ fun:_dl_map_object
+}
+
+{
+ strlen-not-intercepted-early-enough-HACK-5
+ Memcheck:Cond
+ fun:strlen
+ fun:fillin_rpath
+ fun:_dl_init_paths
+}
+
+
+## HACK to do with index not being intercepted early enough
+{
+ index-not-intercepted-early-enough-HACK-1
+ Memcheck:Cond
+ fun:index
+ obj:*
+ fun:_dl_map_object
+}
+{
+ index-not-intercepted-early-enough-HACK-2
+ Memcheck:Cond
+ fun:index
+ fun:_dl_map_object
+ obj:*
+ fun:_dl_catch_error
+}
+{
+ index-not-intercepted-early-enough-HACK-3
+ Memcheck:Cond
+ fun:index
+ fun:_dl_map_object
+ obj:*
+ fun:_dl_sysdep_start
+}
+
+{
+ index-not-intercepted-early-enough-HACK-4
+ Memcheck:Cond
+ fun:index
+ fun:expand_dynamic_string_token
+}
+
+
+##----------------------------------------------------------------------##
+## MontaVista 3.1 on ppc32 integer only
+{
+ MontaVista-3.1-ppc32-#1
+ Memcheck:Value4
+ obj:/lib/ld-2.3.2.so
+ obj:/lib/ld-2.3.2.so
+ fun:*dl_map_object*
+ obj:/lib/libc-2.3.2.so
+}
+
+{
+ MontaVista-3.1-ppc32-#2
+ Memcheck:Value4
+ fun:malloc
+ obj:/lib/ld-2.3.2.so
+ obj:/lib/ld-2.3.2.so
+ obj:/lib/libc-2.3.2.so
+}
+
+{
+ MontaVista-3.1-ppc32-#3
+ Memcheck:Value4
+ obj:/lib/ld-2.3.2.so
+ obj:/lib/ld-2.3.2.so
+}
+
+##----------------------------------------------------------------------##
+## Ubuntu something (based on Debian 3.0?) on x86
+
+{
+ Ubuntu-stripped-ld.so
+ Memcheck:Cond
+ obj:/lib/ld-2.3.*.so
+ obj:/lib/ld-2.3.*.so
+ obj:/lib/ld-2.3.*.so
+ obj:/lib/ld-2.3.*.so
+ obj:/lib/ld-2.3.*.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
+}