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

Configure Feed

Select the types of activity you want to include in your feed.

at v2.6.28-rc2 132 lines 3.6 kB view raw
1/* MN10300 POSIX types 2 * 3 * Copyright (C) 2007 Matsushita Electric Industrial Co., Ltd. 4 * Copyright (C) 2007 Red Hat, Inc. All Rights Reserved. 5 * 6 * This program is free software; you can redistribute it and/or 7 * modify it under the terms of the GNU General Public Licence 8 * as published by the Free Software Foundation; either version 9 * 2 of the Licence, or (at your option) any later version. 10 */ 11#ifndef _ASM_POSIX_TYPES_H 12#define _ASM_POSIX_TYPES_H 13 14/* 15 * This file is generally used by user-level software, so you need to 16 * be a little careful about namespace pollution etc. Also, we cannot 17 * assume GCC is being used. 18 */ 19 20typedef unsigned long __kernel_ino_t; 21typedef unsigned short __kernel_mode_t; 22typedef unsigned short __kernel_nlink_t; 23typedef long __kernel_off_t; 24typedef int __kernel_pid_t; 25typedef unsigned short __kernel_ipc_pid_t; 26typedef unsigned short __kernel_uid_t; 27typedef unsigned short __kernel_gid_t; 28typedef unsigned long __kernel_size_t; 29typedef long __kernel_ssize_t; 30typedef int __kernel_ptrdiff_t; 31typedef long __kernel_time_t; 32typedef long __kernel_suseconds_t; 33typedef long __kernel_clock_t; 34typedef int __kernel_timer_t; 35typedef int __kernel_clockid_t; 36typedef int __kernel_daddr_t; 37typedef char * __kernel_caddr_t; 38typedef unsigned short __kernel_uid16_t; 39typedef unsigned short __kernel_gid16_t; 40typedef unsigned int __kernel_uid32_t; 41typedef unsigned int __kernel_gid32_t; 42 43typedef unsigned short __kernel_old_uid_t; 44typedef unsigned short __kernel_old_gid_t; 45typedef unsigned short __kernel_old_dev_t; 46 47#ifdef __GNUC__ 48typedef long long __kernel_loff_t; 49#endif 50 51typedef struct { 52#if defined(__KERNEL__) || defined(__USE_ALL) 53 int val[2]; 54#else /* !defined(__KERNEL__) && !defined(__USE_ALL) */ 55 int __val[2]; 56#endif /* !defined(__KERNEL__) && !defined(__USE_ALL) */ 57} __kernel_fsid_t; 58 59#if defined(__KERNEL__) || !defined(__GLIBC__) || (__GLIBC__ < 2) 60 61#undef __FD_SET 62static inline void __FD_SET(unsigned long __fd, __kernel_fd_set *__fdsetp) 63{ 64 unsigned long __tmp = __fd / __NFDBITS; 65 unsigned long __rem = __fd % __NFDBITS; 66 __fdsetp->fds_bits[__tmp] |= (1UL<<__rem); 67} 68 69#undef __FD_CLR 70static inline void __FD_CLR(unsigned long __fd, __kernel_fd_set *__fdsetp) 71{ 72 unsigned long __tmp = __fd / __NFDBITS; 73 unsigned long __rem = __fd % __NFDBITS; 74 __fdsetp->fds_bits[__tmp] &= ~(1UL<<__rem); 75} 76 77 78#undef __FD_ISSET 79static inline int __FD_ISSET(unsigned long __fd, const __kernel_fd_set *__p) 80{ 81 unsigned long __tmp = __fd / __NFDBITS; 82 unsigned long __rem = __fd % __NFDBITS; 83 return (__p->fds_bits[__tmp] & (1UL<<__rem)) != 0; 84} 85 86/* 87 * This will unroll the loop for the normal constant case (8 ints, 88 * for a 256-bit fd_set) 89 */ 90#undef __FD_ZERO 91static inline void __FD_ZERO(__kernel_fd_set *__p) 92{ 93 unsigned long *__tmp = __p->fds_bits; 94 int __i; 95 96 if (__builtin_constant_p(__FDSET_LONGS)) { 97 switch (__FDSET_LONGS) { 98 case 16: 99 __tmp[ 0] = 0; __tmp[ 1] = 0; 100 __tmp[ 2] = 0; __tmp[ 3] = 0; 101 __tmp[ 4] = 0; __tmp[ 5] = 0; 102 __tmp[ 6] = 0; __tmp[ 7] = 0; 103 __tmp[ 8] = 0; __tmp[ 9] = 0; 104 __tmp[10] = 0; __tmp[11] = 0; 105 __tmp[12] = 0; __tmp[13] = 0; 106 __tmp[14] = 0; __tmp[15] = 0; 107 return; 108 109 case 8: 110 __tmp[ 0] = 0; __tmp[ 1] = 0; 111 __tmp[ 2] = 0; __tmp[ 3] = 0; 112 __tmp[ 4] = 0; __tmp[ 5] = 0; 113 __tmp[ 6] = 0; __tmp[ 7] = 0; 114 return; 115 116 case 4: 117 __tmp[ 0] = 0; __tmp[ 1] = 0; 118 __tmp[ 2] = 0; __tmp[ 3] = 0; 119 return; 120 } 121 } 122 __i = __FDSET_LONGS; 123 while (__i) { 124 __i--; 125 *__tmp = 0; 126 __tmp++; 127 } 128} 129 130#endif /* defined(__KERNEL__) || !defined(__GLIBC__) || (__GLIBC__ < 2) */ 131 132#endif /* _ASM_POSIX_TYPES_H */