syscalls.master revision 1.39
11.39Spooka $NetBSD: syscalls.master,v 1.39 2009/01/13 22:27:43 pooka Exp $ 21.1Sbjh21 31.1Sbjh21; Derived from sys/compat/linux/arch/*/syscalls.master 41.1Sbjh21; and from Linux 2.4.12 arch/arm/kernel/calls.S 51.1Sbjh21 61.1Sbjh21; NetBSD/arm COMPAT_LINUX system call name/number "master" file. 71.1Sbjh21; (See syscalls.conf to see what it is processed into.) 81.1Sbjh21; 91.1Sbjh21; Fields: number type [type-dependent ...] 101.1Sbjh21; number system call number, must be in order 111.1Sbjh21; type one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of 121.1Sbjh21; the compatibility options defined in syscalls.conf. 131.1Sbjh21; 141.1Sbjh21; types: 151.1Sbjh21; STD always included 161.1Sbjh21; OBSOL obsolete, not included in system 171.1Sbjh21; UNIMPL unimplemented, not included in system 181.1Sbjh21; NODEF included, but don't define the syscall number 191.1Sbjh21; NOARGS included, but don't define the syscall args structure 201.1Sbjh21; INDIR included, but don't define the syscall args structure 211.1Sbjh21; and allow it to be "really" varargs. 221.1Sbjh21; 231.1Sbjh21; The compat options are defined in the syscalls.conf file, and the 241.1Sbjh21; compat option name is prefixed to the syscall name. Other than 251.1Sbjh21; that, they're like NODEF (for 'compat' options), or STD (for 261.1Sbjh21; 'libcompat' options). 271.1Sbjh21; 281.1Sbjh21; The type-dependent arguments are as follows: 291.1Sbjh21; For STD, NODEF, NOARGS, and compat syscalls: 301.1Sbjh21; { pseudo-proto } [alias] 311.1Sbjh21; For other syscalls: 321.1Sbjh21; [comment] 331.1Sbjh21; 341.1Sbjh21; #ifdef's, etc. may be included, and are copied to the output files. 351.1Sbjh21; #include's are copied to the syscall names and switch definition files only. 361.1Sbjh21 371.1Sbjh21#include <sys/param.h> 381.1Sbjh21#include <sys/poll.h> 391.1Sbjh21#include <sys/systm.h> 401.1Sbjh21#include <sys/signal.h> 411.1Sbjh21#include <sys/mount.h> 421.1Sbjh21#include <sys/syscallargs.h> 431.38Srtr#include <sys/time.h> 441.1Sbjh21 451.38Srtr#include <compat/sys/time.h> 461.1Sbjh21#include <compat/linux/common/linux_types.h> 471.14She#include <compat/linux/common/linux_mmap.h> 481.1Sbjh21#include <compat/linux/common/linux_signal.h> 491.1Sbjh21#include <compat/linux/common/linux_siginfo.h> 501.1Sbjh21#include <compat/linux/common/linux_machdep.h> 511.1Sbjh21 521.1Sbjh21#include <compat/linux/linux_syscallargs.h> 531.1Sbjh21 541.1Sbjh21%% 551.5Sbjh21; XXX We have to explicitly declare linux_sys_nosys. 561.39Spooka0 NOARGS { int|linux_sys||nosys(void); } 571.39Spooka1 NOARGS { int|sys||exit(int rval); } 581.39Spooka2 NOARGS { int|sys||fork(void); } 591.39Spooka3 NOARGS { int|sys||read(int fd, char *buf, u_int nbyte); } 601.39Spooka4 NOARGS { int|sys||write(int fd, char *buf, u_int nbyte); } 611.39Spooka5 STD { int|linux_sys||open(const char *path, int flags, \ 621.1Sbjh21 int mode); } 631.39Spooka6 NOARGS { int|sys||close(int fd); } 641.39Spooka7 STD { int|linux_sys||waitpid(int pid, int *status, \ 651.1Sbjh21 int options);} 661.39Spooka8 STD { int|linux_sys||creat(const char *path, int mode); } 671.39Spooka9 NOARGS { int|sys||link(const char *path, const char *link); } 681.39Spooka10 STD { int|linux_sys||unlink(const char *path); } 691.39Spooka11 NOARGS { int|sys||execve(const char *path, char **argp, \ 701.1Sbjh21 char **envp); } 711.39Spooka12 NOARGS { int|sys||chdir(const char *path); } 721.39Spooka13 STD { int|linux_sys||time(linux_time_t *t); } 731.39Spooka14 STD { int|linux_sys||mknod(const char *path, int mode, \ 741.1Sbjh21 int dev); } 751.39Spooka15 NOARGS { int|sys||chmod(const char *path, int mode); } 761.39Spooka16 STD { int|linux_sys||lchown16(const char *path, \ 771.33Snjoly linux_uid16_t uid, linux_gid16_t gid); } 781.1Sbjh2117 OBSOL break 791.1Sbjh2118 OBSOL ostat 801.39Spooka19 NOARGS { long|compat_43_sys||lseek(int fd, long offset, \ 811.1Sbjh21 int whence); } 821.39Spooka20 NOARGS { pid_t|sys||getpid(void); } 831.1Sbjh2121 UNIMPL mount 841.1Sbjh2122 OBSOL umount 851.39Spooka23 NOARGS { int|sys||setuid(uid_t uid); } 861.39Spooka24 NOARGS { uid_t|sys||getuid(void); } 871.39Spooka25 STD { int|linux_sys||stime(linux_time_t *t); } 881.39Spooka26 STD { int|linux_sys||ptrace(int request, int pid, \ 891.1Sbjh21 int addr, int data); } 901.39Spooka27 STD { int|linux_sys||alarm(unsigned int secs); } 911.1Sbjh2128 OBSOL ofstat 921.39Spooka29 STD { int|linux_sys||pause(void); } 931.39Spooka30 STD { int|linux_sys||utime(const char *path, \ 941.1Sbjh21 struct linux_utimbuf *times); } 951.1Sbjh2131 OBSOL stty 961.1Sbjh2132 OBSOL gtty 971.39Spooka33 NOARGS { int|sys||access(const char *path, int flags); } 981.39Spooka34 STD { int|linux_sys||nice(int incr); } 991.1Sbjh2135 OBSOL ftime 1001.39Spooka36 NOARGS { int|sys||sync(void); } 1011.39Spooka37 STD { int|linux_sys||kill(int pid, int signum); } 1021.39Spooka38 NOARGS { int|sys||__posix_rename(const char *from, \ 1031.1Sbjh21 const char *to); } 1041.39Spooka39 NOARGS { int|sys||mkdir(const char *path, int mode); } 1051.39Spooka40 NOARGS { int|sys||rmdir(const char *path); } 1061.39Spooka41 NOARGS { int|sys||dup(u_int fd); } 1071.39Spooka42 STD { int|linux_sys||pipe(int *pfds); } 1081.39Spooka43 STD { int|linux_sys||times(struct times *tms); } 1091.1Sbjh2144 OBSOL prof 1101.39Spooka45 STD { int|linux_sys||brk(char *nsize); } 1111.39Spooka46 NOARGS { int|sys||setgid(gid_t gid); } 1121.39Spooka47 NOARGS { gid_t|sys||getgid(void); } 1131.39Spooka48 STD { int|linux_sys||signal(int signum, \ 1141.1Sbjh21 linux_handler_t handler); } 1151.39Spooka49 NOARGS { uid_t|sys||geteuid(void); } 1161.39Spooka50 NOARGS { gid_t|sys||getegid(void); } 1171.39Spooka51 NOARGS { int|sys||acct(char *path); } 1181.1Sbjh2152 UNIMPL umount 1191.1Sbjh2153 OBSOL lock 1201.39Spooka54 STD { int|linux_sys||ioctl(int fd, u_long com, \ 1211.28Schristos void *data); } 1221.39Spooka55 STD { int|linux_sys||fcntl(int fd, int cmd, void *arg); } 1231.1Sbjh2156 OBSOL mpx 1241.39Spooka57 NOARGS { int|sys||setpgid(int pid, int pgid); } 1251.1Sbjh2158 OBSOL ulimit 1261.39Spooka59 STD { int|linux_sys||oldolduname( \ 1271.2Sbjh21 struct linux_oldold_utsname *up); } 1281.39Spooka60 NOARGS { int|sys||umask(int newmask); } 1291.39Spooka61 NOARGS { int|sys||chroot(char *path); } 1301.1Sbjh2162 UNIMPL ustat 1311.39Spooka63 NOARGS { int|sys||dup2(u_int from, u_int to); } 1321.39Spooka64 NOARGS { pid_t|sys||getppid(void); } 1331.39Spooka65 NOARGS { int|sys||getpgrp(void); } 1341.39Spooka66 NOARGS { int|sys||setsid(void); } 1351.39Spooka67 STD { int|linux_sys||sigaction(int signum, \ 1361.1Sbjh21 const struct linux_old_sigaction *nsa, \ 1371.1Sbjh21 struct linux_old_sigaction *osa); } 1381.39Spooka68 STD { int|linux_sys||siggetmask(void); } 1391.39Spooka69 STD { int|linux_sys||sigsetmask(linux_old_sigset_t mask); } 1401.39Spooka70 STD { int|linux_sys||setreuid16(linux_uid16_t ruid, \ 1411.33Snjoly linux_uid16_t euid); } 1421.39Spooka71 STD { int|linux_sys||setregid16(linux_gid16_t rgid, \ 1431.33Snjoly linux_gid16_t egid); } 1441.39Spooka72 STD { int|linux_sys||sigsuspend(void *restart, \ 1451.1Sbjh21 int oldmask, int mask); } 1461.39Spooka73 STD { int|linux_sys||sigpending(linux_old_sigset_t *set); } 1471.39Spooka74 NOARGS { int|compat_43_sys||sethostname(char *hostname, \ 1481.1Sbjh21 u_int len);} 1491.39Spooka75 STD { int|linux_sys||setrlimit(u_int which, \ 1501.1Sbjh21 struct orlimit *rlp); } 1511.39Spooka76 STD { int|linux_sys||getrlimit(u_int which, \ 1521.1Sbjh21 struct orlimit *rlp); } 1531.39Spooka77 NOARGS { int|compat_50_sys||getrusage(int who, struct rusage50 *rusage); } 1541.39Spooka78 STD { int|linux_sys||gettimeofday(struct timeval *tp, \ 1551.1Sbjh21 struct timezone *tzp); } 1561.39Spooka79 STD { int|linux_sys||settimeofday(struct timeval *tp, \ 1571.1Sbjh21 struct timezone *tzp); } 1581.39Spooka80 STD { int|linux_sys||getgroups16(int gidsetsize, \ 1591.33Snjoly linux_gid16_t *gidset); } 1601.39Spooka81 STD { int|linux_sys||setgroups16(int gidsetsize, \ 1611.33Snjoly linux_gid16_t *gidset); } 1621.39Spooka82 STD { int|linux_sys||oldselect(struct linux_oldselect *lsp); } 1631.39Spooka83 NOARGS { int|sys||symlink(const char *path, const char *to); } 1641.39Spooka84 NOARGS { int|compat_43_sys||lstat(const char *path, \ 1651.1Sbjh21 struct stat43 *up); } oolstat 1661.39Spooka85 NOARGS { int|sys||readlink(const char *name, char *buf, \ 1671.1Sbjh21 int count); } 1681.1Sbjh21#ifdef EXEC_AOUT 1691.39Spooka86 STD { int|linux_sys||uselib(const char *path); } 1701.1Sbjh21#else 1711.1Sbjh2186 EXCL uselib 1721.1Sbjh21#endif 1731.39Spooka87 STD { int|linux_sys||swapon(char *name); } 1741.39Spooka88 STD { int|linux_sys||reboot(int magic1, int magic2, \ 1751.1Sbjh21 int cmd, void *arg); } 1761.39Spooka89 STD { int|linux_sys||readdir(int fd, void *dent, \ 1771.1Sbjh21 unsigned int count); } 1781.39Spooka90 STD { int|linux_sys||old_mmap(struct linux_oldmmap *lmp); } 1791.39Spooka91 NOARGS { int|sys||munmap(void *addr, int len); } 1801.39Spooka92 NOARGS { int|compat_43_sys||truncate(const char *path, \ 1811.1Sbjh21 long length); } 1821.39Spooka93 NOARGS { int|compat_43_sys||ftruncate(int fd, long length); } 1831.39Spooka94 NOARGS { int|sys||fchmod(int fd, int mode); } 1841.39Spooka95 STD { int|linux_sys||fchown16(int fd, linux_uid16_t uid, \ 1851.33Snjoly linux_gid16_t gid); } 1861.39Spooka96 STD { int|linux_sys||getpriority(int which, int who); } 1871.39Spooka97 NOARGS { int|sys||setpriority(int which, int who, int prio); } 1881.39Spooka98 NOARGS { int|sys||profil(void *samples, u_int size, \ 1891.1Sbjh21 u_int offset, u_int scale); } 1901.39Spooka99 STD { int|linux_sys||statfs(const char *path, \ 1911.1Sbjh21 struct linux_statfs *sp); } 1921.39Spooka100 STD { int|linux_sys||fstatfs(int fd, \ 1931.1Sbjh21 struct linux_statfs *sp); } 1941.1Sbjh21101 UNIMPL 1951.39Spooka102 STD { int|linux_sys||socketcall(int what, void *args); } 1961.1Sbjh21103 UNIMPL syslog 1971.39Spooka104 NOARGS { int|compat_50_sys||setitimer(u_int which, \ 1981.38Srtr struct itimerval50 *itv, \ 1991.38Srtr struct itimerval50 *oitv); } 2001.39Spooka105 NOARGS { int|compat_50_sys||getitimer(u_int which, \ 2011.38Srtr struct itimerval50 *itv); } 2021.39Spooka106 STD { int|linux_sys||stat(const char *path, \ 2031.1Sbjh21 struct linux_stat *sp); } 2041.39Spooka107 STD { int|linux_sys||lstat(const char *path, \ 2051.1Sbjh21 struct linux_stat *sp); } 2061.39Spooka108 STD { int|linux_sys||fstat(int fd, struct linux_stat *sp); } 2071.39Spooka109 STD { int|linux_sys||olduname(struct linux_oldutsname *up); } 2081.1Sbjh21110 UNIMPL 2091.1Sbjh21111 UNIMPL vhangup 2101.1Sbjh21112 UNIMPL idle 2111.1Sbjh21113 UNIMPL syscall 2121.39Spooka114 STD { int|linux_sys||wait4(int pid, int *status, \ 2131.1Sbjh21 int options, struct rusage *rusage); } 2141.39Spooka115 STD { int|linux_sys||swapoff(const char *path); } 2151.39Spooka116 STD { int|linux_sys||sysinfo(struct linux_sysinfo *arg); } 2161.39Spooka117 STD { int|linux_sys||ipc(int what, int a1, int a2, int a3, \ 2171.28Schristos void *ptr); } 2181.39Spooka118 NOARGS { int|sys||fsync(int fd); } 2191.39Spooka119 STD { int|linux_sys||sigreturn(struct linux_sigcontext *scp); } 2201.39Spooka120 STD { int|linux_sys||clone(int flags, void *stack); } 2211.39Spooka121 STD { int|linux_sys||setdomainname(char *domainname, \ 2221.1Sbjh21 int len); } 2231.39Spooka122 STD { int|linux_sys||uname(struct linux_utsname *up); } 2241.20Sperry123 UNIMPL modify_ldt 2251.1Sbjh21124 UNIMPL adjtimex 2261.39Spooka125 STD { int|linux_sys||mprotect(const void *start, \ 2271.9Schristos unsigned long len, int prot); } 2281.39Spooka126 STD { int|linux_sys||sigprocmask(int how, \ 2291.1Sbjh21 const linux_old_sigset_t *set, \ 2301.1Sbjh21 linux_old_sigset_t *oset); } 2311.1Sbjh21127 UNIMPL create_module 2321.1Sbjh21128 UNIMPL init_module 2331.1Sbjh21129 UNIMPL delete_module 2341.1Sbjh21130 UNIMPL get_kernel_syms 2351.1Sbjh21131 UNIMPL quotactl 2361.39Spooka132 NOARGS { pid_t|sys||getpgid(pid_t pid); } 2371.39Spooka133 NOARGS { int|sys||fchdir(int fd); } 2381.1Sbjh21134 UNIMPL bdflush 2391.1Sbjh21135 UNIMPL sysfs 2401.39Spooka136 STD { int|linux_sys||personality(int per); } 2411.1Sbjh21137 UNIMPL afs_syscall 2421.39Spooka138 STD { int|linux_sys||setfsuid(uid_t uid); } 2431.39Spooka139 STD { int|linux_sys||setfsgid(gid_t gid); } 2441.39Spooka140 STD { int|linux_sys||llseek(int fd, u_int32_t ohigh, \ 2451.28Schristos u_int32_t olow, void *res, int whence); } 2461.39Spooka141 STD { int|linux_sys||getdents(int fd, \ 2471.1Sbjh21 struct linux_dirent *dent, unsigned int count); } 2481.39Spooka142 STD { int|linux_sys||select(int nfds, fd_set *readfds, \ 2491.1Sbjh21 fd_set *writefds, fd_set *exceptfds, \ 2501.1Sbjh21 struct timeval *timeout); } 2511.39Spooka143 NOARGS { int|sys||flock(int fd, int how); } 2521.39Spooka144 NOARGS { int|sys|13|msync(void *addr, size_t len, int flags); } 2531.39Spooka145 NOARGS { int|sys||readv(int fd, struct iovec *iovp, \ 2541.1Sbjh21 u_int iovcnt); } 2551.39Spooka146 NOARGS { int|sys||writev(int fd, struct iovec *iovp, \ 2561.1Sbjh21 u_int iovcnt); } 2571.39Spooka147 NOARGS { pid_t|sys||getsid(pid_t pid); } 2581.39Spooka148 STD { int|linux_sys||fdatasync(int fd); } 2591.39Spooka149 STD { int|linux_sys||__sysctl(struct linux___sysctl *lsp); } 2601.39Spooka150 NOARGS { int|sys||mlock(void *addr, size_t len); } 2611.39Spooka151 NOARGS { int|sys||munlock(void *addr, size_t len); } 2621.39Spooka152 NOARGS { int|sys||mlockall(int flags); } 2631.39Spooka153 NOARGS { int|sys||munlockall(void); } 2641.39Spooka154 STD { int|linux_sys||sched_setparam(pid_t pid, \ 2651.1Sbjh21 const struct linux_sched_param *sp); } 2661.39Spooka155 STD { int|linux_sys||sched_getparam(pid_t pid, \ 2671.1Sbjh21 struct linux_sched_param *sp); } 2681.39Spooka156 STD { int|linux_sys||sched_setscheduler(pid_t pid, \ 2691.1Sbjh21 int policy, const struct linux_sched_param *sp); } 2701.39Spooka157 STD { int|linux_sys||sched_getscheduler(pid_t pid); } 2711.39Spooka158 STD { int|linux_sys||sched_yield(void); } 2721.39Spooka159 STD { int|linux_sys||sched_get_priority_max(int policy); } 2731.39Spooka160 STD { int|linux_sys||sched_get_priority_min(int policy); } 2741.1Sbjh21161 UNIMPL sched_rr_get_interval 2751.39Spooka162 STD { int|linux_sys||nanosleep( \ 2761.36Snjoly const struct linux_timespec *rqtp, \ 2771.36Snjoly struct linux_timespec *rmtp); } 2781.39Spooka163 STD { void *|linux_sys||mremap(void *old_address, \ 2791.1Sbjh21 size_t old_size, size_t new_size, u_long flags); } 2801.39Spooka164 STD { int|linux_sys||setresuid16(linux_uid16_t ruid, \ 2811.33Snjoly linux_uid16_t euid, linux_uid16_t suid); } 2821.39Spooka165 STD { int|linux_sys||getresuid16(linux_uid16_t *ruid, \ 2831.33Snjoly linux_uid16_t *euid, linux_uid16_t *suid); } 2841.1Sbjh21166 UNIMPL 2851.1Sbjh21167 UNIMPL query_module 2861.39Spooka168 NOARGS { int|sys||poll(struct pollfd *fds, u_int nfds, \ 2871.1Sbjh21 int timeout); } 2881.1Sbjh21169 UNIMPL nfsservctl 2891.39Spooka170 STD { int|linux_sys||setresgid16(linux_gid16_t rgid, \ 2901.33Snjoly linux_gid16_t egid, linux_gid16_t sgid); } 2911.39Spooka171 STD { int|linux_sys||getresgid16(linux_gid16_t *rgid, \ 2921.33Snjoly linux_gid16_t *egid, linux_gid16_t *sgid); } 2931.1Sbjh21172 UNIMPL prctl 2941.1Sbjh21173 UNIMPL rt_sigreturn 2951.39Spooka;173 STD { int|linux_sys||rt_sigreturn( \ 2961.1Sbjh21; struct linux_rt_sigframe *sfp); } 2971.39Spooka174 STD { int|linux_sys||rt_sigaction(int signum, \ 2981.1Sbjh21 const struct linux_sigaction *nsa, \ 2991.1Sbjh21 struct linux_sigaction *osa, \ 3001.1Sbjh21 size_t sigsetsize); } 3011.39Spooka175 STD { int|linux_sys||rt_sigprocmask(int how, \ 3021.1Sbjh21 const linux_sigset_t *set, \ 3031.1Sbjh21 linux_sigset_t *oset, \ 3041.1Sbjh21 size_t sigsetsize); } 3051.39Spooka176 STD { int|linux_sys||rt_sigpending( \ 3061.1Sbjh21 linux_sigset_t *set, \ 3071.1Sbjh21 size_t sigsetsize); } 3081.1Sbjh21177 UNIMPL rt_sigtimedwait 3091.1Sbjh21; XXX XAX int here? sigset_t here? siginfo_t 3101.39Spooka178 STD { int|linux_sys||rt_queueinfo(int pid, int signum, \ 3111.1Sbjh21 void *uinfo); } 3121.39Spooka179 STD { int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \ 3131.1Sbjh21 size_t sigsetsize); } 3141.39Spooka180 STD { int|linux_sys||pread(int fd, char *buf, \ 3151.1Sbjh21 size_t nbyte, linux_off_t offset); } 3161.39Spooka181 STD { int|linux_sys||pwrite(int fd, char *buf, \ 3171.1Sbjh21 size_t nbyte, linux_off_t offset); } 3181.39Spooka182 STD { int|linux_sys||chown16(const char *path, \ 3191.33Snjoly linux_uid16_t uid, linux_gid16_t gid); } 3201.39Spooka183 NOARGS { int|sys||__getcwd(char *bufp, size_t length); } 3211.1Sbjh21184 UNIMPL capget 3221.1Sbjh21185 UNIMPL capset 3231.39Spooka186 STD { int|linux_sys||sigaltstack( \ 3241.1Sbjh21 const struct linux_sigaltstack *ss, \ 3251.1Sbjh21 struct linux_sigaltstack *oss); } 3261.1Sbjh21187 UNIMPL sendfile 3271.1Sbjh21188 UNIMPL getpmsg 3281.1Sbjh21189 UNIMPL putpmsg 3291.39Spooka190 NOARGS vfork { int|sys|14|vfork(void); } 3301.39Spooka191 STD { int|linux_sys||ugetrlimit(int which, \ 3311.7Schristos struct rlimit *rlp); } 3321.30Sdsl#define linux_sys_mmap2_args linux_sys_mmap_args 3331.39Spooka192 NOARGS { linux_off_t|linux_sys||mmap2(unsigned long addr, \ 3341.13Schristos size_t len, int prot, int flags, int fd, \ 3351.13Schristos linux_off_t offset); } 3361.39Spooka193 STD { int|linux_sys||truncate64(const char *path, \ 3371.1Sbjh21 off_t length); } 3381.39Spooka194 STD { int|linux_sys||ftruncate64(unsigned int fd, \ 3391.1Sbjh21 off_t length); } 3401.39Spooka195 STD { int|linux_sys||stat64(const char *path, \ 3411.1Sbjh21 struct linux_stat64 *sp); } 3421.39Spooka196 STD { int|linux_sys||lstat64(const char *path, \ 3431.1Sbjh21 struct linux_stat64 *sp); } 3441.39Spooka197 STD { int|linux_sys||fstat64(int fd, \ 3451.1Sbjh21 struct linux_stat64 *sp); } 3461.39Spooka198 NOARGS { int|sys||__posix_lchown(const char *path, uid_t uid, \ 3471.1Sbjh21 gid_t gid); } 3481.39Spooka199 NOARGS getuid32 { uid_t|sys||getuid(void); } 3491.39Spooka200 NOARGS getgid32 { gid_t|sys||getgid(void); } 3501.39Spooka201 NOARGS geteuid32 { uid_t|sys||geteuid(void); } 3511.39Spooka202 NOARGS getegid32 { gid_t|sys||getegid(void); } 3521.39Spooka203 NOARGS setreuid32 { int|sys||setreuid(uid_t ruid, \ 3531.1Sbjh21 uid_t euid); } 3541.39Spooka204 NOARGS setregid32 { int|sys||setregid(gid_t rgid, \ 3551.1Sbjh21 gid_t egid); } 3561.39Spooka205 NOARGS getgroups32 { int|sys||getgroups(u_int gidsetsize, \ 3571.1Sbjh21 gid_t *gidset); } 3581.39Spooka206 NOARGS setgroups32 { int|sys||setgroups(u_int gidsetsize, \ 3591.1Sbjh21 gid_t *gidset); } 3601.39Spooka207 NOARGS fchown32 { int|sys||__posix_fchown(int fd, uid_t uid, \ 3611.1Sbjh21 gid_t gid); } 3621.39Spooka208 STD setresuid32 { int|linux_sys||setresuid(uid_t ruid, \ 3631.1Sbjh21 uid_t euid, uid_t suid); } 3641.39Spooka209 STD getresuid32 { int|linux_sys||getresuid(uid_t *ruid, \ 3651.1Sbjh21 uid_t *euid, uid_t *suid); } 3661.39Spooka210 STD setresgid32 { int|linux_sys||setresgid(gid_t rgid, \ 3671.1Sbjh21 gid_t egid, gid_t sgid); } 3681.39Spooka211 STD getresgid32 { int|linux_sys||getresgid(gid_t *rgid, \ 3691.1Sbjh21 gid_t *egid, gid_t *sgid); } 3701.39Spooka212 NOARGS chown32 { int|sys||__posix_chown(const char *path, \ 3711.1Sbjh21 uid_t uid, gid_t gid); } 3721.39Spooka213 NOARGS setuid32 { int|sys||setuid(uid_t uid); } 3731.39Spooka214 NOARGS setgid32 { int|sys||setgid(gid_t gid); } 3741.39Spooka215 NOARGS setfsuid32 { int|linux_sys||setfsuid(uid_t uid); } 3751.39Spooka216 NOARGS setfsgid32 { int|linux_sys||setfsgid(gid_t gid); } 3761.39Spooka217 STD { int|linux_sys||getdents64(int fd, \ 3771.10Schristos struct linux_dirent64 *dent, unsigned int count); } 3781.1Sbjh21218 UNIMPL pivot_root 3791.39Spooka219 NOARGS { int|sys||mincore(void *addr, size_t len, char *vec); } 3801.39Spooka220 NOARGS { int|sys||madvise(void *addr, size_t len, int behav); } 3811.39Spooka221 STD { int|linux_sys||fcntl64(int fd, int cmd, void *arg); } 3821.17Sjdolecek222 UNIMPL /* for tux */ 3831.17Sjdolecek223 UNIMPL /* unused */ 3841.17Sjdolecek224 UNIMPL gettid 3851.17Sjdolecek225 UNIMPL readahead 3861.39Spooka226 STD { int|linux_sys||setxattr(char *path, char *name, \ 3871.21Sfvdl void *value, size_t size, int flags); } 3881.39Spooka227 STD { int|linux_sys||lsetxattr(char *path, char *name, \ 3891.21Sfvdl void *value, size_t size, int flags); } 3901.39Spooka228 STD { int|linux_sys||fsetxattr(int fd, char *name, \ 3911.21Sfvdl void *value, size_t size, int flags); } 3921.39Spooka229 STD { ssize_t|linux_sys||getxattr(char *path, char *name, \ 3931.21Sfvdl void *value, size_t size); } 3941.39Spooka230 STD { ssize_t|linux_sys||lgetxattr(char *path, char *name, \ 3951.21Sfvdl void *value, size_t size); } 3961.39Spooka231 STD { ssize_t|linux_sys||fgetxattr(int fd, char *name, \ 3971.21Sfvdl void *value, size_t size); } 3981.39Spooka232 STD { ssize_t|linux_sys||listxattr(char *path, char *list, \ 3991.21Sfvdl size_t size); } 4001.39Spooka233 STD { ssize_t|linux_sys||llistxattr(char *path, char *list, \ 4011.21Sfvdl size_t size); } 4021.39Spooka234 STD { ssize_t|linux_sys||flistxattr(int fd, char *list, \ 4031.21Sfvdl size_t size); } 4041.39Spooka235 STD { int|linux_sys||removexattr(char *path, char *name); } 4051.39Spooka236 STD { int|linux_sys||lremovexattr(char *path, char *name); } 4061.39Spooka237 STD { int|linux_sys||fremovexattr(int fd, char *name); } 4071.17Sjdolecek238 UNIMPL tkill 4081.17Sjdolecek239 UNIMPL sendfile64 4091.17Sjdolecek240 UNIMPL futex 4101.17Sjdolecek241 UNIMPL sched_setaffinity 4111.17Sjdolecek242 UNIMPL sched_getaffinity 4121.17Sjdolecek243 UNIMPL io_setup 4131.17Sjdolecek244 UNIMPL io_destroy 4141.17Sjdolecek245 UNIMPL io_getevents 4151.17Sjdolecek246 UNIMPL io_submit 4161.17Sjdolecek247 UNIMPL io_cancel 4171.39Spooka248 STD { int|linux_sys||exit_group(int error_code); } 4181.17Sjdolecek249 UNIMPL lookup_dcookie 4191.17Sjdolecek250 UNIMPL epoll_create 4201.17Sjdolecek251 UNIMPL epoll_ctl 4211.17Sjdolecek252 UNIMPL epoll_wait 4221.17Sjdolecek253 UNIMPL remap_file_pages 4231.17Sjdolecek254 UNIMPL /* for set_thread_area */ 4241.17Sjdolecek255 UNIMPL /* for get_thread_area */ 4251.17Sjdolecek256 UNIMPL /* for set_tid_address */ 4261.17Sjdolecek257 UNIMPL timer_create 4271.17Sjdolecek258 UNIMPL timer_settime 4281.17Sjdolecek259 UNIMPL timer_gettime 4291.17Sjdolecek260 UNIMPL timer_getoverrun 4301.17Sjdolecek261 UNIMPL timer_delete 4311.39Spooka262 STD { int|linux_sys||clock_settime(clockid_t which, \ 4321.22Sfvdl struct linux_timespec *tp); } 4331.39Spooka263 STD { int|linux_sys||clock_gettime(clockid_t which, \ 4341.22Sfvdl struct linux_timespec *tp); } 4351.39Spooka264 STD { int|linux_sys||clock_getres(clockid_t which, \ 4361.22Sfvdl struct linux_timespec *tp); } 4371.39Spooka265 STD { int|linux_sys||clock_nanosleep(clockid_t which, \ 4381.22Sfvdl int flags, struct linux_timespec *rqtp, \ 4391.22Sfvdl struct linux_timespec *rmtp); } 4401.39Spooka266 STD { int|linux_sys||statfs64(const char *path, \ 4411.19Sjdolecek size_t sz, struct linux_statfs64 *sp); } 4421.39Spooka267 STD { int|linux_sys||fstatfs64(int fd, \ 4431.19Sjdolecek size_t sz, struct linux_statfs64 *sp); } 4441.17Sjdolecek268 UNIMPL tgkill 4451.17Sjdolecek269 UNIMPL utimes 4461.17Sjdolecek270 UNIMPL fadvise64_64 4471.17Sjdolecek271 UNIMPL pciconfig_iobase 4481.17Sjdolecek272 UNIMPL pciconfig_read 4491.17Sjdolecek273 UNIMPL pciconfig_write 4501.17Sjdolecek274 UNIMPL 4511.17Sjdolecek275 UNIMPL 4521.17Sjdolecek276 UNIMPL 4531.17Sjdolecek277 UNIMPL 4541.17Sjdolecek278 UNIMPL 4551.17Sjdolecek279 UNIMPL 4561.17Sjdolecek280 UNIMPL 4571.17Sjdolecek281 UNIMPL 4581.17Sjdolecek282 UNIMPL 4591.17Sjdolecek283 UNIMPL 4601.17Sjdolecek284 UNIMPL 4611.17Sjdolecek285 UNIMPL 4621.17Sjdolecek286 UNIMPL 4631.17Sjdolecek287 UNIMPL 4641.17Sjdolecek288 UNIMPL 4651.17Sjdolecek289 UNIMPL 4661.17Sjdolecek290 UNIMPL 4671.17Sjdolecek291 UNIMPL 4681.17Sjdolecek292 UNIMPL 4691.17Sjdolecek293 UNIMPL 4701.17Sjdolecek294 UNIMPL 4711.17Sjdolecek295 UNIMPL 4721.17Sjdolecek296 UNIMPL 4731.17Sjdolecek297 UNIMPL 4741.17Sjdolecek298 UNIMPL 4751.17Sjdolecek299 UNIMPL 4761.17Sjdolecek300 UNIMPL 4771.17Sjdolecek301 UNIMPL 4781.17Sjdolecek302 UNIMPL 4791.17Sjdolecek303 UNIMPL 4801.17Sjdolecek304 UNIMPL 4811.17Sjdolecek305 UNIMPL 4821.17Sjdolecek306 UNIMPL 4831.17Sjdolecek307 UNIMPL 4841.17Sjdolecek308 UNIMPL 4851.17Sjdolecek309 UNIMPL 4861.17Sjdolecek310 UNIMPL 4871.17Sjdolecek311 UNIMPL 4881.17Sjdolecek312 UNIMPL 4891.17Sjdolecek313 UNIMPL 4901.17Sjdolecek314 UNIMPL 4911.17Sjdolecek315 UNIMPL 4921.17Sjdolecek316 UNIMPL 4931.17Sjdolecek317 UNIMPL 4941.17Sjdolecek318 UNIMPL 4951.17Sjdolecek319 UNIMPL 4961.17Sjdolecek320 UNIMPL 4971.17Sjdolecek321 UNIMPL 4981.17Sjdolecek322 UNIMPL 4991.17Sjdolecek323 UNIMPL 5001.17Sjdolecek324 UNIMPL 5011.17Sjdolecek325 UNIMPL 5021.17Sjdolecek326 UNIMPL 5031.17Sjdolecek327 UNIMPL 5041.17Sjdolecek328 UNIMPL 5051.17Sjdolecek329 UNIMPL 5061.17Sjdolecek330 UNIMPL 5071.17Sjdolecek331 UNIMPL 5081.17Sjdolecek332 UNIMPL 5091.17Sjdolecek333 UNIMPL 5101.17Sjdolecek334 UNIMPL 5111.17Sjdolecek335 UNIMPL 5121.17Sjdolecek336 UNIMPL 5131.17Sjdolecek337 UNIMPL 5141.17Sjdolecek338 UNIMPL 5151.17Sjdolecek339 UNIMPL 5161.17Sjdolecek340 UNIMPL 5171.17Sjdolecek341 UNIMPL 5181.17Sjdolecek342 UNIMPL 5191.17Sjdolecek343 UNIMPL 5201.17Sjdolecek344 UNIMPL 5211.17Sjdolecek345 UNIMPL 5221.17Sjdolecek346 UNIMPL 5231.17Sjdolecek347 UNIMPL 5241.17Sjdolecek348 UNIMPL 5251.17Sjdolecek349 UNIMPL 5261.17Sjdolecek350 UNIMPL 5271.17Sjdolecek351 UNIMPL 5281.17Sjdolecek352 UNIMPL 5291.17Sjdolecek353 UNIMPL 5301.17Sjdolecek354 UNIMPL 5311.17Sjdolecek355 UNIMPL 5321.17Sjdolecek356 UNIMPL 5331.17Sjdolecek357 UNIMPL 5341.17Sjdolecek358 UNIMPL 5351.17Sjdolecek359 UNIMPL 5361.17Sjdolecek360 UNIMPL 5371.17Sjdolecek361 UNIMPL 5381.17Sjdolecek362 UNIMPL 5391.17Sjdolecek363 UNIMPL 5401.17Sjdolecek364 UNIMPL 5411.17Sjdolecek365 UNIMPL 5421.17Sjdolecek366 UNIMPL 5431.17Sjdolecek367 UNIMPL 5441.17Sjdolecek368 UNIMPL 5451.17Sjdolecek369 UNIMPL 5461.17Sjdolecek370 UNIMPL 5471.17Sjdolecek371 UNIMPL 5481.17Sjdolecek372 UNIMPL 5491.17Sjdolecek373 UNIMPL 5501.17Sjdolecek374 UNIMPL 5511.17Sjdolecek375 UNIMPL 5521.17Sjdolecek376 UNIMPL 5531.17Sjdolecek377 UNIMPL 5541.17Sjdolecek378 UNIMPL 5551.17Sjdolecek379 UNIMPL 5561.17Sjdolecek380 UNIMPL 5571.17Sjdolecek381 UNIMPL 5581.17Sjdolecek382 UNIMPL 5591.17Sjdolecek383 UNIMPL 5601.3Sbjh21 5611.3Sbjh21; ARMLinux actually has two ranges of syscalls. Normal syscalls use 5621.3Sbjh21; SWI numbers starting at 0x900000 (__NR_SYSCALL_BASE). Special 5631.17Sjdolecek; ARM-specific syscalls use SWI numbers starting at 0x9f0000 5641.3Sbjh21; (__ARM_NR_BASE). linux_syscall() (in arch/arm/arm/linux_syscall.c) 5651.17Sjdolecek; remaps these down to 0x900180 so that we can use one linux_sysent 5661.3Sbjh21; array for the whole lot. 5671.3Sbjh21 5681.17Sjdolecek384 UNIMPL /* base */ 5691.39Spooka385 STD { int|linux_sys||breakpoint(void); } 5701.39Spooka386 STD { int|linux_sys||cacheflush(uintptr_t from, \ 5711.3Sbjh21 intptr_t to); } 5721.17Sjdolecek387 UNIMPL usr26 5731.17Sjdolecek388 UNIMPL usr32 574