tests linux: do not skip tests depending on kernel <= 6.8#4934
tests linux: do not skip tests depending on kernel <= 6.8#4934Marcondiro wants to merge 4 commits intorust-lang:mainfrom
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
b039a7e to
483dfc4
Compare
| 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.
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.
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.
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.
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.
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.
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.
Description
The Linux images used in CI use kernel 6.11, and headers are mostly >=6.8 at the time of writing, the only exceptions begin 32 bit architectures which are still on old headers due to the 32 -> 64 bit time_t enforcement in newer images.
Remove the tests requiring a kernel <= 6.8 from the skipped ones for 64 bit images not using musl.
Bump x86 32 images since x86 won't get the 64 bits time_t.
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