From: Gabriele N. Tornetta Date: Sun, 1 Jan 2023 14:20:38 +0000 (+0000) Subject: gh-100649: Update native_thread_id after fork (gh-100650) X-Git-Tag: v3.12.0a4~82 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d52d4942cfdd52a50f88b87b1ff2a67375dbcf47;p=thirdparty%2FPython%2Fcpython.git gh-100649: Update native_thread_id after fork (gh-100650) Update native_thread_id after fork --- diff --git a/Misc/NEWS.d/next/Core and Builtins/2022-12-31-23-32-09.gh-issue-100649.C0fY4S.rst b/Misc/NEWS.d/next/Core and Builtins/2022-12-31-23-32-09.gh-issue-100649.C0fY4S.rst new file mode 100644 index 000000000000..7ee929ad09fb --- /dev/null +++ b/Misc/NEWS.d/next/Core and Builtins/2022-12-31-23-32-09.gh-issue-100649.C0fY4S.rst @@ -0,0 +1 @@ +Update the native_thread_id field of PyThreadState after fork. diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c index 1d9a33ab7bc9..0d4c179368ce 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c @@ -595,6 +595,10 @@ PyOS_AfterFork_Child(void) PyThreadState *tstate = _PyThreadState_GET(); _Py_EnsureTstateNotNULL(tstate); +#ifdef PY_HAVE_THREAD_NATIVE_ID + tstate->native_thread_id = PyThread_get_thread_native_id(); +#endif + status = _PyEval_ReInitThreads(tstate); if (_PyStatus_EXCEPTION(status)) { goto fatal_error;