On 26/02/2025 11:44, Thomas Weißschuh wrote:
> The types are used by tools/testing/selftests/vDSO/parse_vdso.c.
> To be able to build the vDSO selftests without a libc dependency,
> add the types to the kernels own UAPI headers.
>
> Link:
> https://refspecs.linuxfoundation.org/LSB_5.0.0/LSB-Core-generic/LSB-Core-generic/symversion.html#VERDEFEXTS
> Reviewed-by: Kees Cook <k...@kernel.org>
> Signed-off-by: Thomas Weißschuh <thomas.weisssc...@linutronix.de>
> ---
> include/uapi/linux/elf.h | 30 ++++++++++++++++++++++++++++++
> 1 file changed, 30 insertions(+)
>
> diff --git a/include/uapi/linux/elf.h b/include/uapi/linux/elf.h
> index
> 8846fe03ca5b836c96aad1be6d8fb9daf3d4b1d9..49f9f90458d8ca8e7b8f823d32be0a719ff827b3
> 100644
> --- a/include/uapi/linux/elf.h
> +++ b/include/uapi/linux/elf.h
> @@ -491,4 +491,34 @@ typedef struct elf64_note {
> /* Bits for GNU_PROPERTY_AARCH64_FEATURE_1_BTI */
> #define GNU_PROPERTY_AARCH64_FEATURE_1_BTI (1U << 0)
>
> +typedef struct {
> + Elf32_Half vd_version;
> + Elf32_Half vd_flags;
> + Elf32_Half vd_ndx;
> + Elf32_Half vd_cnt;
> + Elf32_Word vd_hash;
> + Elf32_Word vd_aux;
> + Elf32_Word vd_next;
> +} Elf32_Verdef;
> +
> +typedef struct {
> + Elf64_Half vd_version;
> + Elf64_Half vd_flags;
> + Elf64_Half vd_ndx;
> + Elf64_Half vd_cnt;
> + Elf64_Word vd_hash;
> + Elf64_Word vd_aux;
> + Elf64_Word vd_next;
> +} Elf64_Verdef;
> +
> +typedef struct {
> + Elf32_Word vda_name;
> + Elf32_Word vda_next;
> +} Elf32_Verdaux;
> +
> +typedef struct {
> + Elf64_Word vda_name;
> + Elf64_Word vda_next;
> +} Elf64_Verdaux;
> +
> #endif /* _UAPI_LINUX_ELF_H */
>
Reviewed-by: Vincenzo Frascino <vincenzo.frasc...@arm.com>
--
Regards,
Vincenzo