lkml.org 
[lkml]   [2023]   [Jul]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH] selftests: Fix arm64 test installation
From
On 7/10/23 15:30, Mark Brown wrote:
...
> There is a floor on binutils version for the kselftests that's more
> aggressive than that for the kernel itself, though that looks like RHEL
> 8 which has binutils 2.30 which *should* be fine for most things - the
> MTE tests won't build but they do have version detection so should skip,
> I guess you might have trouble with PAC support which doesn't have
> detection in the tests? It's certainly old enough that I'm surprised to
> hear someone doing development for anything current with it.

This used to be a development machine, but now it is sufficiently old
that it is lightly used--that would explain how I could reserve it on
short notice for this. Maybe I'll adopt it and upgrade to a modern
distro, now that I seem to need an arm64 box.

>
> I just tried a Debian based GCC 8 container which seems pretty happy
> for arm64, the command was:
>
> make -j16 O=/tmp/out INSTALL_PATH=/tmp/kselftest \
> ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- \
> CROSS_COMPILE_COMPAT=arm-linux-gnueabihf- kselftest-install
>
> (the compat toolchain isn't used here IIRC). It does skip the MTE tests
> but otherwise isn't showing any obvious issues in the arm64 tests.
>

Thank you for providing a snapshot of what it looks like on gcc 8
over there.

OK, so actually, many of the failures were due to the "all" target
getting run too early (recursive make, again, uggh). With the fix below,
there are still a dozen failures in selftests, but only one in the arm64
tree, after all.

...
> That does seem to work around the issue at least with a quick out of
> tree build, including with GCC 8.

Great news! That's really helpful. And in fact, I have discovered two
more things:

1) The "emit_tests" target is there apparently because commit
313a4db7f3387 ("kselftest: arm64: extend toplevel skeleton Makefile")
believed that it was necessary to skip emitting tests if not on the
right native platform. I'm tempted to delete the entire emit_tests
target in both arm64 and riscv selftests (and that also seems to work
just fine) in order to simplify things, perhaps as a follow up step.

For now I'll just post the simpler fix, though.

2) riscv has copied this Makefile subtest technique to its (very small
so far) set of selftests. I have no native system to test any fixes on,
but I'm probably going to post a "blind" fix for that one, too.


thanks,
--
John Hubbard
NVIDIA

\
 
 \ /
  Last update: 2023-07-11 01:12    [W:0.065 / U:0.672 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site