Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

sparc: unify posix_types.h

The posix types differed so much in their definition
that they are kept in separate blocks.

Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Sam Ravnborg and committed by
David S. Miller
a508228a a66963a9

+152 -247
-2
arch/sparc/include/asm/Kbuild
··· 3 3 4 4 header-y += ipcbuf_32.h 5 5 header-y += ipcbuf_64.h 6 - header-y += posix_types_32.h 7 - header-y += posix_types_64.h 8 6 header-y += ptrace_32.h 9 7 header-y += ptrace_64.h 10 8 header-y += sigcontext_32.h
+152 -5
arch/sparc/include/asm/posix_types.h
··· 1 - #ifndef ___ASM_SPARC_POSIX_TYPES_H 2 - #define ___ASM_SPARC_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 + 3 10 #if defined(__sparc__) && defined(__arch64__) 4 - #include <asm/posix_types_64.h> 11 + /* sparc 64 bit */ 12 + typedef unsigned long __kernel_size_t; 13 + typedef long __kernel_ssize_t; 14 + typedef long __kernel_ptrdiff_t; 15 + typedef long __kernel_time_t; 16 + typedef long __kernel_clock_t; 17 + typedef int __kernel_pid_t; 18 + typedef int __kernel_ipc_pid_t; 19 + typedef unsigned int __kernel_uid_t; 20 + typedef unsigned int __kernel_gid_t; 21 + typedef unsigned long __kernel_ino_t; 22 + typedef unsigned int __kernel_mode_t; 23 + typedef unsigned short __kernel_umode_t; 24 + typedef unsigned int __kernel_nlink_t; 25 + typedef int __kernel_daddr_t; 26 + typedef long __kernel_off_t; 27 + typedef char * __kernel_caddr_t; 28 + typedef unsigned short __kernel_uid16_t; 29 + typedef unsigned short __kernel_gid16_t; 30 + typedef int __kernel_clockid_t; 31 + typedef int __kernel_timer_t; 32 + 33 + typedef unsigned short __kernel_old_uid_t; 34 + typedef unsigned short __kernel_old_gid_t; 35 + typedef __kernel_uid_t __kernel_uid32_t; 36 + typedef __kernel_gid_t __kernel_gid32_t; 37 + 38 + typedef unsigned int __kernel_old_dev_t; 39 + 40 + /* Note this piece of asymmetry from the v9 ABI. */ 41 + typedef int __kernel_suseconds_t; 42 + 5 43 #else 6 - #include <asm/posix_types_32.h> 44 + /* sparc 32 bit */ 45 + 46 + typedef unsigned int __kernel_size_t; 47 + typedef int __kernel_ssize_t; 48 + typedef long int __kernel_ptrdiff_t; 49 + typedef long __kernel_time_t; 50 + typedef long __kernel_suseconds_t; 51 + typedef long __kernel_clock_t; 52 + typedef int __kernel_pid_t; 53 + typedef unsigned short __kernel_ipc_pid_t; 54 + typedef unsigned short __kernel_uid_t; 55 + typedef unsigned short __kernel_gid_t; 56 + typedef unsigned long __kernel_ino_t; 57 + typedef unsigned short __kernel_mode_t; 58 + typedef unsigned short __kernel_umode_t; 59 + typedef short __kernel_nlink_t; 60 + typedef long __kernel_daddr_t; 61 + typedef long __kernel_off_t; 62 + typedef char * __kernel_caddr_t; 63 + typedef unsigned short __kernel_uid16_t; 64 + typedef unsigned short __kernel_gid16_t; 65 + typedef unsigned int __kernel_uid32_t; 66 + typedef unsigned int __kernel_gid32_t; 67 + typedef unsigned short __kernel_old_uid_t; 68 + typedef unsigned short __kernel_old_gid_t; 69 + typedef unsigned short __kernel_old_dev_t; 70 + typedef int __kernel_clockid_t; 71 + typedef int __kernel_timer_t; 72 + 73 + #endif /* defined(__sparc__) && defined(__arch64__) */ 74 + 75 + #ifdef __GNUC__ 76 + typedef long long __kernel_loff_t; 7 77 #endif 8 - #endif 78 + 79 + typedef struct { 80 + int val[2]; 81 + } __kernel_fsid_t; 82 + 83 + #ifdef __KERNEL__ 84 + 85 + #undef __FD_SET 86 + static inline void __FD_SET(unsigned long fd, __kernel_fd_set *fdsetp) 87 + { 88 + unsigned long _tmp = fd / __NFDBITS; 89 + unsigned long _rem = fd % __NFDBITS; 90 + fdsetp->fds_bits[_tmp] |= (1UL<<_rem); 91 + } 92 + 93 + #undef __FD_CLR 94 + static inline void __FD_CLR(unsigned long fd, __kernel_fd_set *fdsetp) 95 + { 96 + unsigned long _tmp = fd / __NFDBITS; 97 + unsigned long _rem = fd % __NFDBITS; 98 + fdsetp->fds_bits[_tmp] &= ~(1UL<<_rem); 99 + } 100 + 101 + #undef __FD_ISSET 102 + static inline int __FD_ISSET(unsigned long fd, __const__ __kernel_fd_set *p) 103 + { 104 + unsigned long _tmp = fd / __NFDBITS; 105 + unsigned long _rem = fd % __NFDBITS; 106 + return (p->fds_bits[_tmp] & (1UL<<_rem)) != 0; 107 + } 108 + 109 + /* 110 + * This will unroll the loop for the normal constant cases (8 or 32 longs, 111 + * for 256 and 1024-bit fd_sets respectively) 112 + */ 113 + #undef __FD_ZERO 114 + static inline void __FD_ZERO(__kernel_fd_set *p) 115 + { 116 + unsigned long *tmp = p->fds_bits; 117 + int i; 118 + 119 + if (__builtin_constant_p(__FDSET_LONGS)) { 120 + switch (__FDSET_LONGS) { 121 + case 32: 122 + tmp[ 0] = 0; tmp[ 1] = 0; tmp[ 2] = 0; tmp[ 3] = 0; 123 + tmp[ 4] = 0; tmp[ 5] = 0; tmp[ 6] = 0; tmp[ 7] = 0; 124 + tmp[ 8] = 0; tmp[ 9] = 0; tmp[10] = 0; tmp[11] = 0; 125 + tmp[12] = 0; tmp[13] = 0; tmp[14] = 0; tmp[15] = 0; 126 + tmp[16] = 0; tmp[17] = 0; tmp[18] = 0; tmp[19] = 0; 127 + tmp[20] = 0; tmp[21] = 0; tmp[22] = 0; tmp[23] = 0; 128 + tmp[24] = 0; tmp[25] = 0; tmp[26] = 0; tmp[27] = 0; 129 + tmp[28] = 0; tmp[29] = 0; tmp[30] = 0; tmp[31] = 0; 130 + return; 131 + case 16: 132 + tmp[ 0] = 0; tmp[ 1] = 0; tmp[ 2] = 0; tmp[ 3] = 0; 133 + tmp[ 4] = 0; tmp[ 5] = 0; tmp[ 6] = 0; tmp[ 7] = 0; 134 + tmp[ 8] = 0; tmp[ 9] = 0; tmp[10] = 0; tmp[11] = 0; 135 + tmp[12] = 0; tmp[13] = 0; tmp[14] = 0; tmp[15] = 0; 136 + return; 137 + case 8: 138 + tmp[ 0] = 0; tmp[ 1] = 0; tmp[ 2] = 0; tmp[ 3] = 0; 139 + tmp[ 4] = 0; tmp[ 5] = 0; tmp[ 6] = 0; tmp[ 7] = 0; 140 + return; 141 + case 4: 142 + tmp[ 0] = 0; tmp[ 1] = 0; tmp[ 2] = 0; tmp[ 3] = 0; 143 + return; 144 + } 145 + } 146 + i = __FDSET_LONGS; 147 + while (i) { 148 + i--; 149 + *tmp = 0; 150 + tmp++; 151 + } 152 + } 153 + 154 + #endif /* __KERNEL__ */ 155 + #endif /* __SPARC_POSIX_TYPES_H */
-118
arch/sparc/include/asm/posix_types_32.h
··· 1 - #ifndef __ARCH_SPARC_POSIX_TYPES_H 2 - #define __ARCH_SPARC_POSIX_TYPES_H 3 - 4 - /* 5 - * This file is generally used by user-level software, so you need to 6 - * be a little careful about namespace pollution etc. Also, we cannot 7 - * assume GCC is being used. 8 - */ 9 - 10 - typedef unsigned int __kernel_size_t; 11 - typedef int __kernel_ssize_t; 12 - typedef long int __kernel_ptrdiff_t; 13 - typedef long __kernel_time_t; 14 - typedef long __kernel_suseconds_t; 15 - typedef long __kernel_clock_t; 16 - typedef int __kernel_pid_t; 17 - typedef unsigned short __kernel_ipc_pid_t; 18 - typedef unsigned short __kernel_uid_t; 19 - typedef unsigned short __kernel_gid_t; 20 - typedef unsigned long __kernel_ino_t; 21 - typedef unsigned short __kernel_mode_t; 22 - typedef unsigned short __kernel_umode_t; 23 - typedef short __kernel_nlink_t; 24 - typedef long __kernel_daddr_t; 25 - typedef long __kernel_off_t; 26 - typedef char * __kernel_caddr_t; 27 - typedef unsigned short __kernel_uid16_t; 28 - typedef unsigned short __kernel_gid16_t; 29 - typedef unsigned int __kernel_uid32_t; 30 - typedef unsigned int __kernel_gid32_t; 31 - typedef unsigned short __kernel_old_uid_t; 32 - typedef unsigned short __kernel_old_gid_t; 33 - typedef unsigned short __kernel_old_dev_t; 34 - typedef int __kernel_clockid_t; 35 - typedef int __kernel_timer_t; 36 - 37 - #ifdef __GNUC__ 38 - typedef long long __kernel_loff_t; 39 - #endif 40 - 41 - typedef struct { 42 - int val[2]; 43 - } __kernel_fsid_t; 44 - 45 - #if defined(__KERNEL__) 46 - 47 - #undef __FD_SET 48 - static inline void __FD_SET(unsigned long fd, __kernel_fd_set *fdsetp) 49 - { 50 - unsigned long _tmp = fd / __NFDBITS; 51 - unsigned long _rem = fd % __NFDBITS; 52 - fdsetp->fds_bits[_tmp] |= (1UL<<_rem); 53 - } 54 - 55 - #undef __FD_CLR 56 - static inline void __FD_CLR(unsigned long fd, __kernel_fd_set *fdsetp) 57 - { 58 - unsigned long _tmp = fd / __NFDBITS; 59 - unsigned long _rem = fd % __NFDBITS; 60 - fdsetp->fds_bits[_tmp] &= ~(1UL<<_rem); 61 - } 62 - 63 - #undef __FD_ISSET 64 - static inline int __FD_ISSET(unsigned long fd, __const__ __kernel_fd_set *p) 65 - { 66 - unsigned long _tmp = fd / __NFDBITS; 67 - unsigned long _rem = fd % __NFDBITS; 68 - return (p->fds_bits[_tmp] & (1UL<<_rem)) != 0; 69 - } 70 - 71 - /* 72 - * This will unroll the loop for the normal constant cases (8 or 32 longs, 73 - * for 256 and 1024-bit fd_sets respectively) 74 - */ 75 - #undef __FD_ZERO 76 - static inline void __FD_ZERO(__kernel_fd_set *p) 77 - { 78 - unsigned long *tmp = p->fds_bits; 79 - int i; 80 - 81 - if (__builtin_constant_p(__FDSET_LONGS)) { 82 - switch (__FDSET_LONGS) { 83 - case 32: 84 - tmp[ 0] = 0; tmp[ 1] = 0; tmp[ 2] = 0; tmp[ 3] = 0; 85 - tmp[ 4] = 0; tmp[ 5] = 0; tmp[ 6] = 0; tmp[ 7] = 0; 86 - tmp[ 8] = 0; tmp[ 9] = 0; tmp[10] = 0; tmp[11] = 0; 87 - tmp[12] = 0; tmp[13] = 0; tmp[14] = 0; tmp[15] = 0; 88 - tmp[16] = 0; tmp[17] = 0; tmp[18] = 0; tmp[19] = 0; 89 - tmp[20] = 0; tmp[21] = 0; tmp[22] = 0; tmp[23] = 0; 90 - tmp[24] = 0; tmp[25] = 0; tmp[26] = 0; tmp[27] = 0; 91 - tmp[28] = 0; tmp[29] = 0; tmp[30] = 0; tmp[31] = 0; 92 - return; 93 - case 16: 94 - tmp[ 0] = 0; tmp[ 1] = 0; tmp[ 2] = 0; tmp[ 3] = 0; 95 - tmp[ 4] = 0; tmp[ 5] = 0; tmp[ 6] = 0; tmp[ 7] = 0; 96 - tmp[ 8] = 0; tmp[ 9] = 0; tmp[10] = 0; tmp[11] = 0; 97 - tmp[12] = 0; tmp[13] = 0; tmp[14] = 0; tmp[15] = 0; 98 - return; 99 - case 8: 100 - tmp[ 0] = 0; tmp[ 1] = 0; tmp[ 2] = 0; tmp[ 3] = 0; 101 - tmp[ 4] = 0; tmp[ 5] = 0; tmp[ 6] = 0; tmp[ 7] = 0; 102 - return; 103 - case 4: 104 - tmp[ 0] = 0; tmp[ 1] = 0; tmp[ 2] = 0; tmp[ 3] = 0; 105 - return; 106 - } 107 - } 108 - i = __FDSET_LONGS; 109 - while (i) { 110 - i--; 111 - *tmp = 0; 112 - tmp++; 113 - } 114 - } 115 - 116 - #endif /* defined(__KERNEL__) */ 117 - 118 - #endif /* !(__ARCH_SPARC_POSIX_TYPES_H) */
-122
arch/sparc/include/asm/posix_types_64.h
··· 1 - #ifndef __ARCH_SPARC64_POSIX_TYPES_H 2 - #define __ARCH_SPARC64_POSIX_TYPES_H 3 - 4 - /* 5 - * This file is generally used by user-level software, so you need to 6 - * be a little careful about namespace pollution etc. Also, we cannot 7 - * assume GCC is being used. 8 - */ 9 - 10 - typedef unsigned long __kernel_size_t; 11 - typedef long __kernel_ssize_t; 12 - typedef long __kernel_ptrdiff_t; 13 - typedef long __kernel_time_t; 14 - typedef long __kernel_clock_t; 15 - typedef int __kernel_pid_t; 16 - typedef int __kernel_ipc_pid_t; 17 - typedef unsigned int __kernel_uid_t; 18 - typedef unsigned int __kernel_gid_t; 19 - typedef unsigned long __kernel_ino_t; 20 - typedef unsigned int __kernel_mode_t; 21 - typedef unsigned short __kernel_umode_t; 22 - typedef unsigned int __kernel_nlink_t; 23 - typedef int __kernel_daddr_t; 24 - typedef long __kernel_off_t; 25 - typedef char * __kernel_caddr_t; 26 - typedef unsigned short __kernel_uid16_t; 27 - typedef unsigned short __kernel_gid16_t; 28 - typedef int __kernel_clockid_t; 29 - typedef int __kernel_timer_t; 30 - 31 - typedef unsigned short __kernel_old_uid_t; 32 - typedef unsigned short __kernel_old_gid_t; 33 - typedef __kernel_uid_t __kernel_uid32_t; 34 - typedef __kernel_gid_t __kernel_gid32_t; 35 - 36 - typedef unsigned int __kernel_old_dev_t; 37 - 38 - /* Note this piece of asymmetry from the v9 ABI. */ 39 - typedef int __kernel_suseconds_t; 40 - 41 - #ifdef __GNUC__ 42 - typedef long long __kernel_loff_t; 43 - #endif 44 - 45 - typedef struct { 46 - int val[2]; 47 - } __kernel_fsid_t; 48 - 49 - #if defined(__KERNEL__) 50 - 51 - #undef __FD_SET 52 - static inline void __FD_SET(unsigned long fd, __kernel_fd_set *fdsetp) 53 - { 54 - unsigned long _tmp = fd / __NFDBITS; 55 - unsigned long _rem = fd % __NFDBITS; 56 - fdsetp->fds_bits[_tmp] |= (1UL<<_rem); 57 - } 58 - 59 - #undef __FD_CLR 60 - static inline void __FD_CLR(unsigned long fd, __kernel_fd_set *fdsetp) 61 - { 62 - unsigned long _tmp = fd / __NFDBITS; 63 - unsigned long _rem = fd % __NFDBITS; 64 - fdsetp->fds_bits[_tmp] &= ~(1UL<<_rem); 65 - } 66 - 67 - #undef __FD_ISSET 68 - static inline int __FD_ISSET(unsigned long fd, __const__ __kernel_fd_set *p) 69 - { 70 - unsigned long _tmp = fd / __NFDBITS; 71 - unsigned long _rem = fd % __NFDBITS; 72 - return (p->fds_bits[_tmp] & (1UL<<_rem)) != 0; 73 - } 74 - 75 - /* 76 - * This will unroll the loop for the normal constant cases (8 or 32 longs, 77 - * for 256 and 1024-bit fd_sets respectively) 78 - */ 79 - #undef __FD_ZERO 80 - static inline void __FD_ZERO(__kernel_fd_set *p) 81 - { 82 - unsigned long *tmp = p->fds_bits; 83 - int i; 84 - 85 - if (__builtin_constant_p(__FDSET_LONGS)) { 86 - switch (__FDSET_LONGS) { 87 - case 32: 88 - tmp[ 0] = 0; tmp[ 1] = 0; tmp[ 2] = 0; tmp[ 3] = 0; 89 - tmp[ 4] = 0; tmp[ 5] = 0; tmp[ 6] = 0; tmp[ 7] = 0; 90 - tmp[ 8] = 0; tmp[ 9] = 0; tmp[10] = 0; tmp[11] = 0; 91 - tmp[12] = 0; tmp[13] = 0; tmp[14] = 0; tmp[15] = 0; 92 - tmp[16] = 0; tmp[17] = 0; tmp[18] = 0; tmp[19] = 0; 93 - tmp[20] = 0; tmp[21] = 0; tmp[22] = 0; tmp[23] = 0; 94 - tmp[24] = 0; tmp[25] = 0; tmp[26] = 0; tmp[27] = 0; 95 - tmp[28] = 0; tmp[29] = 0; tmp[30] = 0; tmp[31] = 0; 96 - return; 97 - case 16: 98 - tmp[ 0] = 0; tmp[ 1] = 0; tmp[ 2] = 0; tmp[ 3] = 0; 99 - tmp[ 4] = 0; tmp[ 5] = 0; tmp[ 6] = 0; tmp[ 7] = 0; 100 - tmp[ 8] = 0; tmp[ 9] = 0; tmp[10] = 0; tmp[11] = 0; 101 - tmp[12] = 0; tmp[13] = 0; tmp[14] = 0; tmp[15] = 0; 102 - return; 103 - case 8: 104 - tmp[ 0] = 0; tmp[ 1] = 0; tmp[ 2] = 0; tmp[ 3] = 0; 105 - tmp[ 4] = 0; tmp[ 5] = 0; tmp[ 6] = 0; tmp[ 7] = 0; 106 - return; 107 - case 4: 108 - tmp[ 0] = 0; tmp[ 1] = 0; tmp[ 2] = 0; tmp[ 3] = 0; 109 - return; 110 - } 111 - } 112 - i = __FDSET_LONGS; 113 - while (i) { 114 - i--; 115 - *tmp = 0; 116 - tmp++; 117 - } 118 - } 119 - 120 - #endif /* defined(__KERNEL__) */ 121 - 122 - #endif /* !(__ARCH_SPARC64_POSIX_TYPES_H) */