[Python-checkins] cpython (3.4): revert tstate_delete_common, since it's pretty much wrong

benjamin.peterson python-checkins at python.org
Tue Jun 17 09:35:11 CEST 2014


http://hg.python.org/cpython/rev/3ce746735b99
changeset:   91243:3ce746735b99
branch:      3.4
parent:      91240:488daf4691f6
user:        Benjamin Peterson <benjamin at python.org>
date:        Tue Jun 17 00:34:46 2014 -0700
summary:
  revert tstate_delete_common, since it's pretty much wrong

files:
  Python/pystate.c |  9 +--------
  1 files changed, 1 insertions(+), 8 deletions(-)


diff --git a/Python/pystate.c b/Python/pystate.c
--- a/Python/pystate.c
+++ b/Python/pystate.c
@@ -425,14 +425,7 @@
     _Py_atomic_store_relaxed(&_PyThreadState_Current, NULL);
     if (autoInterpreterState && PyThread_get_key_value(autoTLSkey) == tstate)
         PyThread_delete_key_value(autoTLSkey);
-    /*
-      Only call tstate_delete_common to have the tstate if we're not finalizing
-      or we're the main thread. The main thread will do this for us. Not calling
-      tstate_delete_common means we won't lock the interpreter head lock,
-      avoiding a possible deadlock with the GIL.
-    */
-    if (!_Py_Finalizing || _Py_Finalizing == tstate)
-        tstate_delete_common(tstate);
+    tstate_delete_common(tstate);
     PyEval_ReleaseLock();
 }
 #endif /* WITH_THREAD */

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


More information about the Python-checkins mailing list