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