Re: [PATCH v4 3/4] selftests/vDSO: Use KHDR_INCLUDES to locate UAPI headers for vdso_test_getrandom

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2024-08-28 at 13:36 +0200, Jason A. Donenfeld wrote:
> On Tue, Aug 27, 2024 at 05:29:56PM +0200, Jason A. Donenfeld wrote:
> > On Tue, Aug 27, 2024 at 5:29 PM Xi Ruoyao <xry111@xxxxxxxxxxx> wrote:
> > > Or, I can add $(KHDR_INCLUDES) but also keep
> > > -isystem $(top_srcdir)/include/uapi, so "make -C tools/testing/selftests
> > > TARGETS=vDSO" will still (happens to) work on x86 and ppc (without
> > > headers in kernel-tree/usr).
> > 
> > Oh, the porquenolosdos solution. That sounds good to me.
> 
> 
> Does the below work for you?

Yes, it works.

> From 0a769491e0193cdf9728a23d02be5e6be975b513 Mon Sep 17 00:00:00 2001
> From: Xi Ruoyao <xry111@xxxxxxxxxxx>
> Date: Wed, 28 Aug 2024 13:29:57 +0200
> Subject: [PATCH] selftests/vDSO: use KHDR_INCLUDES to locate UAPI headers for
>  vdso_test_getrandom
> 
> Building test_vdso_getrandom currently leads to following issue:
> 
>     In file included from /home/xry111/git-repos/linux/tools/include/linux/compiler_types.h:36,
>                      from /home/xry111/git-repos/linux/include/uapi/linux/stddef.h:5,
>                      from /home/xry111/git-repos/linux/include/uapi/linux/posix_types.h:5,
>                      from /usr/include/asm/sigcontext.h:12,
>                      from /usr/include/bits/sigcontext.h:30,
>                      from /usr/include/signal.h:301,
>                      from vdso_test_getrandom.c:14:
>     /home/xry111/git-repos/linux/tools/include/linux/compiler-gcc.h:3:2: error: #error "Please don't include <linux/compiler-gcc.h> directly, include <linux/compiler.h> instead."
>         3 | #error "Please don't include <linux/compiler-gcc.h> directly, include <linux/compiler.h> instead."
>           |  ^~~~~
> 
> It's because the compiler_types.h inclusion in
> include/uapi/linux/stddef.h is expected to be removed by the
> header_install.sh script, as compiler_types.h shouldn't be used from
> user space.
> 
> Add KHDR_INCLUDES before the existing include/uapi inclusion so that
> usr/include takes precedence if it's populated.
> 
> Signed-off-by: Xi Ruoyao <xry111@xxxxxxxxxxx>
> Signed-off-by: Jason A. Donenfeld <Jason@xxxxxxxxx>
> ---
>  tools/testing/selftests/vDSO/Makefile | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/tools/testing/selftests/vDSO/Makefile b/tools/testing/selftests/vDSO/Makefile
> index d1452c7d6d4f..13a626ef64f7 100644
> --- a/tools/testing/selftests/vDSO/Makefile
> +++ b/tools/testing/selftests/vDSO/Makefile
> @@ -39,6 +39,7 @@ $(OUTPUT)/vdso_test_correctness: LDFLAGS += -ldl
> 
>  $(OUTPUT)/vdso_test_getrandom: parse_vdso.c
>  $(OUTPUT)/vdso_test_getrandom: CFLAGS += -isystem $(top_srcdir)/tools/include \
> +					 $(KHDR_INCLUDES) \
>                                           -isystem $(top_srcdir)/include/uapi
> 
>  $(OUTPUT)/vdso_test_chacha: $(top_srcdir)/tools/arch/$(ARCH)/vdso/vgetrandom-chacha.S
> --
> 2.46.0
> 
> 

-- 
Xi Ruoyao <xry111@xxxxxxxxxxx>
School of Aerospace Science and Technology, Xidian University





[Index of Archives]     [Kernel]     [Gnu Classpath]     [Gnu Crypto]     [DM Crypt]     [Netfilter]     [Bugtraq]
  Powered by Linux