1 #ifndef _ASM_X86_TYPES_H 2 #define _ASM_X86_TYPES_H 3 4 #ifndef __ASSEMBLY__ 5 6 typedef unsigned short umode_t; 7 8 /* 9 * __xx is ok: it doesn't pollute the POSIX namespace. Use these in the 10 * header files exported to user space 11 */ 12 13 typedef __signed__ char __s8; 14 typedef unsigned char __u8; 15 16 typedef __signed__ short __s16; 17 typedef unsigned short __u16; 18 19 typedef __signed__ int __s32; 20 typedef unsigned int __u32; 21 22 #ifdef __i386__ 23 # ifdef __GNUC__ 24 __extension__ typedef __signed__ long long __s64; 25 __extension__ typedef unsigned long long __u64; 26 # endif 27 #else 28 typedef __signed__ long long __s64; 29 typedef unsigned long long __u64; 30 #endif 31 32 #endif /* __ASSEMBLY__ */ 33 34 /* 35 * These aren't exported outside the kernel to avoid name space clashes 36 */ 37 38 #endif 39