xref: /linux/arch/s390/include/uapi/asm/posix_types.h (revision 2da68a77)
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 /*
3  *  S390 version
4  *
5  */
6 
7 #ifndef __ARCH_S390_POSIX_TYPES_H
8 #define __ARCH_S390_POSIX_TYPES_H
9 
10 /*
11  * This file is generally used by user-level software, so you need to
12  * be a little careful about namespace pollution etc.  Also, we cannot
13  * assume GCC is being used.
14  */
15 
16 typedef unsigned long   __kernel_size_t;
17 typedef long            __kernel_ssize_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 #ifdef __KERNEL__
24 typedef unsigned short __kernel_old_uid_t;
25 typedef unsigned short __kernel_old_gid_t;
26 #define __kernel_old_uid_t __kernel_old_uid_t
27 #endif
28 
29 #ifndef __s390x__
30 
31 typedef unsigned long   __kernel_ino_t;
32 typedef unsigned short  __kernel_mode_t;
33 typedef unsigned short  __kernel_ipc_pid_t;
34 typedef unsigned short  __kernel_uid_t;
35 typedef unsigned short  __kernel_gid_t;
36 typedef int             __kernel_ptrdiff_t;
37 
38 #else /* __s390x__ */
39 
40 typedef unsigned int    __kernel_ino_t;
41 typedef unsigned int    __kernel_mode_t;
42 typedef int             __kernel_ipc_pid_t;
43 typedef unsigned int    __kernel_uid_t;
44 typedef unsigned int    __kernel_gid_t;
45 typedef long            __kernel_ptrdiff_t;
46 typedef unsigned long   __kernel_sigset_t;      /* at least 32 bits */
47 
48 #endif /* __s390x__ */
49 
50 #define __kernel_ino_t  __kernel_ino_t
51 #define __kernel_mode_t __kernel_mode_t
52 #define __kernel_ipc_pid_t __kernel_ipc_pid_t
53 #define __kernel_uid_t __kernel_uid_t
54 #define __kernel_gid_t __kernel_gid_t
55 
56 #include <asm-generic/posix_types.h>
57 
58 #endif
59