1 $NetBSD: syscalls.master,v 1.58 2013/12/10 14:54:36 njoly Exp $ 2 3; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 4 5; Derived from NetBSD's sys/compat/linux/arch/i386/syscalls.master 6; sys/compat/linux/arch/m68k/syscalls.master 7; and from Linux's arch/ppc/kernel/misc.S 8; 9; We have problems for a few syscalls, specially: 10; 142 ppc_select -> sys_new_select -> sys_select (Conflicts with 82 ???). 11; 12; Expect problems with the following, which have an architecture dependent 13; implementation in Linux/powerpc: 14; 29 pause 15; 42 pipe tested. no problem. 16; 59 olduname 17; 101 ioperm 18; 109 uname 19; 117 ipc 20; 21; Most of syscalls after 182 that were introduced in Linux-2.4 are UNIMPL. 22; 23; The following are UNIMPL here. The Linux kernel implements them but just logs 24; a kernel error and returns -ENOSYS. 25; 110 iopl 26; 113 vm86 27; 123 modify_ldt 28; 198 sys_pciconfig_read 29; 199 sys_pciconfig_write 30; 200 sys_pciconfig_iobase 31; 32; Emmanuel Dreyfus <p99dreyf@criens.u-psud.fr> 33 34; NetBSD powerpc COMPAT_LINUX system call name/number "master" file. 35; (See syscalls.conf to see what it is processed into.) 36; 37; Fields: number type [type-dependent ...] 38; number system call number, must be in order 39; type one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of 40; the compatibility options defined in syscalls.conf. 41; 42; types: 43; STD always included 44; OBSOL obsolete, not included in system 45; UNIMPL unimplemented, not included in system 46; NODEF included, but don't define the syscall number 47; NOARGS included, but don't define the syscall args structure 48; INDIR included, but don't define the syscall args structure 49; and allow it to be "really" varargs. 50; 51; The compat options are defined in the syscalls.conf file, and the 52; compat option name is prefixed to the syscall name. Other than 53; that, they're like NODEF (for 'compat' options), or STD (for 54; 'libcompat' options). 55; 56; The type-dependent arguments are as follows: 57; For STD, NODEF, NOARGS, and compat syscalls: 58; { pseudo-proto } [alias] 59; For other syscalls: 60; [comment] 61; 62; #ifdef's, etc. may be included, and are copied to the output files. 63; #include's are copied to the syscall names and switch definition files only. 64 65#include <sys/param.h> 66#include <sys/poll.h> 67#include <sys/systm.h> 68#include <sys/signal.h> 69#include <sys/mount.h> 70#include <sys/syscallargs.h> 71 72#include <compat/linux/common/linux_types.h> 73#include <compat/linux/common/linux_signal.h> 74#include <compat/linux/common/linux_siginfo.h> 75#include <compat/linux/common/linux_machdep.h> 76#include <compat/linux/common/linux_mmap.h> 77 78#include <compat/linux/linux_syscallargs.h> 79 80%% 81 820 NOARGS { int|linux_sys||nosys(void); } syscall 831 STD { int|linux_sys||exit(int rval); } 842 NOARGS { int|sys||fork(void); } 853 NOARGS { int|sys||read(int fd, char *buf, u_int nbyte); } 864 NOARGS { int|sys||write(int fd, char *buf, u_int nbyte); } 875 STD { int|linux_sys||open(const char *path, int flags, \ 88 linux_umode_t mode); } 896 NOARGS { int|sys||close(int fd); } 907 STD { int|linux_sys||waitpid(int pid, int *status, \ 91 int options);} 928 STD { int|linux_sys||creat(const char *path, linux_umode_t mode); } 939 NOARGS { int|sys||link(const char *path, const char *link); } 9410 STD { int|linux_sys||unlink(const char *path); } 9511 NOARGS { int|sys||execve(const char *path, char **argp, \ 96 char **envp); } 9712 NOARGS { int|sys||chdir(const char *path); } 9813 STD { int|linux_sys||time(linux_time_t *t); } 9914 STD { int|linux_sys||mknod(const char *path, linux_umode_t mode, \ 100 int dev); } 10115 NOARGS { int|sys||chmod(const char *path, int mode); } 10216 NOARGS { int|sys||__posix_lchown(const char *path, int uid, \ 103 int gid); } 10417 OBSOL break 10518 OBSOL ostat 10619 NOARGS { long|compat_43_sys||lseek(int fd, long offset, \ 107 int whence); } 10820 NOARGS { pid_t|sys||getpid(void); } 10921 UNIMPL mount 11022 OBSOL umount 11123 NOARGS { int|sys||setuid(uid_t uid); } 11224 NOARGS { uid_t|sys||getuid(void); } 11325 STD { int|linux_sys||stime(linux_time_t *t); } 11426 STD { int|linux_sys||ptrace(int request, int pid, \ 115 long addr, long data); } 11627 STD { int|linux_sys||alarm(unsigned int secs); } 11728 OBSOL ofstat 11829 STD { int|linux_sys||pause(void); } 11930 STD { int|linux_sys||utime(const char *path, \ 120 struct linux_utimbuf *times); } 12131 OBSOL stty 12232 OBSOL gtty 12333 NOARGS { int|sys||access(const char *path, int flags); } 12434 STD { int|linux_sys||nice(int incr); } 12535 OBSOL ftime 12636 NOARGS { int|sys||sync(void); } 12737 STD { int|linux_sys||kill(int pid, int signum); } 12838 NOARGS { int|sys||__posix_rename(const char *from, \ 129 const char *to); } 13039 NOARGS { int|sys||mkdir(const char *path, linux_umode_t mode); } 13140 NOARGS { int|sys||rmdir(const char *path); } 13241 NOARGS { int|sys||dup(int fd); } 13342 STD { int|linux_sys||pipe(int *pfds); } 13443 STD { int|linux_sys||times(struct times *tms); } 13544 OBSOL prof 13645 STD { int|linux_sys||brk(char *nsize); } 13746 NOARGS { int|sys||setgid(gid_t gid); } 13847 NOARGS { gid_t|sys||getgid(void); } 13948 STD { int|linux_sys||signal(int signum, \ 140 linux_handler_t handler); } 14149 NOARGS { uid_t|sys||geteuid(void); } 14250 NOARGS { gid_t|sys||getegid(void); } 14351 NOARGS { int|sys||acct(char *path); } 14452 UNIMPL umount 14553 OBSOL lock 14654 STD { int|linux_sys||ioctl(int fd, u_long com, \ 147 void *data); } 14855 STD { int|linux_sys||fcntl(int fd, int cmd, void *arg); } 14956 OBSOL mpx 15057 NOARGS { int|sys||setpgid(int pid, int pgid); } 15158 OBSOL ulimit 15259 STD { int|linux_sys||olduname(struct linux_old_utsname \ 153 *up); } 15460 NOARGS { int|sys||umask(int newmask); } 15561 NOARGS { int|sys||chroot(char *path); } 15662 UNIMPL ustat 15763 NOARGS { int|sys||dup2(int from, int to); } 15864 NOARGS { pid_t|sys||getppid(void); } 15965 NOARGS { int|sys||getpgrp(void); } 16066 NOARGS { int|sys||setsid(void); } 16167 STD { int|linux_sys||sigaction(int signum, \ 162 const struct linux_old_sigaction *nsa, \ 163 struct linux_old_sigaction *osa); } 16468 STD { int|linux_sys||siggetmask(void); } 16569 STD { int|linux_sys||sigsetmask(linux_old_sigset_t mask); } 16670 NOARGS { int|sys||setreuid(uid_t ruid, uid_t euid); } 16771 NOARGS { int|sys||setregid(gid_t rgid, gid_t egid); } 16872 STD { int|linux_sys||sigsuspend(void *restart, \ 169 int oldmask, int mask); } 17073 STD { int|linux_sys||sigpending(linux_old_sigset_t *set); } 17174 NOARGS { int|compat_43_sys||sethostname(char *hostname, \ 172 u_int len);} 17375 STD { int|linux_sys||setrlimit(u_int which, \ 174 struct orlimit *rlp); } 17576 STD { int|linux_sys||getrlimit(u_int which, \ 176 struct orlimit *rlp); } 17777 NOARGS { int|compat_50_sys||getrusage(int who, \ 178 struct rusage50 *rusage); } 17978 STD { int|linux_sys||gettimeofday(struct timeval50 *tp, \ 180 struct timezone *tzp); } 18179 STD { int|linux_sys||settimeofday(struct timeval50 *tp, \ 182 struct timezone *tzp); } 18380 NOARGS { int|sys||getgroups(u_int gidsetsize, gid_t *gidset); } 18481 NOARGS { int|sys||setgroups(u_int gidsetsize, gid_t *gidset); } 18582 STD { int|linux_sys||select(int nfds, fd_set* readfds, \ 186 fd_set* writefds, fd_set* exceptfds, \ 187 struct timeval50 *timeout); } 18883 NOARGS { int|sys||symlink(const char *path, const char *to); } 18984 NOARGS { int|compat_43_sys||lstat(const char *path, \ 190 struct stat43 *up); } oolstat 19185 NOARGS { int|sys||readlink(const char *name, char *buf, \ 192 int count); } 193#ifdef EXEC_AOUT 19486 STD { int|linux_sys||uselib(const char *path); } 195#else 19686 UNIMPL sys_uselib 197#endif 19887 STD { int|linux_sys||swapon(char *name); } 19988 STD { int|linux_sys||reboot(int magic1, int magic2, \ 200 int cmd, void *arg); } 20189 STD { int|linux_sys||readdir(int fd, void *dent, \ 202 unsigned int count); } 20390 NOARGS { int|linux_sys||mmap(unsigned long addr, size_t len, \ 204 int prot, int flags, int fd, linux_off_t offset); } 20591 NOARGS { int|sys||munmap(void *addr, int len); } 20692 NOARGS { int|compat_43_sys||truncate(const char *path, \ 207 long length); } 20893 NOARGS { int|compat_43_sys||ftruncate(int fd, long length); } 20994 NOARGS { int|sys||fchmod(int fd, linux_umode_t mode); } 21095 NOARGS { int|sys||__posix_fchown(int fd, int uid, int gid); } 21196 STD { int|linux_sys||getpriority(int which, int who); } 21297 NOARGS { int|sys||setpriority(int which, int who, int prio); } 21398 NOARGS { int|sys||profil(void *samples, u_int size, \ 214 u_int offset, u_int scale); } 21599 STD { int|linux_sys||statfs(const char *path, \ 216 struct linux_statfs *sp); } 217100 STD { int|linux_sys||fstatfs(int fd, \ 218 struct linux_statfs *sp); } 219101 UNIMPL ioperm 220102 STD { int|linux_sys||socketcall(int what, void *args); } 221103 UNIMPL syslog 222104 NOARGS { int|compat_50_sys||setitimer(int which, \ 223 struct itimerval50 *itv, \ 224 struct itimerval50 *oitv); } 225105 NOARGS { int|compat_50_sys||getitimer(int which, \ 226 struct itimerval50 *itv); } 227106 STD { int|linux_sys||stat(const char *path, \ 228 struct linux_stat *sp); } 229107 STD { int|linux_sys||lstat(const char *path, \ 230 struct linux_stat *sp); } 231108 STD { int|linux_sys||fstat(int fd, struct linux_stat *sp); } 232109 STD { int|linux_sys||uname(struct linux_utsname *up); } 233110 UNIMPL iopl 234111 UNIMPL vhangup 235112 UNIMPL idle 236113 UNIMPL vm86old 237114 STD { int|linux_sys||wait4(int pid, int *status, \ 238 int options, struct rusage50 *rusage); } 239115 STD { int|linux_sys||swapoff(const char *path); } 240116 STD { int|linux_sys||sysinfo(struct linux_sysinfo *arg); } 241117 STD { int|linux_sys||ipc(int what, int a1, int a2, int a3, \ 242 void *ptr); } 243118 NOARGS { int|sys||fsync(int fd); } 244119 STD { int|linux_sys||sigreturn(struct linux_sigcontext *scp); } 245120 STD { int|linux_sys||clone(int flags, void *stack, \ 246 void *parent_tidptr, void *tls, void *child_tidptr); } 247121 STD { int|linux_sys||setdomainname(char *domainname, \ 248 int len); } 249122 STD { int|linux_sys||new_uname(struct linux_utsname *up); } 250123 UNIMPL modify_ldt 251124 UNIMPL adjtimex 252125 STD { int|linux_sys||mprotect(const void *start, \ 253 unsigned long len, int prot); } 254126 STD { int|linux_sys||sigprocmask(int how, \ 255 const linux_old_sigset_t *set, \ 256 linux_old_sigset_t *oset); } 257127 UNIMPL create_module 258128 UNIMPL init_module 259129 UNIMPL delete_module 260130 UNIMPL get_kernel_syms 261131 UNIMPL quotactl 262132 NOARGS { pid_t|sys||getpgid(pid_t pid); } 263133 NOARGS { int|sys||fchdir(int fd); } 264134 UNIMPL bdflush 265135 UNIMPL sysfs 266136 STD { int|linux_sys||personality(unsigned long per); } 267137 UNIMPL afs_syscall 268138 STD { int|linux_sys||setfsuid(uid_t uid); } 269139 STD { int|linux_sys||setfsgid(gid_t gid); } 270140 STD { int|linux_sys||llseek(int fd, u_int32_t ohigh, \ 271 u_int32_t olow, void *res, int whence); } 272141 STD { int|linux_sys||getdents(int fd, \ 273 struct linux_dirent *dent, unsigned int count); } 274142 STD { int|linux_sys||new_select(int nfds, fd_set *readfds, \ 275 fd_set *writefds, fd_set *exceptfds, \ 276 struct timeval50 *timeout); } 277143 NOARGS { int|sys||flock(int fd, int how); } 278144 NOARGS { int|sys|13|msync(void *addr, size_t len, int flags); } 279145 NOARGS { int|sys||readv(int fd, struct iovec *iovp, \ 280 u_int iovcnt); } 281146 NOARGS { int|sys||writev(int fd, struct iovec *iovp, \ 282 u_int iovcnt); } 283147 NOARGS { pid_t|sys||getsid(pid_t pid); } 284148 STD { int|linux_sys||fdatasync(int fd); } 285149 STD { int|linux_sys||__sysctl(struct linux___sysctl *lsp); } 286150 NOARGS { int|sys||mlock(void *addr, size_t len); } 287151 NOARGS { int|sys||munlock(void *addr, size_t len); } 288152 NOARGS { int|sys||mlockall(int flags); } 289153 NOARGS { int|sys||munlockall(void); } 290154 STD { int|linux_sys||sched_setparam(pid_t pid, \ 291 const struct linux_sched_param *sp); } 292155 STD { int|linux_sys||sched_getparam(pid_t pid, \ 293 struct linux_sched_param *sp); } 294156 STD { int|linux_sys||sched_setscheduler(pid_t pid, \ 295 int policy, const struct linux_sched_param *sp); } 296157 STD { int|linux_sys||sched_getscheduler(pid_t pid); } 297158 STD { int|linux_sys||sched_yield(void); } 298159 STD { int|linux_sys||sched_get_priority_max(int policy); } 299160 STD { int|linux_sys||sched_get_priority_min(int policy); } 300161 UNIMPL sched_rr_get_interval 301162 STD { int|linux_sys||nanosleep( \ 302 const struct linux_timespec *rqtp, \ 303 struct linux_timespec *rmtp); } 304163 STD { void *|linux_sys||mremap(void *old_address, \ 305 size_t old_size, size_t new_size, u_long flags); } 306164 STD { int|linux_sys||setresuid(uid_t ruid, uid_t euid, \ 307 uid_t suid); } 308165 STD { int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \ 309 uid_t *suid); } 310166 UNIMPL query_module 311167 NOARGS { int|sys||poll(struct pollfd *fds, u_int nfds, \ 312 int timeout); } 313168 UNIMPL nfsservctl 314169 STD { int|linux_sys||setresgid(gid_t rgid, gid_t egid, \ 315 gid_t sgid); } 316170 STD { int|linux_sys||getresgid(gid_t *rgid, gid_t *egid, \ 317 gid_t *sgid); } 318171 UNIMPL prctl 319172 STD { int|linux_sys||rt_sigreturn( \ 320 struct linux_rt_sigframe *sfp); } 321173 STD { int|linux_sys||rt_sigaction(int signum, \ 322 const struct linux_sigaction *nsa, \ 323 struct linux_sigaction *osa, \ 324 size_t sigsetsize); } 325174 STD { int|linux_sys||rt_sigprocmask(int how, \ 326 const linux_sigset_t *set, \ 327 linux_sigset_t *oset, \ 328 size_t sigsetsize); } 329175 STD { int|linux_sys||rt_sigpending( \ 330 linux_sigset_t *set, \ 331 size_t sigsetsize); } 332176 STD { int|linux_sys||rt_sigtimedwait( \ 333 const linux_sigset_t *set, \ 334 linux_siginfo_t *info, \ 335 const struct linux_timespec *timeout); } 336177 STD { int|linux_sys||rt_queueinfo(int pid, int signum, \ 337 linux_siginfo_t *uinfo); } 338178 STD { int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \ 339 size_t sigsetsize); } 340179 STD { int|linux_sys||pread(int fd, char *buf, \ 341 size_t nbyte, linux_off_t offset); } 342180 STD { int|linux_sys||pwrite(int fd, char *buf, \ 343 size_t nbyte, linux_off_t offset); } 344181 NOARGS { int|sys||__posix_chown(const char *path, \ 345 int uid, int gid); } 346182 NOARGS { int|sys||__getcwd(char *bufp, size_t length); } 347183 UNIMPL capget 348184 UNIMPL capset 349185 STD { int|linux_sys||sigaltstack( \ 350 const struct linux_sigaltstack *ss, \ 351 struct linux_sigaltstack *oss); } 352186 UNIMPL sendfile 353187 UNIMPL getpmsg 354188 UNIMPL putpmsg 355189 NOARGS { int|sys|14|vfork(void); } 356190 STD { int|linux_sys||ugetrlimit(int which, \ 357 struct rlimit *rlp); } 358191 UNIMPL /* unused */ 359#define linux_sys_mmap2_args linux_sys_mmap_args 360192 NOARGS { linux_off_t|linux_sys||mmap2(unsigned long addr, \ 361 size_t len, int prot, int flags, int fd, \ 362 linux_off_t offset); } 363193 STD { int|linux_sys||truncate64(const char *path, \ 364 off_t length); } 365194 STD { int|linux_sys||ftruncate64(unsigned int fd, \ 366 off_t length); } 367195 STD { int|linux_sys||stat64(const char *path, \ 368 struct linux_stat64 *sp); } 369196 STD { int|linux_sys||lstat64(const char *path, \ 370 struct linux_stat64 *sp); } 371197 STD { int|linux_sys||fstat64(int fd, \ 372 struct linux_stat64 *sp); } 373198 UNIMPL sys_pciconfig_read 374199 UNIMPL sys_pciconfig_write 375200 UNIMPL sys_pciconfig_iobase 376201 UNIMPL /* Unused (MacOnLinux project) */ 377202 STD { int|linux_sys||getdents64(int fd, \ 378 struct linux_dirent64 *dent, unsigned int count); } 379203 UNIMPL pivot_root 380204 STD { int|linux_sys||fcntl64(int fd, int cmd, void *arg); } 381205 NOARGS { int|sys||mincore(void *addr, size_t len, char *vec); } 382206 NOARGS { int|sys||madvise(void *addr, size_t len, int behav); } 383207 NOARGS { pid_t|linux_sys||gettid(void); } 384208 STD { int|linux_sys||tkill(int tid, int sig); } 385209 STD { int|linux_sys||setxattr(char *path, char *name, \ 386 void *value, size_t size, int flags); } 387210 STD { int|linux_sys||lsetxattr(char *path, char *name, \ 388 void *value, size_t size, int flags); } 389211 STD { int|linux_sys||fsetxattr(int fd, char *name, \ 390 void *value, size_t size, int flags); } 391212 STD { ssize_t|linux_sys||getxattr(char *path, char *name, \ 392 void *value, size_t size); } 393213 STD { ssize_t|linux_sys||lgetxattr(char *path, char *name, \ 394 void *value, size_t size); } 395214 STD { ssize_t|linux_sys||fgetxattr(int fd, char *name, \ 396 void *value, size_t size); } 397215 STD { ssize_t|linux_sys||listxattr(char *path, char *list, \ 398 size_t size); } 399216 STD { ssize_t|linux_sys||llistxattr(char *path, char *list, \ 400 size_t size); } 401217 STD { ssize_t|linux_sys||flistxattr(int fd, char *list, \ 402 size_t size); } 403218 STD { int|linux_sys||removexattr(char *path, char *name); } 404219 STD { int|linux_sys||lremovexattr(char *path, char *name); } 405220 STD { int|linux_sys||fremovexattr(int fd, char *name); } 406221 STD { int|linux_sys||futex(int *uaddr, int op, int val, \ 407 const struct linux_timespec *timeout, int *uaddr2, \ 408 int val3); } 409222 STD { int|linux_sys||sched_setaffinity(pid_t pid, \ 410 unsigned int len, unsigned long *mask); } 411223 STD { int|linux_sys||sched_getaffinity(pid_t pid, \ 412 unsigned int len, unsigned long *mask); } 413224 UNIMPL /* unused */ 414225 UNIMPL tuxcall 415226 UNIMPL sendfile64 416227 UNIMPL io_setup 417228 UNIMPL io_destroy 418229 UNIMPL io_getevents 419230 UNIMPL io_submit 420231 UNIMPL io_cancel 421232 STD { int|linux_sys||set_tid_address(int *tid); } 422233 STD { int|linux_sys||fadvise64(int fd, \ 423 linux_off_t offset, size_t len, int advice); } 424234 STD { int|linux_sys||exit_group(int error_code); } 425235 UNIMPL lookup_dcookie 426236 UNIMPL epoll_create 427237 UNIMPL epoll_ctl 428238 UNIMPL epoll_wait 429239 UNIMPL remap_file_pages 430240 UNIMPL timer_create 431241 UNIMPL timer_settime 432242 UNIMPL timer_gettime 433243 UNIMPL timer_getoverrun 434244 UNIMPL timer_delete 435245 STD { int|linux_sys||clock_settime(clockid_t which, \ 436 struct linux_timespec *tp); } 437246 STD { int|linux_sys||clock_gettime(clockid_t which, \ 438 struct linux_timespec *tp); } 439247 STD { int|linux_sys||clock_getres(clockid_t which, \ 440 struct linux_timespec *tp); } 441248 STD { int|linux_sys||clock_nanosleep(clockid_t which, \ 442 int flags, struct linux_timespec *rqtp, \ 443 struct linux_timespec *rmtp); } 444249 UNIMPL swapcontext 445250 STD { int|linux_sys||tgkill(int tgid, int tid, int sig); } 446251 STD { int|linux_sys||utimes(const char *path, struct linux_timeval *times); } 447252 STD { int|linux_sys||statfs64(const char *path, \ 448 size_t sz, struct linux_statfs64 *sp); } 449253 STD { int|linux_sys||fstatfs64(int fd, \ 450 size_t sz, struct linux_statfs64 *sp); } 451254 STD { int|linux_sys||fadvise64_64(int fd, \ 452 linux_off_t offset, linux_off_t len, int advice); } 453255 UNIMPL rtas 454256 UNIMPL /* reserved for sys_debug_setcontext */ 455257 UNIMPL /* reserved for vserver */ 456258 UNIMPL /* reserved for new sys_remap_file_pages */ 457259 UNIMPL /* reserved for new sys_mbind */ 458260 UNIMPL /* reserved for new sys_get_mempolicy */ 459261 UNIMPL /* reserved for new sys_set_mempolicy */ 460262 UNIMPL mq_open 461263 UNIMPL mq_unlink 462264 UNIMPL mq_timedsend 463265 UNIMPL mq_timedreceive 464266 UNIMPL mq_notify 465267 UNIMPL mq_getsetattr 466268 UNIMPL kexec_load 467269 UNIMPL add_key 468270 UNIMPL request_key 469271 UNIMPL keyctl 470272 UNIMPL waitid 471273 UNIMPL ioprio_set 472274 UNIMPL ioprio_get 473275 UNIMPL inotify_init 474276 UNIMPL inotify_add_watch 475277 UNIMPL inotify_rm_watch 476278 UNIMPL spu_run 477279 UNIMPL spu_create 478280 UNIMPL pselect6 479281 STD { int|linux_sys||ppoll(struct pollfd *fds, int nfds, \ 480 struct linux_timespec *timeout, \ 481 linux_sigset_t *sigset); } 482282 UNIMPL unshare 483283 UNIMPL splice 484284 UNIMPL tee 485285 UNIMPL vmsplice 486286 STD { int|linux_sys||openat(int fd, const char *path, \ 487 int flags, ... linux_umode_t mode); } 488287 NOARGS { int|sys||mkdirat(int fd, const char *path, \ 489 linux_umode_t mode); } 490288 STD { int|linux_sys||mknodat(int fd, const char *path, \ 491 linux_umode_t mode, unsigned dev); } 492289 STD { int|linux_sys||fchownat(int fd, const char *path, \ 493 uid_t owner, gid_t group, int flag); } 494290 UNIMPL futimesat 495291 STD { int|linux_sys||fstatat64(int fd, const char *path, \ 496 struct linux_stat64 *sp, int flag); } 497292 STD { int|linux_sys||unlinkat(int fd, const char *path, \ 498 int flag); } 499293 NOARGS { int|sys||renameat(int fromfd, const char *from, \ 500 int tofd, const char *to); } 501294 STD { int|linux_sys||linkat(int fd1, const char *name1, \ 502 int fd2, const char *name2, int flags); } 503295 NOARGS { int|sys||symlinkat(const char *path1, int fd, \ 504 const char *path2); } 505296 NOARGS { int|sys||readlinkat(int fd, const char *path, \ 506 char *buf, size_t bufsize); } 507297 STD { int|linux_sys||fchmodat(int fd, const char *path, \ 508 linux_umode_t mode); } 509298 STD { int|linux_sys||faccessat(int fd, const char *path, \ 510 int amode); } 511299 STD { int|linux_sys||set_robust_list( \ 512 struct linux_robust_list_head *head, size_t len); } 513300 STD { int|linux_sys||get_robust_list(int pid, \ 514 struct linux_robust_list_head **head, \ 515 size_t *len); } 516301 UNIMPL move_pages 517302 UNIMPL getcpu 518303 UNIMPL epoll_wait 519304 STD { int|linux_sys||utimensat(int fd, const char *path, \ 520 struct linux_timespec *times, int flag); } 521305 UNIMPL signalfd 522306 UNIMPL timerfd_create 523307 UNIMPL eventfd 524308 UNIMPL sync_file_range2 525309 UNIMPL fallocate 526310 UNIMPL subpage_prot 527311 UNIMPL timerfd_settime 528312 UNIMPL timerfd_gettime 529313 UNIMPL signalfd4 530314 UNIMPL eventfd2 531315 UNIMPL epoll_create1 532316 STD { int|linux_sys||dup3(int from, int to, int flags); } 533317 STD { int|linux_sys||pipe2(int *pfds, int flags); } 534318 UNIMPL inotify_init1 535319 UNIMPL perf_event_open 536320 UNIMPL preadv 537321 UNIMPL pwritev 538322 UNIMPL rt_tgsigqueueinfo 539