summaryrefslogtreecommitdiffstats
path: root/Include
diff options
context:
space:
mode:
authorEric Snow <ericsnowcurrently@gmail.com>2023-06-01 22:24:10 (GMT)
committerGitHub <noreply@github.com>2023-06-01 22:24:10 (GMT)
commit3698fda06eefb3c01e78c4c07f46fcdd0559e0f6 (patch)
treeaa978df64aae6acd5bb007708e3d4ff37388f9aa /Include
parent8a8ebf2e3ddb880806237c7a5983f9744f7c215f (diff)
downloadcpython-3698fda06eefb3c01e78c4c07f46fcdd0559e0f6.zip
cpython-3698fda06eefb3c01e78c4c07f46fcdd0559e0f6.tar.gz
cpython-3698fda06eefb3c01e78c4c07f46fcdd0559e0f6.tar.bz2
gh-104341: Call _PyEval_ReleaseLock() with NULL When Finalizing the Current Thread (gh-105109)
This avoids the problematic race in drop_gil() by skipping the FORCE_SWITCHING code there for finalizing threads. (The idea for this approach came out of discussions with @markshannon.)
Diffstat (limited to 'Include')
-rw-r--r--Include/internal/pycore_ceval.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/Include/internal/pycore_ceval.h b/Include/internal/pycore_ceval.h
index 3c8b368..ca27037 100644
--- a/Include/internal/pycore_ceval.h
+++ b/Include/internal/pycore_ceval.h
@@ -100,7 +100,7 @@ extern PyStatus _PyEval_InitGIL(PyThreadState *tstate, int own_gil);
extern void _PyEval_FiniGIL(PyInterpreterState *interp);
extern void _PyEval_AcquireLock(PyThreadState *tstate);
-extern void _PyEval_ReleaseLock(PyThreadState *tstate);
+extern void _PyEval_ReleaseLock(PyInterpreterState *, PyThreadState *);
extern PyThreadState * _PyThreadState_SwapNoGIL(PyThreadState *);
extern void _PyEval_DeactivateOpCache(void);