blob: 4a6710e74070c557c1fc830eda781346232ea669 [file] [log] [blame]
Neal Norwitzc3cd9df2004-06-06 19:58:40 +00001#
2# This is a valgrind suppression file that should be used when using valgrind.
3#
4# Here's an example of running valgrind:
5#
6# cd python/dist/src
7# valgrind --tool=memcheck --suppressions=Misc/valgrind-python.supp \
8# ./python -E -tt ./Lib/test/regrtest.py -u bsddb,network
9#
10# You must edit Objects/obmalloc.c and uncomment Py_USING_MEMORY_DEBUGGER
11# to use the preferred suppressions with Py_ADDRESS_IN_RANGE.
12#
13# If you do not want to recompile Python, you can uncomment
14# suppressions for PyObject_Free and PyObject_Realloc.
15#
16# See Misc/README.valgrind for more information.
17
18# all tool names: Addrcheck,Memcheck,cachegrind,helgrind,massif
19{
20 ADDRESS_IN_RANGE/Invalid read of size 4
21 Memcheck:Addr4
22 fun:Py_ADDRESS_IN_RANGE
23}
24
25{
26 ADDRESS_IN_RANGE/Invalid read of size 4
27 Memcheck:Value4
28 fun:Py_ADDRESS_IN_RANGE
29}
30
31{
Neal Norwitz497b19a2005-11-13 18:58:32 +000032 ADDRESS_IN_RANGE/Invalid read of size 8 (x86_64 aka amd64)
Neal Norwitz76390de2005-10-03 07:46:34 +000033 Memcheck:Value8
34 fun:Py_ADDRESS_IN_RANGE
35}
36
37{
Neal Norwitzc3cd9df2004-06-06 19:58:40 +000038 ADDRESS_IN_RANGE/Conditional jump or move depends on uninitialised value
39 Memcheck:Cond
40 fun:Py_ADDRESS_IN_RANGE
41}
42
Neal Norwitz497b19a2005-11-13 18:58:32 +000043#
44# Leaks (including possible leaks)
45# Hmmm, I wonder if this masks some real leaks. I think it does.
46# Will need to fix that.
47#
48
49{
50 Handle PyMalloc confusing valgrind (possibly leaked)
51 Memcheck:Leak
52 fun:realloc
53 fun:_PyObject_GC_Resize
54 fun:COMMENT_THIS_LINE_TO_DISABLE_LEAK_WARNING
55}
56
57{
58 Handle PyMalloc confusing valgrind (possibly leaked)
59 Memcheck:Leak
60 fun:malloc
61 fun:_PyObject_GC_New
62 fun:COMMENT_THIS_LINE_TO_DISABLE_LEAK_WARNING
63}
64
65{
66 Handle PyMalloc confusing valgrind (possibly leaked)
67 Memcheck:Leak
68 fun:malloc
69 fun:_PyObject_GC_NewVar
70 fun:COMMENT_THIS_LINE_TO_DISABLE_LEAK_WARNING
71}
72
73#
74# Non-python specific leaks
75#
76
77{
78 Handle pthread issue (possibly leaked)
79 Memcheck:Leak
80 fun:calloc
81 fun:allocate_dtv
82 fun:_dl_allocate_tls_storage
83 fun:_dl_allocate_tls
84}
85
86{
87 Handle pthread issue (possibly leaked)
88 Memcheck:Leak
89 fun:memalign
90 fun:_dl_allocate_tls_storage
91 fun:_dl_allocate_tls
92}
93
Neal Norwitzc3cd9df2004-06-06 19:58:40 +000094###{
95### ADDRESS_IN_RANGE/Invalid read of size 4
96### Memcheck:Addr4
97### fun:PyObject_Free
98###}
99###
100###{
101### ADDRESS_IN_RANGE/Invalid read of size 4
102### Memcheck:Value4
103### fun:PyObject_Free
104###}
105###
106###{
107### ADDRESS_IN_RANGE/Conditional jump or move depends on uninitialised value
108### Memcheck:Cond
109### fun:PyObject_Free
110###}
111
112###{
113### ADDRESS_IN_RANGE/Invalid read of size 4
114### Memcheck:Addr4
115### fun:PyObject_Realloc
116###}
117###
118###{
119### ADDRESS_IN_RANGE/Invalid read of size 4
120### Memcheck:Value4
121### fun:PyObject_Realloc
122###}
123###
124###{
125### ADDRESS_IN_RANGE/Conditional jump or move depends on uninitialised value
126### Memcheck:Cond
127### fun:PyObject_Realloc
128###}
129
130###
131### All the suppressions below are for errors that occur within libraries
132### that Python uses. The problems to not appear to be related to Python's
133### use of the libraries.
134###
Neal Norwitz497b19a2005-11-13 18:58:32 +0000135
136{
Neal Norwitz25d4ca32006-06-27 04:06:46 +0000137 Generic gentoo ld problems
138 Memcheck:Cond
139 obj:/lib/ld-2.3.4.so
140 obj:/lib/ld-2.3.4.so
141 obj:/lib/ld-2.3.4.so
142 obj:/lib/ld-2.3.4.so
143}
144
145{
Neal Norwitz497b19a2005-11-13 18:58:32 +0000146 DBM problems, see test_dbm
147 Memcheck:Param
148 write(buf)
149 fun:write
150 obj:/usr/lib/libdb1.so.2
151 obj:/usr/lib/libdb1.so.2
152 obj:/usr/lib/libdb1.so.2
153 obj:/usr/lib/libdb1.so.2
154 fun:dbm_close
155}
156
157{
158 DBM problems, see test_dbm
159 Memcheck:Value8
160 fun:memmove
161 obj:/usr/lib/libdb1.so.2
162 obj:/usr/lib/libdb1.so.2
163 obj:/usr/lib/libdb1.so.2
164 obj:/usr/lib/libdb1.so.2
165 fun:dbm_store
166 fun:dbm_ass_sub
167}
168
169{
170 DBM problems, see test_dbm
171 Memcheck:Cond
172 obj:/usr/lib/libdb1.so.2
173 obj:/usr/lib/libdb1.so.2
174 obj:/usr/lib/libdb1.so.2
175 fun:dbm_store
176 fun:dbm_ass_sub
177}
178
179{
180 DBM problems, see test_dbm
181 Memcheck:Cond
182 fun:memmove
183 obj:/usr/lib/libdb1.so.2
184 obj:/usr/lib/libdb1.so.2
185 obj:/usr/lib/libdb1.so.2
186 obj:/usr/lib/libdb1.so.2
187 fun:dbm_store
188 fun:dbm_ass_sub
189}
190
Neal Norwitzc3cd9df2004-06-06 19:58:40 +0000191{
192 GDBM problems, see test_gdbm
193 Memcheck:Param
194 write(buf)
195 fun:write
196 fun:gdbm_open
197
198}
199
Neal Norwitz76390de2005-10-03 07:46:34 +0000200{
Neal Norwitz497b19a2005-11-13 18:58:32 +0000201 ZLIB problems, see test_gzip
Neal Norwitz76390de2005-10-03 07:46:34 +0000202 Memcheck:Cond
Neal Norwitz497b19a2005-11-13 18:58:32 +0000203 obj:/lib/libz.so.1.2.3
204 obj:/lib/libz.so.1.2.3
205 fun:deflate
Neal Norwitz76390de2005-10-03 07:46:34 +0000206}
207
208{
209 Avoid problems w/readline doing a putenv and leaking on exit
210 Memcheck:Leak
211 fun:malloc
212 fun:xmalloc
213 fun:sh_set_lines_and_columns
214 fun:_rl_get_screen_size
215 fun:_rl_init_terminal_io
216 obj:/lib/libreadline.so.4.3
217 fun:rl_initialize
Neal Norwitz76390de2005-10-03 07:46:34 +0000218}
219
Neal Norwitzc3cd9df2004-06-06 19:58:40 +0000220###
221### These occur from somewhere within the SSL, when running
222### test_socket_sll. They are too general to leave on by default.
223###
224###{
225### somewhere in SSL stuff
226### Memcheck:Cond
227### fun:memset
228###}
229###{
230### somewhere in SSL stuff
231### Memcheck:Value4
232### fun:memset
233###}
234###
235###{
236### somewhere in SSL stuff
237### Memcheck:Cond
238### fun:MD5_Update
239###}
240###
241###{
242### somewhere in SSL stuff
243### Memcheck:Value4
244### fun:MD5_Update
245###}
246
247#
248# All of these problems come from using test_socket_ssl
249#
250{
251 from test_socket_ssl
252 Memcheck:Cond
253 fun:BN_bin2bn
254}
255
256{
257 from test_socket_ssl
258 Memcheck:Cond
259 fun:BN_num_bits_word
260}
261
262{
263 from test_socket_ssl
264 Memcheck:Value4
265 fun:BN_num_bits_word
266}
267
268{
269 from test_socket_ssl
270 Memcheck:Cond
271 fun:BN_mod_exp_mont_word
272}
273
274{
275 from test_socket_ssl
276 Memcheck:Cond
277 fun:BN_mod_exp_mont
278}
279
280{
281 from test_socket_ssl
282 Memcheck:Param
283 write(buf)
284 fun:write
285 obj:/usr/lib/libcrypto.so.0.9.7
286}
287
288{
289 from test_socket_ssl
290 Memcheck:Cond
291 fun:RSA_verify
292}
293
294{
295 from test_socket_ssl
296 Memcheck:Value4
297 fun:RSA_verify
298}
299
300{
301 from test_socket_ssl
302 Memcheck:Value4
303 fun:DES_set_key_unchecked
304}
305
306{
307 from test_socket_ssl
308 Memcheck:Value4
309 fun:DES_encrypt2
310}
311
312{
313 from test_socket_ssl
314 Memcheck:Cond
315 obj:/usr/lib/libssl.so.0.9.7
316}
317
318{
319 from test_socket_ssl
320 Memcheck:Value4
321 obj:/usr/lib/libssl.so.0.9.7
322}
323
324{
325 from test_socket_ssl
326 Memcheck:Cond
327 fun:BUF_MEM_grow_clean
328}
329
330{
331 from test_socket_ssl
332 Memcheck:Cond
333 fun:memcpy
334 fun:ssl3_read_bytes
335}
336
337{
338 from test_socket_ssl
339 Memcheck:Cond
340 fun:SHA1_Update
341}
342
343{
344 from test_socket_ssl
345 Memcheck:Value4
346 fun:SHA1_Update
347}
348
349