Re: [PATCH] selftests: powerpc: Add header symlinks for building papr character device tests

From: Michal Suchánek
Date: Thu Feb 15 2024 - 14:23:45 EST


On Thu, Feb 15, 2024 at 01:13:34PM -0600, Nathan Lynch wrote:
> Michal Suchanek <msuchanek@xxxxxxx> writes:
> >
> > Without the headers the tests don't build.
> >
> > Fixes: 9118c5d32bdd ("powerpc/selftests: Add test for papr-vpd")
> > Fixes: 76b2ec3faeaa ("powerpc/selftests: Add test for papr-sysparm")
> > Signed-off-by: Michal Suchanek <msuchanek@xxxxxxx>
> > ---
> > tools/testing/selftests/powerpc/include/asm/papr-miscdev.h | 1 +
> > tools/testing/selftests/powerpc/include/asm/papr-sysparm.h | 1 +
> > tools/testing/selftests/powerpc/include/asm/papr-vpd.h | 1 +
> > 3 files changed, 3 insertions(+)
> > create mode 120000 tools/testing/selftests/powerpc/include/asm/papr-miscdev.h
> > create mode 120000 tools/testing/selftests/powerpc/include/asm/papr-sysparm.h
> > create mode 120000
> > tools/testing/selftests/powerpc/include/asm/papr-vpd.h
>
> I really hope making symlinks into the kernel source isn't necessary. I
> haven't experienced build failures with these tests. How are you
> building them?
>
> I usually do something like (on a x86 build host):
>
> $ make ARCH=powerpc CROSS_COMPILE=powerpc64le-linux- ppc64le_defconfig
> $ make ARCH=powerpc CROSS_COMPILE=powerpc64le-linux- headers
> $ make ARCH=powerpc CROSS_COMPILE=powerpc64le-linux- -C tools/testing/selftests/powerpc/
>
> without issue.

I am not configuring the kernel, only building the tests, and certainly
not installing headers on the system.

Apparently this is what people aim to do, and report bugs when it does
not work: build the kselftests as self-contained testsuite that relies
only on standard libc, and whatever it brought in the sources.

That said, the target to install headers is headers_install, not
headers. The headers target is not documented, it's probably meant to be
internal to the build system. Yet it is not enforced that it is built
before building the selftests.

Thanks

Michal