On Wed, Feb 03, 2021 at 09:22:38AM -0800, Chang S. Bae wrote: > Move the AT_MINSIGSTKSZ definition to generic Linux from arm64. It is > already used as generic ABI in glibc's generic elf.h, and this move will > prevent future namespace conflicts. In particular, x86 will re-use this > generic definition. > > Signed-off-by: Chang S. Bae <chang.seok.bae@xxxxxxxxx> > Reviewed-by: Len Brown <len.brown@xxxxxxxxx> > Cc: Carlos O'Donell <carlos@xxxxxxxxxx> > Cc: Dave Martin <Dave.Martin@xxxxxxx> > Cc: libc-alpha@xxxxxxxxxxxxxx > Cc: linux-arch@xxxxxxxxxxxxxxx > Cc: linux-api@xxxxxxxxxxxxxxx > Cc: linux-arm-kernel@xxxxxxxxxxxxxxxxxxx > Cc: linux-kernel@xxxxxxxxxxxxxxx > --- > Change from v4: > * Added as a new patch (Carlos O'Donell) > --- > arch/arm64/include/uapi/asm/auxvec.h | 1 - > include/uapi/linux/auxvec.h | 1 + > 2 files changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/arm64/include/uapi/asm/auxvec.h b/arch/arm64/include/uapi/asm/auxvec.h > index 743c0b84fd30..767d710c92aa 100644 > --- a/arch/arm64/include/uapi/asm/auxvec.h > +++ b/arch/arm64/include/uapi/asm/auxvec.h > @@ -19,7 +19,6 @@ > > /* vDSO location */ > #define AT_SYSINFO_EHDR 33 > -#define AT_MINSIGSTKSZ 51 /* stack needed for signal delivery */ Since this is UAPI, I'm wondering whether we should try to preserve this definition for users of <asm/auxvec.h>. (Indeed, it is not uncommon to include <asm/> headers in userspace hackery, since the <linux/> headers tend to interact badly with the the libc headers.) In C11 at least, duplicate #defines are not an error if the definitions are the same. I don't know about the history, but I suspect this was true for older standards too. So maybe we can just keep this definition with a duplicate definition in the common header. Otherwise, we could have #ifndef AT_MINSIGSTKSZ #define AT_MINSIGSTKSZ 51 #endif in include/linux/uapi/auxvec.h, and keep the arm64 header unchanged. > > #define AT_VECTOR_SIZE_ARCH 2 /* entries in ARCH_DLINFO */ > > diff --git a/include/uapi/linux/auxvec.h b/include/uapi/linux/auxvec.h > index abe5f2b6581b..cc4fa77bd2a7 100644 > --- a/include/uapi/linux/auxvec.h > +++ b/include/uapi/linux/auxvec.h > @@ -33,5 +33,6 @@ > > #define AT_EXECFN 31 /* filename of program */ > > +#define AT_MINSIGSTKSZ 51 /* stack needed for signal delivery */ > > #endif /* _UAPI_LINUX_AUXVEC_H */ Otherwise, this looks fine as a concept. AFAICT, no other arch is already using the value 51. If nobody else objects to the loss of the definition from arm64's <asm/auxvec.h> then I guess I can put up with that -- but I will wait to see if anyone gives a view first. Cheers ---Dave