From: Andrew Morton <[email protected]>
Date: Thu, 21 Dec 2006 12:49:54 -0800
> > Summary: asm/types.h should define __u64 if isoc99
Platform specific bug, and has nothing to do with networking.
This problem will occur with any user visible interface definition
that uses __u64, and there are several both in and outside the
networking.
x86 and perhaps others protect the __u64 definition with:
defined(__GNUC__) && !defined(__STRICT_ANSI__)
for whatever reason, probably to avoid "long long" or something like
that. But even that theory makes no sense.
I do not make this protection on any of the sparc ports, even 32-bit
sparc, for example, so I find it really strange that x86 does this.
21 Ara 2006 Per 22:58 tarihinde, David Miller şunları yazmıştı:
> From: Andrew Morton <[email protected]>
> Date: Thu, 21 Dec 2006 12:49:54 -0800
>
> > > Summary: asm/types.h should define __u64 if isoc99
>
> Platform specific bug, and has nothing to do with networking.
>
> This problem will occur with any user visible interface definition
> that uses __u64, and there are several both in and outside the
> networking.
This bug hit KDE modules (kdebase/kdemultimedia/kdetv/...) many times, I
workarounded with #undef ing __STRICT_ANSI__ before including kernel headers
which is well ugly but works.
> x86 and perhaps others protect the __u64 definition with:
>
> defined(__GNUC__) && !defined(__STRICT_ANSI__)
>
> for whatever reason, probably to avoid "long long" or something like
> that. But even that theory makes no sense.
Indeed this restriction just breaks userspace apps.
Regards,
ismail
--
Bir gün yolda yürüyordum... Bir şarkı duydum... Kalbim acıdı... Bu kadar...