blob: 1af091deb52305a02838ea421129534b02aa3703 [file] [log] [blame]
daywalker63f6f782003-05-27 00:19:52 +00001
2##----------------------------------------------------------------------##
3
4# Errors to suppress by default with glibc 2.3.x
5
6# Format of this file is:
7# {
8# name_of_suppression
nethercote137bc552003-11-14 17:47:54 +00009# tool_name:supp_kind
daywalker63f6f782003-05-27 00:19:52 +000010# (optional extra info for some suppression types)
11# caller0 name, or /name/of/so/file.so
12# caller1 name, or ditto
13# (optionally: caller2 name)
14# (optionally: caller3 name)
15# }
16#
17# For Memcheck, the supp_kinds are:
18#
njn718d3b12006-12-16 00:54:12 +000019# Param Value1 Value2 Value4 Value8 Value16 Jump
njnc0616662003-06-12 09:58:41 +000020# Free Addr1 Addr2 Addr4 Addr8 Addr16
daywalker63f6f782003-05-27 00:19:52 +000021# Cond (previously known as Value0)
22#
23# and the optional extra info is:
24# if Param: name of system call param
daywalker63f6f782003-05-27 00:19:52 +000025
daywalker63f6f782003-05-27 00:19:52 +000026{
27 __GI___stpcpy/*
28 Memcheck:Cond
29 fun:__GI___stpcpy
30 fun:*
31}
32{
33 strlen/__GI__dl_open/dlopen_doit
34 Memcheck:Cond
35 fun:strlen
36 fun:__GI__dl_open
37 fun:dlopen_doit
38}
39{
40 strlen/_dl_signal_cerror/_dl_lookup_symbol_internal/do_dlsym
41 Memcheck:Cond
42 fun:_dl_signal_cerror
43 fun:_dl_lookup_symbol_internal
44 fun:do_dlsym
45}
daywalkere1879992003-06-03 14:49:54 +000046{
47 strlen/*dl_map_object*(Cond)
48 Memcheck:Cond
49 fun:strlen
50 fun:*dl_map_object*
51}
daywalker63f6f782003-05-27 00:19:52 +000052
daywalkere1879992003-06-03 14:49:54 +000053{
54 strlen/*dl_open_worker*(Cond)
55 Memcheck:Cond
56 fun:strlen
57 fun:*dl_open_worker*
58}
59{
60 strlen/_dl_sym/dlsym_doit
61 Memcheck:Cond
62 fun:strlen
63 fun:_dl_sym
64 fun:dlsym_doit
65}
66{
67 realpath is inefficiently coded
njn1d0825f2006-03-27 11:37:07 +000068 Memcheck:Overlap
daywalkere1879992003-06-03 14:49:54 +000069 fun:memcpy
daywalker777aff52003-07-18 08:06:27 +000070 fun:realpath*
daywalkere1879992003-06-03 14:49:54 +000071}
72
73{
74 realpath stupidity part II
njn1d0825f2006-03-27 11:37:07 +000075 Memcheck:Overlap
daywalkere1879992003-06-03 14:49:54 +000076 fun:strcpy
daywalker777aff52003-07-18 08:06:27 +000077 fun:realpath*
daywalkere1879992003-06-03 14:49:54 +000078}
79{
80 strlen/decompose_rpath/_dl_map_object
81 Memcheck:Cond
82 fun:strlen
83 fun:decompose_rpath
84 fun:*dl_map_object*
85}
86{
87 stpcpy/_dl_sym*
88 Memcheck:Cond
89 fun:__stpcpy
90 fun:_dl_*
91}
daywalker63f6f782003-05-27 00:19:52 +000092
93#-------- For R H 8.0
94{
95 elf_dynamic_do_rel.7/_dl_relocate_object_internal/dl_open_worker(Cond)
96 Memcheck:Cond
97 fun:elf_dynamic_do_rel.7
98 fun:_dl_relocate_object_internal
99 fun:dl_open_worker
100}
daywalkere1879992003-06-03 14:49:54 +0000101{
102 dl_relocate/dl_open_worker
103 Memcheck:Cond
104 fun:_dl_relocate_object_internal
105 fun:dl_open_worker
106}
sewardj645b94f2007-02-25 00:03:00 +0000107{
108 RedHat8-1
109 Memcheck:Cond
110 fun:elf_dynamic_do_rela.8
111 fun:_dl_relocate_object
112 fun:dl_main
113 fun:_dl_sysdep_start
114}
115{
116 RedHat8-2
117 Memcheck:Cond
118 fun:elf_dynamic_do_rel.7
119 fun:_dl_relocate_object
120 fun:dl_main
121 fun:_dl_sysdep_start
122}
123{
124 RedHat8-3
125 Memcheck:Cond
126 fun:elf_dynamic_do_rela.8
127 fun:_dl_relocate_object
128 fun:dl_open_worker
129}
daywalkere1879992003-06-03 14:49:54 +0000130
fitzhardinge1c76dc42003-12-15 09:00:21 +0000131#-------- glibc 2.3.2/ Fedora Core 1
132{
133 dl_relocate/dl_main
134 Memcheck:Cond
135 fun:_dl_relocate_object_internal
136 fun:dl_main
137}
138
rjwalsh923e7d62004-04-29 08:50:44 +0000139#-------- glibc 2.3.3/ Fedora Core 2
140{
141 dl_relocate_object/dl_main
142 Memcheck:Cond
143 fun:_dl_relocate_object
144 fun:dl_main
145}
thughese931fd42004-06-03 18:42:34 +0000146{
147 _dl_relocate_object/dl_open_worker
148 Memcheck:Cond
149 fun:_dl_relocate_object
150 fun:dl_open_worker
151}
rjwalsh923e7d62004-04-29 08:50:44 +0000152
sewardjb5f6f512005-03-10 23:59:00 +0000153#-------- glibc 2.3.4/ Fedora Core 3
154{
155 dl_relocate_object
156 Memcheck:Cond
157 fun:_dl_relocate_object
158}
159
fitzhardinge1c76dc42003-12-15 09:00:21 +0000160#-------- Data races
161{
162 _dl_lookup_symbol_internal/fixup/_dl_runtime_resolve
163 Helgrind:Eraser
164 fun:_dl_lookup_symbol_internal
165 fun:fixup
166 fun:_dl_runtime_resolve
167}
168{
rjwalsh923e7d62004-04-29 08:50:44 +0000169 _dl_lookup_symbol_x/fixup/_dl_runtime_resolve
170 Helgrind:Eraser
171 fun:_dl_lookup_symbol_x
172 fun:fixup
173 fun:_dl_runtime_resolve
174}
175{
fitzhardinge1c76dc42003-12-15 09:00:21 +0000176 _dl_lookup_versioned_symbol_internal/fixup/_dl_runtime_resolve
177 Helgrind:Eraser
178 fun:_dl_lookup_versioned_symbol_internal
179 fun:fixup
180 fun:_dl_runtime_resolve
181}
fitzhardinge47735af2004-01-21 01:27:27 +0000182{
thughes55183872004-02-29 12:42:12 +0000183 _dl_lookup_versioned_symbol/ld-2.3.2.so/ld-2.3.2.so
184 Helgrind:Eraser
185 fun:_dl_lookup_versioned_symbol
186 obj:/lib/ld-2.3.2.so
187 obj:/lib/ld-2.3.2.so
188}
189{
thughes489281a2004-10-31 10:18:23 +0000190 _dl_lookup_symbol/ld-2.3.2.so/ld-2.3.2.so
191 Helgrind:Eraser
192 fun:_dl_lookup_symbol
193 obj:/lib/ld-2.3.2.so
194 obj:/lib/ld-2.3.2.so
195}
196{
fitzhardinge47735af2004-01-21 01:27:27 +0000197 _dl_fini
198 Helgrind:Eraser
199 fun:_dl_fini
200}
thughes489281a2004-10-31 10:18:23 +0000201{
202 ld-2.3.2.so/exit/__libc_start_main
203 Helgrind:Eraser
204 obj:/lib/ld-2.3.2.so
205 fun:exit
206 fun:__libc_start_main
207}
daywalker63f6f782003-05-27 00:19:52 +0000208
daywalker63f6f782003-05-27 00:19:52 +0000209##----------------------------------------------------------------------##
sewardj7c874c72003-09-27 21:25:30 +0000210## Bugs in helper library supplied with Intel Icc 7.0 (65)
211## in /opt/intel/compiler70/ia32/lib/libcxa.so.3
212{
213 Intel compiler70/ia32/lib/libcxa.so.3 below-esp accesses
njn1d0825f2006-03-27 11:37:07 +0000214 Memcheck:Addr4
sewardj7c874c72003-09-27 21:25:30 +0000215 obj:/opt/intel/compiler70/ia32/lib/libcxa.so.3
216}
jsewardf93e8472003-12-24 11:45:16 +0000217
218##----------------------------------------------------------------------##
219## SuSE 9 after FV changes (post 2.1.0)
220
221{
222 strlen/_dl_init_paths/dl_main/_dl_sysdep_start(Cond)
223 Memcheck:Cond
224 fun:strlen
225 fun:_dl_init_paths
226 fun:dl_main
227 fun:_dl_sysdep_start
228}
229
230{
231 Ugly strchr error in /lib/ld-2.3.2.so
232 Memcheck:Cond
233 obj:/lib/ld-2.3.2.so
234}
fitzhardinge47735af2004-01-21 01:27:27 +0000235
236##----------------------------------------------------------------------##
jseward38276e82004-07-20 22:42:44 +0000237## SuSE 9.1 with post 2.1.2
fitzhardinge47735af2004-01-21 01:27:27 +0000238{
jseward38276e82004-07-20 22:42:44 +0000239 Ugly strchr error in /lib/ld-2.3.3.so
fitzhardinge47735af2004-01-21 01:27:27 +0000240 Memcheck:Cond
jseward38276e82004-07-20 22:42:44 +0000241 obj:/lib/ld-2.3.3.so
fitzhardinge47735af2004-01-21 01:27:27 +0000242}
sewardj0d683fe2005-03-14 19:25:49 +0000243
244##----------------------------------------------------------------------##
245## SuSE 9.1 with 3.0 branch (x86)
246{
247 Strstr dubiousness in pthread_initialize
248 Memcheck:Cond
249 fun:strstr
250 fun:pthread_initialize
251 obj:/lib/libpthread.so.0
252 obj:/lib/libpthread.so.0
253}
254
sewardjb5f6f512005-03-10 23:59:00 +0000255##----------------------------------------------------------------------##
256## glibc-2.3.3 on FC2
257## Assumes that sysctl returns \0-terminated strings in is_smp_system
sewardjf8033c72005-05-16 16:39:28 +0000258#{
259# Unterminated strstr string in is_smp_system() (NPTL)
260# Memcheck:Cond
261# fun:strstr
262# fun:__pthread_initialize_minimal
263# obj:/lib/tls/libpthread*.so*
264# obj:/lib/tls/libpthread*.so*
265#}
266#{
267# Unterminated strstr string in is_smp_system() (LinuxThreads)
268# Memcheck:Cond
269# fun:strstr
270# fun:pthread_initialize
271# obj:/lib/i686/libpthread*.so*
272# obj:/lib/i686/libpthread*.so*
273#}
274#{
275# Unterminated strstr string in is_smp_system() (LinuxThreads)
276# Memcheck:Cond
277# fun:strstr
278# fun:pthread_initialize
279# obj:/lib/libpthread-0.10.so
280# obj:/lib/libpthread-0.10.so
281#}
sewardjb5f6f512005-03-10 23:59:00 +0000282
283## Bug in PRE(sys_clone), really. Some args are not used.
284{
285 LinuxThread clone use (parent_tidptr)
286 Memcheck:Param
287 clone(parent_tidptr)
288 fun:clone
289 fun:pthread_create
290}
291{
292 LinuxThread clone use (child_tidptr)
293 Memcheck:Param
294 clone(child_tidptr)
295 fun:clone
296 fun:pthread_create
297}
298{
299 LinuxThread clone use (tlsinfo)
300 Memcheck:Param
301 clone(tlsinfo)
302 fun:clone
303 fun:pthread_create
304}
305{
306 LinuxThread clone use (parent_tidptr)
307 Memcheck:Param
308 clone(parent_tidptr)
309 fun:clone
310 fun:pthread_create@@GLIBC_2.1
311}
312{
313 LinuxThread clone use (child_tidptr)
314 Memcheck:Param
315 clone(child_tidptr)
316 fun:clone
317 fun:pthread_create@@GLIBC_2.1
318}
319{
320 LinuxThread clone use (tlsinfo)
321 Memcheck:Param
322 clone(tlsinfo)
323 fun:clone
324 fun:pthread_create@@GLIBC_2.1
325}
326
327## LinuxThreads manager writes messages containing undefined bytes
328{
329 LinuxThreads: write/pthread_onexit_process
330 Memcheck:Param
331 write(buf)
332 fun:pthread_onexit_process
333 fun:exit
334}
335{
336 LinuxThreads: write/pthread_join
337 Memcheck:Param
338 write(buf)
339 fun:pthread_join
340}
341{
342 LinuxThreads: write/pthread_create
343 Memcheck:Param
344 write(buf)
345 fun:pthread_create@@GLIBC_2.1
346}
347{
sewardj66225ad2007-03-12 14:53:58 +0000348 LinuxThreads: write/pthread_create 2
349 Memcheck:Param
350 write(buf)
351 fun:write
352 fun:pthread_create@@GLIBC_2.1
353 fun:main
354}
355{
sewardjb5f6f512005-03-10 23:59:00 +0000356 LinuxThreads: write/__pthread_initialize_manager/pthread_create
357 Memcheck:Param
358 write(buf)
359 fun:__pthread_initialize_manager
360 fun:pthread_create@@GLIBC_2.1
361}
362
363{
364 LinuxThreads: write/pthread_create
365 Memcheck:Param
366 write(buf)
367 fun:write
368 fun:pthread_create
369}
370
tomf7e9d872005-08-20 12:05:32 +0000371## LinuxThreads leaks the stack and TLS data for the manager thread
372{
373 LinuxThreads: leaks stack of manager thread
374 Memcheck:Leak
375 fun:malloc
376 fun:__pthread_initialize_manager
377 fun:pthread_create@@GLIBC_2.1
378}
379{
380 LinuxThreads: leaks TLS data for manager thread
381 Memcheck:Leak
382 fun:calloc
383 fun:_dl_allocate_tls
384 fun:__pthread_initialize_minimal
385}
386{
387 LinuxThreads: leaks TLS data for manager thread
388 Memcheck:Leak
389 fun:memalign
390 fun:_dl_allocate_tls
391 fun:__pthread_initialize_minimal
392}
393
sewardjb5f6f512005-03-10 23:59:00 +0000394##----------------------------------------------------------------------##
395## glibc-2.3.4 on FC3
396## Assumes that sysctl returns \0-terminated strings in is_smp_system
sewardjf8033c72005-05-16 16:39:28 +0000397#{
398# Unterminated strstr string in is_smp_system() (NPTL)
399# Memcheck:Cond
400# fun:strstr
401# fun:__pthread_initialize_minimal
402# obj:/lib/tls/libpthread-2.3.4.so
403# obj:/lib/tls/libpthread-2.3.4.so
404#}
405#{
406# Unterminated strstr string in is_smp_system() (NPTL)
407# Memcheck:Cond
408# fun:strstr
409# fun:__pthread_initialize_minimal
410# obj:/lib64/tls/libpthread*.so*
411#}
sewardj24b46342005-05-12 18:00:12 +0000412
sewardj917701d2005-05-15 17:18:40 +0000413##----------------------------------------------------------------------##
414## glibc-2.3.5 on FC4
415## Assumes that sysctl returns \0-terminated strings in is_smp_system
sewardjf8033c72005-05-16 16:39:28 +0000416#{
417# Unterminated strstr string in is_smp_system() (NPTL)
418# Memcheck:Cond
419# fun:strstr
420# fun:__pthread_initialize_minimal
421# obj:*/libpthread-2.3.5.so
422# obj:*/libpthread-2.3.5.so
423#}
sewardj24b46342005-05-12 18:00:12 +0000424
425
426##----------------------------------------------------------------------##
sewardj31d83422005-10-15 02:00:41 +0000427#
428# I don't know why this is needed, but still:
429{
dirk671ccb22006-02-22 16:10:16 +0000430 glibc-2.3.x-on-SuSE-10.0-(PPC)-1
sewardj31d83422005-10-15 02:00:41 +0000431 Memcheck:Cond
432 fun:_dl_start
433 fun:_start
434}
sewardj285c0b72005-11-18 00:15:18 +0000435{
dirk671ccb22006-02-22 16:10:16 +0000436 glibc-2.3.x-on-SuSE-10.1-(PPC)-1
437 Memcheck:Cond
438 fun:_dl_start_final
439 fun:_dl_start
440 fun:_start
441}
442{
dirkb4fdb122006-02-21 18:04:16 +0000443 glibc-2.3.x-on-SuSE-10.0/10.1-(PPC)-2a
sewardj285c0b72005-11-18 00:15:18 +0000444 Memcheck:Cond
445 fun:index
dirkb4fdb122006-02-21 18:04:16 +0000446 obj:*ld-2.3.*.so
sewardj285c0b72005-11-18 00:15:18 +0000447}
448{
dirkb4fdb122006-02-21 18:04:16 +0000449 glibc-2.3.x-on-SuSE-10.0/10.1-(PPC)-2b
sewardj285c0b72005-11-18 00:15:18 +0000450 Memcheck:Addr4
451 fun:index
452 fun:expand_dynamic_string_token
453}
454{
dirkb4fdb122006-02-21 18:04:16 +0000455 glibc-2.3.5-on-SuSE-10.0/10.1-(PPC)-2c
sewardj37a1fc12005-11-18 18:33:28 +0000456 Memcheck:Addr4
457 fun:index
dirkb4fdb122006-02-21 18:04:16 +0000458 obj:*ld-2.3.*.so
sewardj37a1fc12005-11-18 18:33:28 +0000459}
460{
dirkb4fdb122006-02-21 18:04:16 +0000461 glibc-2.3.5-on-SuSE-10.0/10.1-(PPC)-3
sewardj285c0b72005-11-18 00:15:18 +0000462 Memcheck:Addr4
463 fun:*wordcopy_fwd_dest_aligned*
464 fun:mem*cpy
dirkb4fdb122006-02-21 18:04:16 +0000465 obj:*lib*2.3.*.so
sewardj285c0b72005-11-18 00:15:18 +0000466}
sewardjd1e697a2006-05-07 23:38:23 +0000467{
468 glibc-2.3.5-on-SuSE-10.0/10.1-(PPC)-4
469 Memcheck:Addr4
470 fun:bcmp
471 fun:*rpath*
472 fun:*rpath*
473 fun:*rpath*
474}
sewardj31d83422005-10-15 02:00:41 +0000475
476##----------------------------------------------------------------------##
sewardj24b46342005-05-12 18:00:12 +0000477# Hacks pertaining to the fact that our intercept mechanism can't
478# always get hold of strlen early enough, due to idiocy in the low
479# level memory manager.
480
481## HACK to do with strlen not being intercepted early enough
482{
483 strlen-not-intercepted-early-enough-HACK-1
484 Memcheck:Addr4
485 fun:strlen
486 fun:_dl_map_object_from_fd
487 fun:_dl_map_object
488}
489
490{
491 strlen-not-intercepted-early-enough-HACK-2
492 Memcheck:Addr4
493 fun:strlen
494 fun:decompose_rpath
495 fun:cache_rpath
496 fun:_dl_map_object
497}
498
499{
500 strlen-not-intercepted-early-enough-HACK-3
501 Memcheck:Cond
502 fun:strlen
503 fun:_dl_new_object
504 fun:_dl_map_object_from_fd
505 fun:_dl_map_object
506}
507
508{
509 strlen-not-intercepted-early-enough-HACK-4
510 Memcheck:Cond
511 fun:strlen
512 fun:expand_dynamic_string_token
513 fun:_dl_map_object
514}
515
516{
517 strlen-not-intercepted-early-enough-HACK-5
518 Memcheck:Cond
519 fun:strlen
520 fun:fillin_rpath
521 fun:_dl_init_paths
522}
523
524
525## HACK to do with index not being intercepted early enough
526{
527 index-not-intercepted-early-enough-HACK-1
528 Memcheck:Cond
529 fun:index
dirk59b559a2005-08-19 20:23:49 +0000530 obj:*
sewardj24b46342005-05-12 18:00:12 +0000531 fun:_dl_map_object
532}
533{
534 index-not-intercepted-early-enough-HACK-2
535 Memcheck:Cond
536 fun:index
537 fun:_dl_map_object
dirk59b559a2005-08-19 20:23:49 +0000538 obj:*
sewardj24b46342005-05-12 18:00:12 +0000539 fun:_dl_catch_error
540}
541{
542 index-not-intercepted-early-enough-HACK-3
543 Memcheck:Cond
544 fun:index
545 fun:_dl_map_object
dirk59b559a2005-08-19 20:23:49 +0000546 obj:*
sewardj24b46342005-05-12 18:00:12 +0000547 fun:_dl_sysdep_start
548}
sewardjf36e99a2005-11-13 02:42:23 +0000549
sewardj59f18112006-02-10 12:42:46 +0000550{
551 index-not-intercepted-early-enough-HACK-4
552 Memcheck:Cond
553 fun:index
554 fun:expand_dynamic_string_token
555}
556
557
sewardjf36e99a2005-11-13 02:42:23 +0000558##----------------------------------------------------------------------##
559## MontaVista 3.1 on ppc32 integer only
560{
561 MontaVista-3.1-ppc32-#1
562 Memcheck:Value4
563 obj:/lib/ld-2.3.2.so
564 obj:/lib/ld-2.3.2.so
565 fun:*dl_map_object*
566 obj:/lib/libc-2.3.2.so
567}
568
569{
570 MontaVista-3.1-ppc32-#2
571 Memcheck:Value4
572 fun:malloc
573 obj:/lib/ld-2.3.2.so
574 obj:/lib/ld-2.3.2.so
575 obj:/lib/libc-2.3.2.so
576}
577
578{
579 MontaVista-3.1-ppc32-#3
580 Memcheck:Value4
581 obj:/lib/ld-2.3.2.so
582 obj:/lib/ld-2.3.2.so
583}
njn1132e822005-11-18 17:09:36 +0000584
585##----------------------------------------------------------------------##
586## Ubuntu something (based on Debian 3.0?) on x86
587
588{
589 Ubuntu-stripped-ld.so
590 Memcheck:Cond
dirkff0a32a2006-02-27 08:41:32 +0000591 obj:/lib/ld-2.3.*.so
592 obj:/lib/ld-2.3.*.so
593 obj:/lib/ld-2.3.*.so
594 obj:/lib/ld-2.3.*.so
595 obj:/lib/ld-2.3.*.so
njn1132e822005-11-18 17:09:36 +0000596}
597
sewardj5ce775f2007-01-05 15:09:53 +0000598##----------------------------------------------------------------------##
599# MontaVista Linux 4.0.1 on ppc32
600{
601 MVL-401-linuxthreads-pthread_create
602 Memcheck:Param
603 write(buf)
604 fun:pthread_create
605}
606{
607 MVL-401-linuxthreads-pthread_create
608 Memcheck:Param
609 write(buf)
610 obj:/lib/libpthread-0.10.so
611 fun:pthread_create
612}