blob: 91a56d5f1a553933cd1b10a73b8cafb8d14c08fc [file] [log] [blame]
gobry3b777892002-04-04 09:18:39 +00001
2##----------------------------------------------------------------------##
3
sewardj45328392002-05-16 20:57:26 +00004# Errors to suppress by default with glibc 2.2.4 / 2.2.5
gobry3b777892002-04-04 09:18:39 +00005
6# Format of this file is:
7# {
8# name_of_suppression
njnc40c3a82002-10-02 11:02:27 +00009# skin_name:supp_kind
10# (optional extra info for some suppression types)
gobry3b777892002-04-04 09:18:39 +000011# caller0 name, or /name/of/so/file.so
12# caller1 name, or ditto
13# (optionally: caller2 name)
14# (optionally: caller3 name)
njnc40c3a82002-10-02 11:02:27 +000015# }
16#
sewardj34eccb12002-10-05 16:49:09 +000017# For Memcheck, the supp_kinds are:
njnc40c3a82002-10-02 11:02:27 +000018#
19# Param Value1 Value2 Value4 Value8
20# Free Addr1 Addr2 Addr4 Addr8
21# Cond (previously known as Value0)
22#
23# and the optional extra info is:
24# if Param: name of system call param
25# if Free: name of free-ing fn)
sewardj9bf05a82002-06-06 09:02:11 +000026
sewardjef0227c2002-12-15 23:09:24 +000027#-------- For R H 8.0
28{
29 elf_dynamic_do_rel.7/_dl_relocate_object_internal/dl_open_worker(Cond)
30 Memcheck:Cond
31 fun:elf_dynamic_do_rel.7
32 fun:_dl_relocate_object_internal
33 fun:dl_open_worker
34}
35
36
sewardjc26044b2002-10-20 16:27:43 +000037#-------- For R H 7.3 on i686
38{
39 _dl_relocate_object*/*libc-2.2.?.so/_dl_catch_error*(Cond)
40 Memcheck:Cond
41 fun:_dl_relocate_object*
42 obj:*libc-2.2.?.so
43 fun:_dl_catch_error*
44}
45
46
sewardj20719f62002-09-27 00:58:10 +000047#-------- SuSE 8.1 stuff (gcc-3.2, glibc-2.2.5 + SuSE's hacks)
48{
49 __stpcpy/*
sewardj34eccb12002-10-05 16:49:09 +000050 Memcheck:Cond
sewardj20719f62002-09-27 00:58:10 +000051 fun:__stpcpy
52 fun:*
53}
54{
55 strlen/decompose_rpath/_dl_map_object
sewardj34eccb12002-10-05 16:49:09 +000056 Memcheck:Cond
sewardj20719f62002-09-27 00:58:10 +000057 fun:strlen
58 fun:decompose_rpath
59 fun:_dl_map_object
60}
61{
62 strlen/_dl_sym/dlsym_doit
sewardj34eccb12002-10-05 16:49:09 +000063 Memcheck:Cond
sewardj20719f62002-09-27 00:58:10 +000064 fun:strlen
65 fun:_dl_sym
66 fun:dlsym_doit
67}
68{
69 trecurse/__gconv_release_shlib(Addr4)
njn11cc9252002-10-07 14:42:59 +000070 Addrcheck,Memcheck:Addr4
sewardj20719f62002-09-27 00:58:10 +000071 fun:trecurse
72 fun:__gconv_release_shlib
73}
74{
75 do_release_shlib/trecurse(Addr4)
njn11cc9252002-10-07 14:42:59 +000076 Addrcheck,Memcheck:Addr4
sewardj20719f62002-09-27 00:58:10 +000077 fun:do_release_shlib
78 fun:trecurse
79}
80
sewardj75452642002-07-25 02:21:53 +000081#-------- R H Limbo (glibc-2.2.90) stuff
82{
83 elf_dynamic_do_rela.8/_dl_relocate_object_internal
sewardj34eccb12002-10-05 16:49:09 +000084 Memcheck:Cond
sewardj75452642002-07-25 02:21:53 +000085 fun:elf_dynamic_do_rela.8
86 fun:_dl_relocate_object_internal
87}
88
89{
90 __strnlen/_nl_make_l10nflist(Cond)
sewardj34eccb12002-10-05 16:49:09 +000091 Memcheck:Cond
sewardj75452642002-07-25 02:21:53 +000092 fun:__strnlen
93 fun:_nl_make_l10nflist
94}
95
96{
97 __strnlen/*vfprintf*
sewardj34eccb12002-10-05 16:49:09 +000098 Memcheck:Cond
sewardj75452642002-07-25 02:21:53 +000099 fun:__strnlen
100 fun:*vfprintf*
101}
102
103{
104 libXaw.so.7.0(Cond)
sewardj34eccb12002-10-05 16:49:09 +0000105 Memcheck:Cond
sewardj75452642002-07-25 02:21:53 +0000106 obj:*libXaw.so.7.0
107}
sewardj9bf05a82002-06-06 09:02:11 +0000108
sewardj1fe7b002002-07-16 01:43:15 +0000109#-------- Suppress errors appearing as a result of calling
110#-------- __libc_freeres()
111
112{
113 __twalk/*(Addr4)
njn11cc9252002-10-07 14:42:59 +0000114 Addrcheck,Memcheck:Addr4
sewardj1fe7b002002-07-16 01:43:15 +0000115 fun:__twalk
116}
117
118{
119 do_release_shlib/__twalk(Addr4)
njn11cc9252002-10-07 14:42:59 +0000120 Addrcheck,Memcheck:Addr4
sewardj1fe7b002002-07-16 01:43:15 +0000121 fun:do_release_shlib
122 fun:__twalk
123}
124
125{
126 __libc_freeres/free_mem/free(Free)
njn11cc9252002-10-07 14:42:59 +0000127 Addrcheck,Memcheck:Free
sewardj1fe7b002002-07-16 01:43:15 +0000128 fun:free
129 fun:free_mem
130 fun:__libc_freeres
131}
132
njn25e49d8e72002-09-23 09:36:25 +0000133#-------- Data races
134#{
135# _dl_lookup_symbol/fixup/_dl_runtime_resolve
njnc40c3a82002-10-02 11:02:27 +0000136# helgrind:Eraser
njn25e49d8e72002-09-23 09:36:25 +0000137# fun:_dl_lookup_symbol
138# fun:fixup
139# fun:_dl_runtime_resolve
140#}
141#
142#{
143# _dl_lookup_versioned_symbol/fixup/_dl_runtime_resolve
njnc40c3a82002-10-02 11:02:27 +0000144# helgrind:Eraser
njn25e49d8e72002-09-23 09:36:25 +0000145# fun:_dl_lookup_versioned_symbol
146# fun:fixup
147# fun:_dl_runtime_resolve
148#}
sewardj9bf05a82002-06-06 09:02:11 +0000149
njn25e49d8e72002-09-23 09:36:25 +0000150#-------- Threading bugs?
sewardjd8acdf22002-11-13 21:57:52 +0000151# glibc 'knows' that destroying a locked mutex will unlock it
sewardj9bf05a82002-06-06 09:02:11 +0000152{
153 pthread_error/__pthread_mutex_destroy/__closedir
njnc40c3a82002-10-02 11:02:27 +0000154 core:PThread
sewardj9bf05a82002-06-06 09:02:11 +0000155 fun:pthread_error
156 fun:__pthread_mutex_destroy
157 fun:__closedir
158}
159
160{
161 pthread_error/__pthread_mutex_destroy/_IO_default_finish
njnc40c3a82002-10-02 11:02:27 +0000162 core:PThread
sewardj9bf05a82002-06-06 09:02:11 +0000163 fun:pthread_error
164 fun:__pthread_mutex_destroy
sewardj924bc002002-06-07 00:29:39 +0000165 fun:_IO_default_finish*
sewardj9bf05a82002-06-06 09:02:11 +0000166}
167
168{
169 __pthread_mutex_unlock/_IO_funlockfile
njnc40c3a82002-10-02 11:02:27 +0000170 core:PThread
sewardj9bf05a82002-06-06 09:02:11 +0000171 fun:__pthread_mutex_unlock
172 fun:_IO_funlockfile
173}
gobry3b777892002-04-04 09:18:39 +0000174
gobry3b777892002-04-04 09:18:39 +0000175# even more glibc suppressions ?
176{
177 libc-2.2.4.so/libc-2.2.4.so/libc-2.2.4.so(Cond)
sewardj34eccb12002-10-05 16:49:09 +0000178 Memcheck:Cond
sewardj45328392002-05-16 20:57:26 +0000179 obj:*libc-2.2.?.so
180 obj:*libc-2.2.?.so
181 obj:*libc-2.2.?.so
gobry3b777892002-04-04 09:18:39 +0000182}
183{
184 libc-2.2.4.so/libc-2.2.4.so/libc-2.2.4.so(Value4)
sewardj34eccb12002-10-05 16:49:09 +0000185 Memcheck:Value4
sewardj45328392002-05-16 20:57:26 +0000186 obj:*libc-2.2.?.so
187 obj:*libc-2.2.?.so
188 obj:*libc-2.2.?.so
gobry3b777892002-04-04 09:18:39 +0000189}
190
191##### glibc 2.2.5 stuff perhaps?
192##### suppressions for coolo
193{
194 strchr/dl_open_worker(Cond)
sewardj34eccb12002-10-05 16:49:09 +0000195 Memcheck:Cond
gobry3b777892002-04-04 09:18:39 +0000196 fun:strchr
197 fun:dl_open_worker
198}
199{
sewardjb55fc4e2002-07-14 13:04:38 +0000200 __rawmemchr(Cond)
sewardj34eccb12002-10-05 16:49:09 +0000201 Memcheck:Cond
gobry3b777892002-04-04 09:18:39 +0000202 fun:__rawmemchr
gobry3b777892002-04-04 09:18:39 +0000203}
204{
205 _IO_vfprintf/__strnlen(Cond)
sewardj34eccb12002-10-05 16:49:09 +0000206 Memcheck:Cond
gobry3b777892002-04-04 09:18:39 +0000207 fun:__strnlen
208 fun:_IO_vfprintf
209}
210{
211 __strchrnul/gethostbyname*(Cond)
sewardj34eccb12002-10-05 16:49:09 +0000212 Memcheck:Cond
gobry3b777892002-04-04 09:18:39 +0000213 fun:__strchrnul
214 fun:gethostbyname*
215}
216
217
218##----
219{
220 strlen/*dl_map_object*(Cond)
sewardj34eccb12002-10-05 16:49:09 +0000221 Memcheck:Cond
gobry3b777892002-04-04 09:18:39 +0000222 fun:strlen
223 fun:*dl_map_object*
224}
225
226{
227 strlen/*dl_open_worker*(Cond)
sewardj34eccb12002-10-05 16:49:09 +0000228 Memcheck:Cond
gobry3b777892002-04-04 09:18:39 +0000229 fun:strlen
230 fun:*dl_open_worker*
231}
232
233{
234 *rawmemchr*/*nss*(Cond)
sewardj34eccb12002-10-05 16:49:09 +0000235 Memcheck:Cond
gobry3b777892002-04-04 09:18:39 +0000236 fun:*rawmemchr*
237 fun:*nss*
238}
239
240{
241 *strchrnul*/*nss*(Cond)
sewardj34eccb12002-10-05 16:49:09 +0000242 Memcheck:Cond
gobry3b777892002-04-04 09:18:39 +0000243 fun:*strchrnul*
244 fun:*nss*
245}
246
247# gcc version 2.96 20000731 (Red Hat Linux 7.1 2.96-98)
248# on Red Hat 7.2 (x86) miscompiles __mpn_construct_double in
249# __mpn_construct_double (../sysdeps/ieee754/dbl-64/mpn2dbl.c:45)
250# (glibc-2.2.4) to read and write below %esp. Hence the following
251# two:
252{
253 __mpn_construct_double/*(Addr4)
njn11cc9252002-10-07 14:42:59 +0000254 Addrcheck,Memcheck:Addr4
gobry3b777892002-04-04 09:18:39 +0000255 fun:__mpn_construct_double
256 fun:*
257}
258{
259 __mpn_construct_double/*(Addr8)
njn11cc9252002-10-07 14:42:59 +0000260 Addrcheck,Memcheck:Addr8
gobry3b777892002-04-04 09:18:39 +0000261 fun:__mpn_construct_double
262 fun:*
263}
264
265# More of the same (gcc bug, I'm pretty sure)
266{
267 __fabs/*(Addr4)
njn11cc9252002-10-07 14:42:59 +0000268 Addrcheck,Memcheck:Addr4
gobry3b777892002-04-04 09:18:39 +0000269 fun:__fabs
270 fun:*
271}
272{
273 __fabs/*(Addr8)
njn11cc9252002-10-07 14:42:59 +0000274 Addrcheck,Memcheck:Addr8
gobry3b777892002-04-04 09:18:39 +0000275 fun:__fabs
276 fun:*
277}
278
279
280# Not sure what this is about ... but anyway
281{
282 pthread_sighandler/*(Addr4)
njn11cc9252002-10-07 14:42:59 +0000283 Addrcheck,Memcheck:Addr4
gobry3b777892002-04-04 09:18:39 +0000284 fun:pthread_sighandler
285 fun:*
286}
287
288
289# More glibc stuff, AFAICS
290
291{
292 __strnlen/__argz_stringify/_nl_make_l10nflist(Cond)
sewardj34eccb12002-10-05 16:49:09 +0000293 Memcheck:Cond
gobry3b777892002-04-04 09:18:39 +0000294 fun:__strnlen
295 fun:__argz_stringify
296 fun:_nl_make_l10nflist
297}
298
299#--------------
300{
sewardj924bc002002-06-07 00:29:39 +0000301 _dl_relocate_object*/dl_open_worker/_dl_catch_error*(Cond)
sewardj34eccb12002-10-05 16:49:09 +0000302 Memcheck:Cond
sewardj924bc002002-06-07 00:29:39 +0000303 fun:_dl_relocate_object*
gobry3b777892002-04-04 09:18:39 +0000304 fun:dl_open_worker
sewardj924bc002002-06-07 00:29:39 +0000305 fun:_dl_catch_error*
gobry3b777892002-04-04 09:18:39 +0000306}
307{
308 _dl_relocate_object/libc-2.2.4.so/_dl_catch_error(Cond)
sewardj34eccb12002-10-05 16:49:09 +0000309 Memcheck:Cond
gobry3b777892002-04-04 09:18:39 +0000310 fun:_dl_relocate_object
sewardj45328392002-05-16 20:57:26 +0000311 obj:*libc-2.2.?.so
gobry3b777892002-04-04 09:18:39 +0000312 fun:_dl_catch_error
313}
314
315{
316 strrchr/_dl_map_object_from_fd/_dl_map_object(Cond)
sewardj34eccb12002-10-05 16:49:09 +0000317 Memcheck:Cond
gobry3b777892002-04-04 09:18:39 +0000318 fun:strrchr
319 fun:_dl_map_object_from_fd
320 fun:_dl_map_object
321}
322
323#-------------------
324{
325 socketcall.connect(serv_addr)/__libc_connect/*
njn11cc9252002-10-07 14:42:59 +0000326 Addrcheck,Memcheck:Param
gobry3b777892002-04-04 09:18:39 +0000327 socketcall.connect(serv_addr)
328 fun:__libc_connect
329 fun:*
330}
331{
332 socketcall.connect(serv_addr)/libc-2.2.4.so/libc-2.2.4.so
njn11cc9252002-10-07 14:42:59 +0000333 Addrcheck,Memcheck:Param
gobry3b777892002-04-04 09:18:39 +0000334 socketcall.connect(serv_addr)
sewardj45328392002-05-16 20:57:26 +0000335 obj:*libc-2.2.?.so
336 obj:*libc-2.2.?.so
gobry3b777892002-04-04 09:18:39 +0000337}
338
339#----------------------
340{
341 write(buf)/__libc_write/libX11.so.6.2/libX11.so.6.2(Param)
njn11cc9252002-10-07 14:42:59 +0000342 Addrcheck,Memcheck:Param
gobry3b777892002-04-04 09:18:39 +0000343 write(buf)
344 fun:__libc_write
345 obj:/usr/X11R6/lib/libX11.so.6.2
346 obj:/usr/X11R6/lib/libX11.so.6.2
347}
348{
349 write(buf)/libc-2.2.4.so/libX11.so.6.2/libX11.so.6.2(Param)
njn11cc9252002-10-07 14:42:59 +0000350 Addrcheck,Memcheck:Param
gobry3b777892002-04-04 09:18:39 +0000351 write(buf)
sewardj45328392002-05-16 20:57:26 +0000352 obj:*libc-2.2.?.so
gobry3b777892002-04-04 09:18:39 +0000353 obj:/usr/X11R6/lib/libX11.so.6.2
354 obj:/usr/X11R6/lib/libX11.so.6.2
355}
356
357#{
358# llseek(result)/__libc_lseek64/_IO_file_seek(Param)
359# Param
360# llseek(result)
361# fun:__libc_lseek64
362# fun:_IO_file_seek
363#}
364
365{
366 writev(vector[...])/__writev/libX11.so.6.2/libX11.so.6.2
njn11cc9252002-10-07 14:42:59 +0000367 Addrcheck,Memcheck:Param
gobry3b777892002-04-04 09:18:39 +0000368 writev(vector[...])
369 fun:__writev
370 obj:/usr/X11R6/lib/libX11.so.6.2
371 obj:/usr/X11R6/lib/libX11.so.6.2
372}
373
374#----------------
375{
376 __rawmemchr/libXt.so.6.0/libXt.so.6.0
sewardj34eccb12002-10-05 16:49:09 +0000377 Memcheck:Cond
gobry3b777892002-04-04 09:18:39 +0000378 fun:__rawmemchr
379 obj:/usr/X11R6/lib/libXt.so.6.0
380 obj:/usr/X11R6/lib/libXt.so.6.0
381}
382{
383 libc-2.2.4.so/libXt.so.6.0/libXt.so.6.0
sewardj34eccb12002-10-05 16:49:09 +0000384 Memcheck:Cond
sewardj45328392002-05-16 20:57:26 +0000385 obj:*libc-2.2.?.so
gobry3b777892002-04-04 09:18:39 +0000386 obj:/usr/X11R6/lib/libXt.so.6.0
387 obj:/usr/X11R6/lib/libXt.so.6.0
388}
389
390##----------------------------------------------------------------------##
391