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