On Thu, Mar 02, 2017 at 10:22:18AM -0500, Carlos O'Donell wrote: > On Wed, Mar 1, 2017 at 11:20 AM, Arnd Bergmann <arnd@xxxxxxxx> wrote: > > On Sun, Feb 26, 2017 at 2:01 AM, Dmitry V. Levin <ldv@xxxxxxxxxxxx> wrote: > >> Include <stddef.h> (guarded by #ifndef __KERNEL__) to fix asm/signal.h > >> userspace compilation errors like this: > >> > >> /usr/include/asm/signal.h:126:2: error: unknown type name 'size_t' > >> size_t ss_size; > >> > >> As no uapi header provides a definition of size_t, inclusion > >> of <stddef.h> seems to be the most conservative fix available. [...] > > I'm not sure if this is the best fix. We generally should not include one > > standard header from another standard header. Would it be possible > > to use __kernel_size_t instead of size_t? > > In glibc we handle this with special use of __need_size_t with GCC's > provided stddef.h. > > For example glibc's signal.h does this: > > # define __need_size_t > # include <stddef.h> Just to make it clear, do you suggest this approach for asm/signal.h as well? [...] > Changing the fundamental type causes the issues you see in patch v2 > where sizeof(size_t) < sizeof(__kernel_size_t). > > It will only lead to problem substituting the wrong type. I don't see any appetite for creating more ABIs like x32 with sizeof(size_t) < sizeof(__kernel_size_t), so v2 approach is not going to be any different from v1 in maintenance. -- ldv
Attachment:
pgpWryBKWGkZ0.pgp
Description: PGP signature