Whamcloud - gitweb
- make HEAD from b_post_cmd3
[fs/lustre-release.git] / lustre / include / linux / lustre_types.h
1 #ifndef _LUSTRE_LINUX_TYPES_H
2 #define _LUSTRE_LINUX_TYPES_H
3
4 #ifdef HAVE_ASM_TYPES_H
5 #include <asm/types.h>
6 #endif
7
8 #ifdef __KERNEL__
9 # include <linux/types.h>
10 # include <linux/fs.h>    /* to check for FMODE_EXEC, dev_t, lest we redefine */
11 #else
12 #ifdef __CYGWIN__
13 # include <sys/types.h>
14 #elif defined(_AIX)
15 # include <inttypes.h>
16 #else
17 # include <stdint.h>
18 #endif
19 #endif
20
21 #if !defined(_LINUX_TYPES_H) && !defined(_BLKID_TYPES_H) && \
22         !defined(_EXT2_TYPES_H) && !defined(_I386_TYPES_H) && \
23         !defined(_ASM_IA64_TYPES_H) && !defined(_X86_64_TYPES_H) && \
24         !defined(_PPC_TYPES_H) && !defined(_PPC64_TYPES_H) && \
25         !defined(__mips64__)
26         /* yuck, would be nicer with _ASM_TYPES_H */
27
28 typedef unsigned short umode_t;
29 /*
30  * __xx is ok: it doesn't pollute the POSIX namespace. Use these in the
31  * header files exported to user space
32  */
33
34 typedef __signed__ char __s8;
35 typedef unsigned char __u8;
36
37 typedef __signed__ short __s16;
38 typedef unsigned short __u16;
39
40 typedef __signed__ int __s32;
41 typedef unsigned int __u32;
42
43 typedef __signed__ long long __s64;
44 typedef unsigned long long __u64;
45 #endif
46
47 #endif