3070f25ae90a3e235eaaf2373949226ea83acfb6
[linux-3.10.git] / arch / sparc / include / asm / posix_types.h
1 /*
2  * This file is generally used by user-level software, so you need to
3  * be a little careful about namespace pollution etc.  Also, we cannot
4  * assume GCC is being used.
5  */
6
7 #ifndef __SPARC_POSIX_TYPES_H
8 #define __SPARC_POSIX_TYPES_H
9
10 #if defined(__sparc__) && defined(__arch64__)
11 /* sparc 64 bit */
12 typedef unsigned int           __kernel_nlink_t;
13 #define __kernel_nlink_t __kernel_nlink_t
14
15 typedef unsigned short         __kernel_old_uid_t;
16 typedef unsigned short         __kernel_old_gid_t;
17 #define __kernel_old_uid_t __kernel_old_uid_t
18
19 /* Note this piece of asymmetry from the v9 ABI.  */
20 typedef int                    __kernel_suseconds_t;
21 #define __kernel_suseconds_t __kernel_suseconds_t
22
23 #else
24 /* sparc 32 bit */
25
26 typedef unsigned int           __kernel_size_t;
27 typedef int                    __kernel_ssize_t;
28 typedef long int               __kernel_ptrdiff_t;
29 #define __kernel_size_t __kernel_size_t
30
31 typedef unsigned short         __kernel_ipc_pid_t;
32 #define __kernel_ipc_pid_t __kernel_ipc_pid_t
33
34 typedef unsigned short         __kernel_uid_t;
35 typedef unsigned short         __kernel_gid_t;
36 #define __kernel_uid_t __kernel_uid_t
37
38 typedef unsigned short         __kernel_mode_t;
39 #define __kernel_mode_t __kernel_mode_t
40
41 typedef short                  __kernel_nlink_t;
42 #define __kernel_nlink_t __kernel_nlink_t
43
44 typedef long                   __kernel_daddr_t;
45 #define __kernel_daddr_t __kernel_daddr_t
46
47 typedef unsigned short         __kernel_old_dev_t;
48 #define __kernel_old_dev_t __kernel_old_dev_t
49
50 #endif /* defined(__sparc__) && defined(__arch64__) */
51
52 #include <asm-generic/posix_types.h>
53
54 #endif /* __SPARC_POSIX_TYPES_H */