edf8527ff08d9bdf9e5f0468e24faebfdd372c34
[linux-3.10.git] / arch / s390 / include / asm / posix_types.h
1 /*
2  *  include/asm-s390/posix_types.h
3  *
4  *  S390 version
5  *
6  */
7
8 #ifndef __ARCH_S390_POSIX_TYPES_H
9 #define __ARCH_S390_POSIX_TYPES_H
10
11 /*
12  * This file is generally used by user-level software, so you need to
13  * be a little careful about namespace pollution etc.  Also, we cannot
14  * assume GCC is being used.
15  */
16
17 typedef unsigned long   __kernel_size_t;
18 #define __kernel_size_t __kernel_size_t
19
20 typedef unsigned short  __kernel_old_dev_t;
21 #define __kernel_old_dev_t __kernel_old_dev_t
22
23 #ifndef __s390x__
24
25 typedef unsigned long   __kernel_ino_t;
26 typedef unsigned short  __kernel_mode_t;
27 typedef unsigned short  __kernel_nlink_t;
28 typedef unsigned short  __kernel_ipc_pid_t;
29 typedef unsigned short  __kernel_uid_t;
30 typedef unsigned short  __kernel_gid_t;
31 typedef int             __kernel_ssize_t;
32 typedef int             __kernel_ptrdiff_t;
33
34 #else /* __s390x__ */
35
36 typedef unsigned int    __kernel_ino_t;
37 typedef unsigned int    __kernel_mode_t;
38 typedef unsigned int    __kernel_nlink_t;
39 typedef int             __kernel_ipc_pid_t;
40 typedef unsigned int    __kernel_uid_t;
41 typedef unsigned int    __kernel_gid_t;
42 typedef long            __kernel_ssize_t;
43 typedef long            __kernel_ptrdiff_t;
44 typedef unsigned long   __kernel_sigset_t;      /* at least 32 bits */
45
46 #endif /* __s390x__ */
47
48 #define __kernel_ino_t  __kernel_ino_t
49 #define __kernel_mode_t __kernel_mode_t
50 #define __kernel_nlink_t __kernel_nlink_t
51 #define __kernel_ipc_pid_t __kernel_ipc_pid_t
52 #define __kernel_uid_t __kernel_uid_t
53 #define __kernel_gid_t __kernel_gid_t
54
55 #include <asm-generic/posix_types.h>
56
57 #endif