Re: [PATCH v06 18/36] uapi linux/errqueue.h: include linux/time.h in user space

From: Willem de Bruijn
Date: Sun Aug 06 2017 - 16:27:35 EST


On Sun, Aug 6, 2017 at 4:23 PM, Willem de Bruijn
<willemdebruijn.kernel@xxxxxxxxx> wrote:
> On Sun, Aug 6, 2017 at 12:44 PM, Mikko Rapeli <mikko.rapeli@xxxxxx> wrote:
>> linux/time.h conflicts with user space header time.h. Try to be compatible
>> with both.
>>
>> Fixes userspace compilation error:
>>
>> error: array type has incomplete element type
>> struct timespec ts[3];
>>
>> Signed-off-by: Mikko Rapeli <mikko.rapeli@xxxxxx>
>> Cc: Willem de Bruijn <willemb@xxxxxxxxxx>
>> Cc: Soheil Hassas Yeganeh <soheil@xxxxxxxxxx>
>> Cc: netdev@xxxxxxxxxxxxxxx
>> ---
>> include/uapi/linux/errqueue.h | 6 ++++++
>> 1 file changed, 6 insertions(+)
>>
>> diff --git a/include/uapi/linux/errqueue.h b/include/uapi/linux/errqueue.h
>> index 07bdce1f444a..b310b2c6d94f 100644
>> --- a/include/uapi/linux/errqueue.h
>> +++ b/include/uapi/linux/errqueue.h
>> @@ -3,6 +3,12 @@
>>
>> #include <linux/types.h>
>>
>> +#ifdef __KERNEL__
>> +#include <linux/time.h>
>> +#else
>> +#include <time.h>
>> +#endif /* __KERNEL__ */
>
> This will break applications that include <linux/time.h> manually.

Also, the patch title reads "include <linux/time.h> in user space",
but it includes <time.h> in that environment.