Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

gh-83714: Check for struct statx.stx_atomic_write_unit_max_opt in configure#140185

Merged
vstinner merged 1 commit into
python:mainpython/cpython:mainfrom
jbosboom:statx-atomic-write-unit-max-optjbosboom/cpython:statx-atomic-write-unit-max-optCopy head branch name to clipboard
Oct 16, 2025
Merged

gh-83714: Check for struct statx.stx_atomic_write_unit_max_opt in configure#140185
vstinner merged 1 commit into
python:mainpython/cpython:mainfrom
jbosboom:statx-atomic-write-unit-max-optjbosboom/cpython:statx-atomic-write-unit-max-optCopy head branch name to clipboard

Conversation

@jbosboom

@jbosboom jbosboom commented Oct 16, 2025

Copy link
Copy Markdown
Contributor

stx_atomic_write_unit_max_opt was added in Linux 6.16, but is controlled by the STATX_WRITE_ATOMIC mask bit added in Linux 6.11. That's safe at runtime because all kernels clear the reserved space in struct statx and zero is a valid value for stx_atomic_write_unit_max_opt, and it avoids allocating another mask bit, which are a limited resource. But it also means the kernel headers don't provide a way to check whether stx_atomic_write_unit_max_opt exists, so add a configure check.

I ran make regen-configure. I know very little about autoconf, so please check I didn't mess up.


📚 Documentation preview 📚: https://cpython-previews--140185.org.readthedocs.build/

stx_atomic_write_unit_max_opt was added in Linux 6.16, but is controlled
by the STATX_WRITE_ATOMIC mask bit added in Linux 6.11.  That's safe at
runtime because all kernels clear the reserved space in struct statx and
zero is a valid value for stx_atomic_write_unit_max_opt, and it avoids
allocating another mask bit, which are a limited resource.  But it also
means the kernel headers don't provide a way to check whether
stx_atomic_write_unit_max_opt exists, so add a configure check.
@jbosboom

Copy link
Copy Markdown
Contributor Author

!buildbot AMD64 CentOS9 NoGIL 3.x

@bedevere-bot

Copy link
Copy Markdown

You don't have write permissions to trigger a build

@jbosboom

Copy link
Copy Markdown
Contributor Author

#139178 failed on the AMD64 CentOS9 NoGIL 3.x (tier-1), ARM64 Raspbian Debug 3.x (tier-3) and ARM Raspbian 3.x (tier-3) buildbots. I need someone with the appropriate permissions to run those before merging.

This should be skip-news.

@cmaloney cmaloney left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This seems like a reasonable approach to me; a core dev can trigger the bots to validate (although the queue can take a while to get to the top of).

I think skip news works as this is falls under "If a change is a fix (or other adjustment) to an earlier unreleased change and the original NEWS entry remains valid, then no additional entry is needed."

@encukou

This comment was marked as outdated.

@bedevere-bot

This comment was marked as outdated.

@encukou

This comment was marked as outdated.

1 similar comment
@encukou

encukou commented Oct 16, 2025

Copy link
Copy Markdown
Member

!buildbot AMD64.CentOS9.NoGIL

@bedevere-bot

Copy link
Copy Markdown

🤖 New build scheduled with the buildbot fleet by @encukou for commit 37ebb56 🤖

Results will be shown at:

https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F140185%2Fmerge

The command will test the builders whose names match following regular expression: AMD64.CentOS9.NoGIL

The builders matched are:

  • AMD64 CentOS9 NoGIL PR
  • AMD64 CentOS9 NoGIL Refleaks PR

@vstinner vstinner left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, but let me check on buildbots.

@vstinner

Copy link
Copy Markdown
Member

!buildbot Raspbian

@bedevere-bot

Copy link
Copy Markdown

🤖 New build scheduled with the buildbot fleet by @vstinner for commit 37ebb56 🤖

Results will be shown at:

https://buildbot.python.org/all/#/grid?branch=refs%2Fpull%2F140185%2Fmerge

The command will test the builders whose names match following regular expression: Raspbian

The builders matched are:

  • ARM Raspbian Linux Asan PR
  • ARM64 Raspbian Debug PR
  • ARM Raspbian PR
  • ARM64 Raspbian PR

@encukou

encukou commented Oct 16, 2025

Copy link
Copy Markdown
Member

Buildbot issues to expect:

@vstinner

Copy link
Copy Markdown
Member

Buildbots passed successfully:

  • buildbot/AMD64 CentOS9 NoGIL PR
  • buildbot/ARM Raspbian PR
  • buildbot/ARM64 Raspbian Debug PR
  • buildbot/ARM64 Raspbian PR

Buildbot issues to expect: The refleak in test_type_aliases was #140197.

Alright, AMD64 CentOS9 NoGIL Refleaks PR failed on an unrelated test: test_type_aliases leaked [1, 1, 1] references, sum=3.

@vstinner vstinner merged commit 5a31024 into python:main Oct 16, 2025
58 of 59 checks passed
@vstinner

Copy link
Copy Markdown
Member

Merged, thanks @jbosboom.

StanFromIreland pushed a commit to StanFromIreland/cpython that referenced this pull request Dec 6, 2025
…in configure (python#140185)

stx_atomic_write_unit_max_opt was added in Linux 6.16, but is controlled
by the STATX_WRITE_ATOMIC mask bit added in Linux 6.11.  That's safe at
runtime because all kernels clear the reserved space in struct statx and
zero is a valid value for stx_atomic_write_unit_max_opt, and it avoids
allocating another mask bit, which are a limited resource.  But it also
means the kernel headers don't provide a way to check whether
stx_atomic_write_unit_max_opt exists, so add a configure check.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants

Morty Proxy This is a proxified and sanitized view of the page, visit original site.