gobry | 3b77789 | 2002-04-04 09:18:39 +0000 | [diff] [blame] | 1 | |
| 2 | ##----------------------------------------------------------------------## |
| 3 | |
sewardj | 4532839 | 2002-05-16 20:57:26 +0000 | [diff] [blame] | 4 | # Errors to suppress by default with glibc 2.2.4 / 2.2.5 |
gobry | 3b77789 | 2002-04-04 09:18:39 +0000 | [diff] [blame] | 5 | |
| 6 | # Format of this file is: |
| 7 | # { |
| 8 | # name_of_suppression |
| 9 | # kind: one of Param Value1 Value2 Value4 Value8 |
| 10 | # Free Addr1 Addr2 Addr4 Addr8 |
| 11 | # Cond (previously known as Value0) |
| 12 | # (if Param: name of system call param, if Free: name of free-ing fn) |
| 13 | # caller0 name, or /name/of/so/file.so |
| 14 | # caller1 name, or ditto |
| 15 | # (optionally: caller2 name) |
| 16 | # (optionally: caller3 name) |
sewardj | 9bf05a8 | 2002-06-06 09:02:11 +0000 | [diff] [blame^] | 17 | # } |
| 18 | |
| 19 | |
| 20 | #-------- Threading bugs? |
| 21 | |
| 22 | { |
| 23 | pthread_error/__pthread_mutex_destroy/__closedir |
| 24 | PThread |
| 25 | fun:pthread_error |
| 26 | fun:__pthread_mutex_destroy |
| 27 | fun:__closedir |
| 28 | } |
| 29 | |
| 30 | { |
| 31 | pthread_error/__pthread_mutex_destroy/_IO_default_finish |
| 32 | PThread |
| 33 | fun:pthread_error |
| 34 | fun:__pthread_mutex_destroy |
| 35 | fun:_IO_default_finish |
| 36 | } |
| 37 | |
| 38 | { |
| 39 | __pthread_mutex_unlock/_IO_funlockfile |
| 40 | PThread |
| 41 | fun:__pthread_mutex_unlock |
| 42 | fun:_IO_funlockfile |
| 43 | } |
gobry | 3b77789 | 2002-04-04 09:18:39 +0000 | [diff] [blame] | 44 | |
sewardj | 4dced35 | 2002-06-04 22:54:20 +0000 | [diff] [blame] | 45 | { |
| 46 | __pthread_mutex_unlock/__register_frame_info |
| 47 | PThread |
| 48 | fun:__pthread_mutex_unlock |
| 49 | fun:__register_frame_info |
| 50 | } |
gobry | 3b77789 | 2002-04-04 09:18:39 +0000 | [diff] [blame] | 51 | |
| 52 | # even more glibc suppressions ? |
| 53 | { |
| 54 | libc-2.2.4.so/libc-2.2.4.so/libc-2.2.4.so(Cond) |
| 55 | Cond |
sewardj | 4532839 | 2002-05-16 20:57:26 +0000 | [diff] [blame] | 56 | obj:*libc-2.2.?.so |
| 57 | obj:*libc-2.2.?.so |
| 58 | obj:*libc-2.2.?.so |
gobry | 3b77789 | 2002-04-04 09:18:39 +0000 | [diff] [blame] | 59 | } |
| 60 | { |
| 61 | libc-2.2.4.so/libc-2.2.4.so/libc-2.2.4.so(Value4) |
| 62 | Value4 |
sewardj | 4532839 | 2002-05-16 20:57:26 +0000 | [diff] [blame] | 63 | obj:*libc-2.2.?.so |
| 64 | obj:*libc-2.2.?.so |
| 65 | obj:*libc-2.2.?.so |
gobry | 3b77789 | 2002-04-04 09:18:39 +0000 | [diff] [blame] | 66 | } |
| 67 | |
| 68 | ##### glibc 2.2.5 stuff perhaps? |
| 69 | ##### suppressions for coolo |
| 70 | { |
| 71 | strchr/dl_open_worker(Cond) |
| 72 | Cond |
| 73 | fun:strchr |
| 74 | fun:dl_open_worker |
| 75 | } |
| 76 | { |
| 77 | __rawmemchr/internal_getgrgid_r(Cond) |
| 78 | Cond |
| 79 | fun:__rawmemchr |
| 80 | fun:internal_getgrgid_r |
| 81 | } |
| 82 | { |
| 83 | _IO_vfprintf/__strnlen(Cond) |
| 84 | Cond |
| 85 | fun:__strnlen |
| 86 | fun:_IO_vfprintf |
| 87 | } |
| 88 | { |
| 89 | __strchrnul/gethostbyname*(Cond) |
| 90 | Cond |
| 91 | fun:__strchrnul |
| 92 | fun:gethostbyname* |
| 93 | } |
| 94 | |
| 95 | |
| 96 | ##---- |
| 97 | { |
| 98 | strlen/*dl_map_object*(Cond) |
| 99 | Cond |
| 100 | fun:strlen |
| 101 | fun:*dl_map_object* |
| 102 | } |
| 103 | |
| 104 | { |
| 105 | strlen/*dl_open_worker*(Cond) |
| 106 | Cond |
| 107 | fun:strlen |
| 108 | fun:*dl_open_worker* |
| 109 | } |
| 110 | |
| 111 | { |
| 112 | *rawmemchr*/*nss*(Cond) |
| 113 | Cond |
| 114 | fun:*rawmemchr* |
| 115 | fun:*nss* |
| 116 | } |
| 117 | |
| 118 | { |
| 119 | *strchrnul*/*nss*(Cond) |
| 120 | Cond |
| 121 | fun:*strchrnul* |
| 122 | fun:*nss* |
| 123 | } |
| 124 | |
| 125 | # gcc version 2.96 20000731 (Red Hat Linux 7.1 2.96-98) |
| 126 | # on Red Hat 7.2 (x86) miscompiles __mpn_construct_double in |
| 127 | # __mpn_construct_double (../sysdeps/ieee754/dbl-64/mpn2dbl.c:45) |
| 128 | # (glibc-2.2.4) to read and write below %esp. Hence the following |
| 129 | # two: |
| 130 | { |
| 131 | __mpn_construct_double/*(Addr4) |
| 132 | Addr4 |
| 133 | fun:__mpn_construct_double |
| 134 | fun:* |
| 135 | } |
| 136 | { |
| 137 | __mpn_construct_double/*(Addr8) |
| 138 | Addr8 |
| 139 | fun:__mpn_construct_double |
| 140 | fun:* |
| 141 | } |
| 142 | |
| 143 | # More of the same (gcc bug, I'm pretty sure) |
| 144 | { |
| 145 | __fabs/*(Addr4) |
| 146 | Addr4 |
| 147 | fun:__fabs |
| 148 | fun:* |
| 149 | } |
| 150 | { |
| 151 | __fabs/*(Addr8) |
| 152 | Addr8 |
| 153 | fun:__fabs |
| 154 | fun:* |
| 155 | } |
| 156 | |
| 157 | |
| 158 | # Not sure what this is about ... but anyway |
| 159 | { |
| 160 | pthread_sighandler/*(Addr4) |
| 161 | Addr4 |
| 162 | fun:pthread_sighandler |
| 163 | fun:* |
| 164 | } |
| 165 | |
| 166 | |
| 167 | # More glibc stuff, AFAICS |
| 168 | |
| 169 | { |
| 170 | __strnlen/__argz_stringify/_nl_make_l10nflist(Cond) |
| 171 | Cond |
| 172 | fun:__strnlen |
| 173 | fun:__argz_stringify |
| 174 | fun:_nl_make_l10nflist |
| 175 | } |
| 176 | |
| 177 | #-------------- |
| 178 | { |
| 179 | _dl_relocate_object/dl_open_worker/_dl_catch_error(Cond) |
| 180 | Cond |
| 181 | fun:_dl_relocate_object |
| 182 | fun:dl_open_worker |
| 183 | fun:_dl_catch_error |
| 184 | } |
| 185 | { |
| 186 | _dl_relocate_object/libc-2.2.4.so/_dl_catch_error(Cond) |
| 187 | Cond |
| 188 | fun:_dl_relocate_object |
sewardj | 4532839 | 2002-05-16 20:57:26 +0000 | [diff] [blame] | 189 | obj:*libc-2.2.?.so |
gobry | 3b77789 | 2002-04-04 09:18:39 +0000 | [diff] [blame] | 190 | fun:_dl_catch_error |
| 191 | } |
| 192 | |
| 193 | { |
| 194 | strrchr/_dl_map_object_from_fd/_dl_map_object(Cond) |
| 195 | Cond |
| 196 | fun:strrchr |
| 197 | fun:_dl_map_object_from_fd |
| 198 | fun:_dl_map_object |
| 199 | } |
| 200 | |
| 201 | #------------------- |
| 202 | { |
| 203 | socketcall.connect(serv_addr)/__libc_connect/* |
| 204 | Param |
| 205 | socketcall.connect(serv_addr) |
| 206 | fun:__libc_connect |
| 207 | fun:* |
| 208 | } |
| 209 | { |
| 210 | socketcall.connect(serv_addr)/libc-2.2.4.so/libc-2.2.4.so |
| 211 | Param |
| 212 | socketcall.connect(serv_addr) |
sewardj | 4532839 | 2002-05-16 20:57:26 +0000 | [diff] [blame] | 213 | obj:*libc-2.2.?.so |
| 214 | obj:*libc-2.2.?.so |
gobry | 3b77789 | 2002-04-04 09:18:39 +0000 | [diff] [blame] | 215 | } |
| 216 | |
| 217 | #---------------------- |
| 218 | { |
| 219 | write(buf)/__libc_write/libX11.so.6.2/libX11.so.6.2(Param) |
| 220 | Param |
| 221 | write(buf) |
| 222 | fun:__libc_write |
| 223 | obj:/usr/X11R6/lib/libX11.so.6.2 |
| 224 | obj:/usr/X11R6/lib/libX11.so.6.2 |
| 225 | } |
| 226 | { |
| 227 | write(buf)/libc-2.2.4.so/libX11.so.6.2/libX11.so.6.2(Param) |
| 228 | Param |
| 229 | write(buf) |
sewardj | 4532839 | 2002-05-16 20:57:26 +0000 | [diff] [blame] | 230 | obj:*libc-2.2.?.so |
gobry | 3b77789 | 2002-04-04 09:18:39 +0000 | [diff] [blame] | 231 | obj:/usr/X11R6/lib/libX11.so.6.2 |
| 232 | obj:/usr/X11R6/lib/libX11.so.6.2 |
| 233 | } |
| 234 | |
| 235 | #{ |
| 236 | # llseek(result)/__libc_lseek64/_IO_file_seek(Param) |
| 237 | # Param |
| 238 | # llseek(result) |
| 239 | # fun:__libc_lseek64 |
| 240 | # fun:_IO_file_seek |
| 241 | #} |
| 242 | |
| 243 | { |
| 244 | writev(vector[...])/__writev/libX11.so.6.2/libX11.so.6.2 |
| 245 | Param |
| 246 | writev(vector[...]) |
| 247 | fun:__writev |
| 248 | obj:/usr/X11R6/lib/libX11.so.6.2 |
| 249 | obj:/usr/X11R6/lib/libX11.so.6.2 |
| 250 | } |
| 251 | |
| 252 | #---------------- |
| 253 | { |
| 254 | __rawmemchr/libXt.so.6.0/libXt.so.6.0 |
| 255 | Cond |
| 256 | fun:__rawmemchr |
| 257 | obj:/usr/X11R6/lib/libXt.so.6.0 |
| 258 | obj:/usr/X11R6/lib/libXt.so.6.0 |
| 259 | } |
| 260 | { |
| 261 | libc-2.2.4.so/libXt.so.6.0/libXt.so.6.0 |
| 262 | Cond |
sewardj | 4532839 | 2002-05-16 20:57:26 +0000 | [diff] [blame] | 263 | obj:*libc-2.2.?.so |
gobry | 3b77789 | 2002-04-04 09:18:39 +0000 | [diff] [blame] | 264 | obj:/usr/X11R6/lib/libXt.so.6.0 |
| 265 | obj:/usr/X11R6/lib/libXt.so.6.0 |
| 266 | } |
| 267 | |
| 268 | ##----------------------------------------------------------------------## |
| 269 | |