Generalise X11 suppressions somewhat, and add a suppression needed for
[ambi/valgrind.git] / xfree-4.supp
1
2 ##----------------------------------------------------------------------##
3
4 # Errors to suppress by default with XFree86 4.1.0)
5
6 # *** And a bunch of other stuff which is completely unrelated
7 # to X.  The default suppressions are a bit of a mess and could do
8 # with a good tidying up.
9
10 # Format of this file is:
11 # {
12 #     name_of_suppression
13 #     tool_name:supp_kind
14 #     (optional extra info for some suppression types)
15 #     caller0 name, or /name/of/so/file.so
16 #     caller1 name, or ditto
17 #     (optionally: caller2 name)
18 #     (optionally: caller3 name)
19 #  }
20 #
21 # For Memcheck, the supp_kinds are:
22 #
23 #     Param Value1 Value2 Value4 Value8 Value16 Jump
24 #     Free Addr1 Addr2 Addr4 Addr8 Addr16
25 #     Cond (previously known as Value0)
26 #
27 # and the optional extra info is:
28 #     if Param: name of system call param
29
30 # Resulting from R H 8.0
31 {
32    *libc_write/libX11.so.6.2/*X11TransWrite(Param)
33    Memcheck:Param
34    write(buf)
35    fun:*libc_write
36    obj:/usr/*lib*/libX11.so*
37    fun:*X11TransWrite
38 }
39
40 {
41    libX11.so.6.2/libX11.so.6.2/libX11.so.6.2(Cond)
42    Memcheck:Cond
43    obj:/usr/*lib*/libX11.so*
44    obj:/usr/*lib*/libX11.so*
45    obj:/usr/*lib*/libX11.so*
46 }
47
48 {
49    libXt.so.6.2/libXt.so.6.2/libXt.so.6.2(Cond)
50    Memcheck:Cond
51    obj:/usr/*lib*/libXt.so*
52    obj:/usr/*lib*/libXt.so*
53    obj:/usr/*lib*/libXt.so*
54 }
55
56
57 {
58    libXaw.so.7.0/libXaw.so.7.0/libXaw.so.7.0(Cond)
59    Memcheck:Cond
60    obj:/usr/*lib*/libXaw.so*
61    obj:/usr/*lib*/libXaw.so*
62    obj:/usr/*lib*/libXaw.so*
63 }
64
65 {
66    libXmu.so.6.2/libXmu.so.6.2/libXmu.so.6.2(Cond)
67    Memcheck:Cond
68    obj:/usr/*lib*/libXmu.so*
69    obj:/usr/*lib*/libXmu.so*
70    obj:/usr/*lib*/libXmu.so*
71 }
72
73 {
74    libXt.so.6.0/libXt.so.6.0/libXaw.so.7.0(Cond)
75    Memcheck:Cond
76    obj:/usr/*lib*/libXt.so*
77    obj:/usr/*lib*/libXt.so*
78    obj:/usr/*lib*/libXaw.so*
79 }
80
81 {
82    libXaw.so.7.0/libXaw.so.7.0/libXt.so.6.0(Value4)
83    Memcheck:Value4
84    obj:/usr/*lib*/libXaw.so*
85    obj:/usr/*lib*/libXaw.so*
86    obj:/usr/*lib*/libXt.so*
87 }
88
89 {
90    libXaw.so.7.0/libXaw.so.7.0/libXt.so.6.0(Cond)
91    Memcheck:Cond
92    obj:/usr/*lib*/libXaw.so*
93    obj:/usr/*lib*/libXaw.so*
94    obj:/usr/*lib*/libXt.so*
95 }
96
97 {
98    libX11.so.6.2/libX11.so.6.2/libXaw.so.7.0(Cond)
99    Memcheck:Cond
100    obj:/usr/*lib*/libX11.so*
101    obj:/usr/*lib*/libX11.so*
102    obj:/usr/*lib*/libXaw.so*
103 }
104
105 {
106    libX11.so.6.2/libX11.so.6.2/libXaw.so.7.0(Addr4)
107    Memcheck:Addr4
108    obj:/usr/*lib*/libX11.so*
109    obj:/usr/*lib*/libX11.so*
110    obj:/usr/*lib*/libXaw.so*
111 }
112
113 {
114    libX11.so.6.2/libXaw.so.7.0/libXaw.so.7.0(Cond)
115    Memcheck:Cond
116    obj:/usr/*lib*/libX11.so*
117    obj:/usr/*lib*/libXaw.so*
118    obj:/usr/*lib*/libXaw.so*
119 }
120
121 {
122    libXpm.so.4.11/libXpm.so.4.11/libXpm.so.4.11
123    Memcheck:Cond
124    obj:/usr/*lib*/libXpm.so.4.11
125    obj:/usr/*lib*/libXpm.so.4.11
126    obj:/usr/*lib*/libXpm.so.4.11
127 }
128
129 {
130    struct with uninitialized paddings
131    Memcheck:Param
132    writev(vector[...])
133    fun:*_writev
134    fun:_X11TransSocketWritev
135    fun:_X11TransWritev
136    fun:*
137 }
138
139 {
140    struct with uninitialized paddings - libxcb
141    Memcheck:Param
142    writev(vector[...])
143    obj:/lib*/*.so
144    obj:/usr/lib*/libxcb.so.1.0.0
145    obj:/usr/lib*/libxcb.so.1.0.0
146    fun:xcb_send_request
147    fun:_X*
148 }
149
150 {
151    struct with uninitialized paddings - libxcb
152    Memcheck:Param
153    writev(vector[...])
154    obj:/lib*/*.so
155    obj:/usr/lib*/libxcb.so.1.0.0
156    obj:/usr/lib*/libxcb.so.1.0.0
157    obj:/usr/lib*/libxcb.so.1.0.0
158    fun:xcb_*
159    fun:_X*
160 }
161
162 {
163    another struct with uninitialized paddings
164    Memcheck:Param
165    write(buf)
166    obj:*
167    fun:_IceTransSocketWrite
168    fun:_IceTransWrite
169    fun:_IceWrite
170 }
171
172 {
173    Xorg 6.8.1 uninit _write* padding
174    Memcheck:Param
175    write(buf)
176    fun:*
177    fun:_X11TransWrite
178    obj:/usr/*lib*/libX11.so*
179 }
180
181 {
182    Xorg 6.8.1 uninit write padding
183    Memcheck:Param
184    write(buf)
185    fun:write
186    fun:_X11TransWrite
187    obj:/usr/*lib*/libX11.so*
188 }
189
190 {
191    Xorg 6.8.1 ICE uninit __write* padding
192    Memcheck:Param
193    write(buf)
194    obj:*
195    fun:_IceTransWrite
196    fun:_IceWrite
197    fun:IceFlush
198 }
199
200 {
201    Xorg 6.8.1 writev uninit padding
202    Memcheck:Param
203    writev(vector[...])
204    fun:writev
205    obj:/usr/*lib*/libX11.so*
206    fun:_X11TransWritev
207    fun:_XSend
208 }
209
210 {
211    Xorg 6.9.0 writev uninit padding
212    Memcheck:Param
213    writev(vector[...])
214    fun:do_writev
215    fun:writev
216    obj:/usr/*lib*/libX11.so*
217    fun:_X11TransWritev
218    fun:_XSend
219 }
220
221 {
222    X on SUSE11 writev uninit padding
223    Memcheck:Param
224    writev(vector[...])
225    fun:writev
226    obj:/usr/lib*/libxcb.so*
227    obj:/usr/lib*/libxcb.so*
228 }
229 {
230    X on SUSE11 writev uninit padding 2
231    Memcheck:Param
232    writev(vector[...])
233    obj:/lib*/ld-2.*.so*
234    obj:/usr/lib*/libxcb.so*
235    obj:/usr/lib*/libxcb.so*
236 }
237 {
238    X on SUSE11 writev uninit padding 3
239    Memcheck:Param
240    writev(vector[...])
241    obj:/lib*/ld-2.*.so*
242    obj:/usr/lib*/libORBit*.so*
243    obj:/usr/lib*/libORBit*.so*
244 }
245 {
246    X on SUSE11 writev uninit padding 4
247    Memcheck:Param
248    writev(vector[...])
249    obj:/lib*/libc-2.*.so*
250    obj:/usr/lib*/libORBit*.so*
251    obj:/usr/lib*/libORBit*.so*
252 }
253  
254
255 # There's something strange about a % 127 in XftFontOpenInfo
256 # (hashing) which gcc turns into a multiply by 33818641 and
257 # some other guff instead.  I don't understand it enough to
258 # know if libXft is broken or if memcheck's value tracking is
259 # inadequate here.  Anyway, for the moment, suppress it.
260 #
261 # Use of uninitialised value of size 8
262 #   at 0x71A59F8: XftFontOpenInfo (in /usr/X11R6/lib64/libXft.so.2.1.2)
263 #   by 0x71A5F0D: XftFontOpenPattern (in /usr/X11R6/lib64/libXft.so.2.1.2)
264 #   by 0x65F166E: loadFontConfigFont(QFontPrivate const*, QFontDef const&, 
265 #                 QFont::Script) (qfontdatabase_x11.cpp:1942)
266 #   by 0x65F5DE4: QFontDatabase::findFont(QFont::Script, QFontPrivate const*,
267 #                 QFontDef const&, int) (qfontdatabase.cpp:996)
268 {
269    XftFontOpenInfo-umod-127-strangeness
270    Memcheck:Value8
271    obj:/usr/X11*/lib*/libXft.so*
272    obj:/usr/X11*/lib*/libXft.so*
273 }
274 {
275    XftFontOpenInfo-umod-127-strangeness-a-la-xorg
276    Memcheck:Value8
277    obj:/usr/lib*/libXft.so*
278    obj:/usr/lib*/libXft.so*
279 }
280
281 {
282    More X padding stuff
283    Memcheck:Param
284    writev(vector[...])
285    fun:*writev*
286    obj:/usr/X11*/lib*/libX11.so*
287    obj:/usr/X11*/lib*/libX11.so*
288 }
289
290 # Inlined strlen in libX11 on Ubuntu 9.10 amd64, unfortunately.
291 # Invalid read of size 4
292 #    at 0x9B5CCE6: ??? (in /usr/lib/libX11.so.6.2.0)
293 #    by 0x9B5D011: XGetAtomName (in /usr/lib/libX11.so.6.2.0)
294 #    by 0x86407C3: gdk_x11_xatom_to_atom_for_display
295 #                  (in /usr/lib/libgdk-x11-2.0.so.0.1800.3)
296 #    by 0x8636817: ??? (in /usr/lib/libgdk-x11-2.0.so.0.1800.3)
297 #  Address 0x1a558e1c is 28 bytes inside a block of size 30 alloc'd
298 #    at 0x4C2552D: malloc (vg_replace_malloc.c:236)
299 #    by 0x9B642C0: _XUpdateAtomCache (in /usr/lib/libX11.so.6.2.0)
300 #    by 0x9B647F1: ??? (in /usr/lib/libX11.so.6.2.0)
301 #    by 0x9B81818: ??? (in /usr/lib/libX11.so.6.2.0)
302 {
303    libX11.so.6.2.0/libX11.so.6.2.0(Addr4)
304    Memcheck:Addr4
305    obj:/usr/*lib*/libX11.so*
306    obj:/usr/*lib*/libX11.so*
307 }
308
309 ##----------------------------------------------------------------------##
310 # Completely inappropriate place, but ...
311
312 {
313    ifort-9.X-on-i686-1
314    Memcheck:Addr4
315    fun:unaligned_bigint
316    fun:hash
317    fun:for__add_to_lf_table
318 }
319 {
320    ifort-9.X-on-amd64-1
321    Memcheck:Addr8
322    fun:unaligned_bigint
323    fun:hash
324    fun:for__add_to_lf_table
325 }
326
327
328 # zlib-1.2.x uses uninitialised memory in some tricky way which
329 # apparently is harmless (it must amount to a vectorised while-loop,
330 # nothing else makes sense).  Fools Memcheck though.  See the mentioned
331 # URL for details.
332 {
333    zlib-1.2.x trickyness (1a): See http://www.zlib.net/zlib_faq.html#faq36
334    Memcheck:Cond
335    obj:/*lib*/libz.so.1.2.*
336    ...
337    obj:/*lib*/libz.so.1.2.*
338    fun:deflate
339 }
340 {
341    zlib-1.2.x trickyness (1b): See http://www.zlib.net/zlib_faq.html#faq36
342    Memcheck:Cond
343    obj:/*lib*/libz.so.1.2.*
344    fun:deflate
345 }
346
347 {
348    zlib-1.2.x trickyness (2a): See http://www.zlib.net/zlib_faq.html#faq36
349    Memcheck:Value8
350    obj:/*lib*/libz.so.1.2.*
351    ...
352    obj:/*lib*/libz.so.1.2.*
353    fun:deflate
354 }
355 {
356    zlib-1.2.x trickyness (2b): See http://www.zlib.net/zlib_faq.html#faq36
357    Memcheck:Value8
358    obj:/*lib*/libz.so.1.2.*
359    fun:deflate
360 }
361
362 {
363    zlib-1.2.x trickyness (3a): See http://www.zlib.net/zlib_faq.html#faq36
364    Memcheck:Value4
365    obj:/*lib*/libz.so.1.2.*
366    ...
367    obj:/*lib*/libz.so.1.2.*
368    fun:deflate
369 }
370 {
371    zlib-1.2.x trickyness (3b): See http://www.zlib.net/zlib_faq.html#faq36
372    Memcheck:Value4
373    obj:/*lib*/libz.so.1.2.*
374    fun:deflate
375 }
376
377
378 ##----------------------------------------------------------------------##
379
380 ## More general versions of some of the old X suppressions above
381 {
382    Ubuntu804 libXaw.so.7.0/libXaw.so.7.0/libXaw.so.7.0(Cond)
383    Memcheck:Cond
384    obj:/usr/*lib*/libXaw*so*
385    obj:/usr/*lib*/libXaw*so*
386    obj:/usr/*lib*/libXaw*so*
387 }
388 {
389    Ubuntu804 libXaw.so.7.0/libXaw.so.7.0/libXt(Cond)
390    Memcheck:Cond
391    obj:/usr/*lib*/libXaw*so*
392    obj:/usr/*lib*/libXaw*so*
393    obj:/usr/*lib*/libXt*so*
394 }
395
396 {
397    Ubuntu804-hack-1
398    Memcheck:Overlap
399    fun:mempcpy
400    fun:_IO_default_xsputn
401    obj:/lib*/libc-2.*so*
402 }