Add additional fields to statx#4621
Conversation
|
The CI failure is a Clippy complaints about code I didn't change: If the maintainers want I can send a pr for this, but I don't think it should be done in this pr. |
|
These haven't yet been updated in glibc https://github.com/bminor/glibc/blob/a6eb8285d9bfb7ec0875b85ca356e833ff964d4f/io/bits/types/struct_statx.h#L30 or musl, so we should wait for that. @rustbot blocked
That has been fixed, should go away with a rebase |
|
For reference, here's the glibc patchset adding this https://inbox.sourceware.org/libc-alpha/20251003194707.2326679-1-adhemerval.zanella@linaro.org/ |
|
@tgross35 it seems like the patchset was merged: https://github.com/bminor/glibc/blob/bd569425330c6f5644c232b4b253e9ab905fcdba/io/bits/types/struct_statx.h#L56-L62. Are there any requirements in terms of release/deployment of the glibc changes (i.e. a minimum version)? Or should I rebase and it's good to merge? |
tgross35
left a comment
There was a problem hiding this comment.
@tgross35 it seems like the patchset was merged: https://github.com/bminor/glibc/blob/bd569425330c6f5644c232b4b253e9ab905fcdba/io/bits/types/struct_statx.h#L56-L62. Are there any requirements in terms of release/deployment of the glibc changes (i.e. a minimum version)? Or should I rebase and it's good to merge?
Thanks for the update, nope that's about it. I'll merge after rebase and CI passing 👍
(Note you may need to skip these fields in libc-test/build.rs)
442c302 to
854ab51
Compare
This comment has been minimized.
This comment has been minimized.
|
Rebased and added the padding. |
854ab51 to
7e09d3c
Compare
This comment has been minimized.
This comment has been minimized.
|
It still seems like it's failing in the CI. glibc now does have the fields definitions, see https://sourceware.org/git/?p=glibc.git;a=blob;f=io/bits/types/struct_statx.h;h=f8ecc53768e0980d9ef3c737c2141ae769f80e4f;hb=f762ccf84f122d1354f103a151cba8bde797d521#l55-l62. Added in:
Which are dates all dated November 5th 2025 and so should be in version 2.43, also see the change log: https://sourceware.org/git/?p=glibc.git;a=blob;f=ChangeLog.old/ChangeLog.32;h=4c1668e2df02655d28b43dc513d6424ef0ff6550;hb=HEAD#l5073. Is it possible to update the glibc to 2.43? |
|
Looks like that version should be in the next Ubuntu update, in October. If you'd prefer not to wait for then, it could work to add test skips to the relevant fields in |
|
Once #5188 you'll be able to gate on kernel and/or glibc version, which should make this more sane. |
This is accurate for Linux v6.16.
Android doesn't have them (yet).
4173307 to
f66dcf1
Compare
|
This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
|
I rebased this on main/#5188, needed to do a force push. The existing commits are not changed, only change is in the new commit. |
| // The following fields are not available on Android as of | ||
| // August 6th 2025. |
There was a problem hiding this comment.
If this is still relevant, mind updating to 2026-06?
| } | ||
| }); | ||
|
|
||
| cfg.skip_struct_field_type(move |union_, field| { |
There was a problem hiding this comment.
These skips should be in skip_struct_field to not run any tests on them, rather than skip_struct_field_types which just turns off some of the checks for that field.
|
Alright, took some time but this is finally green @tgross35 :) |
|
@rustbot author |
|
Reminder, once the PR becomes ready for a review, use |
Description
Updates statx to include all fields as of Linux v6.16.
Sources
Checklist
libc-test/semverhave been updated*LASTor*MAXareincluded (see #3131)
cd libc-test && cargo test --target mytarget);especially relevant for platforms that may not be checked in CI
@rustbot label +stable-nominated