[Python-checkins] cpython (merge 3.5 -> default): Merge 3.5

victor.stinner python-checkins at python.org
Tue Mar 22 19:20:13 EDT 2016


https://hg.python.org/cpython/rev/daebdada2a95
changeset:   100667:daebdada2a95
parent:      100664:c6f30e2731af
parent:      100666:2b4731e22df8
user:        Victor Stinner <victor.stinner at gmail.com>
date:        Wed Mar 23 00:17:54 2016 +0100
summary:
  Merge 3.5

files:
  Modules/_tracemalloc.c |  16 +---------------
  1 files changed, 1 insertions(+), 15 deletions(-)


diff --git a/Modules/_tracemalloc.c b/Modules/_tracemalloc.c
--- a/Modules/_tracemalloc.c
+++ b/Modules/_tracemalloc.c
@@ -216,7 +216,7 @@
 static void
 set_reentrant(int reentrant)
 {
-    assert(!reentrant || !get_reentrant());
+    assert(reentrant != tracemalloc_reentrant);
     tracemalloc_reentrant = reentrant;
 }
 #endif
@@ -879,10 +879,6 @@
     assert(PyGILState_Check());
 #endif
 
-    /* Disable also reentrant calls to tracemalloc_malloc() to not add a new
-       trace while we are clearing traces */
-    assert(get_reentrant());
-
     TABLES_LOCK();
     _Py_hashtable_clear(tracemalloc_traces);
     tracemalloc_traced_memory = 0;
@@ -971,11 +967,6 @@
     tracemalloc_empty_traceback.frames[0].lineno = 0;
     tracemalloc_empty_traceback.hash = traceback_hash(&tracemalloc_empty_traceback);
 
-    /* Disable tracing allocations until hooks are installed. Set
-       also the reentrant flag to detect bugs: fail with an assertion error
-       if set_reentrant(1) is called while tracing is disabled. */
-    set_reentrant(1);
-
     tracemalloc_config.initialized = TRACEMALLOC_INITIALIZED;
     return 0;
 }
@@ -1063,7 +1054,6 @@
 
     /* everything is ready: start tracing Python memory allocations */
     tracemalloc_config.tracing = 1;
-    set_reentrant(0);
 
     return 0;
 }
@@ -1078,10 +1068,6 @@
     /* stop tracing Python memory allocations */
     tracemalloc_config.tracing = 0;
 
-    /* set the reentrant flag to detect bugs: fail with an assertion error if
-       set_reentrant(1) is called while tracing is disabled. */
-    set_reentrant(1);
-
     /* unregister the hook on memory allocators */
 #ifdef TRACE_RAW_MALLOC
     PyMem_SetAllocator(PYMEM_DOMAIN_RAW, &allocators.raw);

-- 
Repository URL: https://hg.python.org/cpython


More information about the Python-checkins mailing list