diff Python/pystate.c @ 72897:ee4fe16d9b48 2.7

Issue #13156: revert changeset f6feed6ec3f9, which was only relevant for native TLS implementations, and fails with the ad-hoc TLS implementation when a thread doesn't have an auto thread state (e.g. a thread created outside of Python calling into a subinterpreter).
author Charles-François Natali <neologix@free.fr>
date Wed, 12 Oct 2011 21:07:54 +0200
parents f6feed6ec3f9
children 508ae5d27c2c
line wrap: on
line diff
--- a/Python/pystate.c	Wed Apr 27 19:20:48 2011 +0200
+++ b/Python/pystate.c	Wed Oct 12 21:07:54 2011 +0200
@@ -537,23 +537,6 @@
     autoInterpreterState = NULL;
 }
 
-/* Reset the TLS key - called by PyOS_AfterFork.
- * This should not be necessary, but some - buggy - pthread implementations
- * don't flush TLS on fork, see issue #10517.
- */
-void
-_PyGILState_Reinit(void)
-{
-    PyThreadState *tstate = PyGILState_GetThisThreadState();
-    PyThread_delete_key(autoTLSkey);
-    if ((autoTLSkey = PyThread_create_key()) == -1)
-        Py_FatalError("Could not allocate TLS entry");
-
-    /* re-associate the current thread state with the new key */
-    if (PyThread_set_key_value(autoTLSkey, (void *)tstate) < 0)
-        Py_FatalError("Couldn't create autoTLSkey mapping");
-}
-
 /* When a thread state is created for a thread by some mechanism other than
    PyGILState_Ensure, it's important that the GILState machinery knows about
    it so it doesn't try to create another thread state for the thread (this is