PROBLEM: compilation error when including asm/system.h in user mode code

From: А.И. Ченцов
Date: Wed Jun 21 2006 - 17:48:25 EST


Description:
Starting 2.6.15 'include/asm-i386/system.h' has lines (301-304)

extern unsigned long cmpxchg_386_u8(volatile void *, u8, u8);
extern unsigned long cmpxchg_386_u16(volatile void *, u16, u16);
extern unsigned long cmpxchg_386_u32(volatile void *, u32, u32);

Here u8, u16, u32 types used in nonkernel namespace producing undefined type
errors.

Solution:
Rename types to __u8, __u16, __u32.

Since a few distributions derive their glibc kernel headers directly from
kernel the problem is quite relevant.

Regards,
A. Chentsov.


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/