blob: 03b1241bcf448758a36f1be1da84a315c16c4be9 [file] [log] [blame]
sewardj95386ae2007-11-09 22:50:55 +00001
2##----------------------------------------------------------------------##
3# Suppressions for the Helgrind tool when using
4# a glibc-2.{2,3,4,5,6} system
5
6######------------ glibc-2.5 specific ------------######
7#
8## NB. This is the "reference set". Derived sets for
sewardja1c0df32007-11-18 18:22:50 +00009## glibc 2.7, 2.6, 2.4 and 2.3 follow below.
sewardj95386ae2007-11-09 22:50:55 +000010{
11 helgrind-glibc25-001
sewardj963286e2007-11-10 12:44:56 +000012 Helgrind:Race
sewardjb9354be2007-11-18 01:40:14 +000013 obj:/lib*/ld-2.5.*so
14 obj:/lib*/ld-2.5.*so
sewardj95386ae2007-11-09 22:50:55 +000015}
16{
17 helgrind-glibc25-002
sewardj963286e2007-11-10 12:44:56 +000018 Helgrind:Race
sewardjb9354be2007-11-18 01:40:14 +000019 obj:/lib*/ld-2.5.*so
20 obj:/lib*/libc-2.5.*so
21 obj:/lib*/ld-2.5.*so
sewardj95386ae2007-11-09 22:50:55 +000022}
23{
24 helgrind-glibc25-003
sewardj963286e2007-11-10 12:44:56 +000025 Helgrind:Race
sewardjb9354be2007-11-18 01:40:14 +000026 obj:/lib*/ld-2.5.*so
27 obj:/lib*/libc-2.5.*so
28 obj:/lib*/libc-2.5.*so
sewardj95386ae2007-11-09 22:50:55 +000029}
30{
31 helgrind-glibc25-004
sewardj963286e2007-11-10 12:44:56 +000032 Helgrind:Race
sewardjb9354be2007-11-18 01:40:14 +000033 obj:/lib*/libc-2.5.*so
34 obj:/lib*/libc-2.5.*so
sewardj95386ae2007-11-09 22:50:55 +000035}
36{
37 helgrind-glibc25-005
sewardj963286e2007-11-10 12:44:56 +000038 Helgrind:Race
sewardjb9354be2007-11-18 01:40:14 +000039 obj:/lib*/libpthread-2.5.*so
40 obj:/lib*/libpthread-2.5.*so
41 obj:/lib*/libpthread-2.5.*so
sewardj95386ae2007-11-09 22:50:55 +000042}
43{
44 helgrind-glibc25-006
sewardj963286e2007-11-10 12:44:56 +000045 Helgrind:Race
sewardjb9354be2007-11-18 01:40:14 +000046 obj:/lib*/libpthread-2.5.*so
47 obj:/lib*/libpthread-2.5.*so
48 obj:/lib*/libc-2.5.*so
sewardj95386ae2007-11-09 22:50:55 +000049}
50{
51 helgrind-glibc25-007
sewardj963286e2007-11-10 12:44:56 +000052 Helgrind:Race
sewardjb9354be2007-11-18 01:40:14 +000053 obj:/lib*/ld-2.5.*so
54 obj:/lib*/libc-2.5.*so
55 obj:/lib*/libdl-2.5.*so
sewardj95386ae2007-11-09 22:50:55 +000056}
57{
58 helgrind-glibc25-008
sewardj963286e2007-11-10 12:44:56 +000059 Helgrind:Race
sewardjb9354be2007-11-18 01:40:14 +000060 obj:/lib*/libpthread-2.5.*so
61 obj:/lib*/libc-2.5.*so
sewardj95386ae2007-11-09 22:50:55 +000062}
63{
64 helgrind-glibc25-009
sewardj963286e2007-11-10 12:44:56 +000065 Helgrind:Race
sewardjb9354be2007-11-18 01:40:14 +000066 obj:/lib*/libc-2.5.*so
sewardj95386ae2007-11-09 22:50:55 +000067 fun:*
sewardjb9354be2007-11-18 01:40:14 +000068 obj:/lib*/libc-2.5.*so
sewardj95386ae2007-11-09 22:50:55 +000069}
70{
71 helgrind-glibc25-010
sewardj963286e2007-11-10 12:44:56 +000072 Helgrind:Race
sewardjb9354be2007-11-18 01:40:14 +000073 obj:/lib*/ld-2.5.*so
74 obj:/lib*/libpthread-2.5.*so
sewardj95386ae2007-11-09 22:50:55 +000075}
76{
77 helgrind-glibc25-011
sewardj963286e2007-11-10 12:44:56 +000078 Helgrind:Race
sewardjb9354be2007-11-18 01:40:14 +000079 obj:/lib*/libc-2.5.*so
80 obj:/lib*/libpthread-2.5.*so
sewardj95386ae2007-11-09 22:50:55 +000081}
82{
83 helgrind-glibc25-013
sewardj963286e2007-11-10 12:44:56 +000084 Helgrind:Race
sewardjb9354be2007-11-18 01:40:14 +000085 obj:/lib*/ld-2.5.*so
sewardj95386ae2007-11-09 22:50:55 +000086 fun:*
sewardjb9354be2007-11-18 01:40:14 +000087 obj:/lib*/ld-2.5.*so
sewardj95386ae2007-11-09 22:50:55 +000088}
89{
90 helgrind-glibc25-014
sewardj963286e2007-11-10 12:44:56 +000091 Helgrind:Race
sewardjb9354be2007-11-18 01:40:14 +000092 obj:/lib*/ld-2.5.*so
93 obj:/lib*/ld-2.5.*so
94 obj:/lib*/libpthread-2.5.*so
sewardj95386ae2007-11-09 22:50:55 +000095}
96
97# These are very ugly. They are needed to suppress errors inside (eg)
98# NPTL's pthread_cond_signal. Why only one stack frame -- at least we
99# should see the wrapper calling the real functions, right?
100# Unfortunately, no: the real functions are handwritten assembly (in
101# the glibc-2.5 sources) and does not create a proper stack frame.
102# Therefore it's only one level of unwinding before we're back out in
103# user code rather than the 2 levels you'd expect.
104{
105 helgrind-glibc25-101
sewardj963286e2007-11-10 12:44:56 +0000106 Helgrind:Race
sewardjb9354be2007-11-18 01:40:14 +0000107 obj:/lib*/libpthread-2.5.*so
sewardj95386ae2007-11-09 22:50:55 +0000108 fun:pthread_*
109}
110{
111 helgrind-glibc25-102
sewardj963286e2007-11-10 12:44:56 +0000112 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000113 fun:mythread_wrapper
sewardjb9354be2007-11-18 01:40:14 +0000114 obj:/lib*/libpthread-2.5.*so
sewardj95386ae2007-11-09 22:50:55 +0000115}
116{
117 helgrind-glibc25-103
sewardj963286e2007-11-10 12:44:56 +0000118 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000119 fun:pthread_cond_*@@GLIBC_2.3.2
120}
121{
122 helgrind-glibc25-104
sewardj963286e2007-11-10 12:44:56 +0000123 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000124 fun:__lll_mutex_*
125}
126{
127 helgrind-glibc25-105
sewardj963286e2007-11-10 12:44:56 +0000128 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000129 fun:pthread_rwlock_*lock*
130}
sewardjb9354be2007-11-18 01:40:14 +0000131{
132 helgrind-glibc25-107
133 Helgrind:Race
134 obj:/lib*/libpthread-2.5.*so
135 fun:sem_*
136}
137{
138 helgrind-glibc25-108
139 Helgrind:Race
140 fun:clone
141}
142{
143 helgrind-glibc25-109
144 Helgrind:Race
145 fun:start_thread
146}
sewardj95386ae2007-11-09 22:50:55 +0000147
sewardj9f9235a2008-05-29 07:26:28 +0000148######------------ glibc-2.8 specific ---------######
149#
150{
151 helgrind-glibc28-001
152 Helgrind:Race
153 obj:/lib*/ld-2.8.*so
154 obj:/lib*/ld-2.8.*so
155}
156{
157 helgrind-glibc28-002
158 Helgrind:Race
159 obj:/lib*/ld-2.8.*so
160 obj:/lib*/libc-2.8.*so
161 obj:/lib*/ld-2.8.*so
162}
163{
164 helgrind-glibc28-003
165 Helgrind:Race
166 obj:/lib*/ld-2.8.*so
167 obj:/lib*/libc-2.8.*so
168 obj:/lib*/libc-2.8.*so
169}
170{
171 helgrind-glibc28-004
172 Helgrind:Race
173 obj:/lib*/libc-2.8.*so
174 obj:/lib*/libc-2.8.*so
175}
176{
177 helgrind-glibc28-006
178 Helgrind:Race
179 obj:/lib*/libpthread-2.8.*so
180 obj:/lib*/libpthread-2.8.*so
181 obj:/lib*/libc-2.8.*so
182}
183{
184 helgrind-glibc28-010
185 Helgrind:Race
186 obj:/lib*/ld-2.8.*so
187 obj:/lib*/libpthread-2.8.*so
188}
189
190{
191 helgrind-glibc28-101
192 Helgrind:Race
193 obj:/lib*/libpthread-2.8.*so
194 fun:pthread_*
195}
196{
197 helgrind-glibc28-102
198 Helgrind:Race
199 fun:mythread_wrapper
200 obj:/lib*/libpthread-2.8.*so
201}
202{
203 helgrind-glibc28-110
204 Helgrind:Race
205 obj:/lib*/libc-2.8.*so
206 fun:pthread_*
207}
208{
209 helgrind-glibc28-111
210 Helgrind:Race
211 fun:__lll_*lock_*
212}
sewardjf98e1c02008-10-25 16:22:41 +0000213{
214 helgrind-glibc28-112
215 Helgrind:Race
216 fun:pthread_create@*
217}
sewardj9f569b72008-11-13 13:33:09 +0000218{
219 helgrind-glibc28-113
220 Helgrind:Race
221 fun:pthread_barrier_wait*
222}
sewardj9f9235a2008-05-29 07:26:28 +0000223
sewardja1c0df32007-11-18 18:22:50 +0000224######------------ glibc-2.7 specific ---------######
sewardj95386ae2007-11-09 22:50:55 +0000225#
226{
sewardja1c0df32007-11-18 18:22:50 +0000227 helgrind-glibc27-001
sewardj963286e2007-11-10 12:44:56 +0000228 Helgrind:Race
sewardja1c0df32007-11-18 18:22:50 +0000229 obj:/lib*/ld-2.7.*so
230 obj:/lib*/ld-2.7.*so
sewardj95386ae2007-11-09 22:50:55 +0000231}
232{
sewardja1c0df32007-11-18 18:22:50 +0000233 helgrind-glibc27-003
sewardj963286e2007-11-10 12:44:56 +0000234 Helgrind:Race
sewardja1c0df32007-11-18 18:22:50 +0000235 obj:/lib*/ld-2.7.*so
236 obj:/lib*/libc-2.7.*so
237 obj:/lib*/libc-2.7.*so
sewardj95386ae2007-11-09 22:50:55 +0000238}
239{
sewardja1c0df32007-11-18 18:22:50 +0000240 helgrind-glibc27-004
sewardj963286e2007-11-10 12:44:56 +0000241 Helgrind:Race
sewardja1c0df32007-11-18 18:22:50 +0000242 obj:/lib*/libc-2.7.*so
243 obj:/lib*/libc-2.7.*so
sewardj95386ae2007-11-09 22:50:55 +0000244}
245{
sewardj5eb6d652007-12-09 02:22:55 +0000246 helgrind-glibc27-005
247 Helgrind:Race
248 obj:/lib*/libpthread-2.7.*so
249 obj:/lib*/libpthread-2.7.*so
250 obj:/lib*/libpthread-2.7.*so
251}
252{
sewardja1c0df32007-11-18 18:22:50 +0000253 helgrind-glibc27-011
sewardj963286e2007-11-10 12:44:56 +0000254 Helgrind:Race
sewardja1c0df32007-11-18 18:22:50 +0000255 obj:/lib*/libc-2.7.*so
256 obj:/lib*/libpthread-2.7.*so
sewardj95386ae2007-11-09 22:50:55 +0000257}
258
259{
sewardja1c0df32007-11-18 18:22:50 +0000260 helgrind-glibc27-101
sewardj963286e2007-11-10 12:44:56 +0000261 Helgrind:Race
sewardja1c0df32007-11-18 18:22:50 +0000262 obj:/lib*/libpthread-2.7.*so
sewardj95386ae2007-11-09 22:50:55 +0000263 fun:pthread_*
264}
265{
sewardja1c0df32007-11-18 18:22:50 +0000266 helgrind-glibc27-102
sewardj963286e2007-11-10 12:44:56 +0000267 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000268 fun:mythread_wrapper
sewardja1c0df32007-11-18 18:22:50 +0000269 obj:/lib*/libpthread-2.7.*so
270}
271{
272 helgrind-glibc27-107
273 Helgrind:Race
274 obj:/lib*/libpthread-2.7.*so
275 fun:sem_*
sewardj95386ae2007-11-09 22:50:55 +0000276}
277
278######------------ glibc-2.6 specific ---------######
279#
280{
281 helgrind-glibc26-001
sewardj963286e2007-11-10 12:44:56 +0000282 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000283 obj:/lib*/ld-2.6.*so
284 obj:/lib*/ld-2.6.*so
sewardj95386ae2007-11-09 22:50:55 +0000285}
286{
287 helgrind-glibc26-003
sewardj963286e2007-11-10 12:44:56 +0000288 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000289 obj:/lib*/ld-2.6.*so
290 obj:/lib*/libc-2.6.*so
291 obj:/lib*/libc-2.6.*so
292}
293{
294 helgrind-glibc26-004
sewardj963286e2007-11-10 12:44:56 +0000295 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000296 obj:/lib*/libc-2.6.*so
297 obj:/lib*/libc-2.6.*so
298}
299{
sewardj5eb6d652007-12-09 02:22:55 +0000300 helgrind-glibc26-005
301 Helgrind:Race
302 obj:/lib*/libpthread-2.6.*so
303 obj:/lib*/libpthread-2.6.*so
304 obj:/lib*/libpthread-2.6.*so
305}
306{
sewardj95386ae2007-11-09 22:50:55 +0000307 helgrind-glibc26-006
sewardj963286e2007-11-10 12:44:56 +0000308 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000309 obj:/lib*/libpthread-2.6.*so
310 obj:/lib*/libpthread-2.6.*so
311 obj:/lib*/libc-2.6.*so
312}
313{
314 helgrind-glibc26-008
sewardj963286e2007-11-10 12:44:56 +0000315 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000316 obj:/lib*/libpthread-2.6.*so
317 obj:/lib*/libc-2.6.*so
318}
sewardjfe692d62007-11-12 01:01:08 +0000319{
320 helgrind-glibc26-011
321 Helgrind:Race
322 obj:/lib*/libc-2.6.*so
323 obj:/lib*/libpthread-2.6.*so
324}
325{
326 helgrind-glibc26-014
327 Helgrind:Race
328 obj:/lib*/ld-2.6.*so
329 obj:/lib*/ld-2.6.*so
330 obj:/lib*/libpthread-2.6.*so
331}
sewardj95386ae2007-11-09 22:50:55 +0000332
333{
334 helgrind-glibc26-101
sewardj963286e2007-11-10 12:44:56 +0000335 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000336 obj:/lib*/libpthread-2.6.*so
337 fun:pthread_*
338}
339{
340 helgrind-glibc26-102
sewardj963286e2007-11-10 12:44:56 +0000341 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000342 fun:mythread_wrapper
343 obj:/lib*/libpthread-2.6.*so
344}
345{
346 helgrind-glibc26-106
sewardj963286e2007-11-10 12:44:56 +0000347 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000348 fun:__lll_lock_wait
349}
sewardja8e939e2007-11-13 20:51:26 +0000350{
351 helgrind-glibc26-107
352 Helgrind:Race
353 obj:/lib*/libpthread-2.6.*so
354 fun:sem_*
355}
sewardj95386ae2007-11-09 22:50:55 +0000356
sewardja1c0df32007-11-18 18:22:50 +0000357######------------ glibc-2.4 specific ------------######
358#
359{
360 helgrind-glibc24-001
361 Helgrind:Race
362 obj:/lib*/ld-2.4.*so
363 obj:/lib*/ld-2.4.*so
364}
365{
366 helgrind-glibc24-003
367 Helgrind:Race
368 obj:/lib*/ld-2.4.*so
369 obj:/lib*/libc-2.4.*so
370 obj:/lib*/libc-2.4.*so
371}
372{
373 helgrind-glibc24-004
374 Helgrind:Race
375 obj:/lib*/libc-2.4.*so
376 obj:/lib*/libc-2.4.*so
377}
378{
379 helgrind-glibc24-005
380 Helgrind:Race
381 obj:/lib*/libpthread-2.4.*so
382 obj:/lib*/libpthread-2.4.*so
383 obj:/lib*/libpthread-2.4.*so
384}
385{
386 helgrind-glibc24-006
387 Helgrind:Race
388 obj:/lib*/libpthread-2.4.*so
389 obj:/lib*/libpthread-2.4.*so
390 obj:/lib*/libc-2.4.*so
391}
392{
393 helgrind-glibc24-008
394 Helgrind:Race
395 obj:/lib*/libpthread-2.4.*so
396 obj:/lib*/libc-2.4.*so
397}
398{
399 helgrind-glibc24-010
400 Helgrind:Race
401 obj:/lib*/ld-2.4.*so
402 obj:/lib*/libpthread-2.4.*so
403}
404{
405 helgrind-glibc24-011
406 Helgrind:Race
407 obj:/lib*/libc-2.4.*so
408 obj:/lib*/libpthread-2.4.*so
409}
410
411{
412 helgrind-glibc24-101
413 Helgrind:Race
414 obj:/lib*/libpthread-2.4.*so
415 fun:pthread_*
416}
417{
418 helgrind-glibc24-102
419 Helgrind:Race
420 fun:mythread_wrapper
421 obj:/lib*/libpthread-2.4.*so
422}
423
sewardj95386ae2007-11-09 22:50:55 +0000424######--------- glibc-2.3 specific ---------######
425{
426 helgrind-glibc23-001
sewardj963286e2007-11-10 12:44:56 +0000427 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000428 obj:/lib*/ld-2.3.*so
429 obj:/lib*/ld-2.3.*so
sewardj95386ae2007-11-09 22:50:55 +0000430}
431{
432 helgrind-glibc23-002
sewardj963286e2007-11-10 12:44:56 +0000433 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000434 obj:/lib*/ld-2.3.*so
435 obj:/lib*/libc-2.3.*so
436 obj:/lib*/ld-2.3.*so
437}
438{
sewardj1990d5d2007-12-06 01:58:05 +0000439 helgrind-glibc23-003
440 Helgrind:Race
441 obj:/lib*/ld-2.3.*so
442 obj:/lib*/libc-2.3.*so
443 obj:/lib*/libc-2.3.*so
444}
445{
sewardj95386ae2007-11-09 22:50:55 +0000446 helgrind-glibc23-004
sewardj963286e2007-11-10 12:44:56 +0000447 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000448 obj:/lib*/libc-2.3.*so
449 obj:/lib*/libc-2.3.*so
450}
451{
452 helgrind-glibc23-006
sewardj963286e2007-11-10 12:44:56 +0000453 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000454 obj:/lib*/libpthread-2.3.*so
455 obj:/lib*/libpthread-2.3.*so
456 obj:/lib*/libc-2.3.*so
457}
458{
459 helgrind-glibc23-008
sewardj963286e2007-11-10 12:44:56 +0000460 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000461 obj:/lib*/libpthread-2.3.*so
462 obj:/lib*/libc-2.3.*so
463}
464{
465 helgrind-glibc23-009
sewardj963286e2007-11-10 12:44:56 +0000466 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000467 obj:/lib*/libc-2.3.*so
468 obj:/lib*/ld-2.3.*so
469 obj:/lib*/libc-2.3.*so
470}
471{
472 helgrind-glibc23-011
sewardj963286e2007-11-10 12:44:56 +0000473 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000474 obj:/lib*/libc-2.3.*so
475 obj:/lib*/libpthread-2.3.*so
476}
477{
478 helgrind-glibc23-012
sewardj963286e2007-11-10 12:44:56 +0000479 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000480 obj:/lib*/ld-2.3.*so
481 obj:/lib*/ld-2.3.*so
482 obj:/lib*/libc-2.3.*so
483}
484{
485 helgrind-glibc23-014
sewardj963286e2007-11-10 12:44:56 +0000486 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000487 obj:/lib*/ld-2.3.*so
488 obj:/lib*/ld-2.3.*so
489 obj:/lib*/libpthread-2.3.*so
490}
491
492{
493 helgrind-glibc23-100
sewardj963286e2007-11-10 12:44:56 +0000494 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000495 obj:/lib*/libpthread-2.3.*so
496 fun:pthread_*
497}
498{
499 helgrind-glibc23-101
sewardj963286e2007-11-10 12:44:56 +0000500 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000501 fun:mythread_wrapper
502 obj:/lib*/libpthread-2.3.*so
503}
504
505######------ qt4 specific (GNU mangling) ------######
506{
sewardj0f7a0292008-11-19 10:41:55 +0000507 helgrind-qt4---QMutex::lock()-QMutex::lock()
sewardj963286e2007-11-10 12:44:56 +0000508 Helgrind:Race
sewardj95386ae2007-11-09 22:50:55 +0000509 fun:_ZN6QMutex4lockEv
510 fun:_ZN6QMutex4lockEv
511}
sewardj0f7a0292008-11-19 10:41:55 +0000512
513{
514 helgrind-qt4---pthread_setspecific-QThreadPrivate::start(void*)
515 Helgrind:Race
516 fun:pthread_setspecific
517 fun:_ZN14QThreadPrivate5startEPv
518}
519
520{
521 helgrind-qt4---free_stacks-__deallocate_stack
522 Helgrind:Race
523 fun:free_stacks
524 fun:__deallocate_stack
525}
526
527{
528 helgrind---pthread_setspecific
529 Helgrind:Race
530 fun:pthread_setspecific
531}
532
533{
534 helgrind---pthread_getspecific
535 Helgrind:Race
536 fun:pthread_getspecific
537}
538
539{
540 helgrind---ld.so-...-dlsym
541 Helgrind:Race
542 obj:/lib*/ld-2.*so*
543 ...
544 fun:dlsym
545}