syscalls.master revision 1.21
11.21Sfvdl $NetBSD: syscalls.master,v 1.21 2005/05/16 16:02:20 fvdl 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#if defined(_KERNEL_OPT) 381.1Sbjh21#include "opt_compat_43.h" 391.1Sbjh21#endif 401.1Sbjh21 411.1Sbjh21#include <sys/param.h> 421.1Sbjh21#include <sys/poll.h> 431.1Sbjh21#include <sys/systm.h> 441.1Sbjh21#include <sys/signal.h> 451.1Sbjh21#include <sys/mount.h> 461.12Sthorpej#include <sys/sa.h> 471.1Sbjh21#include <sys/syscallargs.h> 481.1Sbjh21 491.1Sbjh21#include <compat/linux/common/linux_types.h> 501.14She#include <compat/linux/common/linux_mmap.h> 511.1Sbjh21#include <compat/linux/common/linux_signal.h> 521.1Sbjh21#include <compat/linux/common/linux_siginfo.h> 531.1Sbjh21#include <compat/linux/common/linux_machdep.h> 541.1Sbjh21 551.1Sbjh21#include <compat/linux/linux_syscallargs.h> 561.1Sbjh21 571.1Sbjh21%% 581.5Sbjh21; XXX We have to explicitly declare linux_sys_nosys. 591.5Sbjh210 NOARGS { int linux_sys_nosys(void); } 601.1Sbjh211 NOARGS { int sys_exit(int rval); } 611.1Sbjh212 NOARGS { int sys_fork(void); } 621.1Sbjh213 NOARGS { int sys_read(int fd, char *buf, u_int nbyte); } 631.1Sbjh214 NOARGS { int sys_write(int fd, char *buf, u_int nbyte); } 641.1Sbjh215 STD { int linux_sys_open(const char *path, int flags, \ 651.1Sbjh21 int mode); } 661.1Sbjh216 NOARGS { int sys_close(int fd); } 671.1Sbjh217 STD { int linux_sys_waitpid(int pid, int *status, \ 681.1Sbjh21 int options);} 691.1Sbjh218 STD { int linux_sys_creat(const char *path, int mode); } 701.1Sbjh219 STD { int linux_sys_link(const char *path, const \ 711.1Sbjh21 char *link); } 721.1Sbjh2110 STD { int linux_sys_unlink(const char *path); } 731.1Sbjh2111 STD { int linux_sys_execve(const char *path, char **argp, \ 741.1Sbjh21 char **envp); } 751.1Sbjh2112 STD { int linux_sys_chdir(const char *path); } 761.1Sbjh2113 STD { int linux_sys_time(linux_time_t *t); } 771.1Sbjh2114 STD { int linux_sys_mknod(const char *path, int mode, \ 781.1Sbjh21 int dev); } 791.1Sbjh2115 STD { int linux_sys_chmod(const char *path, int mode); } 801.1Sbjh2116 STD { int linux_sys_lchown16(const char *path, int uid, \ 811.1Sbjh21 int gid); } 821.1Sbjh2117 OBSOL break 831.1Sbjh2118 OBSOL ostat 841.1Sbjh2119 NOARGS { long compat_43_sys_lseek(int fd, long offset, \ 851.1Sbjh21 int whence); } 861.1Sbjh2120 NOARGS MPSAFE { pid_t sys_getpid(void); } 871.1Sbjh2121 UNIMPL mount 881.1Sbjh2122 OBSOL umount 891.1Sbjh2123 NOARGS { int sys_setuid(uid_t uid); } 901.1Sbjh2124 NOARGS { uid_t sys_getuid(void); } 911.1Sbjh2125 STD { int linux_sys_stime(linux_time_t *t); } 921.1Sbjh2126 STD { int linux_sys_ptrace(int request, int pid, \ 931.1Sbjh21 int addr, int data); } 941.1Sbjh2127 STD { int linux_sys_alarm(unsigned int secs); } 951.1Sbjh2128 OBSOL ofstat 961.1Sbjh2129 STD { int linux_sys_pause(void); } 971.1Sbjh2130 STD { int linux_sys_utime(const char *path, \ 981.1Sbjh21 struct linux_utimbuf *times); } 991.1Sbjh2131 OBSOL stty 1001.1Sbjh2132 OBSOL gtty 1011.1Sbjh2133 STD { int linux_sys_access(const char *path, int flags); } 1021.1Sbjh2134 STD { int linux_sys_nice(int incr); } 1031.1Sbjh2135 OBSOL ftime 1041.1Sbjh2136 NOARGS { int sys_sync(void); } 1051.1Sbjh2137 STD { int linux_sys_kill(int pid, int signum); } 1061.1Sbjh2138 STD { int linux_sys_rename(const char *from, \ 1071.1Sbjh21 const char *to); } 1081.1Sbjh2139 STD { int linux_sys_mkdir(const char *path, int mode); } 1091.1Sbjh2140 STD { int linux_sys_rmdir(const char *path); } 1101.1Sbjh2141 NOARGS { int sys_dup(u_int fd); } 1111.1Sbjh2142 STD { int linux_sys_pipe(int *pfds); } 1121.1Sbjh2143 STD { int linux_sys_times(struct times *tms); } 1131.1Sbjh2144 OBSOL prof 1141.1Sbjh2145 STD { int linux_sys_brk(char *nsize); } 1151.1Sbjh2146 NOARGS { int sys_setgid(gid_t gid); } 1161.1Sbjh2147 NOARGS { gid_t sys_getgid(void); } 1171.1Sbjh2148 STD { int linux_sys_signal(int signum, \ 1181.1Sbjh21 linux_handler_t handler); } 1191.1Sbjh2149 NOARGS { uid_t sys_geteuid(void); } 1201.1Sbjh2150 NOARGS { gid_t sys_getegid(void); } 1211.1Sbjh2151 NOARGS { int sys_acct(char *path); } 1221.1Sbjh2152 UNIMPL umount 1231.1Sbjh2153 OBSOL lock 1241.1Sbjh2154 STD { int linux_sys_ioctl(int fd, u_long com, \ 1251.1Sbjh21 caddr_t data); } 1261.1Sbjh2155 STD { int linux_sys_fcntl(int fd, int cmd, void *arg); } 1271.1Sbjh2156 OBSOL mpx 1281.1Sbjh2157 NOARGS { int sys_setpgid(int pid, int pgid); } 1291.1Sbjh2158 OBSOL ulimit 1301.2Sbjh2159 STD { int linux_sys_oldolduname( \ 1311.2Sbjh21 struct linux_oldold_utsname *up); } 1321.1Sbjh2160 NOARGS { int sys_umask(int newmask); } 1331.1Sbjh2161 NOARGS { int sys_chroot(char *path); } 1341.1Sbjh2162 UNIMPL ustat 1351.1Sbjh2163 NOARGS { int sys_dup2(u_int from, u_int to); } 1361.1Sbjh2164 NOARGS { pid_t sys_getppid(void); } 1371.1Sbjh2165 NOARGS { int sys_getpgrp(void); } 1381.1Sbjh2166 NOARGS { int sys_setsid(void); } 1391.1Sbjh2167 STD { int linux_sys_sigaction(int signum, \ 1401.1Sbjh21 const struct linux_old_sigaction *nsa, \ 1411.1Sbjh21 struct linux_old_sigaction *osa); } 1421.1Sbjh2168 STD { int linux_sys_siggetmask(void); } 1431.1Sbjh2169 STD { int linux_sys_sigsetmask(linux_old_sigset_t mask); } 1441.20Sperry70 NOARGS { int sys_setreuid(uid_t ruid, uid_t euid); } 1451.1Sbjh2171 NOARGS { int sys_setregid(gid_t rgid, gid_t egid); } 1461.1Sbjh2172 STD { int linux_sys_sigsuspend(caddr_t restart, \ 1471.1Sbjh21 int oldmask, int mask); } 1481.1Sbjh2173 STD { int linux_sys_sigpending(linux_old_sigset_t *set); } 1491.1Sbjh2174 NOARGS { int compat_43_sys_sethostname(char *hostname, \ 1501.1Sbjh21 u_int len);} 1511.8Sbjh2175 STD { int linux_sys_setrlimit(u_int which, \ 1521.1Sbjh21 struct orlimit *rlp); } 1531.8Sbjh2176 STD { int linux_sys_getrlimit(u_int which, \ 1541.1Sbjh21 struct orlimit *rlp); } 1551.1Sbjh2177 NOARGS { int sys_getrusage(int who, struct rusage *rusage); } 1561.1Sbjh2178 STD { int linux_sys_gettimeofday(struct timeval *tp, \ 1571.1Sbjh21 struct timezone *tzp); } 1581.1Sbjh2179 STD { int linux_sys_settimeofday(struct timeval *tp, \ 1591.1Sbjh21 struct timezone *tzp); } 1601.1Sbjh2180 NOARGS { int sys_getgroups(u_int gidsetsize, gid_t *gidset); } 1611.1Sbjh2181 NOARGS { int sys_setgroups(u_int gidsetsize, gid_t *gidset); } 1621.1Sbjh2182 STD { int linux_sys_oldselect(struct linux_oldselect *lsp); } 1631.1Sbjh2183 STD { int linux_sys_symlink(const char *path, \ 1641.1Sbjh21 const char *to); } 1651.1Sbjh2184 NOARGS { int compat_43_sys_lstat(const char *path, \ 1661.1Sbjh21 struct stat43 *up); } oolstat 1671.1Sbjh2185 STD { int linux_sys_readlink(const char *name, char *buf, \ 1681.1Sbjh21 int count); } 1691.1Sbjh21#ifdef EXEC_AOUT 1701.1Sbjh2186 STD { int linux_sys_uselib(const char *path); } 1711.1Sbjh21#else 1721.1Sbjh2186 EXCL uselib 1731.1Sbjh21#endif 1741.1Sbjh2187 STD { int linux_sys_swapon(char *name); } 1751.1Sbjh2188 STD { int linux_sys_reboot(int magic1, int magic2, \ 1761.1Sbjh21 int cmd, void *arg); } 1771.1Sbjh2189 STD { int linux_sys_readdir(int fd, caddr_t dent, \ 1781.1Sbjh21 unsigned int count); } 1791.1Sbjh2190 STD { int linux_sys_old_mmap(struct linux_oldmmap *lmp); } 1801.1Sbjh2191 NOARGS { int sys_munmap(caddr_t addr, int len); } 1811.1Sbjh2192 STD { int linux_sys_truncate(const char *path, \ 1821.1Sbjh21 long length); } 1831.1Sbjh2193 NOARGS { int compat_43_sys_ftruncate(int fd, long length); } 1841.1Sbjh2194 NOARGS { int sys_fchmod(int fd, int mode); } 1851.1Sbjh2195 STD { int linux_sys_fchown16(int fd, int uid, int gid); } 1861.1Sbjh2196 NOARGS { int sys_getpriority(int which, int who); } 1871.1Sbjh2197 NOARGS { int sys_setpriority(int which, int who, int prio); } 1881.1Sbjh2198 NOARGS { int sys_profil(caddr_t samples, u_int size, \ 1891.1Sbjh21 u_int offset, u_int scale); } 1901.1Sbjh2199 STD { int linux_sys_statfs(const char *path, \ 1911.1Sbjh21 struct linux_statfs *sp); } 1921.1Sbjh21100 STD { int linux_sys_fstatfs(int fd, \ 1931.1Sbjh21 struct linux_statfs *sp); } 1941.1Sbjh21101 UNIMPL 1951.1Sbjh21102 STD { int linux_sys_socketcall(int what, void *args); } 1961.1Sbjh21103 UNIMPL syslog 1971.1Sbjh21104 NOARGS { int sys_setitimer(u_int which, \ 1981.1Sbjh21 struct itimerval *itv, struct itimerval *oitv); } 1991.1Sbjh21105 NOARGS { int sys_getitimer(u_int which, \ 2001.1Sbjh21 struct itimerval *itv); } 2011.1Sbjh21106 STD { int linux_sys_stat(const char *path, \ 2021.1Sbjh21 struct linux_stat *sp); } 2031.1Sbjh21107 STD { int linux_sys_lstat(const char *path, \ 2041.1Sbjh21 struct linux_stat *sp); } 2051.1Sbjh21108 STD { int linux_sys_fstat(int fd, struct linux_stat *sp); } 2061.2Sbjh21109 STD { int linux_sys_olduname(struct linux_oldutsname *up); } 2071.1Sbjh21110 UNIMPL 2081.1Sbjh21111 UNIMPL vhangup 2091.1Sbjh21112 UNIMPL idle 2101.1Sbjh21113 UNIMPL syscall 2111.1Sbjh21114 STD { int linux_sys_wait4(int pid, int *status, \ 2121.1Sbjh21 int options, struct rusage *rusage); } 2131.1Sbjh21115 STD { int linux_sys_swapoff(const char *path); } 2141.1Sbjh21116 STD { int linux_sys_sysinfo(struct linux_sysinfo *arg); } 2151.1Sbjh21117 STD { int linux_sys_ipc(int what, int a1, int a2, int a3, \ 2161.1Sbjh21 caddr_t ptr); } 2171.1Sbjh21118 NOARGS { int sys_fsync(int fd); } 2181.1Sbjh21119 STD { int linux_sys_sigreturn(struct linux_sigcontext *scp); } 2191.1Sbjh21120 STD { int linux_sys_clone(int flags, void *stack); } 2201.1Sbjh21121 STD { int linux_sys_setdomainname(char *domainname, \ 2211.1Sbjh21 int len); } 2221.2Sbjh21122 STD { int linux_sys_uname(struct linux_utsname *up); } 2231.20Sperry123 UNIMPL modify_ldt 2241.1Sbjh21124 UNIMPL adjtimex 2251.9Schristos125 STD { int linux_sys_mprotect(const void *start, \ 2261.9Schristos unsigned long len, int prot); } 2271.1Sbjh21126 STD { int linux_sys_sigprocmask(int how, \ 2281.1Sbjh21 const linux_old_sigset_t *set, \ 2291.1Sbjh21 linux_old_sigset_t *oset); } 2301.1Sbjh21127 UNIMPL create_module 2311.1Sbjh21128 UNIMPL init_module 2321.1Sbjh21129 UNIMPL delete_module 2331.1Sbjh21130 UNIMPL get_kernel_syms 2341.1Sbjh21131 UNIMPL quotactl 2351.1Sbjh21132 STD { int linux_sys_getpgid(int pid); } 2361.1Sbjh21133 NOARGS { int sys_fchdir(int fd); } 2371.1Sbjh21134 UNIMPL bdflush 2381.1Sbjh21135 UNIMPL sysfs 2391.1Sbjh21136 STD { int linux_sys_personality(int per); } 2401.1Sbjh21137 UNIMPL afs_syscall 2411.1Sbjh21138 STD { int linux_sys_setfsuid(uid_t uid); } 2421.1Sbjh21139 NOARGS { int linux_sys_getfsuid(void); } 2431.1Sbjh21140 STD { int linux_sys_llseek(int fd, u_int32_t ohigh, \ 2441.1Sbjh21 u_int32_t olow, caddr_t res, int whence); } 2451.1Sbjh21141 STD { int linux_sys_getdents(int fd, \ 2461.1Sbjh21 struct linux_dirent *dent, unsigned int count); } 2471.1Sbjh21142 STD { int linux_sys_select(int nfds, fd_set *readfds, \ 2481.1Sbjh21 fd_set *writefds, fd_set *exceptfds, \ 2491.1Sbjh21 struct timeval *timeout); } 2501.1Sbjh21143 NOARGS { int sys_flock(int fd, int how); } 2511.1Sbjh21144 STD { int linux_sys_msync(caddr_t addr, int len, int fl); } 2521.1Sbjh21145 NOARGS { int sys_readv(int fd, struct iovec *iovp, \ 2531.1Sbjh21 u_int iovcnt); } 2541.1Sbjh21146 NOARGS { int sys_writev(int fd, struct iovec *iovp, \ 2551.1Sbjh21 u_int iovcnt); } 2561.1Sbjh21147 NOARGS { pid_t sys_getsid(pid_t pid); } 2571.1Sbjh21148 STD { int linux_sys_fdatasync(int fd); } 2581.1Sbjh21149 STD { int linux_sys___sysctl(struct linux___sysctl *lsp); } 2591.1Sbjh21150 NOARGS { int sys_mlock(caddr_t addr, size_t len); } 2601.1Sbjh21151 NOARGS { int sys_munlock(caddr_t addr, size_t len); } 2611.1Sbjh21152 NOARGS { int sys_mlockall(int flags); } 2621.1Sbjh21153 NOARGS { int sys_munlockall(void); } 2631.1Sbjh21154 STD { int linux_sys_sched_setparam(pid_t pid, \ 2641.1Sbjh21 const struct linux_sched_param *sp); } 2651.1Sbjh21155 STD { int linux_sys_sched_getparam(pid_t pid, \ 2661.1Sbjh21 struct linux_sched_param *sp); } 2671.1Sbjh21156 STD { int linux_sys_sched_setscheduler(pid_t pid, \ 2681.1Sbjh21 int policy, const struct linux_sched_param *sp); } 2691.1Sbjh21157 STD { int linux_sys_sched_getscheduler(pid_t pid); } 2701.1Sbjh21158 STD { int linux_sys_sched_yield(void); } 2711.1Sbjh21159 STD { int linux_sys_sched_get_priority_max(int policy); } 2721.1Sbjh21160 STD { int linux_sys_sched_get_priority_min(int policy); } 2731.1Sbjh21161 UNIMPL sched_rr_get_interval 2741.1Sbjh21162 NOARGS { int sys_nanosleep(const struct timespec *rqtp, \ 2751.1Sbjh21 struct timespec *rmtp); } 2761.1Sbjh21163 STD { void *linux_sys_mremap(void *old_address, \ 2771.1Sbjh21 size_t old_size, size_t new_size, u_long flags); } 2781.1Sbjh21164 STD { int linux_sys_setresuid(uid_t ruid, uid_t euid, \ 2791.1Sbjh21 uid_t suid); } 2801.1Sbjh21165 STD { int linux_sys_getresuid(uid_t *ruid, uid_t *euid, \ 2811.1Sbjh21 uid_t *suid); } 2821.1Sbjh21166 UNIMPL 2831.1Sbjh21167 UNIMPL query_module 2841.1Sbjh21168 NOARGS { int sys_poll(struct pollfd *fds, u_int nfds, \ 2851.1Sbjh21 int timeout); } 2861.1Sbjh21169 UNIMPL nfsservctl 2871.1Sbjh21170 STD { int linux_sys_setresgid(gid_t rgid, gid_t egid, \ 2881.1Sbjh21 gid_t sgid); } 2891.1Sbjh21171 STD { int linux_sys_getresgid(gid_t *rgid, gid_t *egid, \ 2901.1Sbjh21 gid_t *sgid); } 2911.1Sbjh21172 UNIMPL prctl 2921.1Sbjh21173 UNIMPL rt_sigreturn 2931.1Sbjh21;173 STD { int linux_sys_rt_sigreturn( \ 2941.1Sbjh21; struct linux_rt_sigframe *sfp); } 2951.1Sbjh21174 STD { int linux_sys_rt_sigaction(int signum, \ 2961.1Sbjh21 const struct linux_sigaction *nsa, \ 2971.1Sbjh21 struct linux_sigaction *osa, \ 2981.1Sbjh21 size_t sigsetsize); } 2991.1Sbjh21175 STD { int linux_sys_rt_sigprocmask(int how, \ 3001.1Sbjh21 const linux_sigset_t *set, \ 3011.1Sbjh21 linux_sigset_t *oset, \ 3021.1Sbjh21 size_t sigsetsize); } 3031.1Sbjh21176 STD { int linux_sys_rt_sigpending( \ 3041.1Sbjh21 linux_sigset_t *set, \ 3051.1Sbjh21 size_t sigsetsize); } 3061.1Sbjh21177 UNIMPL rt_sigtimedwait 3071.1Sbjh21; XXX XAX int here? sigset_t here? siginfo_t 3081.1Sbjh21178 STD { int linux_sys_rt_queueinfo(int pid, int signum, \ 3091.1Sbjh21 void *uinfo); } 3101.1Sbjh21179 STD { int linux_sys_rt_sigsuspend(linux_sigset_t *unewset, \ 3111.1Sbjh21 size_t sigsetsize); } 3121.1Sbjh21180 STD { int linux_sys_pread(int fd, char *buf, \ 3131.1Sbjh21 size_t nbyte, linux_off_t offset); } 3141.1Sbjh21181 STD { int linux_sys_pwrite(int fd, char *buf, \ 3151.1Sbjh21 size_t nbyte, linux_off_t offset); } 3161.1Sbjh21182 STD { int linux_sys_chown16(const char *path, int uid, \ 3171.1Sbjh21 int gid); } 3181.1Sbjh21183 NOARGS { int sys___getcwd(char *bufp, size_t length); } 3191.1Sbjh21184 UNIMPL capget 3201.1Sbjh21185 UNIMPL capset 3211.1Sbjh21186 STD { int linux_sys_sigaltstack( \ 3221.1Sbjh21 const struct linux_sigaltstack *ss, \ 3231.1Sbjh21 struct linux_sigaltstack *oss); } 3241.1Sbjh21187 UNIMPL sendfile 3251.1Sbjh21188 UNIMPL getpmsg 3261.1Sbjh21189 UNIMPL putpmsg 3271.1Sbjh21190 NOARGS vfork { int sys___vfork14(void); } 3281.7Schristos191 STD { int linux_sys_ugetrlimit(int which, \ 3291.7Schristos struct rlimit *rlp); } 3301.13Schristos192 NOARGS { linux_off_t linux_sys_mmap2(unsigned long addr, \ 3311.13Schristos size_t len, int prot, int flags, int fd, \ 3321.13Schristos linux_off_t offset); } 3331.1Sbjh21193 STD { int linux_sys_truncate64(const char *path, \ 3341.1Sbjh21 off_t length); } 3351.15Sjdolecek194 STD { int linux_sys_ftruncate64(unsigned int fd, \ 3361.1Sbjh21 off_t length); } 3371.1Sbjh21195 STD { int linux_sys_stat64(const char *path, \ 3381.1Sbjh21 struct linux_stat64 *sp); } 3391.1Sbjh21196 STD { int linux_sys_lstat64(const char *path, \ 3401.1Sbjh21 struct linux_stat64 *sp); } 3411.1Sbjh21197 STD { int linux_sys_fstat64(int fd, \ 3421.1Sbjh21 struct linux_stat64 *sp); } 3431.1Sbjh21198 STD { int linux_sys_lchown(const char *path, uid_t uid, \ 3441.1Sbjh21 gid_t gid); } 3451.1Sbjh21199 NOARGS getuid32 { uid_t sys_getuid(void); } 3461.1Sbjh21200 NOARGS getgid32 { gid_t sys_getgid(void); } 3471.1Sbjh21201 NOARGS geteuid32 { uid_t sys_geteuid(void); } 3481.1Sbjh21202 NOARGS getegid32 { gid_t sys_getegid(void); } 3491.1Sbjh21203 NOARGS setreuid32 { int sys_setreuid(uid_t ruid, \ 3501.1Sbjh21 uid_t euid); } 3511.1Sbjh21204 NOARGS setregid32 { int sys_setregid(gid_t rgid, \ 3521.1Sbjh21 gid_t egid); } 3531.1Sbjh21205 NOARGS getgroups32 { int sys_getgroups(u_int gidsetsize, \ 3541.1Sbjh21 gid_t *gidset); } 3551.1Sbjh21206 NOARGS setgroups32 { int sys_setgroups(u_int gidsetsize, \ 3561.1Sbjh21 gid_t *gidset); } 3571.1Sbjh21207 NOARGS fchown32 { int sys___posix_fchown(int fd, uid_t uid, \ 3581.1Sbjh21 gid_t gid); } 3591.1Sbjh21208 NOARGS setresuid32 { int linux_sys_setresuid(uid_t ruid, \ 3601.1Sbjh21 uid_t euid, uid_t suid); } 3611.1Sbjh21209 NOARGS getresuid32 { int linux_sys_getresuid(uid_t *ruid, \ 3621.1Sbjh21 uid_t *euid, uid_t *suid); } 3631.1Sbjh21210 NOARGS setresgid32 { int linux_sys_setresgid(gid_t rgid, \ 3641.1Sbjh21 gid_t egid, gid_t sgid); } 3651.1Sbjh21211 NOARGS getresgid32 { int linux_sys_getresgid(gid_t *rgid, \ 3661.1Sbjh21 gid_t *egid, gid_t *sgid); } 3671.1Sbjh21212 STD chown32 { int linux_sys_chown(const char *path, \ 3681.1Sbjh21 uid_t uid, gid_t gid); } 3691.1Sbjh21213 NOARGS setuid32 { int sys_setuid(uid_t uid); } 3701.1Sbjh21214 NOARGS setgid32 { int sys_setgid(gid_t gid); } 3711.1Sbjh21215 NOARGS setfsuid32 { int linux_sys_setfsuid(uid_t uid); } 3721.1Sbjh21216 NOARGS getfsuid32 { int linux_sys_getfsuid(void); } 3731.10Schristos217 STD { int linux_sys_getdents64(int fd, \ 3741.10Schristos struct linux_dirent64 *dent, unsigned int count); } 3751.1Sbjh21218 UNIMPL pivot_root 3761.16Sjdolecek219 NOARGS { int sys_mincore(void *addr, size_t len, char *vec); } 3771.16Sjdolecek220 NOARGS { int sys_madvise(void *addr, size_t len, int behav); } 3781.11Sjdolecek221 STD { int linux_sys_fcntl64(int fd, int cmd, void *arg); } 3791.17Sjdolecek222 UNIMPL /* for tux */ 3801.17Sjdolecek223 UNIMPL /* unused */ 3811.17Sjdolecek224 UNIMPL gettid 3821.17Sjdolecek225 UNIMPL readahead 3831.21Sfvdl226 STD { int linux_sys_setxattr(char *path, char *name, \ 3841.21Sfvdl void *value, size_t size, int flags); } 3851.21Sfvdl227 STD { int linux_sys_lsetxattr(char *path, char *name, \ 3861.21Sfvdl void *value, size_t size, int flags); } 3871.21Sfvdl228 STD { int linux_sys_fsetxattr(int fd, char *name, \ 3881.21Sfvdl void *value, size_t size, int flags); } 3891.21Sfvdl229 STD { ssize_t linux_sys_getxattr(char *path, char *name, \ 3901.21Sfvdl void *value, size_t size); } 3911.21Sfvdl230 STD { ssize_t linux_sys_lgetxattr(char *path, char *name, \ 3921.21Sfvdl void *value, size_t size); } 3931.21Sfvdl231 STD { ssize_t linux_sys_fgetxattr(int fd, char *name, \ 3941.21Sfvdl void *value, size_t size); } 3951.21Sfvdl232 STD { ssize_t linux_sys_listxattr(char *path, char *list, \ 3961.21Sfvdl size_t size); } 3971.21Sfvdl233 STD { ssize_t linux_sys_llistxattr(char *path, char *list, \ 3981.21Sfvdl size_t size); } 3991.21Sfvdl234 STD { ssize_t linux_sys_flistxattr(int fd, char *list, \ 4001.21Sfvdl size_t size); } 4011.21Sfvdl235 STD { int linux_sys_removexattr(char *path, char *name); } 4021.21Sfvdl236 STD { int linux_sys_lremovexattr(char *path, char *name); } 4031.21Sfvdl237 STD { int linux_sys_fremovexattr(int fd, char *name); } 4041.17Sjdolecek238 UNIMPL tkill 4051.17Sjdolecek239 UNIMPL sendfile64 4061.17Sjdolecek240 UNIMPL futex 4071.17Sjdolecek241 UNIMPL sched_setaffinity 4081.17Sjdolecek242 UNIMPL sched_getaffinity 4091.17Sjdolecek243 UNIMPL io_setup 4101.17Sjdolecek244 UNIMPL io_destroy 4111.17Sjdolecek245 UNIMPL io_getevents 4121.17Sjdolecek246 UNIMPL io_submit 4131.17Sjdolecek247 UNIMPL io_cancel 4141.18Sjdolecek248 STD { int linux_sys_exit_group(int error_code); } 4151.17Sjdolecek249 UNIMPL lookup_dcookie 4161.17Sjdolecek250 UNIMPL epoll_create 4171.17Sjdolecek251 UNIMPL epoll_ctl 4181.17Sjdolecek252 UNIMPL epoll_wait 4191.17Sjdolecek253 UNIMPL remap_file_pages 4201.17Sjdolecek254 UNIMPL /* for set_thread_area */ 4211.17Sjdolecek255 UNIMPL /* for get_thread_area */ 4221.17Sjdolecek256 UNIMPL /* for set_tid_address */ 4231.17Sjdolecek257 UNIMPL timer_create 4241.17Sjdolecek258 UNIMPL timer_settime 4251.17Sjdolecek259 UNIMPL timer_gettime 4261.17Sjdolecek260 UNIMPL timer_getoverrun 4271.17Sjdolecek261 UNIMPL timer_delete 4281.17Sjdolecek262 UNIMPL clock_settime 4291.17Sjdolecek263 UNIMPL clock_gettime 4301.17Sjdolecek264 UNIMPL clock_getres 4311.17Sjdolecek265 UNIMPL clock_nanosleep 4321.19Sjdolecek266 STD { int linux_sys_statfs64(const char *path, \ 4331.19Sjdolecek size_t sz, struct linux_statfs64 *sp); } 4341.19Sjdolecek267 STD { int linux_sys_fstatfs64(int fd, \ 4351.19Sjdolecek size_t sz, struct linux_statfs64 *sp); } 4361.17Sjdolecek268 UNIMPL tgkill 4371.17Sjdolecek269 UNIMPL utimes 4381.17Sjdolecek270 UNIMPL fadvise64_64 4391.17Sjdolecek271 UNIMPL pciconfig_iobase 4401.17Sjdolecek272 UNIMPL pciconfig_read 4411.17Sjdolecek273 UNIMPL pciconfig_write 4421.17Sjdolecek274 UNIMPL 4431.17Sjdolecek275 UNIMPL 4441.17Sjdolecek276 UNIMPL 4451.17Sjdolecek277 UNIMPL 4461.17Sjdolecek278 UNIMPL 4471.17Sjdolecek279 UNIMPL 4481.17Sjdolecek280 UNIMPL 4491.17Sjdolecek281 UNIMPL 4501.17Sjdolecek282 UNIMPL 4511.17Sjdolecek283 UNIMPL 4521.17Sjdolecek284 UNIMPL 4531.17Sjdolecek285 UNIMPL 4541.17Sjdolecek286 UNIMPL 4551.17Sjdolecek287 UNIMPL 4561.17Sjdolecek288 UNIMPL 4571.17Sjdolecek289 UNIMPL 4581.17Sjdolecek290 UNIMPL 4591.17Sjdolecek291 UNIMPL 4601.17Sjdolecek292 UNIMPL 4611.17Sjdolecek293 UNIMPL 4621.17Sjdolecek294 UNIMPL 4631.17Sjdolecek295 UNIMPL 4641.17Sjdolecek296 UNIMPL 4651.17Sjdolecek297 UNIMPL 4661.17Sjdolecek298 UNIMPL 4671.17Sjdolecek299 UNIMPL 4681.17Sjdolecek300 UNIMPL 4691.17Sjdolecek301 UNIMPL 4701.17Sjdolecek302 UNIMPL 4711.17Sjdolecek303 UNIMPL 4721.17Sjdolecek304 UNIMPL 4731.17Sjdolecek305 UNIMPL 4741.17Sjdolecek306 UNIMPL 4751.17Sjdolecek307 UNIMPL 4761.17Sjdolecek308 UNIMPL 4771.17Sjdolecek309 UNIMPL 4781.17Sjdolecek310 UNIMPL 4791.17Sjdolecek311 UNIMPL 4801.17Sjdolecek312 UNIMPL 4811.17Sjdolecek313 UNIMPL 4821.17Sjdolecek314 UNIMPL 4831.17Sjdolecek315 UNIMPL 4841.17Sjdolecek316 UNIMPL 4851.17Sjdolecek317 UNIMPL 4861.17Sjdolecek318 UNIMPL 4871.17Sjdolecek319 UNIMPL 4881.17Sjdolecek320 UNIMPL 4891.17Sjdolecek321 UNIMPL 4901.17Sjdolecek322 UNIMPL 4911.17Sjdolecek323 UNIMPL 4921.17Sjdolecek324 UNIMPL 4931.17Sjdolecek325 UNIMPL 4941.17Sjdolecek326 UNIMPL 4951.17Sjdolecek327 UNIMPL 4961.17Sjdolecek328 UNIMPL 4971.17Sjdolecek329 UNIMPL 4981.17Sjdolecek330 UNIMPL 4991.17Sjdolecek331 UNIMPL 5001.17Sjdolecek332 UNIMPL 5011.17Sjdolecek333 UNIMPL 5021.17Sjdolecek334 UNIMPL 5031.17Sjdolecek335 UNIMPL 5041.17Sjdolecek336 UNIMPL 5051.17Sjdolecek337 UNIMPL 5061.17Sjdolecek338 UNIMPL 5071.17Sjdolecek339 UNIMPL 5081.17Sjdolecek340 UNIMPL 5091.17Sjdolecek341 UNIMPL 5101.17Sjdolecek342 UNIMPL 5111.17Sjdolecek343 UNIMPL 5121.17Sjdolecek344 UNIMPL 5131.17Sjdolecek345 UNIMPL 5141.17Sjdolecek346 UNIMPL 5151.17Sjdolecek347 UNIMPL 5161.17Sjdolecek348 UNIMPL 5171.17Sjdolecek349 UNIMPL 5181.17Sjdolecek350 UNIMPL 5191.17Sjdolecek351 UNIMPL 5201.17Sjdolecek352 UNIMPL 5211.17Sjdolecek353 UNIMPL 5221.17Sjdolecek354 UNIMPL 5231.17Sjdolecek355 UNIMPL 5241.17Sjdolecek356 UNIMPL 5251.17Sjdolecek357 UNIMPL 5261.17Sjdolecek358 UNIMPL 5271.17Sjdolecek359 UNIMPL 5281.17Sjdolecek360 UNIMPL 5291.17Sjdolecek361 UNIMPL 5301.17Sjdolecek362 UNIMPL 5311.17Sjdolecek363 UNIMPL 5321.17Sjdolecek364 UNIMPL 5331.17Sjdolecek365 UNIMPL 5341.17Sjdolecek366 UNIMPL 5351.17Sjdolecek367 UNIMPL 5361.17Sjdolecek368 UNIMPL 5371.17Sjdolecek369 UNIMPL 5381.17Sjdolecek370 UNIMPL 5391.17Sjdolecek371 UNIMPL 5401.17Sjdolecek372 UNIMPL 5411.17Sjdolecek373 UNIMPL 5421.17Sjdolecek374 UNIMPL 5431.17Sjdolecek375 UNIMPL 5441.17Sjdolecek376 UNIMPL 5451.17Sjdolecek377 UNIMPL 5461.17Sjdolecek378 UNIMPL 5471.17Sjdolecek379 UNIMPL 5481.17Sjdolecek380 UNIMPL 5491.17Sjdolecek381 UNIMPL 5501.17Sjdolecek382 UNIMPL 5511.17Sjdolecek383 UNIMPL 5521.3Sbjh21 5531.3Sbjh21; ARMLinux actually has two ranges of syscalls. Normal syscalls use 5541.3Sbjh21; SWI numbers starting at 0x900000 (__NR_SYSCALL_BASE). Special 5551.17Sjdolecek; ARM-specific syscalls use SWI numbers starting at 0x9f0000 5561.3Sbjh21; (__ARM_NR_BASE). linux_syscall() (in arch/arm/arm/linux_syscall.c) 5571.17Sjdolecek; remaps these down to 0x900180 so that we can use one linux_sysent 5581.3Sbjh21; array for the whole lot. 5591.3Sbjh21 5601.17Sjdolecek384 UNIMPL /* base */ 5611.17Sjdolecek385 STD { int linux_sys_breakpoint(void); } 5621.17Sjdolecek386 STD { int linux_sys_cacheflush(uintptr_t from, \ 5631.3Sbjh21 intptr_t to); } 5641.17Sjdolecek387 UNIMPL usr26 5651.17Sjdolecek388 UNIMPL usr32 566