GeezerVison is showing github.com — [3.11] gh-104372: Cleanup _posixsubprocess make_inheritable for async signal safety gh-104518 by gpshead · Pull Request #104785 · python/cpython
Conversation
gpshead
commented
May 23, 2023
•
edited
Loading
Uh oh!
There was an error while loading. Please reload this page.
Move all of the Python C API calls into the parent process up front
instead of doing PyLong_AsLong and PyErr_Occurred and PyTuple_GET from
the post-fork/vfork child process.
Much of this was long overdue. We shouldn't have been using PyTuple and
PyLong APIs within all of these low level functions anyways.
This is a backport of c649df6 for #104518 and the tiny adjustment in d1732fe #104697.
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
…c signal safety and no GIL requirement (python#104518)
Move all of the Python C API calls into the parent process up front
instead of doing PyLong_AsLong and PyErr_Occurred and PyTuple_GET from
the post-fork/vfork child process.
Much of this was long overdue. We shouldn't have been using PyTuple and
PyLong APIs within all of these low level functions anyways.
(cherry picked from commit c649df6)
…or async signal safety and no GIL requirement (pythonGH-104518)
Move all of the Python C API calls into the parent process up front
instead of doing PyLong_AsLong and PyErr_Occurred and PyTuple_GET from
the post-fork/vfork child process.
Much of this was long overdue. We shouldn't have been using PyTuple and
PyLong APIs within all of these low level functions anyways..
(cherry picked from commit c649df6)
Co-authored-by: Gregory P. Smith <[email protected]>
gpshead
commented
May 23, 2023
•
edited
Loading
Uh oh!
There was an error while loading. Please reload this page.
|
The AddressSanitizer failure is only reproducable under an Ubuntu 20.04 ci-like-toolchain setup in the default optimized build. Using a --with-pydebug build in that setup, it does not happen. Using more recent compiler (& ASAN?) toolchains such as ubuntu 22.04 and 23.04, it does not happen.
regardless, i won't merge until finding a workaround. for CI health purposes alone.
|
Sorry, something went wrong.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Milestone
No milestone
Development
Successfully merging this pull request may close these issues.
Uh oh!
There was an error while loading. Please reload this page.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.