Skip to content

Expose Linux APIs hidden by older glibc headers - #1411

Draft
zaniebot wants to merge 6 commits into
astral-sh:mainfrom
zaniebot:gnu-linux-kernel-apis
Draft

zaniebot wants to merge 6 commits into
astral-sh:mainfrom
zaniebot:gnu-linux-kernel-apis

Conversation

@zaniebot

Copy link
Copy Markdown
Contributor

The GNU/Linux builds use modern kernel headers alongside an older glibc sysroot. CPython omits constants for file locking, sockets, clocks, polling, and memory advice when the libc headers lack their definitions. It also rejects nonzero flags for os.preadv and os.pwritev and setsid=True for os.posix_spawn before the runtime can handle them.

Expose these Linux constants where the Python version supports them, use vectored I/O syscalls when the libc wrappers are unavailable at build time, and let the running glibc handle the spawn flag.

Refs #1325.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant