Re: [PATCH v2] x86/uapi: fix asm/signal.h userspace compilation error

From: Dmitry V. Levin
Date: Wed Mar 01 2017 - 20:28:36 EST


On Wed, Mar 01, 2017 at 04:26:29PM -0800, hpa@xxxxxxxxx wrote:
> On March 1, 2017 4:18:54 PM PST, "Dmitry V. Levin" <ldv@xxxxxxxxxxxx> wrote:
> >Replace size_t to fix the following asm/signal.h userspace compilation
> >error:
> >
> >/usr/include/asm/signal.h:126:2: error: unknown type name 'size_t'
> > size_t ss_size;
> >
> >size_t is replaced with __kernel_size_t in all cases except x32 where
> >unsigned int has to be used instead.
> >
> >Signed-off-by: Dmitry V. Levin <ldv@xxxxxxxxxxxx>
> >---
> >v2: create a separate patch for x86,
> > replace size_t instead of including <stddef.h>.
> >
> > arch/x86/include/uapi/asm/signal.h | 6 +++++-
> > 1 file changed, 5 insertions(+), 1 deletion(-)
> >
> >diff --git a/arch/x86/include/uapi/asm/signal.h
> >b/arch/x86/include/uapi/asm/signal.h
> >index 8264f47..f80473f 100644
> >--- a/arch/x86/include/uapi/asm/signal.h
> >+++ b/arch/x86/include/uapi/asm/signal.h
> >@@ -127,7 +127,11 @@ struct sigaction {
> > typedef struct sigaltstack {
> > void __user *ss_sp;
> > int ss_flags;
> >- size_t ss_size;
> >+#if defined(__x86_64__) && defined(__ILP32__)
> >+ unsigned int ss_size;
> >+#else
> >+ __kernel_size_t ss_size;
> >+#endif
> > } stack_t;
> >
> > #endif /* __ASSEMBLY__ */
>
> Sounds like we still ought to make this a type by itself.

A new type would need a name, like __kernel_uapi_size_t.
Do you have any preferences?


--
ldv