[PATCH v2 1/2] tools: linux/types.h: Add 128-bit integer types for arm64 UAPI structures
Jeremy Linton
jeremy.linton at arm.com
Thu Sep 3 17:22:36 PDT 2026
Hi,
Please consider this for all supported stable/LTS kernels.
Without this commit, older kernel trees will fail to build tools on
systems running newer kernel headers.
Upstream commit:
10a47fb67340 ("tools: linux/types.h: Add 128-bit integer types for arm64
UAPI structures")
Thanks,
Cc: stable at vger.kernel.org
On 6/26/26 9:17 AM, Will Deacon wrote:
> The arm64 UAPI exposes some 128-bit integer types to represent things
> such as fpsimd registers in the sigcontext. In preparation for defining
> these using the '__u128' typedef implemented by uapi/linux/types.h, copy
> that typedef over to the private linux/types.h header used by the tools
> directory.
>
> Cc: Arnd Bergmann <arnd at arndb.de>
> Cc: Arnaldo Carvalho de Melo <acme at redhat.com>
> Cc: David Matlack <dmatlack at google.com>
> Signed-off-by: Will Deacon <will at kernel.org>
> ---
> tools/include/linux/types.h | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/tools/include/linux/types.h b/tools/include/linux/types.h
> index d41f8a261bce..b6c473b7920d 100644
> --- a/tools/include/linux/types.h
> +++ b/tools/include/linux/types.h
> @@ -23,6 +23,11 @@ typedef enum {
> __GFP_HIGH
> } gfp_t;
>
> +#ifdef __SIZEOF_INT128__
> +typedef __signed__ __int128 __s128 __attribute__((aligned(16)));
> +typedef unsigned __int128 __u128 __attribute__((aligned(16)));
> +#endif
> +
> /*
> * We define u64 as uint64_t for every architecture
> * so that we can print it with "%"PRIx64 without getting warnings.
More information about the linux-arm-kernel
mailing list