On Fri, Jan 12, 2024 at 06:31:37PM +0100, Günther Noack wrote: > I tried this with the aarch64-linux-gnu-gcc-13 cross compiler on Debian, on > next-20231215, but I can not reproduce it. The KernelCI environment for building this is in a Docker container kernelci/gcc-10_arm64 which is on hub.docker.com - it's just Debian oldstable with the default toolchain. > > Full log from a failure: > > https://storage.kernelci.org/next/master/next-20231215/arm64/defconfig+kselftest/gcc-10/logs/kselftest.log Today's -next log is at: https://storage.kernelci.org/next/master/next-20240112/arm64/defconfig/gcc-10/logs/kselftest.log which looks about the same. > > /tmp/kci/linux/build/usr/include fs_test.c -lcap -o > > /tmp/kci/linux/build/kselftest/landlock/fs_test > > In file included from /tmp/kci/linux/build/usr/include/linux/fs.h:19, > > from fs_test.c:12: > > /usr/include/aarch64-linux-gnu/sys/mount.h:35:3: error: expected > The IOCTL patch set has introduced an "#include <linux/fs.h>" at the top of > selftests/landlock/fs_test.c (that file includes some IOCTL command numbers), > but that should in my mind normally be safe to include? I'd have expected so, and nothing in the header looks like it has implicit dependencies or anything. > I'm surprised that according to the log, fs.h line 19 is including sys/mount.h > instead of linux/mount.h...? This line says “#include <linux/mount.h>”? I'm seeing sys/mount.h in -next 20240112 (ie, today): https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/tools/testing/selftests/landlock/fs_test.c AFAICT it appears to have been that way since the original commit? > > identifier before numeric constant > > 35 | MS_RDONLY = 1, /* Mount read-only. */ > > | ^~~~~~~~~ > > In file included from common.h:19, > > from fs_test.c:27: > If you have more leads or more concrete reproduction steps, I'd be interested to > know. Otherwise, I'd have to just hope that it'll work better on the next > attempt...? The make command at the top of the logs linked above: make KBUILD_BUILD_USER=KernelCI FORMAT=.xz ARCH=arm64 HOSTCC=gcc CROSS_COMPILE=aarch64-linux-gnu- CROSS_COMPILE_COMPAT=arm-linux-gnueabihf- CC="ccache aarch64-linux-gnu-gcc" O=/tmp/kci/linux/build -C/tmp/kci/linux -j10 kselftest-gen_tar will hopefully DTRT in the above Docker container though I didn't actually try locally.
Attachment:
signature.asc
Description: PGP signature