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} 403