linux/include/asm-s390/posix_types.h
<<
>>
Prefs
   1/*
   2 *  include/asm-s390/posix_types.h
   3 *
   4 *  S390 version
   5 *
   6 *  Derived from "include/asm-i386/posix_types.h"
   7 */
   8
   9#ifndef __ARCH_S390_POSIX_TYPES_H
  10#define __ARCH_S390_POSIX_TYPES_H
  11
  12/*
  13 * This file is generally used by user-level software, so you need to
  14 * be a little careful about namespace pollution etc.  Also, we cannot
  15 * assume GCC is being used.
  16 */
  17
  18typedef long            __kernel_off_t;
  19typedef int             __kernel_pid_t;
  20typedef unsigned long   __kernel_size_t;
  21typedef long            __kernel_time_t;
  22typedef long            __kernel_suseconds_t;
  23typedef long            __kernel_clock_t;
  24typedef int             __kernel_timer_t;
  25typedef int             __kernel_clockid_t;
  26typedef int             __kernel_daddr_t;
  27typedef char *          __kernel_caddr_t;
  28typedef unsigned short  __kernel_uid16_t;
  29typedef unsigned short  __kernel_gid16_t;
  30
  31#ifdef __GNUC__
  32typedef long long       __kernel_loff_t;
  33#endif
  34
  35#ifndef __s390x__
  36
  37typedef unsigned long   __kernel_ino_t;
  38typedef unsigned short  __kernel_mode_t;
  39typedef unsigned short  __kernel_nlink_t;
  40typedef unsigned short  __kernel_ipc_pid_t;
  41typedef unsigned short  __kernel_uid_t;
  42typedef unsigned short  __kernel_gid_t;
  43typedef int             __kernel_ssize_t;
  44typedef int             __kernel_ptrdiff_t;
  45typedef unsigned int    __kernel_uid32_t;
  46typedef unsigned int    __kernel_gid32_t;
  47typedef unsigned short  __kernel_old_uid_t;
  48typedef unsigned short  __kernel_old_gid_t;
  49typedef unsigned short  __kernel_old_dev_t;
  50
  51#else /* __s390x__ */
  52
  53typedef unsigned int    __kernel_ino_t;
  54typedef unsigned int    __kernel_mode_t;
  55typedef unsigned int    __kernel_nlink_t;
  56typedef int             __kernel_ipc_pid_t;
  57typedef unsigned int    __kernel_uid_t;
  58typedef unsigned int    __kernel_gid_t;
  59typedef long            __kernel_ssize_t;
  60typedef long            __kernel_ptrdiff_t;
  61typedef unsigned long   __kernel_sigset_t;      /* at least 32 bits */
  62typedef __kernel_uid_t __kernel_old_uid_t;
  63typedef __kernel_gid_t __kernel_old_gid_t;
  64typedef __kernel_uid_t __kernel_uid32_t;
  65typedef __kernel_gid_t __kernel_gid32_t;
  66typedef unsigned short __kernel_old_dev_t;
  67
  68#endif /* __s390x__ */
  69
  70typedef struct {
  71#if defined(__KERNEL__) || defined(__USE_ALL)
  72        int     val[2];
  73#else                        /* !defined(__KERNEL__) && !defined(__USE_ALL)*/
  74        int     __val[2];
  75#endif                       /* !defined(__KERNEL__) && !defined(__USE_ALL)*/
  76} __kernel_fsid_t;
  77
  78
  79#ifdef __KERNEL__
  80
  81#undef __FD_SET
  82static inline void __FD_SET(unsigned long fd, __kernel_fd_set *fdsetp)
  83{
  84        unsigned long _tmp = fd / __NFDBITS;
  85        unsigned long _rem = fd % __NFDBITS;
  86        fdsetp->fds_bits[_tmp] |= (1UL<<_rem);
  87}
  88
  89#undef __FD_CLR
  90static inline void __FD_CLR(unsigned long fd, __kernel_fd_set *fdsetp)
  91{
  92        unsigned long _tmp = fd / __NFDBITS;
  93        unsigned long _rem = fd % __NFDBITS;
  94        fdsetp->fds_bits[_tmp] &= ~(1UL<<_rem);
  95}
  96
  97#undef __FD_ISSET
  98static inline int __FD_ISSET(unsigned long fd, const __kernel_fd_set *fdsetp)
  99{
 100        unsigned long _tmp = fd / __NFDBITS;
 101        unsigned long _rem = fd % __NFDBITS;
 102        return (fdsetp->fds_bits[_tmp] & (1UL<<_rem)) != 0;
 103}
 104
 105#undef  __FD_ZERO
 106#define __FD_ZERO(fdsetp) \
 107        ((void) memset ((void *) (fdsetp), 0, sizeof (__kernel_fd_set)))
 108
 109#endif     /* __KERNEL__ */
 110
 111#endif
 112
lxr.linux.no kindly hosted by Redpill Linpro AS, provider of Linux consulting and operations services since 1995.