-
Notifications
You must be signed in to change notification settings - Fork 1.2k
tests linux: do not skip tests depending on kernel <= 6.8 #4934
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
I think we're stuck to the host (ubuntu-24.04) kernel versions here since Docker doesn't bring its own kernel. Per https://en.wikipedia.org/wiki/Ubuntu_version_history#Table_of_versions that means 6.8. |
|
Hi, @tgross35, according to CI logs this is the image currently used https://github.com/actions/runner-images/releases/tag/ubuntu24%2F20260111.209
|
|
Huh, nice find. Any idea what the issue is then - does the version of the installed headers not match up? |
|
Some tests on Discusison #4940 was opened to understand how to address this. Should we |
63d2338 to
ea88643
Compare
b492106 to
5ca3e86
Compare
97aea86 to
eb9c0c8
Compare
a7a21a3 to
6b7675d
Compare
673d274 to
b039a7e
Compare
The 64 bit Linux images used in CI are on 6.11, headers are on >=6.8 at the time of writing. Skip the tests requiring kernel >=6.8 only on 32 bit archs, that are still on old headers, and for musl targets.
| "xdp_umem_reg" if musl || pointer_width == 32 => true, | ||
|
|
||
| // FIXME(linux): Requires >= 6.8 kernel headers. | ||
| // FIXME(linux): A new field was added to `xsk_tx_metadata_request` in linux 6.15. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Would you mind making this FIXME(1.0,linux) so we know it's a breaking change we want to do?
| FROM ubuntu:23.10 | ||
| FROM ubuntu:25.04 | ||
|
|
||
| # FIXME(time): we are using an EOL release because 24.04 changes to 64-bit time | ||
| RUN sed -i -E 's/(archive|security)\.ubuntu\.com/old-releases.ubuntu.com/g' \ | ||
| /etc/apt/sources.list && \ | ||
| dpkg --add-architecture i386 && \ | ||
| RUN dpkg --add-architecture i386 && \ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd love to do this for all the 32-bit linux targets, any reason why it's only i686 here?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I tried to do the same for armhf but it was failing due tothe transition to 64 bit time.
Looking around I found a Debian page about the transition towards 64 bit time where they say that x86 ABI wont change while arm got the ABI update. So, the # FIXME here is indeed correct for 32 bit architectures excluding x86.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh, so x86-32 didn't actually do the 64-bit time_t update yet? If so then this makes sense.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yep, correct. As far as I understood, Debian x86 32 will never get the 64 bit time_t.
Since they no longer provide x86 ISOs, the x86 32 stuff is there mainly for retrocompatibility so they preferred to keep it as is.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh that's right, I did hear about that for Debian. In that case I think this is probably close to ready if you want to mark it ready for review.
Description
The Linux images used in CI are on 6.11, headers are on >=6.8 at the time of writing.
Remove the test requiring a kernel <= 6.8 from the skipped ones, addressing the FIXMEs.
Move Ubuntu from 23.10 to 25.04 for i686-unkown-linux-gnu
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