[BACK]Return to syscalls.master CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / sys / compat / linux / arch / arm

Annotation of src/sys/compat/linux/arch/arm/syscalls.master, Revision 1.64

1.64    ! njoly       1:        $NetBSD: syscalls.master,v 1.63 2015/03/23 07:50:03 ozaki-r Exp $
1.1       bjh21       2:
                      3: ; Derived from sys/compat/linux/arch/*/syscalls.master
                      4: ; and from Linux 2.4.12 arch/arm/kernel/calls.S
                      5:
                      6: ; NetBSD/arm COMPAT_LINUX system call name/number "master" file.
                      7: ; (See syscalls.conf to see what it is processed into.)
                      8: ;
                      9: ; Fields: number type [type-dependent ...]
                     10: ;      number  system call number, must be in order
                     11: ;      type    one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of
                     12: ;              the compatibility options defined in syscalls.conf.
                     13: ;
                     14: ; types:
                     15: ;      STD     always included
                     16: ;      OBSOL   obsolete, not included in system
                     17: ;      UNIMPL  unimplemented, not included in system
                     18: ;      NODEF   included, but don't define the syscall number
                     19: ;      NOARGS  included, but don't define the syscall args structure
                     20: ;      INDIR   included, but don't define the syscall args structure
                     21: ;              and allow it to be "really" varargs.
                     22: ;
                     23: ; The compat options are defined in the syscalls.conf file, and the
                     24: ; compat option name is prefixed to the syscall name.  Other than
                     25: ; that, they're like NODEF (for 'compat' options), or STD (for
                     26: ; 'libcompat' options).
                     27: ;
                     28: ; The type-dependent arguments are as follows:
                     29: ; For STD, NODEF, NOARGS, and compat syscalls:
                     30: ;      { pseudo-proto } [alias]
                     31: ; For other syscalls:
                     32: ;      [comment]
                     33: ;
                     34: ; #ifdef's, etc. may be included, and are copied to the output files.
                     35: ; #include's are copied to the syscall names and switch definition files only.
                     36:
                     37: #include <sys/param.h>
                     38: #include <sys/poll.h>
                     39: #include <sys/systm.h>
                     40: #include <sys/signal.h>
                     41: #include <sys/mount.h>
                     42: #include <sys/syscallargs.h>
1.38      rtr        43: #include <sys/time.h>
1.1       bjh21      44:
1.38      rtr        45: #include <compat/sys/time.h>
1.1       bjh21      46: #include <compat/linux/common/linux_types.h>
1.14      he         47: #include <compat/linux/common/linux_mmap.h>
1.1       bjh21      48: #include <compat/linux/common/linux_signal.h>
                     49: #include <compat/linux/common/linux_siginfo.h>
                     50: #include <compat/linux/common/linux_machdep.h>
                     51:
                     52: #include <compat/linux/linux_syscallargs.h>
                     53:
                     54: %%
1.5       bjh21      55: ; XXX We have to explicitly declare linux_sys_nosys.
1.39      pooka      56: 0      NOARGS          { int|linux_sys||nosys(void); }
1.44      chs        57: 1      STD             { int|linux_sys||exit(int rval); }
1.39      pooka      58: 2      NOARGS          { int|sys||fork(void); }
1.55      njoly      59: 3      NOARGS          { ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
                     60: 4      NOARGS          { ssize_t|sys||write(int fd, const void *buf, \
                     61:                            size_t nbyte); }
1.39      pooka      62: 5      STD             { int|linux_sys||open(const char *path, int flags, \
1.54      njoly      63:                            linux_umode_t mode); }
1.39      pooka      64: 6      NOARGS          { int|sys||close(int fd); }
                     65: 7      STD             { int|linux_sys||waitpid(int pid, int *status, \
1.1       bjh21      66:                            int options);}
1.54      njoly      67: 8      STD             { int|linux_sys||creat(const char *path, linux_umode_t mode); }
1.39      pooka      68: 9      NOARGS          { int|sys||link(const char *path, const char *link); }
                     69: 10     STD             { int|linux_sys||unlink(const char *path); }
                     70: 11     NOARGS          { int|sys||execve(const char *path, char **argp, \
1.1       bjh21      71:                            char **envp); }
1.39      pooka      72: 12     NOARGS          { int|sys||chdir(const char *path); }
                     73: 13     STD             { int|linux_sys||time(linux_time_t *t); }
1.54      njoly      74: 14     STD             { int|linux_sys||mknod(const char *path, linux_umode_t mode, \
1.57      njoly      75:                            unsigned dev); }
1.39      pooka      76: 15     NOARGS          { int|sys||chmod(const char *path, int mode); }
                     77: 16     STD             { int|linux_sys||lchown16(const char *path, \
1.33      njoly      78:                            linux_uid16_t uid, linux_gid16_t gid); }
1.1       bjh21      79: 17     OBSOL           break
                     80: 18     OBSOL           ostat
1.39      pooka      81: 19     NOARGS          { long|compat_43_sys||lseek(int fd, long offset, \
1.1       bjh21      82:                            int whence); }
1.39      pooka      83: 20     NOARGS          { pid_t|sys||getpid(void); }
1.1       bjh21      84: 21     UNIMPL          mount
                     85: 22     OBSOL           umount
1.39      pooka      86: 23     NOARGS          { int|sys||setuid(uid_t uid); }
                     87: 24     NOARGS          { uid_t|sys||getuid(void); }
                     88: 25     STD             { int|linux_sys||stime(linux_time_t *t); }
                     89: 26     STD             { int|linux_sys||ptrace(int request, int pid, \
1.1       bjh21      90:                            int addr, int data); }
1.39      pooka      91: 27     STD             { int|linux_sys||alarm(unsigned int secs); }
1.1       bjh21      92: 28     OBSOL           ofstat
1.39      pooka      93: 29     STD             { int|linux_sys||pause(void); }
                     94: 30     STD             { int|linux_sys||utime(const char *path, \
1.1       bjh21      95:                            struct linux_utimbuf *times); }
                     96: 31     OBSOL           stty
                     97: 32     OBSOL           gtty
1.39      pooka      98: 33     NOARGS          { int|sys||access(const char *path, int flags); }
                     99: 34     STD             { int|linux_sys||nice(int incr); }
1.1       bjh21     100: 35     OBSOL           ftime
1.39      pooka     101: 36     NOARGS          { int|sys||sync(void); }
                    102: 37     STD             { int|linux_sys||kill(int pid, int signum); }
                    103: 38     NOARGS          { int|sys||__posix_rename(const char *from, \
1.1       bjh21     104:                            const char *to); }
1.54      njoly     105: 39     NOARGS          { int|sys||mkdir(const char *path, linux_umode_t mode); }
1.39      pooka     106: 40     NOARGS          { int|sys||rmdir(const char *path); }
1.52      njoly     107: 41     NOARGS          { int|sys||dup(int fd); }
1.39      pooka     108: 42     STD             { int|linux_sys||pipe(int *pfds); }
                    109: 43     STD             { int|linux_sys||times(struct times *tms); }
1.1       bjh21     110: 44     OBSOL           prof
1.39      pooka     111: 45     STD             { int|linux_sys||brk(char *nsize); }
                    112: 46     NOARGS          { int|sys||setgid(gid_t gid); }
                    113: 47     NOARGS          { gid_t|sys||getgid(void); }
                    114: 48     STD             { int|linux_sys||signal(int signum, \
1.1       bjh21     115:                            linux_handler_t handler); }
1.39      pooka     116: 49     NOARGS          { uid_t|sys||geteuid(void); }
                    117: 50     NOARGS          { gid_t|sys||getegid(void); }
                    118: 51     NOARGS          { int|sys||acct(char *path); }
1.1       bjh21     119: 52     UNIMPL          umount
                    120: 53     OBSOL           lock
1.39      pooka     121: 54     STD             { int|linux_sys||ioctl(int fd, u_long com, \
1.28      christos  122:                            void *data); }
1.39      pooka     123: 55     STD             { int|linux_sys||fcntl(int fd, int cmd, void *arg); }
1.1       bjh21     124: 56     OBSOL           mpx
1.39      pooka     125: 57     NOARGS          { int|sys||setpgid(int pid, int pgid); }
1.1       bjh21     126: 58     OBSOL           ulimit
1.39      pooka     127: 59     STD             { int|linux_sys||oldolduname( \
1.2       bjh21     128:                           struct linux_oldold_utsname *up); }
1.39      pooka     129: 60     NOARGS          { int|sys||umask(int newmask); }
                    130: 61     NOARGS          { int|sys||chroot(char *path); }
1.1       bjh21     131: 62     UNIMPL          ustat
1.52      njoly     132: 63     NOARGS          { int|sys||dup2(int from, int to); }
1.39      pooka     133: 64     NOARGS          { pid_t|sys||getppid(void); }
                    134: 65     NOARGS          { int|sys||getpgrp(void); }
                    135: 66     NOARGS          { int|sys||setsid(void); }
                    136: 67     STD             { int|linux_sys||sigaction(int signum, \
1.1       bjh21     137:                            const struct linux_old_sigaction *nsa, \
                    138:                            struct linux_old_sigaction *osa); }
1.39      pooka     139: 68     STD             { int|linux_sys||siggetmask(void); }
                    140: 69     STD             { int|linux_sys||sigsetmask(linux_old_sigset_t mask); }
                    141: 70     STD             { int|linux_sys||setreuid16(linux_uid16_t ruid, \
1.33      njoly     142:                            linux_uid16_t euid); }
1.39      pooka     143: 71     STD             { int|linux_sys||setregid16(linux_gid16_t rgid, \
1.33      njoly     144:                            linux_gid16_t egid); }
1.39      pooka     145: 72     STD             { int|linux_sys||sigsuspend(void *restart, \
1.1       bjh21     146:                            int oldmask, int mask); }
1.39      pooka     147: 73     STD             { int|linux_sys||sigpending(linux_old_sigset_t *set); }
                    148: 74     NOARGS          { int|compat_43_sys||sethostname(char *hostname, \
1.1       bjh21     149:                            u_int len);}
1.39      pooka     150: 75     STD             { int|linux_sys||setrlimit(u_int which, \
1.1       bjh21     151:                            struct orlimit *rlp); }
1.39      pooka     152: 76     STD             { int|linux_sys||getrlimit(u_int which, \
1.1       bjh21     153:                            struct orlimit *rlp); }
1.39      pooka     154: 77     NOARGS          { int|compat_50_sys||getrusage(int who, struct rusage50 *rusage); }
1.40      njoly     155: 78     STD             { int|linux_sys||gettimeofday(struct timeval50 *tp, \
1.1       bjh21     156:                            struct timezone *tzp); }
1.40      njoly     157: 79     STD             { int|linux_sys||settimeofday(struct timeval50 *tp, \
1.1       bjh21     158:                            struct timezone *tzp); }
1.39      pooka     159: 80     STD             { int|linux_sys||getgroups16(int gidsetsize, \
1.33      njoly     160:                            linux_gid16_t *gidset); }
1.39      pooka     161: 81     STD             { int|linux_sys||setgroups16(int gidsetsize, \
1.33      njoly     162:                            linux_gid16_t *gidset); }
1.39      pooka     163: 82     STD             { int|linux_sys||oldselect(struct linux_oldselect *lsp); }
1.63      ozaki-r   164: 83     NOARGS          { int|sys||symlink(const char *path, const char *link); }
1.39      pooka     165: 84     NOARGS          { int|compat_43_sys||lstat(const char *path, \
1.63      ozaki-r   166:                            struct stat43 *ub); } oolstat
1.64    ! njoly     167: 85     NOARGS          { ssize_t|sys||readlink(const char *path, char *buf, \
1.1       bjh21     168:                            int count); }
                    169: #ifdef EXEC_AOUT
1.39      pooka     170: 86     STD             { int|linux_sys||uselib(const char *path); }
1.1       bjh21     171: #else
                    172: 86     EXCL            uselib
                    173: #endif
1.39      pooka     174: 87     STD             { int|linux_sys||swapon(char *name); }
                    175: 88     STD             { int|linux_sys||reboot(int magic1, int magic2, \
1.1       bjh21     176:                            int cmd, void *arg); }
1.39      pooka     177: 89     STD             { int|linux_sys||readdir(int fd, void *dent, \
1.1       bjh21     178:                            unsigned int count); }
1.39      pooka     179: 90     STD             { int|linux_sys||old_mmap(struct linux_oldmmap *lmp); }
1.61      njoly     180: 91     NOARGS          { int|sys||munmap(void *addr, size_t len); }
1.39      pooka     181: 92     NOARGS          { int|compat_43_sys||truncate(const char *path, \
1.1       bjh21     182:                            long length); }
1.39      pooka     183: 93     NOARGS          { int|compat_43_sys||ftruncate(int fd, long length); }
1.54      njoly     184: 94     NOARGS          { int|sys||fchmod(int fd, linux_umode_t mode); }
1.39      pooka     185: 95     STD             { int|linux_sys||fchown16(int fd, linux_uid16_t uid, \
1.33      njoly     186:                            linux_gid16_t gid); }
1.39      pooka     187: 96     STD             { int|linux_sys||getpriority(int which, int who); }
                    188: 97     NOARGS          { int|sys||setpriority(int which, int who, int prio); }
                    189: 98     NOARGS          { int|sys||profil(void *samples, u_int size, \
1.1       bjh21     190:                            u_int offset, u_int scale); }
1.39      pooka     191: 99     STD             { int|linux_sys||statfs(const char *path, \
1.1       bjh21     192:                            struct linux_statfs *sp); }
1.39      pooka     193: 100    STD             { int|linux_sys||fstatfs(int fd, \
1.1       bjh21     194:                            struct linux_statfs *sp); }
                    195: 101    UNIMPL
1.39      pooka     196: 102    STD             { int|linux_sys||socketcall(int what, void *args); }
1.1       bjh21     197: 103    UNIMPL          syslog
1.47      christos  198: 104    NOARGS          { int|compat_50_sys||setitimer(int which, \
1.38      rtr       199:                            struct itimerval50 *itv, \
                    200:                            struct itimerval50 *oitv); }
1.47      christos  201: 105    NOARGS          { int|compat_50_sys||getitimer(int which, \
1.38      rtr       202:                            struct itimerval50 *itv); }
1.39      pooka     203: 106    STD             { int|linux_sys||stat(const char *path, \
1.1       bjh21     204:                            struct linux_stat *sp); }
1.39      pooka     205: 107    STD             { int|linux_sys||lstat(const char *path, \
1.1       bjh21     206:                            struct linux_stat *sp); }
1.39      pooka     207: 108    STD             { int|linux_sys||fstat(int fd, struct linux_stat *sp); }
                    208: 109    STD             { int|linux_sys||olduname(struct linux_oldutsname *up); }
1.1       bjh21     209: 110    UNIMPL
                    210: 111    UNIMPL          vhangup
                    211: 112    UNIMPL          idle
                    212: 113    UNIMPL          syscall
1.39      pooka     213: 114    STD             { int|linux_sys||wait4(int pid, int *status, \
1.41      njoly     214:                            int options, struct rusage50 *rusage); }
1.39      pooka     215: 115    STD             { int|linux_sys||swapoff(const char *path); }
                    216: 116    STD             { int|linux_sys||sysinfo(struct linux_sysinfo *arg); }
                    217: 117    STD             { int|linux_sys||ipc(int what, int a1, int a2, int a3, \
1.28      christos  218:                            void *ptr); }
1.39      pooka     219: 118    NOARGS          { int|sys||fsync(int fd); }
                    220: 119    STD             { int|linux_sys||sigreturn(struct linux_sigcontext *scp); }
1.44      chs       221: 120    STD             { int|linux_sys||clone(int flags, void *stack, \
                    222:                            void *parent_tidptr, void *tls, void *child_tidptr); }
1.39      pooka     223: 121    STD             { int|linux_sys||setdomainname(char *domainname, \
1.1       bjh21     224:                            int len); }
1.39      pooka     225: 122    STD             { int|linux_sys||uname(struct linux_utsname *up); }
1.20      perry     226: 123    UNIMPL          modify_ldt
1.1       bjh21     227: 124    UNIMPL          adjtimex
1.39      pooka     228: 125    STD             { int|linux_sys||mprotect(const void *start, \
1.9       christos  229:                            unsigned long len, int prot); }
1.39      pooka     230: 126    STD             { int|linux_sys||sigprocmask(int how, \
1.1       bjh21     231:                            const linux_old_sigset_t *set, \
                    232:                            linux_old_sigset_t *oset); }
                    233: 127    UNIMPL          create_module
                    234: 128    UNIMPL          init_module
                    235: 129    UNIMPL          delete_module
                    236: 130    UNIMPL          get_kernel_syms
                    237: 131    UNIMPL          quotactl
1.39      pooka     238: 132    NOARGS          { pid_t|sys||getpgid(pid_t pid); }
                    239: 133    NOARGS          { int|sys||fchdir(int fd); }
1.1       bjh21     240: 134    UNIMPL          bdflush
                    241: 135    UNIMPL          sysfs
1.43      njoly     242: 136    STD             { int|linux_sys||personality(unsigned long per); }
1.1       bjh21     243: 137    UNIMPL          afs_syscall
1.39      pooka     244: 138    STD             { int|linux_sys||setfsuid(uid_t uid); }
                    245: 139    STD             { int|linux_sys||setfsgid(gid_t gid); }
                    246: 140    STD             { int|linux_sys||llseek(int fd, u_int32_t ohigh, \
1.28      christos  247:                            u_int32_t olow, void *res, int whence); }
1.39      pooka     248: 141    STD             { int|linux_sys||getdents(int fd, \
1.1       bjh21     249:                            struct linux_dirent *dent, unsigned int count); }
1.39      pooka     250: 142    STD             { int|linux_sys||select(int nfds, fd_set *readfds, \
1.1       bjh21     251:                            fd_set *writefds, fd_set *exceptfds, \
1.40      njoly     252:                            struct timeval50 *timeout); }
1.39      pooka     253: 143    NOARGS          { int|sys||flock(int fd, int how); }
                    254: 144    NOARGS          { int|sys|13|msync(void *addr, size_t len, int flags); }
1.55      njoly     255: 145    NOARGS          { ssize_t|sys||readv(int fd, \
                    256:                            const struct iovec *iovp, int iovcnt); }
                    257: 146    NOARGS          { ssize_t|sys||writev(int fd, \
                    258:                            const struct iovec *iovp, int iovcnt); }
1.39      pooka     259: 147    NOARGS          { pid_t|sys||getsid(pid_t pid); }
                    260: 148    STD             { int|linux_sys||fdatasync(int fd); }
                    261: 149    STD             { int|linux_sys||__sysctl(struct linux___sysctl *lsp); }
                    262: 150    NOARGS          { int|sys||mlock(void *addr, size_t len); }
                    263: 151    NOARGS          { int|sys||munlock(void *addr, size_t len); }
                    264: 152    NOARGS          { int|sys||mlockall(int flags); }
                    265: 153    NOARGS          { int|sys||munlockall(void); }
                    266: 154    STD             { int|linux_sys||sched_setparam(pid_t pid, \
1.1       bjh21     267:                            const struct linux_sched_param *sp); }
1.39      pooka     268: 155    STD             { int|linux_sys||sched_getparam(pid_t pid, \
1.1       bjh21     269:                            struct linux_sched_param *sp); }
1.39      pooka     270: 156    STD             { int|linux_sys||sched_setscheduler(pid_t pid, \
1.1       bjh21     271:                            int policy, const struct linux_sched_param *sp); }
1.39      pooka     272: 157    STD             { int|linux_sys||sched_getscheduler(pid_t pid); }
                    273: 158    STD             { int|linux_sys||sched_yield(void); }
                    274: 159    STD             { int|linux_sys||sched_get_priority_max(int policy); }
                    275: 160    STD             { int|linux_sys||sched_get_priority_min(int policy); }
1.1       bjh21     276: 161    UNIMPL          sched_rr_get_interval
1.39      pooka     277: 162    STD             { int|linux_sys||nanosleep( \
1.36      njoly     278:                            const struct linux_timespec *rqtp, \
                    279:                            struct linux_timespec *rmtp); }
1.39      pooka     280: 163    STD             { void *|linux_sys||mremap(void *old_address, \
1.1       bjh21     281:                            size_t old_size, size_t new_size, u_long flags); }
1.39      pooka     282: 164    STD             { int|linux_sys||setresuid16(linux_uid16_t ruid, \
1.33      njoly     283:                            linux_uid16_t euid, linux_uid16_t suid); }
1.39      pooka     284: 165    STD             { int|linux_sys||getresuid16(linux_uid16_t *ruid, \
1.33      njoly     285:                            linux_uid16_t *euid, linux_uid16_t *suid); }
1.1       bjh21     286: 166    UNIMPL
                    287: 167    UNIMPL          query_module
1.39      pooka     288: 168    NOARGS          { int|sys||poll(struct pollfd *fds, u_int nfds, \
1.1       bjh21     289:                            int timeout); }
                    290: 169    UNIMPL          nfsservctl
1.39      pooka     291: 170    STD             { int|linux_sys||setresgid16(linux_gid16_t rgid, \
1.33      njoly     292:                            linux_gid16_t egid, linux_gid16_t sgid); }
1.39      pooka     293: 171    STD             { int|linux_sys||getresgid16(linux_gid16_t *rgid, \
1.33      njoly     294:                            linux_gid16_t *egid, linux_gid16_t *sgid); }
1.1       bjh21     295: 172    UNIMPL          prctl
                    296: 173    UNIMPL          rt_sigreturn
1.39      pooka     297: ;173   STD             { int|linux_sys||rt_sigreturn( \
1.1       bjh21     298: ;                          struct linux_rt_sigframe *sfp); }
1.39      pooka     299: 174    STD             { int|linux_sys||rt_sigaction(int signum, \
1.1       bjh21     300:                            const struct linux_sigaction *nsa, \
                    301:                            struct linux_sigaction *osa, \
                    302:                            size_t sigsetsize); }
1.39      pooka     303: 175    STD             { int|linux_sys||rt_sigprocmask(int how, \
1.1       bjh21     304:                            const linux_sigset_t *set, \
                    305:                            linux_sigset_t *oset, \
                    306:                            size_t sigsetsize); }
1.39      pooka     307: 176    STD             { int|linux_sys||rt_sigpending( \
1.1       bjh21     308:                            linux_sigset_t *set, \
                    309:                            size_t sigsetsize); }
1.48      christos  310: 177    STD             { int|linux_sys||rt_sigtimedwait( \
                    311:                            const linux_sigset_t *set, \
                    312:                            linux_siginfo_t *info, \
                    313:                            const struct linux_timespec *timeout); }
1.39      pooka     314: 178    STD             { int|linux_sys||rt_queueinfo(int pid, int signum, \
1.42      njoly     315:                            linux_siginfo_t *uinfo); }
1.39      pooka     316: 179    STD             { int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \
1.1       bjh21     317:                            size_t sigsetsize); }
1.39      pooka     318: 180    STD             { int|linux_sys||pread(int fd, char *buf, \
1.56      njoly     319:                            size_t nbyte, off_t offset); }
1.39      pooka     320: 181    STD             { int|linux_sys||pwrite(int fd, char *buf, \
1.56      njoly     321:                            size_t nbyte, off_t offset); }
1.39      pooka     322: 182    STD             { int|linux_sys||chown16(const char *path, \
1.33      njoly     323:                            linux_uid16_t uid, linux_gid16_t gid); }
1.39      pooka     324: 183    NOARGS          { int|sys||__getcwd(char *bufp, size_t length); }
1.1       bjh21     325: 184    UNIMPL          capget
                    326: 185    UNIMPL          capset
1.39      pooka     327: 186    STD             { int|linux_sys||sigaltstack( \
1.1       bjh21     328:                            const struct linux_sigaltstack *ss, \
                    329:                            struct linux_sigaltstack *oss); }
                    330: 187    UNIMPL          sendfile
                    331: 188    UNIMPL          getpmsg
                    332: 189    UNIMPL          putpmsg
1.39      pooka     333: 190    NOARGS          vfork { int|sys|14|vfork(void); }
                    334: 191    STD             { int|linux_sys||ugetrlimit(int which, \
1.7       christos  335:                            struct rlimit *rlp); }
1.30      dsl       336: #define linux_sys_mmap2_args linux_sys_mmap_args
1.39      pooka     337: 192    NOARGS          { linux_off_t|linux_sys||mmap2(unsigned long addr, \
1.13      christos  338:                            size_t len, int prot, int flags, int fd, \
                    339:                            linux_off_t offset); }
1.39      pooka     340: 193    STD             { int|linux_sys||truncate64(const char *path, \
1.1       bjh21     341:                                off_t length); }
1.39      pooka     342: 194    STD             { int|linux_sys||ftruncate64(unsigned int fd, \
1.1       bjh21     343:                                off_t length); }
1.39      pooka     344: 195    STD             { int|linux_sys||stat64(const char *path, \
1.1       bjh21     345:                                struct linux_stat64 *sp); }
1.39      pooka     346: 196    STD             { int|linux_sys||lstat64(const char *path, \
1.1       bjh21     347:                                struct linux_stat64 *sp); }
1.39      pooka     348: 197    STD             { int|linux_sys||fstat64(int fd, \
1.1       bjh21     349:                                struct linux_stat64 *sp); }
1.39      pooka     350: 198    NOARGS          { int|sys||__posix_lchown(const char *path, uid_t uid, \
1.1       bjh21     351:                                gid_t gid); }
1.39      pooka     352: 199    NOARGS          getuid32 { uid_t|sys||getuid(void); }
                    353: 200    NOARGS          getgid32 { gid_t|sys||getgid(void); }
                    354: 201    NOARGS          geteuid32 { uid_t|sys||geteuid(void); }
                    355: 202    NOARGS          getegid32 { gid_t|sys||getegid(void); }
                    356: 203    NOARGS          setreuid32 { int|sys||setreuid(uid_t ruid, \
1.1       bjh21     357:                                uid_t euid); }
1.39      pooka     358: 204    NOARGS          setregid32 { int|sys||setregid(gid_t rgid, \
1.1       bjh21     359:                                gid_t egid); }
1.59      njoly     360: 205    NOARGS          getgroups32 { int|sys||getgroups(int gidsetsize, \
1.1       bjh21     361:                                gid_t *gidset); }
1.59      njoly     362: 206    NOARGS          setgroups32 { int|sys||setgroups(int gidsetsize, \
1.1       bjh21     363:                                gid_t *gidset); }
1.39      pooka     364: 207    NOARGS          fchown32 { int|sys||__posix_fchown(int fd, uid_t uid, \
1.1       bjh21     365:                                gid_t gid); }
1.39      pooka     366: 208    STD             setresuid32 { int|linux_sys||setresuid(uid_t ruid, \
1.1       bjh21     367:                                uid_t euid, uid_t suid); }
1.39      pooka     368: 209    STD             getresuid32 { int|linux_sys||getresuid(uid_t *ruid, \
1.1       bjh21     369:                                uid_t *euid, uid_t *suid); }
1.39      pooka     370: 210    STD             setresgid32 { int|linux_sys||setresgid(gid_t rgid, \
1.1       bjh21     371:                                gid_t egid, gid_t sgid); }
1.39      pooka     372: 211    STD             getresgid32 { int|linux_sys||getresgid(gid_t *rgid, \
1.1       bjh21     373:                                gid_t *egid, gid_t *sgid); }
1.39      pooka     374: 212    NOARGS          chown32 { int|sys||__posix_chown(const char *path, \
1.1       bjh21     375:                                uid_t uid, gid_t gid); }
1.39      pooka     376: 213    NOARGS          setuid32 { int|sys||setuid(uid_t uid); }
                    377: 214    NOARGS          setgid32 { int|sys||setgid(gid_t gid); }
                    378: 215    NOARGS          setfsuid32 { int|linux_sys||setfsuid(uid_t uid); }
                    379: 216    NOARGS          setfsgid32 { int|linux_sys||setfsgid(gid_t gid); }
                    380: 217    STD             { int|linux_sys||getdents64(int fd, \
1.10      christos  381:                            struct linux_dirent64 *dent, unsigned int count); }
1.1       bjh21     382: 218    UNIMPL          pivot_root
1.39      pooka     383: 219    NOARGS          { int|sys||mincore(void *addr, size_t len, char *vec); }
                    384: 220    NOARGS          { int|sys||madvise(void *addr, size_t len, int behav); }
                    385: 221    STD             { int|linux_sys||fcntl64(int fd, int cmd, void *arg); }
1.17      jdolecek  386: 222    UNIMPL          /* for tux */
                    387: 223    UNIMPL          /* unused */
1.44      chs       388: 224    NOARGS          { pid_t|linux_sys||gettid(void); }
1.17      jdolecek  389: 225    UNIMPL          readahead
1.39      pooka     390: 226    STD             { int|linux_sys||setxattr(char *path, char *name, \
1.21      fvdl      391:                            void *value, size_t size, int flags); }
1.39      pooka     392: 227    STD             { int|linux_sys||lsetxattr(char *path, char *name, \
1.21      fvdl      393:                            void *value, size_t size, int flags); }
1.39      pooka     394: 228    STD             { int|linux_sys||fsetxattr(int fd, char *name, \
1.21      fvdl      395:                            void *value, size_t size, int flags); }
1.39      pooka     396: 229    STD             { ssize_t|linux_sys||getxattr(char *path, char *name, \
1.21      fvdl      397:                            void *value, size_t size); }
1.39      pooka     398: 230    STD             { ssize_t|linux_sys||lgetxattr(char *path, char *name, \
1.21      fvdl      399:                            void *value, size_t size); }
1.39      pooka     400: 231    STD             { ssize_t|linux_sys||fgetxattr(int fd, char *name, \
1.21      fvdl      401:                            void *value, size_t size); }
1.39      pooka     402: 232    STD             { ssize_t|linux_sys||listxattr(char *path, char *list, \
1.21      fvdl      403:                            size_t size); }
1.39      pooka     404: 233    STD             { ssize_t|linux_sys||llistxattr(char *path, char *list, \
1.21      fvdl      405:                            size_t size); }
1.39      pooka     406: 234    STD             { ssize_t|linux_sys||flistxattr(int fd, char *list, \
1.21      fvdl      407:                            size_t size); }
1.39      pooka     408: 235    STD             { int|linux_sys||removexattr(char *path, char *name); }
                    409: 236    STD             { int|linux_sys||lremovexattr(char *path, char *name); }
                    410: 237    STD             { int|linux_sys||fremovexattr(int fd, char *name); }
1.44      chs       411: 238    STD             { int|linux_sys||tkill(int tid, int sig); }
1.17      jdolecek  412: 239    UNIMPL          sendfile64
1.44      chs       413: 240    STD             { int|linux_sys||futex(int *uaddr, int op, int val, \
                    414:                            const struct linux_timespec *timeout, int *uaddr2, \
                    415:                            int val3); }
                    416: 241    STD             { int|linux_sys||sched_setaffinity(pid_t pid, \
                    417:                            unsigned int len, unsigned long *mask); }
                    418: 242    STD             { int|linux_sys||sched_getaffinity(pid_t pid, \
                    419:                            unsigned int len, unsigned long *mask); }
1.17      jdolecek  420: 243    UNIMPL          io_setup
                    421: 244    UNIMPL          io_destroy
                    422: 245    UNIMPL          io_getevents
                    423: 246    UNIMPL          io_submit
                    424: 247    UNIMPL          io_cancel
1.39      pooka     425: 248    STD             { int|linux_sys||exit_group(int error_code); }
1.17      jdolecek  426: 249    UNIMPL          lookup_dcookie
                    427: 250    UNIMPL          epoll_create
                    428: 251    UNIMPL          epoll_ctl
                    429: 252    UNIMPL          epoll_wait
                    430: 253    UNIMPL          remap_file_pages
1.44      chs       431: 254    UNIMPL          set_thread_area
                    432: 255    UNIMPL          get_thread_area
                    433: 256    STD             { int|linux_sys||set_tid_address(int *tid); }
1.17      jdolecek  434: 257    UNIMPL          timer_create
                    435: 258    UNIMPL          timer_settime
                    436: 259    UNIMPL          timer_gettime
                    437: 260    UNIMPL          timer_getoverrun
                    438: 261    UNIMPL          timer_delete
1.39      pooka     439: 262    STD             { int|linux_sys||clock_settime(clockid_t which, \
1.22      fvdl      440:                            struct linux_timespec *tp); }
1.39      pooka     441: 263    STD             { int|linux_sys||clock_gettime(clockid_t which, \
1.22      fvdl      442:                            struct linux_timespec *tp); }
1.39      pooka     443: 264    STD             { int|linux_sys||clock_getres(clockid_t which, \
1.22      fvdl      444:                            struct linux_timespec *tp); }
1.39      pooka     445: 265    STD             { int|linux_sys||clock_nanosleep(clockid_t which, \
1.22      fvdl      446:                            int flags, struct linux_timespec *rqtp, \
                    447:                            struct linux_timespec *rmtp); }
1.39      pooka     448: 266    STD             { int|linux_sys||statfs64(const char *path, \
1.19      jdolecek  449:                            size_t sz, struct linux_statfs64 *sp); }
1.39      pooka     450: 267    STD             { int|linux_sys||fstatfs64(int fd, \
1.19      jdolecek  451:                            size_t sz, struct linux_statfs64 *sp); }
1.44      chs       452: 268    STD             { int|linux_sys||tgkill(int tgid, int tid, int sig); }
1.60      njoly     453: 269    NOARGS          { int|compat_50_sys||utimes(const char *path, \
                    454:                            const struct timeval50 *tptr); }
1.58      njoly     455: 270    STD             { int|linux_sys||fadvise64_64(int fd, off_t offset, \
                    456:                            off_t len, int advice); }
1.17      jdolecek  457: 271    UNIMPL          pciconfig_iobase
                    458: 272    UNIMPL          pciconfig_read
                    459: 273    UNIMPL          pciconfig_write
1.44      chs       460: 274    UNIMPL          mq_open
                    461: 275    UNIMPL          mq_unlink
                    462: 276    UNIMPL          mq_timedsend
                    463: 277    UNIMPL          mq_timedreceive
                    464: 278    UNIMPL          mq_notify
                    465: 279    UNIMPL          mq_getsetattr
                    466: 280    UNIMPL          waitid
                    467: 281    UNIMPL          socket
                    468: 282    UNIMPL          bind
                    469: 283    UNIMPL          connect
                    470: 284    UNIMPL          listen
                    471: 285    UNIMPL          accept
                    472: 286    UNIMPL          getsockname
                    473: 287    UNIMPL          getpeername
                    474: 288    UNIMPL          socketpair
                    475: 289    UNIMPL          send
                    476: 290    UNIMPL          sendto
                    477: 291    UNIMPL          recv
                    478: 292    UNIMPL          recvfrom
                    479: 293    UNIMPL          shutdown
                    480: 294    UNIMPL          setsockopt
                    481: 295    UNIMPL          getsockopt
                    482: 296    UNIMPL          sendmsg
                    483: 297    UNIMPL          recvmsg
                    484: 298    UNIMPL          semop
                    485: 299    UNIMPL          semget
                    486: 300    UNIMPL          semctl
                    487: 301    UNIMPL          msgsnd
                    488: 302    UNIMPL          msgrcv
                    489: 303    UNIMPL          msgget
                    490: 304    UNIMPL          msgctl
                    491: 305    UNIMPL          shmat
                    492: 306    UNIMPL          shmdt
                    493: 307    UNIMPL          shmget
                    494: 308    UNIMPL          shmctl
                    495: 309    UNIMPL          add_key
                    496: 310    UNIMPL          request_key
                    497: 311    UNIMPL          keyctl
                    498: 312    UNIMPL          semtimedop
                    499: 313    UNIMPL          vserver
                    500: 314    UNIMPL          ioptio_set
                    501: 315    UNIMPL          ioptio_get
                    502: 316    UNIMPL          inotify_init
                    503: 317    UNIMPL          inotify_add_watch
                    504: 318    UNIMPL          inotify_rm_watch
                    505: 319    UNIMPL          mbind
                    506: 320    UNIMPL          get_mempolicy
                    507: 321    UNIMPL          set_mempolicy
1.53      chs       508: 322    STD             { int|linux_sys||openat(int fd, const char *path, \
                    509:                            int flags, ... linux_umode_t mode); }
                    510: 323    NOARGS          { int|sys||mkdirat(int fd, const char *path, \
                    511:                            linux_umode_t mode); }
                    512: 324    STD             { int|linux_sys||mknodat(int fd, const char *path, \
                    513:                            linux_umode_t mode, unsigned dev); }
                    514: 325    STD             { int|linux_sys||fchownat(int fd, const char *path, \
                    515:                            uid_t owner, gid_t group, int flag); }
1.44      chs       516: 326    UNIMPL          futimesat
1.53      chs       517: 327    STD             { int|linux_sys||fstatat64(int fd, const char *path, \
                    518:                            struct linux_stat64 *sp, int flag); }
                    519: 328    STD             { int|linux_sys||unlinkat(int fd, const char *path, \
                    520:                            int flag); }
                    521: 329    NOARGS          { int|sys||renameat(int fromfd, const char *from, \
                    522:                            int tofd, const char *to); }
                    523: 330    STD             { int|linux_sys||linkat(int fd1, const char *name1, \
                    524:                            int fd2, const char *name2, int flags); }
                    525: 331    NOARGS          { int|sys||symlinkat(const char *path1, int fd, \
                    526:                            const char *path2); }
1.64    ! njoly     527: 332    NOARGS          { ssize_t|sys||readlinkat(int fd, const char *path, \
1.53      chs       528:                            char *buf, size_t bufsize); }
                    529: 333    STD             { int|linux_sys||fchmodat(int fd, const char *path, \
                    530:                            linux_umode_t mode); }
                    531: 334    STD             { int|linux_sys||faccessat(int fd, const char *path, \
                    532:                            int amode); }
1.44      chs       533: 335    UNIMPL          pselect6
1.62      njoly     534: 336    STD             { int|linux_sys||ppoll(struct pollfd *fds, u_int nfds, \
1.49      pooka     535:                            struct linux_timespec *timeout, \
                    536:                            linux_sigset_t *sigset); }
1.44      chs       537: 337    UNIMPL          unshare
                    538: 338    STD             { int|linux_sys||set_robust_list( \
                    539:                            struct linux_robust_list_head *head, size_t len); }
                    540: 339    STD             { int|linux_sys||get_robust_list(int pid, \
                    541:                            struct linux_robust_list_head **head, \
                    542:                            size_t *len); }
                    543: 340    UNIMPL          splice
                    544: 341    UNIMPL          sync_file_range2
                    545: 342    UNIMPL          tee
                    546: 343    UNIMPL          vmsplice
                    547: 344    UNIMPL          move_pages
                    548: 345    UNIMPL          getcpu
                    549: 346    UNIMPL          epoll_wait
                    550: 347    UNIMPL          kexec_load
1.51      njoly     551: 348    STD             { int|linux_sys||utimensat(int fd, const char *path, \
                    552:                            struct linux_timespec *times, int flag); }
1.44      chs       553: 349    UNIMPL          signalfd
                    554: 350    UNIMPL          timerfd_create
                    555: 351    UNIMPL          eventfd
                    556: 352    UNIMPL          fallocate
                    557: 353    UNIMPL          timerfd_settime
                    558: 354    UNIMPL          timerfd_gettime
                    559: 355    UNIMPL          signalfd4
                    560: 356    UNIMPL          eventfd2
                    561: 357    UNIMPL          epoll_create1
1.45      he        562: 358    STD             { int|linux_sys||dup3(int from, int to, int flags); }
                    563: 359    STD             { int|linux_sys||pipe2(int *pfds, int flags); }
1.44      chs       564: 360    UNIMPL          inotify_init1
                    565: 361    UNIMPL          preadv
                    566: 362    UNIMPL          pwritev
                    567: 363    UNIMPL          rt_tgsigqueueinfo
                    568: 364    UNIMPL          perf_counter_open
                    569: 365    UNIMPL          recvmmsg
1.17      jdolecek  570: 366    UNIMPL
                    571: 367    UNIMPL
                    572: 368    UNIMPL
                    573: 369    UNIMPL
                    574: 370    UNIMPL
                    575: 371    UNIMPL
                    576: 372    UNIMPL
                    577: 373    UNIMPL
                    578: 374    UNIMPL
                    579: 375    UNIMPL
                    580: 376    UNIMPL
                    581: 377    UNIMPL
                    582: 378    UNIMPL
                    583: 379    UNIMPL
                    584: 380    UNIMPL
                    585: 381    UNIMPL
                    586: 382    UNIMPL
                    587: 383    UNIMPL
1.3       bjh21     588:
                    589: ; ARMLinux actually has two ranges of syscalls.  Normal syscalls use
                    590: ; SWI numbers starting at 0x900000 (__NR_SYSCALL_BASE).  Special
1.17      jdolecek  591: ; ARM-specific syscalls use SWI numbers starting at 0x9f0000
1.3       bjh21     592: ; (__ARM_NR_BASE).  linux_syscall() (in arch/arm/arm/linux_syscall.c)
1.17      jdolecek  593: ; remaps these down to 0x900180 so that we can use one linux_sysent
1.3       bjh21     594: ; array for the whole lot.
                    595:
1.17      jdolecek  596: 384    UNIMPL          /* base */
1.39      pooka     597: 385    STD             { int|linux_sys||breakpoint(void); }
                    598: 386    STD             { int|linux_sys||cacheflush(uintptr_t from, \
1.44      chs       599:                                intptr_t to, int flags); }
1.17      jdolecek  600: 387    UNIMPL          usr26
                    601: 388    UNIMPL          usr32
1.44      chs       602: 389    STD             { int|linux_sys||set_tls(void *tls); }

CVSweb <webmaster@jp.NetBSD.org>