summaryrefslogtreecommitdiffstats
path: root/Misc
diff options
context:
space:
mode:
authorNeal Norwitz <nnorwitz@gmail.com>2008-08-24 05:04:52 (GMT)
committerNeal Norwitz <nnorwitz@gmail.com>2008-08-24 05:04:52 (GMT)
commit18aa388ca084e1d40aa48c8c8f1b4f730c6fe059 (patch)
tree5701b8dbd43b407aa8dfa621e518bb7df75f6a6b /Misc
parent21d2ab7fe8a96244ea6cd2838e64ca8439089895 (diff)
downloadcpython-18aa388ca084e1d40aa48c8c8f1b4f730c6fe059.zip
cpython-18aa388ca084e1d40aa48c8c8f1b4f730c6fe059.tar.gz
cpython-18aa388ca084e1d40aa48c8c8f1b4f730c6fe059.tar.bz2
Fix:
* crashes on memory allocation failure found with failmalloc * memory leaks found with valgrind * compiler warnings in opt mode which would lead to invalid memory reads * problem using wrong name in decimal module reported by pychecker Update the valgrind suppressions file with new leaks that are small/one-time leaks we don't care about (ie, they are too hard to fix). TBR=barry TESTED=./python -E -tt ./Lib/test/regrtest.py -uall (both debug and opt modes) in opt mode: valgrind -q --leak-check=yes --suppressions=Misc/valgrind-python.supp \ ./python -E -tt ./Lib/test/regrtest.py -uall,-bsddb,-compiler \ -x test_logging test_ssl test_multiprocessing valgrind -q --leak-check=yes --suppressions=Misc/valgrind-python.supp \ ./python -E -tt ./Lib/test/regrtest.py test_multiprocessing for i in `seq 1 4000` ; do LD_PRELOAD=~/local/lib/libfailmalloc.so FAILMALLOC_INTERVAL=$i \ ./python -c pass done At least some of these fixes should probably be backported to 2.5.
Diffstat (limited to 'Misc')
-rw-r--r--Misc/NEWS8
-rw-r--r--Misc/valgrind-python.supp33
2 files changed, 41 insertions, 0 deletions
diff --git a/Misc/NEWS b/Misc/NEWS
index 2ae121a..9c07eee 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -12,6 +12,14 @@ What's New in Python 2.6 release candidate 1?
Core and Builtins
-----------------
+- Fix crashes on memory allocation failure found with failmalloc.
+
+- Fix memory leaks found with valgrind and update suppressions file.
+
+- Fix compiler warnings in opt mode which would lead to invalid memory reads.
+
+- Fix problem using wrong name in decimal module reported by pychecker.
+
- Issue #3642: Changed type of numarenas from uint to size_t
in order to silence a compilier warning on 64bit OSes.
diff --git a/Misc/valgrind-python.supp b/Misc/valgrind-python.supp
index a08eaac..e50fc4b 100644
--- a/Misc/valgrind-python.supp
+++ b/Misc/valgrind-python.supp
@@ -47,6 +47,39 @@
#
{
+ Suppress leaking the GIL. Happens once per process, see comment in ceval.c.
+ Memcheck:Leak
+ fun:malloc
+ fun:PyThread_allocate_lock
+ fun:PyEval_InitThreads
+}
+
+{
+ Suppress leaking the GIL after a fork.
+ Memcheck:Leak
+ fun:malloc
+ fun:PyThread_allocate_lock
+ fun:PyEval_ReInitThreads
+}
+
+{
+ Suppress leaking the autoTLSkey. This looks like it shouldn't leak though.
+ Memcheck:Leak
+ fun:malloc
+ fun:PyThread_create_key
+ fun:_PyGILState_Init
+ fun:Py_InitializeEx
+ fun:Py_Main
+}
+
+{
+ Hmmm, is this a real leak or like the GIL?
+ Memcheck:Leak
+ fun:malloc
+ fun:PyThread_ReInitTLS
+}
+
+{
Handle PyMalloc confusing valgrind (possibly leaked)
Memcheck:Leak
fun:realloc