sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 1 | |
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 | ||||
9 | ## glibc 2.4, 2.3 and 2.6 follow below. | ||||
10 | { | ||||
11 | helgrind-glibc25-001 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 12 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 13 | obj:/lib*/ld-2.5.so |
14 | obj:/lib*/ld-2.5.so | ||||
15 | obj:/lib*/ld-2.5.so | ||||
16 | } | ||||
17 | { | ||||
18 | helgrind-glibc25-002 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 19 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 20 | obj:/lib*/ld-2.5.so |
21 | obj:/lib*/libc-2.5.so | ||||
22 | obj:/lib*/ld-2.5.so | ||||
23 | } | ||||
24 | { | ||||
25 | helgrind-glibc25-003 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 26 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 27 | obj:/lib*/ld-2.5.so |
28 | obj:/lib*/libc-2.5.so | ||||
29 | obj:/lib*/libc-2.5.so | ||||
30 | } | ||||
31 | { | ||||
32 | helgrind-glibc25-004 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 33 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 34 | obj:/lib*/libc-2.5.so |
35 | obj:/lib*/libc-2.5.so | ||||
36 | } | ||||
37 | { | ||||
38 | helgrind-glibc25-005 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 39 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 40 | obj:/lib*/libpthread-2.5.so |
41 | obj:/lib*/libpthread-2.5.so | ||||
42 | obj:/lib*/libpthread-2.5.so | ||||
43 | } | ||||
44 | { | ||||
45 | helgrind-glibc25-006 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 46 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 47 | obj:/lib*/libpthread-2.5.so |
48 | obj:/lib*/libpthread-2.5.so | ||||
49 | obj:/lib*/libc-2.5.so | ||||
50 | } | ||||
51 | { | ||||
52 | helgrind-glibc25-007 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 53 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 54 | obj:/lib*/ld-2.5.so |
55 | obj:/lib*/libc-2.5.so | ||||
56 | obj:/lib*/libdl-2.5.so | ||||
57 | } | ||||
58 | { | ||||
59 | helgrind-glibc25-008 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 60 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 61 | obj:/lib*/libpthread-2.5.so |
62 | obj:/lib*/libc-2.5.so | ||||
63 | } | ||||
64 | { | ||||
65 | helgrind-glibc25-009 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 66 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 67 | obj:/lib*/libc-2.5.so |
68 | fun:* | ||||
69 | obj:/lib*/libc-2.5.so | ||||
70 | } | ||||
71 | { | ||||
72 | helgrind-glibc25-010 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 73 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 74 | obj:/lib*/ld-2.5.so |
75 | obj:/lib*/libpthread-2.5.so | ||||
76 | } | ||||
77 | { | ||||
78 | helgrind-glibc25-011 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 79 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 80 | obj:/lib*/libc-2.5.so |
81 | obj:/lib*/libpthread-2.5.so | ||||
82 | } | ||||
83 | { | ||||
84 | helgrind-glibc25-013 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 85 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 86 | obj:/lib*/ld-2.5.so |
87 | fun:* | ||||
88 | obj:/lib*/ld-2.5.so | ||||
89 | } | ||||
90 | { | ||||
91 | helgrind-glibc25-014 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 92 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 93 | obj:/lib*/ld-2.5.so |
94 | obj:/lib*/ld-2.5.so | ||||
95 | obj:/lib*/libpthread-2.5.so | ||||
96 | } | ||||
97 | |||||
98 | # These are very ugly. They are needed to suppress errors inside (eg) | ||||
99 | # NPTL's pthread_cond_signal. Why only one stack frame -- at least we | ||||
100 | # should see the wrapper calling the real functions, right? | ||||
101 | # Unfortunately, no: the real functions are handwritten assembly (in | ||||
102 | # the glibc-2.5 sources) and does not create a proper stack frame. | ||||
103 | # Therefore it's only one level of unwinding before we're back out in | ||||
104 | # user code rather than the 2 levels you'd expect. | ||||
105 | { | ||||
106 | helgrind-glibc25-101 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 107 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 108 | obj:/lib*/libpthread-2.5.so |
109 | fun:pthread_* | ||||
110 | } | ||||
111 | { | ||||
112 | helgrind-glibc25-102 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 113 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 114 | fun:mythread_wrapper |
115 | obj:/lib*/libpthread-2.5.so | ||||
116 | } | ||||
117 | { | ||||
118 | helgrind-glibc25-103 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 119 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 120 | fun:pthread_cond_*@@GLIBC_2.3.2 |
121 | } | ||||
122 | { | ||||
123 | helgrind-glibc25-104 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 124 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 125 | fun:__lll_mutex_* |
126 | } | ||||
127 | { | ||||
128 | helgrind-glibc25-105 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 129 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 130 | fun:pthread_rwlock_*lock* |
131 | } | ||||
132 | |||||
133 | ######------------ glibc-2.4 specific ------------###### | ||||
134 | # | ||||
135 | { | ||||
136 | helgrind-glibc24-001 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 137 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 138 | obj:/lib*/ld-2.4.so |
139 | obj:/lib*/ld-2.4.so | ||||
140 | obj:/lib*/ld-2.4.so | ||||
141 | } | ||||
142 | { | ||||
143 | helgrind-glibc24-003 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 144 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 145 | obj:/lib*/ld-2.4.so |
146 | obj:/lib*/libc-2.4.so | ||||
147 | obj:/lib*/libc-2.4.so | ||||
148 | } | ||||
149 | { | ||||
150 | helgrind-glibc24-004 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 151 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 152 | obj:/lib*/libc-2.4.so |
153 | obj:/lib*/libc-2.4.so | ||||
154 | } | ||||
155 | { | ||||
156 | helgrind-glibc24-005 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 157 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 158 | obj:/lib*/libpthread-2.4.so |
159 | obj:/lib*/libpthread-2.4.so | ||||
160 | obj:/lib*/libpthread-2.4.so | ||||
161 | } | ||||
162 | { | ||||
163 | helgrind-glibc24-006 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 164 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 165 | obj:/lib*/libpthread-2.4.so |
166 | obj:/lib*/libpthread-2.4.so | ||||
167 | obj:/lib*/libc-2.4.so | ||||
168 | } | ||||
169 | { | ||||
170 | helgrind-glibc24-008 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 171 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 172 | obj:/lib*/libpthread-2.4.so |
173 | obj:/lib*/libc-2.4.so | ||||
174 | } | ||||
175 | { | ||||
176 | helgrind-glibc24-010 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 177 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 178 | obj:/lib*/ld-2.4.so |
179 | obj:/lib*/libpthread-2.4.so | ||||
180 | } | ||||
181 | { | ||||
182 | helgrind-glibc24-011 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 183 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 184 | obj:/lib*/libc-2.4.so |
185 | obj:/lib*/libpthread-2.4.so | ||||
186 | } | ||||
187 | |||||
188 | { | ||||
189 | helgrind-glibc24-101 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 190 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 191 | obj:/lib*/libpthread-2.4.so |
192 | fun:pthread_* | ||||
193 | } | ||||
194 | { | ||||
195 | helgrind-glibc24-102 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 196 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 197 | fun:mythread_wrapper |
198 | obj:/lib*/libpthread-2.4.so | ||||
199 | } | ||||
200 | |||||
201 | ######------------ glibc-2.6 specific ---------###### | ||||
202 | # | ||||
203 | { | ||||
204 | helgrind-glibc26-001 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 205 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 206 | obj:/lib*/ld-2.6.*so |
207 | obj:/lib*/ld-2.6.*so | ||||
208 | obj:/lib*/ld-2.6.*so | ||||
209 | } | ||||
210 | { | ||||
211 | helgrind-glibc26-003 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 212 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 213 | obj:/lib*/ld-2.6.*so |
214 | obj:/lib*/libc-2.6.*so | ||||
215 | obj:/lib*/libc-2.6.*so | ||||
216 | } | ||||
217 | { | ||||
218 | helgrind-glibc26-004 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 219 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 220 | obj:/lib*/libc-2.6.*so |
221 | obj:/lib*/libc-2.6.*so | ||||
222 | } | ||||
223 | { | ||||
224 | helgrind-glibc26-006 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 225 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 226 | obj:/lib*/libpthread-2.6.*so |
227 | obj:/lib*/libpthread-2.6.*so | ||||
228 | obj:/lib*/libc-2.6.*so | ||||
229 | } | ||||
230 | { | ||||
231 | helgrind-glibc26-008 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 232 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 233 | obj:/lib*/libpthread-2.6.*so |
234 | obj:/lib*/libc-2.6.*so | ||||
235 | } | ||||
236 | |||||
237 | { | ||||
238 | helgrind-glibc26-101 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 239 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 240 | obj:/lib*/libpthread-2.6.*so |
241 | fun:pthread_* | ||||
242 | } | ||||
243 | { | ||||
244 | helgrind-glibc26-102 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 245 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 246 | fun:mythread_wrapper |
247 | obj:/lib*/libpthread-2.6.*so | ||||
248 | } | ||||
249 | { | ||||
250 | helgrind-glibc26-106 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 251 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 252 | fun:__lll_lock_wait |
253 | } | ||||
254 | |||||
255 | ######--------- glibc-2.3 specific ---------###### | ||||
256 | { | ||||
257 | helgrind-glibc23-001 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 258 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 259 | obj:/lib*/ld-2.3.*so |
260 | obj:/lib*/ld-2.3.*so | ||||
261 | obj:/lib*/ld-2.3.*so | ||||
262 | } | ||||
263 | { | ||||
264 | helgrind-glibc23-002 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 265 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 266 | obj:/lib*/ld-2.3.*so |
267 | obj:/lib*/libc-2.3.*so | ||||
268 | obj:/lib*/ld-2.3.*so | ||||
269 | } | ||||
270 | { | ||||
271 | helgrind-glibc23-004 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 272 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 273 | obj:/lib*/libc-2.3.*so |
274 | obj:/lib*/libc-2.3.*so | ||||
275 | } | ||||
276 | { | ||||
277 | helgrind-glibc23-006 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 278 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 279 | obj:/lib*/libpthread-2.3.*so |
280 | obj:/lib*/libpthread-2.3.*so | ||||
281 | obj:/lib*/libc-2.3.*so | ||||
282 | } | ||||
283 | { | ||||
284 | helgrind-glibc23-008 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 285 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 286 | obj:/lib*/libpthread-2.3.*so |
287 | obj:/lib*/libc-2.3.*so | ||||
288 | } | ||||
289 | { | ||||
290 | helgrind-glibc23-009 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 291 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 292 | obj:/lib*/libc-2.3.*so |
293 | obj:/lib*/ld-2.3.*so | ||||
294 | obj:/lib*/libc-2.3.*so | ||||
295 | } | ||||
296 | { | ||||
297 | helgrind-glibc23-011 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 298 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 299 | obj:/lib*/libc-2.3.*so |
300 | obj:/lib*/libpthread-2.3.*so | ||||
301 | } | ||||
302 | { | ||||
303 | helgrind-glibc23-012 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 304 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 305 | obj:/lib*/ld-2.3.*so |
306 | obj:/lib*/ld-2.3.*so | ||||
307 | obj:/lib*/libc-2.3.*so | ||||
308 | } | ||||
309 | { | ||||
310 | helgrind-glibc23-014 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 311 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 312 | obj:/lib*/ld-2.3.*so |
313 | obj:/lib*/ld-2.3.*so | ||||
314 | obj:/lib*/libpthread-2.3.*so | ||||
315 | } | ||||
316 | |||||
317 | { | ||||
318 | helgrind-glibc23-100 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 319 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 320 | obj:/lib*/libpthread-2.3.*so |
321 | fun:pthread_* | ||||
322 | } | ||||
323 | { | ||||
324 | helgrind-glibc23-101 | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 325 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 326 | fun:mythread_wrapper |
327 | obj:/lib*/libpthread-2.3.*so | ||||
328 | } | ||||
329 | |||||
330 | ######------ qt4 specific (GNU mangling) ------###### | ||||
331 | { | ||||
332 | helgrind-qt4-QMutex::lock()-twice | ||||
njn | 4af0b2c | 2007-11-10 03:27:42 +0000 | [diff] [blame] | 333 | helgrind:Race |
sewardj | 95386ae | 2007-11-09 22:50:55 +0000 | [diff] [blame] | 334 | fun:_ZN6QMutex4lockEv |
335 | fun:_ZN6QMutex4lockEv | ||||
336 | } |