Re: [PATCH tip/timers/core] uapi glibc compat: make linux/time.h compile after libc time.h files

From: Willem de Bruijn
Date: Fri Aug 19 2016 - 14:57:31 EST


On Wed, Aug 17, 2016 at 3:33 PM, John Stultz <john.stultz@xxxxxxxxxx> wrote:
> On Wed, Aug 10, 2016 at 8:45 AM, Willem de Bruijn
> <willemdebruijn.kernel@xxxxxxxxx> wrote:
>> From: Willem de Bruijn <willemb@xxxxxxxxxx>
>>
>> Add libc-compat workaround for definitions in linux/time.h that
>> duplicate those in libc time.h, sys/time.h and bits/time.h.
>>
>> With this change, userspace builds succeeds when linux/time.h is
>> included after those libc files. The inverse requires changes to
>> those userspace headers.
>>
>> Without this patch, when compiling the following program after
>> make headers_install:
>>
>> echo -e "#include <time.h>\n#include <linux/time.h>" | \
>> gcc -Wall -Werror -Iusr/include -c -xc -
>>
>> gcc gives these errors:
>>
>>
>> Signed-off-by: Willem de Bruijn <willemb@xxxxxxxxxx>
>> ---
>> include/uapi/linux/libc-compat.h | 50 ++++++++++++++++++++++++++++++++++++++++
>> include/uapi/linux/time.h | 15 ++++++++++++
>> 2 files changed, 65 insertions(+)
>
>
> So I don't have any objection to this. But I'm not sure if I'm the
> right path for such a change to go through.
>
> From the commit history, it seems David Miller or Andrew Morton would
> be the right folks to take this.
>
> thanks
> -john

It is a prerequisite for including linux/time.h from
uapi/linux/errqueue.h, a network file

https://lkml.org/lkml/2016/7/10/10

If making changes to these two files through net-next does not cause
conflicts with other branches, I can resend this patch to netdev.