Added lock acquisition/release around shared data structure manipulation
[python.git] / Misc / valgrind-python.supp
blob2688f79ce35109f4ca8d87a7e2cc5d1ae59cb28a
2 # This is a valgrind suppression file that should be used when using valgrind.
4 #  Here's an example of running valgrind:
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
10 # You must edit Objects/obmalloc.c and uncomment Py_USING_MEMORY_DEBUGGER
11 # to use the preferred suppressions with Py_ADDRESS_IN_RANGE.
13 # If you do not want to recompile Python, you can uncomment
14 # suppressions for PyObject_Free and PyObject_Realloc.
16 # See Misc/README.valgrind for more information.
18 # all tool names: Addrcheck,Memcheck,cachegrind,helgrind,massif
20    ADDRESS_IN_RANGE/Invalid read of size 4
21    Memcheck:Addr4
22    fun:Py_ADDRESS_IN_RANGE
26    ADDRESS_IN_RANGE/Invalid read of size 4
27    Memcheck:Value4
28    fun:Py_ADDRESS_IN_RANGE
32    ADDRESS_IN_RANGE/Invalid read of size 8 (x86_64 aka amd64)
33    Memcheck:Value8
34    fun:Py_ADDRESS_IN_RANGE
38    ADDRESS_IN_RANGE/Conditional jump or move depends on uninitialised value
39    Memcheck:Cond
40    fun:Py_ADDRESS_IN_RANGE
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.
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
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
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
74 # Non-python specific leaks
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
87    Handle pthread issue (possibly leaked)
88    Memcheck:Leak
89    fun:memalign
90    fun:_dl_allocate_tls_storage
91    fun:_dl_allocate_tls
94 ###{
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 ###}
106 ###{
107 ###   ADDRESS_IN_RANGE/Conditional jump or move depends on uninitialised value
108 ###   Memcheck:Cond
109 ###   fun:PyObject_Free
110 ###}
112 ###{
113 ###   ADDRESS_IN_RANGE/Invalid read of size 4
114 ###   Memcheck:Addr4
115 ###   fun:PyObject_Realloc
116 ###}
118 ###{
119 ###   ADDRESS_IN_RANGE/Invalid read of size 4
120 ###   Memcheck:Value4
121 ###   fun:PyObject_Realloc
122 ###}
124 ###{
125 ###   ADDRESS_IN_RANGE/Conditional jump or move depends on uninitialised value
126 ###   Memcheck:Cond
127 ###   fun:PyObject_Realloc
128 ###}
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.
137    DBM problems, see test_dbm
138    Memcheck:Param
139    write(buf)
140    fun:write
141    obj:/usr/lib/libdb1.so.2
142    obj:/usr/lib/libdb1.so.2
143    obj:/usr/lib/libdb1.so.2
144    obj:/usr/lib/libdb1.so.2
145    fun:dbm_close
149    DBM problems, see test_dbm
150    Memcheck:Value8
151    fun:memmove
152    obj:/usr/lib/libdb1.so.2
153    obj:/usr/lib/libdb1.so.2
154    obj:/usr/lib/libdb1.so.2
155    obj:/usr/lib/libdb1.so.2
156    fun:dbm_store
157    fun:dbm_ass_sub
161    DBM problems, see test_dbm
162    Memcheck:Cond
163    obj:/usr/lib/libdb1.so.2
164    obj:/usr/lib/libdb1.so.2
165    obj:/usr/lib/libdb1.so.2
166    fun:dbm_store
167    fun:dbm_ass_sub
171    DBM problems, see test_dbm
172    Memcheck:Cond
173    fun:memmove
174    obj:/usr/lib/libdb1.so.2
175    obj:/usr/lib/libdb1.so.2
176    obj:/usr/lib/libdb1.so.2
177    obj:/usr/lib/libdb1.so.2
178    fun:dbm_store
179    fun:dbm_ass_sub
183    GDBM problems, see test_gdbm
184    Memcheck:Param
185    write(buf)
186    fun:write
187    fun:gdbm_open
192    ZLIB problems, see test_gzip
193    Memcheck:Cond
194    obj:/lib/libz.so.1.2.3
195    obj:/lib/libz.so.1.2.3
196    fun:deflate
200    Avoid problems w/readline doing a putenv and leaking on exit
201    Memcheck:Leak
202    fun:malloc
203    fun:xmalloc
204    fun:sh_set_lines_and_columns
205    fun:_rl_get_screen_size
206    fun:_rl_init_terminal_io
207    obj:/lib/libreadline.so.4.3
208    fun:rl_initialize
212 ### These occur from somewhere within the SSL, when running
213 ###  test_socket_sll.  They are too general to leave on by default.
215 ###{
216 ###   somewhere in SSL stuff
217 ###   Memcheck:Cond
218 ###   fun:memset
219 ###}
220 ###{
221 ###   somewhere in SSL stuff
222 ###   Memcheck:Value4
223 ###   fun:memset
224 ###}
226 ###{
227 ###   somewhere in SSL stuff
228 ###   Memcheck:Cond
229 ###   fun:MD5_Update
230 ###}
232 ###{
233 ###   somewhere in SSL stuff
234 ###   Memcheck:Value4
235 ###   fun:MD5_Update
236 ###}
239 # All of these problems come from using test_socket_ssl
242    from test_socket_ssl
243    Memcheck:Cond
244    fun:BN_bin2bn
248    from test_socket_ssl
249    Memcheck:Cond
250    fun:BN_num_bits_word
254    from test_socket_ssl
255    Memcheck:Value4
256    fun:BN_num_bits_word
260    from test_socket_ssl
261    Memcheck:Cond
262    fun:BN_mod_exp_mont_word
266    from test_socket_ssl
267    Memcheck:Cond
268    fun:BN_mod_exp_mont
272    from test_socket_ssl
273    Memcheck:Param
274    write(buf)
275    fun:write
276    obj:/usr/lib/libcrypto.so.0.9.7
280    from test_socket_ssl
281    Memcheck:Cond
282    fun:RSA_verify
286    from test_socket_ssl
287    Memcheck:Value4
288    fun:RSA_verify
292    from test_socket_ssl
293    Memcheck:Value4
294    fun:DES_set_key_unchecked
298    from test_socket_ssl
299    Memcheck:Value4
300    fun:DES_encrypt2
304    from test_socket_ssl
305    Memcheck:Cond
306    obj:/usr/lib/libssl.so.0.9.7
310    from test_socket_ssl
311    Memcheck:Value4
312    obj:/usr/lib/libssl.so.0.9.7
316    from test_socket_ssl
317    Memcheck:Cond
318    fun:BUF_MEM_grow_clean
322    from test_socket_ssl
323    Memcheck:Cond
324    fun:memcpy
325    fun:ssl3_read_bytes
329    from test_socket_ssl
330    Memcheck:Cond
331    fun:SHA1_Update
335    from test_socket_ssl
336    Memcheck:Value4
337    fun:SHA1_Update