syscalls.master revision 1.66
11.66Snjoly $NetBSD: syscalls.master,v 1.66 2014/11/22 13:18:45 njoly Exp $ 21.1Smanu 31.1Smanu; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 41.1Smanu 51.1Smanu; Derived from NetBSD's sys/compat/linux/arch/i386/syscalls.master 61.21Sperry; sys/compat/linux/arch/m68k/syscalls.master 71.21Sperry; and from Linux's arch/ppc/kernel/misc.S 81.1Smanu; 91.1Smanu; We have problems for a few syscalls, specially: 101.1Smanu; 142 ppc_select -> sys_new_select -> sys_select (Conflicts with 82 ???). 111.1Smanu; 121.1Smanu; Expect problems with the following, which have an architecture dependent 131.1Smanu; implementation in Linux/powerpc: 141.1Smanu; 29 pause 151.1Smanu; 42 pipe tested. no problem. 161.1Smanu; 59 olduname 171.1Smanu; 101 ioperm 181.1Smanu; 109 uname 191.1Smanu; 117 ipc 201.21Sperry; 211.1Smanu; Most of syscalls after 182 that were introduced in Linux-2.4 are UNIMPL. 221.1Smanu; 231.21Sperry; The following are UNIMPL here. The Linux kernel implements them but just logs 241.21Sperry; a kernel error and returns -ENOSYS. 251.1Smanu; 110 iopl 261.1Smanu; 113 vm86 271.1Smanu; 123 modify_ldt 281.1Smanu; 198 sys_pciconfig_read 291.1Smanu; 199 sys_pciconfig_write 301.1Smanu; 200 sys_pciconfig_iobase 311.1Smanu; 321.1Smanu; Emmanuel Dreyfus <p99dreyf@criens.u-psud.fr> 331.1Smanu 341.1Smanu; NetBSD powerpc COMPAT_LINUX system call name/number "master" file. 351.1Smanu; (See syscalls.conf to see what it is processed into.) 361.1Smanu; 371.1Smanu; Fields: number type [type-dependent ...] 381.1Smanu; number system call number, must be in order 391.1Smanu; type one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of 401.1Smanu; the compatibility options defined in syscalls.conf. 411.1Smanu; 421.1Smanu; types: 431.1Smanu; STD always included 441.1Smanu; OBSOL obsolete, not included in system 451.1Smanu; UNIMPL unimplemented, not included in system 461.1Smanu; NODEF included, but don't define the syscall number 471.1Smanu; NOARGS included, but don't define the syscall args structure 481.1Smanu; INDIR included, but don't define the syscall args structure 491.1Smanu; and allow it to be "really" varargs. 501.1Smanu; 511.1Smanu; The compat options are defined in the syscalls.conf file, and the 521.1Smanu; compat option name is prefixed to the syscall name. Other than 531.1Smanu; that, they're like NODEF (for 'compat' options), or STD (for 541.1Smanu; 'libcompat' options). 551.1Smanu; 561.1Smanu; The type-dependent arguments are as follows: 571.1Smanu; For STD, NODEF, NOARGS, and compat syscalls: 581.1Smanu; { pseudo-proto } [alias] 591.1Smanu; For other syscalls: 601.1Smanu; [comment] 611.1Smanu; 621.1Smanu; #ifdef's, etc. may be included, and are copied to the output files. 631.1Smanu; #include's are copied to the syscall names and switch definition files only. 641.1Smanu 651.1Smanu#include <sys/param.h> 661.1Smanu#include <sys/poll.h> 671.1Smanu#include <sys/systm.h> 681.1Smanu#include <sys/signal.h> 691.1Smanu#include <sys/mount.h> 701.1Smanu#include <sys/syscallargs.h> 711.1Smanu 721.1Smanu#include <compat/linux/common/linux_types.h> 731.1Smanu#include <compat/linux/common/linux_signal.h> 741.1Smanu#include <compat/linux/common/linux_siginfo.h> 751.1Smanu#include <compat/linux/common/linux_machdep.h> 761.1Smanu#include <compat/linux/common/linux_mmap.h> 771.1Smanu 781.1Smanu#include <compat/linux/linux_syscallargs.h> 791.1Smanu 801.25Schristos%% 811.25Schristos 821.40Spooka0 NOARGS { int|linux_sys||nosys(void); } syscall 831.45Schs1 STD { int|linux_sys||exit(int rval); } 841.40Spooka2 NOARGS { int|sys||fork(void); } 851.59Snjoly3 NOARGS { ssize_t|sys||read(int fd, void *buf, size_t nbyte); } 861.59Snjoly4 NOARGS { ssize_t|sys||write(int fd, const void *buf, \ 871.59Snjoly size_t nbyte); } 881.40Spooka5 STD { int|linux_sys||open(const char *path, int flags, \ 891.57Snjoly linux_umode_t mode); } 901.40Spooka6 NOARGS { int|sys||close(int fd); } 911.40Spooka7 STD { int|linux_sys||waitpid(int pid, int *status, \ 921.1Smanu int options);} 931.57Snjoly8 STD { int|linux_sys||creat(const char *path, linux_umode_t mode); } 941.40Spooka9 NOARGS { int|sys||link(const char *path, const char *link); } 951.40Spooka10 STD { int|linux_sys||unlink(const char *path); } 961.40Spooka11 NOARGS { int|sys||execve(const char *path, char **argp, \ 971.1Smanu char **envp); } 981.40Spooka12 NOARGS { int|sys||chdir(const char *path); } 991.40Spooka13 STD { int|linux_sys||time(linux_time_t *t); } 1001.57Snjoly14 STD { int|linux_sys||mknod(const char *path, linux_umode_t mode, \ 1011.61Snjoly unsigned dev); } 1021.40Spooka15 NOARGS { int|sys||chmod(const char *path, int mode); } 1031.40Spooka16 NOARGS { int|sys||__posix_lchown(const char *path, int uid, \ 1041.1Smanu int gid); } 1051.1Smanu17 OBSOL break 1061.1Smanu18 OBSOL ostat 1071.40Spooka19 NOARGS { long|compat_43_sys||lseek(int fd, long offset, \ 1081.1Smanu int whence); } 1091.40Spooka20 NOARGS { pid_t|sys||getpid(void); } 1101.1Smanu21 UNIMPL mount 1111.1Smanu22 OBSOL umount 1121.40Spooka23 NOARGS { int|sys||setuid(uid_t uid); } 1131.40Spooka24 NOARGS { uid_t|sys||getuid(void); } 1141.40Spooka25 STD { int|linux_sys||stime(linux_time_t *t); } 1151.40Spooka26 STD { int|linux_sys||ptrace(int request, int pid, \ 1161.54Spooka long addr, long data); } 1171.40Spooka27 STD { int|linux_sys||alarm(unsigned int secs); } 1181.1Smanu28 OBSOL ofstat 1191.40Spooka29 STD { int|linux_sys||pause(void); } 1201.40Spooka30 STD { int|linux_sys||utime(const char *path, \ 1211.1Smanu struct linux_utimbuf *times); } 1221.1Smanu31 OBSOL stty 1231.1Smanu32 OBSOL gtty 1241.40Spooka33 NOARGS { int|sys||access(const char *path, int flags); } 1251.40Spooka34 STD { int|linux_sys||nice(int incr); } 1261.1Smanu35 OBSOL ftime 1271.40Spooka36 NOARGS { int|sys||sync(void); } 1281.40Spooka37 STD { int|linux_sys||kill(int pid, int signum); } 1291.40Spooka38 NOARGS { int|sys||__posix_rename(const char *from, \ 1301.1Smanu const char *to); } 1311.57Snjoly39 NOARGS { int|sys||mkdir(const char *path, linux_umode_t mode); } 1321.40Spooka40 NOARGS { int|sys||rmdir(const char *path); } 1331.56Snjoly41 NOARGS { int|sys||dup(int fd); } 1341.40Spooka42 STD { int|linux_sys||pipe(int *pfds); } 1351.40Spooka43 STD { int|linux_sys||times(struct times *tms); } 1361.1Smanu44 OBSOL prof 1371.40Spooka45 STD { int|linux_sys||brk(char *nsize); } 1381.40Spooka46 NOARGS { int|sys||setgid(gid_t gid); } 1391.40Spooka47 NOARGS { gid_t|sys||getgid(void); } 1401.40Spooka48 STD { int|linux_sys||signal(int signum, \ 1411.1Smanu linux_handler_t handler); } 1421.40Spooka49 NOARGS { uid_t|sys||geteuid(void); } 1431.40Spooka50 NOARGS { gid_t|sys||getegid(void); } 1441.40Spooka51 NOARGS { int|sys||acct(char *path); } 1451.1Smanu52 UNIMPL umount 1461.1Smanu53 OBSOL lock 1471.40Spooka54 STD { int|linux_sys||ioctl(int fd, u_long com, \ 1481.31Schristos void *data); } 1491.40Spooka55 STD { int|linux_sys||fcntl(int fd, int cmd, void *arg); } 1501.1Smanu56 OBSOL mpx 1511.40Spooka57 NOARGS { int|sys||setpgid(int pid, int pgid); } 1521.1Smanu58 OBSOL ulimit 1531.40Spooka59 STD { int|linux_sys||olduname(struct linux_old_utsname \ 1541.7Smanu *up); } 1551.40Spooka60 NOARGS { int|sys||umask(int newmask); } 1561.40Spooka61 NOARGS { int|sys||chroot(char *path); } 1571.1Smanu62 UNIMPL ustat 1581.56Snjoly63 NOARGS { int|sys||dup2(int from, int to); } 1591.40Spooka64 NOARGS { pid_t|sys||getppid(void); } 1601.40Spooka65 NOARGS { int|sys||getpgrp(void); } 1611.40Spooka66 NOARGS { int|sys||setsid(void); } 1621.40Spooka67 STD { int|linux_sys||sigaction(int signum, \ 1631.1Smanu const struct linux_old_sigaction *nsa, \ 1641.1Smanu struct linux_old_sigaction *osa); } 1651.40Spooka68 STD { int|linux_sys||siggetmask(void); } 1661.40Spooka69 STD { int|linux_sys||sigsetmask(linux_old_sigset_t mask); } 1671.40Spooka70 NOARGS { int|sys||setreuid(uid_t ruid, uid_t euid); } 1681.40Spooka71 NOARGS { int|sys||setregid(gid_t rgid, gid_t egid); } 1691.40Spooka72 STD { int|linux_sys||sigsuspend(void *restart, \ 1701.1Smanu int oldmask, int mask); } 1711.40Spooka73 STD { int|linux_sys||sigpending(linux_old_sigset_t *set); } 1721.40Spooka74 NOARGS { int|compat_43_sys||sethostname(char *hostname, \ 1731.1Smanu u_int len);} 1741.40Spooka75 STD { int|linux_sys||setrlimit(u_int which, \ 1751.1Smanu struct orlimit *rlp); } 1761.40Spooka76 STD { int|linux_sys||getrlimit(u_int which, \ 1771.1Smanu struct orlimit *rlp); } 1781.41Snjoly77 NOARGS { int|compat_50_sys||getrusage(int who, \ 1791.41Snjoly struct rusage50 *rusage); } 1801.41Snjoly78 STD { int|linux_sys||gettimeofday(struct timeval50 *tp, \ 1811.1Smanu struct timezone *tzp); } 1821.41Snjoly79 STD { int|linux_sys||settimeofday(struct timeval50 *tp, \ 1831.1Smanu struct timezone *tzp); } 1841.63Snjoly80 NOARGS { int|sys||getgroups(int gidsetsize, gid_t *gidset); } 1851.63Snjoly81 NOARGS { int|sys||setgroups(int gidsetsize, gid_t *gidset); } 1861.40Spooka82 STD { int|linux_sys||select(int nfds, fd_set* readfds, \ 1871.1Smanu fd_set* writefds, fd_set* exceptfds, \ 1881.41Snjoly struct timeval50 *timeout); } 1891.40Spooka83 NOARGS { int|sys||symlink(const char *path, const char *to); } 1901.40Spooka84 NOARGS { int|compat_43_sys||lstat(const char *path, \ 1911.1Smanu struct stat43 *up); } oolstat 1921.40Spooka85 NOARGS { int|sys||readlink(const char *name, char *buf, \ 1931.1Smanu int count); } 1941.24Sjoerg#ifdef EXEC_AOUT 1951.40Spooka86 STD { int|linux_sys||uselib(const char *path); } 1961.24Sjoerg#else 1971.24Sjoerg86 UNIMPL sys_uselib 1981.24Sjoerg#endif 1991.40Spooka87 STD { int|linux_sys||swapon(char *name); } 2001.40Spooka88 STD { int|linux_sys||reboot(int magic1, int magic2, \ 2011.1Smanu int cmd, void *arg); } 2021.40Spooka89 STD { int|linux_sys||readdir(int fd, void *dent, \ 2031.1Smanu unsigned int count); } 2041.40Spooka90 NOARGS { int|linux_sys||mmap(unsigned long addr, size_t len, \ 2051.7Smanu int prot, int flags, int fd, linux_off_t offset); } 2061.65Snjoly91 NOARGS { int|sys||munmap(void *addr, size_t len); } 2071.40Spooka92 NOARGS { int|compat_43_sys||truncate(const char *path, \ 2081.1Smanu long length); } 2091.40Spooka93 NOARGS { int|compat_43_sys||ftruncate(int fd, long length); } 2101.57Snjoly94 NOARGS { int|sys||fchmod(int fd, linux_umode_t mode); } 2111.40Spooka95 NOARGS { int|sys||__posix_fchown(int fd, int uid, int gid); } 2121.40Spooka96 STD { int|linux_sys||getpriority(int which, int who); } 2131.40Spooka97 NOARGS { int|sys||setpriority(int which, int who, int prio); } 2141.40Spooka98 NOARGS { int|sys||profil(void *samples, u_int size, \ 2151.1Smanu u_int offset, u_int scale); } 2161.40Spooka99 STD { int|linux_sys||statfs(const char *path, \ 2171.1Smanu struct linux_statfs *sp); } 2181.40Spooka100 STD { int|linux_sys||fstatfs(int fd, \ 2191.1Smanu struct linux_statfs *sp); } 2201.45Schs101 UNIMPL ioperm 2211.40Spooka102 STD { int|linux_sys||socketcall(int what, void *args); } 2221.1Smanu103 UNIMPL syslog 2231.49Schristos104 NOARGS { int|compat_50_sys||setitimer(int which, \ 2241.41Snjoly struct itimerval50 *itv, \ 2251.41Snjoly struct itimerval50 *oitv); } 2261.49Schristos105 NOARGS { int|compat_50_sys||getitimer(int which, \ 2271.41Snjoly struct itimerval50 *itv); } 2281.40Spooka106 STD { int|linux_sys||stat(const char *path, \ 2291.1Smanu struct linux_stat *sp); } 2301.40Spooka107 STD { int|linux_sys||lstat(const char *path, \ 2311.1Smanu struct linux_stat *sp); } 2321.40Spooka108 STD { int|linux_sys||fstat(int fd, struct linux_stat *sp); } 2331.40Spooka109 STD { int|linux_sys||uname(struct linux_utsname *up); } 2341.21Sperry110 UNIMPL iopl 2351.1Smanu111 UNIMPL vhangup 2361.1Smanu112 UNIMPL idle 2371.21Sperry113 UNIMPL vm86old 2381.40Spooka114 STD { int|linux_sys||wait4(int pid, int *status, \ 2391.42Snjoly int options, struct rusage50 *rusage); } 2401.40Spooka115 STD { int|linux_sys||swapoff(const char *path); } 2411.40Spooka116 STD { int|linux_sys||sysinfo(struct linux_sysinfo *arg); } 2421.40Spooka117 STD { int|linux_sys||ipc(int what, int a1, int a2, int a3, \ 2431.31Schristos void *ptr); } 2441.40Spooka118 NOARGS { int|sys||fsync(int fd); } 2451.40Spooka119 STD { int|linux_sys||sigreturn(struct linux_sigcontext *scp); } 2461.45Schs120 STD { int|linux_sys||clone(int flags, void *stack, \ 2471.45Schs void *parent_tidptr, void *tls, void *child_tidptr); } 2481.40Spooka121 STD { int|linux_sys||setdomainname(char *domainname, \ 2491.7Smanu int len); } 2501.40Spooka122 STD { int|linux_sys||new_uname(struct linux_utsname *up); } 2511.21Sperry123 UNIMPL modify_ldt 2521.1Smanu124 UNIMPL adjtimex 2531.40Spooka125 STD { int|linux_sys||mprotect(const void *start, \ 2541.10Schristos unsigned long len, int prot); } 2551.40Spooka126 STD { int|linux_sys||sigprocmask(int how, \ 2561.1Smanu const linux_old_sigset_t *set, \ 2571.1Smanu linux_old_sigset_t *oset); } 2581.1Smanu127 UNIMPL create_module 2591.1Smanu128 UNIMPL init_module 2601.1Smanu129 UNIMPL delete_module 2611.1Smanu130 UNIMPL get_kernel_syms 2621.1Smanu131 UNIMPL quotactl 2631.40Spooka132 NOARGS { pid_t|sys||getpgid(pid_t pid); } 2641.40Spooka133 NOARGS { int|sys||fchdir(int fd); } 2651.1Smanu134 UNIMPL bdflush 2661.1Smanu135 UNIMPL sysfs 2671.44Snjoly136 STD { int|linux_sys||personality(unsigned long per); } 2681.1Smanu137 UNIMPL afs_syscall 2691.40Spooka138 STD { int|linux_sys||setfsuid(uid_t uid); } 2701.40Spooka139 STD { int|linux_sys||setfsgid(gid_t gid); } 2711.40Spooka140 STD { int|linux_sys||llseek(int fd, u_int32_t ohigh, \ 2721.31Schristos u_int32_t olow, void *res, int whence); } 2731.40Spooka141 STD { int|linux_sys||getdents(int fd, \ 2741.1Smanu struct linux_dirent *dent, unsigned int count); } 2751.40Spooka142 STD { int|linux_sys||new_select(int nfds, fd_set *readfds, \ 2761.1Smanu fd_set *writefds, fd_set *exceptfds, \ 2771.41Snjoly struct timeval50 *timeout); } 2781.40Spooka143 NOARGS { int|sys||flock(int fd, int how); } 2791.40Spooka144 NOARGS { int|sys|13|msync(void *addr, size_t len, int flags); } 2801.59Snjoly145 NOARGS { ssize_t|sys||readv(int fd, \ 2811.59Snjoly const struct iovec *iovp, int iovcnt); } 2821.59Snjoly146 NOARGS { ssize_t|sys||writev(int fd, \ 2831.59Snjoly const struct iovec *iovp, int iovcnt); } 2841.40Spooka147 NOARGS { pid_t|sys||getsid(pid_t pid); } 2851.40Spooka148 STD { int|linux_sys||fdatasync(int fd); } 2861.40Spooka149 STD { int|linux_sys||__sysctl(struct linux___sysctl *lsp); } 2871.40Spooka150 NOARGS { int|sys||mlock(void *addr, size_t len); } 2881.40Spooka151 NOARGS { int|sys||munlock(void *addr, size_t len); } 2891.40Spooka152 NOARGS { int|sys||mlockall(int flags); } 2901.40Spooka153 NOARGS { int|sys||munlockall(void); } 2911.40Spooka154 STD { int|linux_sys||sched_setparam(pid_t pid, \ 2921.1Smanu const struct linux_sched_param *sp); } 2931.40Spooka155 STD { int|linux_sys||sched_getparam(pid_t pid, \ 2941.1Smanu struct linux_sched_param *sp); } 2951.40Spooka156 STD { int|linux_sys||sched_setscheduler(pid_t pid, \ 2961.1Smanu int policy, const struct linux_sched_param *sp); } 2971.40Spooka157 STD { int|linux_sys||sched_getscheduler(pid_t pid); } 2981.40Spooka158 STD { int|linux_sys||sched_yield(void); } 2991.40Spooka159 STD { int|linux_sys||sched_get_priority_max(int policy); } 3001.40Spooka160 STD { int|linux_sys||sched_get_priority_min(int policy); } 3011.1Smanu161 UNIMPL sched_rr_get_interval 3021.40Spooka162 STD { int|linux_sys||nanosleep( \ 3031.38Snjoly const struct linux_timespec *rqtp, \ 3041.38Snjoly struct linux_timespec *rmtp); } 3051.40Spooka163 STD { void *|linux_sys||mremap(void *old_address, \ 3061.1Smanu size_t old_size, size_t new_size, u_long flags); } 3071.40Spooka164 STD { int|linux_sys||setresuid(uid_t ruid, uid_t euid, \ 3081.1Smanu uid_t suid); } 3091.40Spooka165 STD { int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \ 3101.1Smanu uid_t *suid); } 3111.1Smanu166 UNIMPL query_module 3121.40Spooka167 NOARGS { int|sys||poll(struct pollfd *fds, u_int nfds, \ 3131.1Smanu int timeout); } 3141.1Smanu168 UNIMPL nfsservctl 3151.40Spooka169 STD { int|linux_sys||setresgid(gid_t rgid, gid_t egid, \ 3161.1Smanu gid_t sgid); } 3171.40Spooka170 STD { int|linux_sys||getresgid(gid_t *rgid, gid_t *egid, \ 3181.1Smanu gid_t *sgid); } 3191.1Smanu171 UNIMPL prctl 3201.40Spooka172 STD { int|linux_sys||rt_sigreturn( \ 3211.7Smanu struct linux_rt_sigframe *sfp); } 3221.40Spooka173 STD { int|linux_sys||rt_sigaction(int signum, \ 3231.1Smanu const struct linux_sigaction *nsa, \ 3241.1Smanu struct linux_sigaction *osa, \ 3251.1Smanu size_t sigsetsize); } 3261.40Spooka174 STD { int|linux_sys||rt_sigprocmask(int how, \ 3271.1Smanu const linux_sigset_t *set, \ 3281.1Smanu linux_sigset_t *oset, \ 3291.1Smanu size_t sigsetsize); } 3301.40Spooka175 STD { int|linux_sys||rt_sigpending( \ 3311.1Smanu linux_sigset_t *set, \ 3321.1Smanu size_t sigsetsize); } 3331.50Schristos176 STD { int|linux_sys||rt_sigtimedwait( \ 3341.50Schristos const linux_sigset_t *set, \ 3351.50Schristos linux_siginfo_t *info, \ 3361.50Schristos const struct linux_timespec *timeout); } 3371.40Spooka177 STD { int|linux_sys||rt_queueinfo(int pid, int signum, \ 3381.43Snjoly linux_siginfo_t *uinfo); } 3391.40Spooka178 STD { int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \ 3401.1Smanu size_t sigsetsize); } 3411.40Spooka179 STD { int|linux_sys||pread(int fd, char *buf, \ 3421.60Snjoly size_t nbyte, off_t offset); } 3431.40Spooka180 STD { int|linux_sys||pwrite(int fd, char *buf, \ 3441.60Snjoly size_t nbyte, off_t offset); } 3451.40Spooka181 NOARGS { int|sys||__posix_chown(const char *path, \ 3461.1Smanu int uid, int gid); } 3471.40Spooka182 NOARGS { int|sys||__getcwd(char *bufp, size_t length); } 3481.1Smanu183 UNIMPL capget 3491.1Smanu184 UNIMPL capset 3501.40Spooka185 STD { int|linux_sys||sigaltstack( \ 3511.1Smanu const struct linux_sigaltstack *ss, \ 3521.1Smanu struct linux_sigaltstack *oss); } 3531.1Smanu186 UNIMPL sendfile 3541.1Smanu187 UNIMPL getpmsg 3551.1Smanu188 UNIMPL putpmsg 3561.40Spooka189 NOARGS { int|sys|14|vfork(void); } 3571.40Spooka190 STD { int|linux_sys||ugetrlimit(int which, \ 3581.8Schristos struct rlimit *rlp); } 3591.1Smanu191 UNIMPL /* unused */ 3601.33Sdsl#define linux_sys_mmap2_args linux_sys_mmap_args 3611.40Spooka192 NOARGS { linux_off_t|linux_sys||mmap2(unsigned long addr, \ 3621.15Schristos size_t len, int prot, int flags, int fd, \ 3631.15Schristos linux_off_t offset); } 3641.40Spooka193 STD { int|linux_sys||truncate64(const char *path, \ 3651.13Sjdolecek off_t length); } 3661.40Spooka194 STD { int|linux_sys||ftruncate64(unsigned int fd, \ 3671.13Sjdolecek off_t length); } 3681.40Spooka195 STD { int|linux_sys||stat64(const char *path, \ 3691.12Sjdolecek struct linux_stat64 *sp); } 3701.40Spooka196 STD { int|linux_sys||lstat64(const char *path, \ 3711.12Sjdolecek struct linux_stat64 *sp); } 3721.40Spooka197 STD { int|linux_sys||fstat64(int fd, \ 3731.12Sjdolecek struct linux_stat64 *sp); } 3741.21Sperry198 UNIMPL sys_pciconfig_read 3751.1Smanu199 UNIMPL sys_pciconfig_write 3761.1Smanu200 UNIMPL sys_pciconfig_iobase 3771.1Smanu201 UNIMPL /* Unused (MacOnLinux project) */ 3781.40Spooka202 STD { int|linux_sys||getdents64(int fd, \ 3791.11Schristos struct linux_dirent64 *dent, unsigned int count); } 3801.4Sjdolecek203 UNIMPL pivot_root 3811.40Spooka204 STD { int|linux_sys||fcntl64(int fd, int cmd, void *arg); } 3821.40Spooka205 NOARGS { int|sys||mincore(void *addr, size_t len, char *vec); } 3831.40Spooka206 NOARGS { int|sys||madvise(void *addr, size_t len, int behav); } 3841.45Schs207 NOARGS { pid_t|linux_sys||gettid(void); } 3851.45Schs208 STD { int|linux_sys||tkill(int tid, int sig); } 3861.40Spooka209 STD { int|linux_sys||setxattr(char *path, char *name, \ 3871.22Sfvdl void *value, size_t size, int flags); } 3881.40Spooka210 STD { int|linux_sys||lsetxattr(char *path, char *name, \ 3891.22Sfvdl void *value, size_t size, int flags); } 3901.40Spooka211 STD { int|linux_sys||fsetxattr(int fd, char *name, \ 3911.22Sfvdl void *value, size_t size, int flags); } 3921.40Spooka212 STD { ssize_t|linux_sys||getxattr(char *path, char *name, \ 3931.22Sfvdl void *value, size_t size); } 3941.40Spooka213 STD { ssize_t|linux_sys||lgetxattr(char *path, char *name, \ 3951.22Sfvdl void *value, size_t size); } 3961.40Spooka214 STD { ssize_t|linux_sys||fgetxattr(int fd, char *name, \ 3971.22Sfvdl void *value, size_t size); } 3981.40Spooka215 STD { ssize_t|linux_sys||listxattr(char *path, char *list, \ 3991.22Sfvdl size_t size); } 4001.40Spooka216 STD { ssize_t|linux_sys||llistxattr(char *path, char *list, \ 4011.22Sfvdl size_t size); } 4021.40Spooka217 STD { ssize_t|linux_sys||flistxattr(int fd, char *list, \ 4031.22Sfvdl size_t size); } 4041.40Spooka218 STD { int|linux_sys||removexattr(char *path, char *name); } 4051.40Spooka219 STD { int|linux_sys||lremovexattr(char *path, char *name); } 4061.40Spooka220 STD { int|linux_sys||fremovexattr(int fd, char *name); } 4071.45Schs221 STD { int|linux_sys||futex(int *uaddr, int op, int val, \ 4081.45Schs const struct linux_timespec *timeout, int *uaddr2, \ 4091.45Schs int val3); } 4101.45Schs222 STD { int|linux_sys||sched_setaffinity(pid_t pid, \ 4111.45Schs unsigned int len, unsigned long *mask); } 4121.45Schs223 STD { int|linux_sys||sched_getaffinity(pid_t pid, \ 4131.45Schs unsigned int len, unsigned long *mask); } 4141.18Sjdolecek224 UNIMPL /* unused */ 4151.18Sjdolecek225 UNIMPL tuxcall 4161.18Sjdolecek226 UNIMPL sendfile64 4171.18Sjdolecek227 UNIMPL io_setup 4181.18Sjdolecek228 UNIMPL io_destroy 4191.18Sjdolecek229 UNIMPL io_getevents 4201.18Sjdolecek230 UNIMPL io_submit 4211.18Sjdolecek231 UNIMPL io_cancel 4221.45Schs232 STD { int|linux_sys||set_tid_address(int *tid); } 4231.62Snjoly233 STD { int|linux_sys||fadvise64(int fd, off_t offset, \ 4241.62Snjoly size_t len, int advice); } 4251.40Spooka234 STD { int|linux_sys||exit_group(int error_code); } 4261.18Sjdolecek235 UNIMPL lookup_dcookie 4271.18Sjdolecek236 UNIMPL epoll_create 4281.18Sjdolecek237 UNIMPL epoll_ctl 4291.18Sjdolecek238 UNIMPL epoll_wait 4301.18Sjdolecek239 UNIMPL remap_file_pages 4311.18Sjdolecek240 UNIMPL timer_create 4321.18Sjdolecek241 UNIMPL timer_settime 4331.18Sjdolecek242 UNIMPL timer_gettime 4341.18Sjdolecek243 UNIMPL timer_getoverrun 4351.18Sjdolecek244 UNIMPL timer_delete 4361.40Spooka245 STD { int|linux_sys||clock_settime(clockid_t which, \ 4371.23Sfvdl struct linux_timespec *tp); } 4381.40Spooka246 STD { int|linux_sys||clock_gettime(clockid_t which, \ 4391.23Sfvdl struct linux_timespec *tp); } 4401.40Spooka247 STD { int|linux_sys||clock_getres(clockid_t which, \ 4411.23Sfvdl struct linux_timespec *tp); } 4421.40Spooka248 STD { int|linux_sys||clock_nanosleep(clockid_t which, \ 4431.23Sfvdl int flags, struct linux_timespec *rqtp, \ 4441.23Sfvdl struct linux_timespec *rmtp); } 4451.18Sjdolecek249 UNIMPL swapcontext 4461.45Schs250 STD { int|linux_sys||tgkill(int tgid, int tid, int sig); } 4471.64Snjoly251 NOARGS { int|compat_50_sys||utimes(const char *path, \ 4481.64Snjoly const struct timeval50 *tptr); } 4491.40Spooka252 STD { int|linux_sys||statfs64(const char *path, \ 4501.20Sjdolecek size_t sz, struct linux_statfs64 *sp); } 4511.40Spooka253 STD { int|linux_sys||fstatfs64(int fd, \ 4521.20Sjdolecek size_t sz, struct linux_statfs64 *sp); } 4531.62Snjoly254 STD { int|linux_sys||fadvise64_64(int fd, off_t offset, \ 4541.62Snjoly off_t len, int advice); } 4551.18Sjdolecek255 UNIMPL rtas 4561.18Sjdolecek256 UNIMPL /* reserved for sys_debug_setcontext */ 4571.18Sjdolecek257 UNIMPL /* reserved for vserver */ 4581.18Sjdolecek258 UNIMPL /* reserved for new sys_remap_file_pages */ 4591.18Sjdolecek259 UNIMPL /* reserved for new sys_mbind */ 4601.18Sjdolecek260 UNIMPL /* reserved for new sys_get_mempolicy */ 4611.18Sjdolecek261 UNIMPL /* reserved for new sys_set_mempolicy */ 4621.18Sjdolecek262 UNIMPL mq_open 4631.18Sjdolecek263 UNIMPL mq_unlink 4641.18Sjdolecek264 UNIMPL mq_timedsend 4651.18Sjdolecek265 UNIMPL mq_timedreceive 4661.18Sjdolecek266 UNIMPL mq_notify 4671.18Sjdolecek267 UNIMPL mq_getsetattr 4681.18Sjdolecek268 UNIMPL kexec_load 4691.45Schs269 UNIMPL add_key 4701.45Schs270 UNIMPL request_key 4711.45Schs271 UNIMPL keyctl 4721.45Schs272 UNIMPL waitid 4731.45Schs273 UNIMPL ioprio_set 4741.45Schs274 UNIMPL ioprio_get 4751.45Schs275 UNIMPL inotify_init 4761.45Schs276 UNIMPL inotify_add_watch 4771.45Schs277 UNIMPL inotify_rm_watch 4781.45Schs278 UNIMPL spu_run 4791.45Schs279 UNIMPL spu_create 4801.45Schs280 UNIMPL pselect6 4811.66Snjoly281 STD { int|linux_sys||ppoll(struct pollfd *fds, u_int nfds, \ 4821.51Spooka struct linux_timespec *timeout, \ 4831.51Spooka linux_sigset_t *sigset); } 4841.45Schs282 UNIMPL unshare 4851.45Schs283 UNIMPL splice 4861.45Schs284 UNIMPL tee 4871.45Schs285 UNIMPL vmsplice 4881.58Snjoly286 STD { int|linux_sys||openat(int fd, const char *path, \ 4891.58Snjoly int flags, ... linux_umode_t mode); } 4901.58Snjoly287 NOARGS { int|sys||mkdirat(int fd, const char *path, \ 4911.58Snjoly linux_umode_t mode); } 4921.58Snjoly288 STD { int|linux_sys||mknodat(int fd, const char *path, \ 4931.58Snjoly linux_umode_t mode, unsigned dev); } 4941.58Snjoly289 STD { int|linux_sys||fchownat(int fd, const char *path, \ 4951.58Snjoly uid_t owner, gid_t group, int flag); } 4961.45Schs290 UNIMPL futimesat 4971.58Snjoly291 STD { int|linux_sys||fstatat64(int fd, const char *path, \ 4981.58Snjoly struct linux_stat64 *sp, int flag); } 4991.58Snjoly292 STD { int|linux_sys||unlinkat(int fd, const char *path, \ 5001.58Snjoly int flag); } 5011.58Snjoly293 NOARGS { int|sys||renameat(int fromfd, const char *from, \ 5021.58Snjoly int tofd, const char *to); } 5031.58Snjoly294 STD { int|linux_sys||linkat(int fd1, const char *name1, \ 5041.58Snjoly int fd2, const char *name2, int flags); } 5051.58Snjoly295 NOARGS { int|sys||symlinkat(const char *path1, int fd, \ 5061.58Snjoly const char *path2); } 5071.58Snjoly296 NOARGS { int|sys||readlinkat(int fd, const char *path, \ 5081.58Snjoly char *buf, size_t bufsize); } 5091.58Snjoly297 STD { int|linux_sys||fchmodat(int fd, const char *path, \ 5101.58Snjoly linux_umode_t mode); } 5111.58Snjoly298 STD { int|linux_sys||faccessat(int fd, const char *path, \ 5121.58Snjoly int amode); } 5131.45Schs299 STD { int|linux_sys||set_robust_list( \ 5141.45Schs struct linux_robust_list_head *head, size_t len); } 5151.45Schs300 STD { int|linux_sys||get_robust_list(int pid, \ 5161.45Schs struct linux_robust_list_head **head, \ 5171.45Schs size_t *len); } 5181.45Schs301 UNIMPL move_pages 5191.45Schs302 UNIMPL getcpu 5201.45Schs303 UNIMPL epoll_wait 5211.55Snjoly304 STD { int|linux_sys||utimensat(int fd, const char *path, \ 5221.55Snjoly struct linux_timespec *times, int flag); } 5231.45Schs305 UNIMPL signalfd 5241.45Schs306 UNIMPL timerfd_create 5251.45Schs307 UNIMPL eventfd 5261.45Schs308 UNIMPL sync_file_range2 5271.45Schs309 UNIMPL fallocate 5281.45Schs310 UNIMPL subpage_prot 5291.45Schs311 UNIMPL timerfd_settime 5301.45Schs312 UNIMPL timerfd_gettime 5311.45Schs313 UNIMPL signalfd4 5321.45Schs314 UNIMPL eventfd2 5331.45Schs315 UNIMPL epoll_create1 5341.46She316 STD { int|linux_sys||dup3(int from, int to, int flags); } 5351.46She317 STD { int|linux_sys||pipe2(int *pfds, int flags); } 5361.45Schs318 UNIMPL inotify_init1 5371.45Schs319 UNIMPL perf_event_open 5381.45Schs320 UNIMPL preadv 5391.45Schs321 UNIMPL pwritev 5401.45Schs322 UNIMPL rt_tgsigqueueinfo 541