Re: [PATCH] tools: Ensure tools copy of linux/filter.h exports the UAPI

From: Will Deacon

Date: Thu Aug 06 2026 - 07:06:14 EST


On Wed, Aug 05, 2026 at 10:32:23PM +0100, Mark Brown wrote:
> Normally when there is an include/foo.h and an include/uapi/foo.h the
> non-UAPI copy includes the UAPI copy. This is the case for the in
> kernel copy of linux/filter.h but not for the copy in tools/ which
> results in build breaks for the newly added arm64
> seccomp_ptrace_x0_bypass selftest. Add an explicit include of the uapi
> to fix the test and avoid future surprises.
>
> Fixes: 2fcbc4adf997 ("kselftest/arm64: Add seccomp ptrace x0 bypass test")
> Fixes: f143c11bb7b9 ("tools: bpf: Use local copy of headers including uapi/linux/filter.h")
> Signed-off-by: Mark Brown <broonie@xxxxxxxxxx>
> ---
> tools/include/linux/filter.h | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/tools/include/linux/filter.h b/tools/include/linux/filter.h
> index bcc6df79301a..4ead4e72097c 100644
> --- a/tools/include/linux/filter.h
> +++ b/tools/include/linux/filter.h
> @@ -6,6 +6,7 @@
> #define __TOOLS_LINUX_FILTER_H
>
> #include <linux/bpf.h>
> +#include <uapi/linux/filter.h>
>
> /* ArgX, context and stack frame pointer register positions. Note,
> * Arg1, Arg2, Arg3, etc are used as argument mappings of function

Is this still needed if we take the test changes from Jinjie?

https://lore.kernel.org/r/20260806090935.39311-1-ruanjinjie@xxxxxxxxxx

Will