1 $NetBSD: syscalls.master,v 1.67 2019/11/09 23:44:32 jdolecek Exp $ 2 3; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 4 5; Derived from NetBSD's sys/compat/linux/arch/powerpc/syscalls.master 6; from Linux's arch/mips/kernel/syscalls.h 7 8; NetBSD mips COMPAT_LINUX system call name/number "master" file. 9; (See syscalls.conf to see what it is processed into.) 10; 11; Expect problems with 12; 48 signal: undefined in Linux??? 13; 86 uselib: needs a.out 14; 15; Fields: number type [type-dependent ...] 16; number system call number, must be in order 17; type one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of 18; the compatibility options defined in syscalls.conf. 19; 20; types: 21; STD always included 22; OBSOL obsolete, not included in system 23; UNIMPL unimplemented, not included in system 24; NODEF included, but don't define the syscall number 25; NOARGS included, but don't define the syscall args structure 26; INDIR included, but don't define the syscall args structure 27; and allow it to be "really" varargs. 28; 29; The compat options are defined in the syscalls.conf file, and the 30; compat option name is prefixed to the syscall name. Other than 31; that, they're like NODEF (for 'compat' options), or STD (for 32; 'libcompat' options). 33; 34; The type-dependent arguments are as follows: 35; For STD, NODEF, NOARGS, and compat syscalls: 36; { pseudo-proto } [alias] 37; For other syscalls: 38; [comment] 39; 40; #ifdef's, etc. may be included, and are copied to the output files. 41; #include's are copied to the syscall names and switch definition files only. 42 43#include <sys/param.h> 44#include <sys/poll.h> 45#include <sys/systm.h> 46#include <sys/signal.h> 47#include <sys/mount.h> 48#include <sys/syscallargs.h> 49 50#include <compat/linux/common/linux_types.h> 51#include <compat/linux/common/linux_signal.h> 52#include <compat/linux/common/linux_siginfo.h> 53#include <compat/linux/common/linux_machdep.h> 54#include <compat/linux/common/linux_mmap.h> 55#include <compat/linux/common/linux_socketcall.h> 56 57#include <compat/linux/linux_syscallargs.h> 58 590 NOARGS { int|linux_sys||nosys(void); } syscall 601 STD { int|linux_sys||exit(int rval); } 612 NOARGS { int|sys||fork(void); } 623 NOARGS { ssize_t|sys||read(int fd, void *buf, size_t nbyte); } 634 NOARGS { ssize_t|sys||write(int fd, const void *buf, \ 64 size_t nbyte); } 655 STD { int|linux_sys||open(const char *path, int flags, \ 66 linux_umode_t mode); } 676 NOARGS { int|sys||close(int fd); } 687 STD { int|linux_sys||waitpid(int pid, int *status, \ 69 int options);} 708 STD { int|linux_sys||creat(const char *path, linux_umode_t mode); } 719 NOARGS { int|sys||link(const char *path, const char *link); } 7210 STD { int|linux_sys||unlink(const char *path); } 7311 NOARGS { int|sys||execve(const char *path, char **argp, \ 74 char **envp); } 7512 NOARGS { int|sys||chdir(const char *path); } 7613 STD { int|linux_sys||time(linux_time_t *t); } 7714 STD { int|linux_sys||mknod(const char *path, linux_umode_t mode, \ 78 unsigned dev); } 7915 NOARGS { int|sys||chmod(const char *path, int mode); } 8016 NOARGS { int|sys||__posix_lchown(const char *path, uid_t uid, \ 81 gid_t gid); } 8217 UNIMPL 8318 OBSOL ostat 8419 NOARGS { long|compat_43_sys||lseek(int fd, long offset, \ 85 int whence); } 8620 NOARGS { pid_t|sys||getpid(void); } 8721 UNIMPL mount 8822 OBSOL umount 8923 NOARGS { int|sys||setuid(uid_t uid); } 9024 NOARGS { uid_t|sys||getuid(void); } 9125 STD { int|linux_sys||stime(linux_time_t *t); } 9226 STD { int|linux_sys||ptrace(long request, long pid, \ 93 long addr, long data); } 9427 STD { int|linux_sys||alarm(unsigned int secs); } 9528 OBSOL ofstat 9629 STD { int|linux_sys||pause(void); } 9730 STD { int|linux_sys||utime(const char *path, \ 98 struct linux_utimbuf *times); } 9931 UNIMPL 10032 UNIMPL 10133 NOARGS { int|sys||access(const char *path, int flags); } 10234 STD { int|linux_sys||nice(int incr); } 10335 UNIMPL 10436 NOARGS { int|sys||sync(void); } 10537 STD { int|linux_sys||kill(int pid, int signum); } 10638 NOARGS { int|sys||__posix_rename(const char *from, \ 107 const char *to); } 10839 NOARGS { int|sys||mkdir(const char *path, linux_umode_t mode); } 10940 NOARGS { int|sys||rmdir(const char *path); } 11041 NOARGS { int|sys||dup(int fd); } 11142 STD { int|linux_sys||pipe(int *pfds); } 11243 STD { int|linux_sys||times(struct times *tms); } 11344 UNIMPL 11445 STD { int|linux_sys||brk(char *nsize); } 11546 NOARGS { int|sys||setgid(gid_t gid); } 11647 NOARGS { gid_t|sys||getgid(void); } 11748 STD { int|linux_sys||signal(int signum, \ 118 linux___sighandler_t handler); } 11949 NOARGS { uid_t|sys||geteuid(void); } 12050 NOARGS { gid_t|sys||getegid(void); } 12151 NOARGS { int|sys||acct(char *path); } 12252 UNIMPL umount 12353 UNIMPL 12454 STD { int|linux_sys||ioctl(int fd, u_long com, \ 125 void *data); } 12655 STD { int|linux_sys||fcntl(int fd, int cmd, void *arg); } 12756 OBSOL mpx 12857 NOARGS { int|sys||setpgid(int pid, int pgid); } 12958 UNIMPL 13059 STD { int|linux_sys||olduname(struct linux_old_utsname \ 131 *up); } 13260 NOARGS { int|sys||umask(int newmask); } 13361 NOARGS { int|sys||chroot(char *path); } 13462 UNIMPL ustat 13563 NOARGS { int|sys||dup2(int from, int to); } 13664 NOARGS { pid_t|sys||getppid(void); } 13765 NOARGS { int|sys||getpgrp(void); } 13866 NOARGS { int|sys||setsid(void); } 13967 STD { int|linux_sys||sigaction(int signum, \ 140 const struct linux_old_sigaction *nsa, \ 141 struct linux_old_sigaction *osa); } 14268 STD { int|linux_sys||siggetmask(void); } 14369 STD { int|linux_sys||sigsetmask(linux_old_sigset_t mask); } 14470 NOARGS { int|sys||setreuid(uid_t ruid, uid_t euid); } 14571 NOARGS { int|sys||setregid(gid_t rgid, gid_t egid); } 14672 STD { int|linux_sys||sigsuspend(void *restart, \ 147 int oldmask, int mask); } 14873 STD { int|linux_sys||sigpending(linux_old_sigset_t *set); } 14974 NOARGS { int|compat_43_sys||sethostname(char *hostname, \ 150 u_int len);} 15175 STD { int|linux_sys||setrlimit(u_int which, \ 152 struct orlimit *rlp); } 15376 STD { int|linux_sys||getrlimit(u_int which, \ 154 struct orlimit *rlp); } 15577 NOARGS { int|compat_50_sys||getrusage(int who, \ 156 struct rusage50 *rusage); } 15778 STD { int|linux_sys||gettimeofday(struct timeval50 *tp, \ 158 struct timezone *tzp); } 15979 STD { int|linux_sys||settimeofday(struct timeval50 *tp, \ 160 struct timezone *tzp); } 16180 NOARGS { int|sys||getgroups(int gidsetsize, gid_t *gidset); } 16281 NOARGS { int|sys||setgroups(int gidsetsize, gid_t *gidset); } 16382 UNIMPL old_select 16483 NOARGS { int|sys||symlink(const char *path, const char *to); } 16584 NOARGS { int|compat_43_sys||lstat(const char *path, \ 166 struct stat43 *up); } oolstat 16785 NOARGS { ssize_t|sys||readlink(const char *path, char *buf, \ 168 int count); } 16986 UNIMPL uselib 170;86 STD { int|linux_sys||uselib(const char *path); } 17187 STD { int|linux_sys||swapon(char *name); } 17288 STD { int|linux_sys||reboot(int magic1, int magic2, \ 173 int cmd, void *arg); } 17489 STD { int|linux_sys||readdir(int fd, void *dent, \ 175 unsigned int count); } 17690 NOARGS { int|linux_sys||mmap(unsigned long addr, size_t len, \ 177 int prot, int flags, int fd, linux_off_t offset); } 17891 NOARGS { int|sys||munmap(void *addr, size_t len); } 17992 NOARGS { int|compat_43_sys||truncate(const char *path, \ 180 long length); } 18193 NOARGS { int|compat_43_sys||ftruncate(int fd, long length); } 18294 NOARGS { int|sys||fchmod(int fd, linux_umode_t mode); } 18395 NOARGS { int|sys||__posix_fchown(int fd, uid_t uid, \ 184 gid_t gid); } 18596 STD { int|linux_sys||getpriority(int which, int who); } 18697 NOARGS { int|sys||setpriority(int which, int who, int prio); } 18798 UNIMPL 18899 STD { int|linux_sys||statfs(const char *path, \ 189 struct linux_statfs *sp); } 190100 STD { int|linux_sys||fstatfs(int fd, \ 191 struct linux_statfs *sp); } 192101 STD { int|linux_sys||ioperm(unsigned int lo, \ 193 unsigned int hi, int val); } 194102 STD { int|linux_sys||socketcall(int what, void *args); } 195103 UNIMPL syslog 196104 NOARGS { int|compat_50_sys||setitimer(int which, \ 197 struct itimerval50 *itv, \ 198 struct itimerval50 *oitv); } 199105 NOARGS { int|compat_50_sys||getitimer(int which, \ 200 struct itimerval50 *itv); } 201106 STD { int|linux_sys||stat(const char *path, \ 202 struct linux_stat *sp); } 203107 STD { int|linux_sys||lstat(const char *path, \ 204 struct linux_stat *sp); } 205108 STD { int|linux_sys||fstat(int fd, struct linux_stat *sp); } 206109 STD { int|linux_sys||uname(struct linux_utsname *up); } 207110 UNIMPL iopl 208111 UNIMPL vhangup 209112 UNIMPL idle 210113 UNIMPL vm86old 211114 STD { int|linux_sys||wait4(int pid, int *status, \ 212 int options, struct rusage50 *rusage); } 213115 STD { int|linux_sys||swapoff(const char *path); } 214116 STD { int|linux_sys||sysinfo(struct linux_sysinfo *arg); } 215117 STD { int|linux_sys||ipc(int what, long a1, long a2, \ 216 long a3, void *ptr); } 217118 NOARGS { int|sys||fsync(int fd); } 218119 STD { int|linux_sys||sigreturn(struct linux_sigframe *sf); } 219120 STD { int|linux_sys||clone(int flags, void *stack, \ 220 void *parent_tidptr, void *tls, void *child_tidptr); } 221121 STD { int|linux_sys||setdomainname(char *domainname, \ 222 int len); } 223122 STD { int|linux_sys||new_uname(struct linux_utsname *up); } 224123 UNIMPL modify_ldt 225124 UNIMPL adjtimex 226125 STD { int|linux_sys||mprotect(const void *start, \ 227 unsigned long len, int prot); } 228126 STD { int|linux_sys||sigprocmask(int how, \ 229 const linux_old_sigset_t *set, \ 230 linux_old_sigset_t *oset); } 231127 UNIMPL create_module 232128 UNIMPL init_module 233129 UNIMPL delete_module 234130 UNIMPL get_kernel_syms 235131 UNIMPL quotactl 236132 NOARGS { pid_t|sys||getpgid(pid_t pid); } 237133 NOARGS { int|sys||fchdir(int fd); } 238134 UNIMPL bdflush 239135 UNIMPL sysfs 240136 STD { int|linux_sys||personality(unsigned long per); } 241137 UNIMPL afs_syscall 242138 STD { int|linux_sys||setfsuid(uid_t uid); } 243139 STD { int|linux_sys||setfsgid(gid_t gid); } 244140 STD { int|linux_sys||llseek(int fd, u_int32_t ohigh, \ 245 u_int32_t olow, void *res, int whence); } 246141 STD { int|linux_sys||getdents(int fd, \ 247 struct linux_dirent *dent, unsigned int count); } 248142 STD { int|linux_sys||select(int nfds, fd_set *readfds, \ 249 fd_set *writefds, fd_set *exceptfds, \ 250 struct timeval50 *timeout); } 251143 NOARGS { int|sys||flock(int fd, int how); } 252144 NOARGS { int|sys|13|msync(void *addr, size_t len, int flags); } 253145 NOARGS { ssize_t|sys||readv(int fd, \ 254 const struct iovec *iovp, int iovcnt); } 255146 NOARGS { ssize_t|sys||writev(int fd, \ 256 const struct iovec *iovp, int iovcnt); } 257147 STD { int|linux_sys||cacheflush(void *addr, \ 258 int bytes, int cache); } 259148 UNIMPL cachectl 260149 STD { int|linux_sys||sysmips(long cmd, long arg1, \ 261 long arg2, long arg3); } 262150 UNIMPL 263151 NOARGS { pid_t|sys||getsid(pid_t pid); } 264152 STD { int|linux_sys||fdatasync(int fd); } 265153 STD { int|linux_sys||__sysctl(struct linux___sysctl *lsp); } 266154 NOARGS { int|sys||mlock(void *addr, size_t len); } 267155 NOARGS { int|sys||munlock(void *addr, size_t len); } 268156 NOARGS { int|sys||mlockall(int flags); } 269157 NOARGS { int|sys||munlockall(void); } 270158 STD { int|linux_sys||sched_setparam(pid_t pid, \ 271 const struct linux_sched_param *sp); } 272159 STD { int|linux_sys||sched_getparam(pid_t pid, \ 273 struct linux_sched_param *sp); } 274160 STD { int|linux_sys||sched_setscheduler(pid_t pid, \ 275 int policy, const struct linux_sched_param *sp); } 276161 STD { int|linux_sys||sched_getscheduler(pid_t pid); } 277162 STD { int|linux_sys||sched_yield(void); } 278163 STD { int|linux_sys||sched_get_priority_max(int policy); } 279164 STD { int|linux_sys||sched_get_priority_min(int policy); } 280165 UNIMPL sched_rr_get_interval 281166 STD { int|linux_sys||nanosleep( \ 282 const struct linux_timespec *rqtp, \ 283 struct linux_timespec *rmtp); } 284167 STD { void *|linux_sys||mremap(void *old_address, \ 285 size_t old_size, size_t new_size, u_long flags); } 286168 STD { int|linux_sys||accept(int s, \ 287 struct osockaddr *name, int *anamelen); } 288169 STD { int|linux_sys||bind(int s, \ 289 const struct osockaddr *name, int namelen); } 290170 STD { int|linux_sys||connect(int s, \ 291 const struct osockaddr *name, int namelen); } 292171 STD { int|linux_sys||getpeername(int fdes, void *asa, \ 293 int *alen); } 294172 STD { int|linux_sys||getsockname(int fdes, void *asa, \ 295 int *alen); } 296173 STD { int|linux_sys||getsockopt(int s, int level, \ 297 int optname, void *optval, int *optlen); } 298174 NOARGS { int|sys||listen(int s, int backlog); } 299175 STD { int|linux_sys||recv(int s, void *buf, int len, \ 300 int flags); } 301176 STD { int|linux_sys||recvfrom(int s, void *buf, int len, \ 302 int flags, struct osockaddr *from, \ 303 int *fromlenaddr); } 304177 STD { int|linux_sys||recvmsg(int s, \ 305 struct linux_msghdr *msg, u_int flags); } 306178 STD { int|linux_sys||send(int s, void *buf, int len, \ 307 int flags); } 308179 STD { int|linux_sys||sendmsg(int s, \ 309 struct linux_msghdr *msg, u_int flags); } 310180 STD { int|linux_sys||sendto(int s, void *msg, \ 311 int len, int flags, struct osockaddr *to, \ 312 int tolen); } 313181 STD { int|linux_sys||setsockopt(int s, int level, \ 314 int optname, void *optval, int optlen); } 315182 UNIMPL shutdown 316183 STD { int|linux_sys||socket(int domain, int type, \ 317 int protocol); } 318184 STD { int|linux_sys||socketpair(int domain, int type, \ 319 int protocol, int *rsv); } 320185 STD { int|linux_sys||setresuid(uid_t ruid, uid_t euid, \ 321 uid_t suid); } 322186 STD { int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \ 323 uid_t *suid); } 324187 UNIMPL query_module 325188 NOARGS { int|sys||poll(struct pollfd *fds, u_int nfds, \ 326 int timeout); } 327189 UNIMPL nfsservctl 328190 STD { int|linux_sys||setresgid(gid_t rgid, gid_t egid, \ 329 gid_t sgid); } 330191 STD { int|linux_sys||getresgid(gid_t *rgid, gid_t *egid, \ 331 gid_t *sgid); } 332192 UNIMPL prctl 333193 STD { int|linux_sys||rt_sigreturn( \ 334 struct linux_pt_regs *regs); } 335194 STD { int|linux_sys||rt_sigaction(int signum, \ 336 const struct linux_sigaction *nsa, \ 337 struct linux_sigaction *osa, \ 338 size_t sigsetsize); } 339195 STD { int|linux_sys||rt_sigprocmask(int how, \ 340 const linux_sigset_t *set, \ 341 linux_sigset_t *oset, \ 342 size_t sigsetsize); } 343196 STD { int|linux_sys||rt_sigpending( \ 344 linux_sigset_t *set, \ 345 size_t sigsetsize); } 346197 STD { int|linux_sys||rt_sigtimedwait( \ 347 const linux_sigset_t *set, \ 348 linux_siginfo_t *info, \ 349 const struct linux_timespec *timeout); } 350198 STD { int|linux_sys||rt_queueinfo(int pid, int signum, \ 351 linux_siginfo_t *uinfo); } 352199 STD { int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \ 353 size_t sigsetsize); } 354200 STD { int|linux_sys||pread(int fd, char *buf, \ 355 size_t nbyte, off_t offset); } 356201 STD { int|linux_sys||pwrite(int fd, char *buf, \ 357 size_t nbyte, off_t offset); } 358202 NOARGS { int|sys||__posix_chown(const char *path, uid_t uid, \ 359 gid_t gid); } 360203 NOARGS { int|sys||__getcwd(char *bufp, size_t length); } 361204 UNIMPL capget 362205 UNIMPL capset 363206 STD { int|linux_sys||sigaltstack( \ 364 const struct linux_sigaltstack *ss, \ 365 struct linux_sigaltstack *oss); } 366207 UNIMPL sendfile 367208 UNIMPL 368209 UNIMPL 369#define linux_sys_mmap2_args linux_sys_mmap_args 370210 NOARGS { linux_off_t|linux_sys||mmap2(unsigned long addr, \ 371 size_t len, int prot, int flags, int fd, \ 372 linux_off_t offset); } 373211 STD { int|linux_sys||truncate64(const char *path, \ 374 off_t length); } 375212 STD { int|linux_sys||ftruncate64(unsigned int fd, \ 376 off_t length); } 377213 STD { int|linux_sys||stat64(const char *path, \ 378 struct linux_stat64 *sp); } 379214 STD { int|linux_sys||lstat64(const char *path, \ 380 struct linux_stat64 *sp); } 381215 STD { int|linux_sys||fstat64(int fd, \ 382 struct linux_stat64 *sp); } 383216 UNIMPL pivot_root 384217 NOARGS { int|sys||mincore(void *addr, size_t len, char *vec); } 385218 NOARGS { int|sys||madvise(void *addr, size_t len, int behav); } 386219 STD { int|linux_sys||getdents64(int fd, \ 387 struct linux_dirent64 *dent, unsigned int count); } 388220 STD { int|linux_sys||fcntl64(int fd, \ 389 int cmd, void *arg); } 390221 UNIMPL /* reserved */ 391222 NOARGS { pid_t|linux_sys||gettid(void); } 392223 UNIMPL readahead 393224 STD { int|linux_sys||setxattr(char *path, char *name, \ 394 void *value, size_t size, int flags); } 395225 STD { int|linux_sys||lsetxattr(char *path, char *name, \ 396 void *value, size_t size, int flags); } 397226 STD { int|linux_sys||fsetxattr(int fd, char *name, \ 398 void *value, size_t size, int flags); } 399227 STD { ssize_t|linux_sys||getxattr(char *path, char *name, \ 400 void *value, size_t size); } 401228 STD { ssize_t|linux_sys||lgetxattr(char *path, char *name, \ 402 void *value, size_t size); } 403229 STD { ssize_t|linux_sys||fgetxattr(int fd, char *name, \ 404 void *value, size_t size); } 405230 STD { ssize_t|linux_sys||listxattr(char *path, char *list, \ 406 size_t size); } 407231 STD { ssize_t|linux_sys||llistxattr(char *path, char *list, \ 408 size_t size); } 409232 STD { ssize_t|linux_sys||flistxattr(int fd, char *list, \ 410 size_t size); } 411233 STD { int|linux_sys||removexattr(char *path, char *name); } 412234 STD { int|linux_sys||lremovexattr(char *path, char *name); } 413235 STD { int|linux_sys||fremovexattr(int fd, char *name); } 414236 STD { int|linux_sys||tkill(int tid, int sig); } 415237 UNIMPL sendfile64 416238 STD { int|linux_sys||futex(int *uaddr, int op, int val, \ 417 const struct linux_timespec *timeout, int *uaddr2, \ 418 int val3); } 419239 STD { int|linux_sys||sched_setaffinity(pid_t pid, \ 420 unsigned int len, unsigned long *mask); } 421240 STD { int|linux_sys||sched_getaffinity(pid_t pid, \ 422 unsigned int len, unsigned long *mask); } 423241 UNIMPL io_setup 424242 UNIMPL io_destroy 425243 UNIMPL io_getevents 426244 UNIMPL io_submit 427245 UNIMPL io_cancel 428246 STD { int|linux_sys||exit_group(int error_code); } 429247 UNIMPL lookup_dcookie 430248 UNIMPL epoll_create 431249 UNIMPL epoll_ctl 432250 UNIMPL epoll_wait 433251 UNIMPL remap_file_pages 434252 STD { int|linux_sys||set_tid_address(int *tid); } 435253 UNIMPL restart_syscall 436254 STD { int|linux_sys||fadvise64(int fd, off_t offset, \ 437 size_t len, int advice); } 438255 STD { int|linux_sys||statfs64(const char *path, \ 439 size_t sz, struct linux_statfs64 *sp); } 440256 STD { int|linux_sys||fstatfs64(int fd, \ 441 size_t sz, struct linux_statfs64 *sp); } 442257 UNIMPL timer_create 443258 UNIMPL timer_settime 444259 UNIMPL timer_gettime 445260 UNIMPL timer_getoverrun 446261 UNIMPL timer_delete 447262 STD { int|linux_sys||clock_settime(clockid_t which, \ 448 struct linux_timespec *tp); } 449263 STD { int|linux_sys||clock_gettime(clockid_t which, \ 450 struct linux_timespec *tp); } 451264 STD { int|linux_sys||clock_getres(clockid_t which, \ 452 struct linux_timespec *tp); } 453265 STD { int|linux_sys||clock_nanosleep(clockid_t which, \ 454 int flags, struct linux_timespec *rqtp, \ 455 struct linux_timespec *rmtp); } 456266 STD { int|linux_sys||tgkill(int tgid, int tid, int sig); } 457267 NOARGS { int|compat_50_sys||utimes(const char *path, \ 458 const struct timeval50 *tptr); } 459268 UNIMPL mbind 460269 UNIMPL get_mempolicy 461270 UNIMPL set_mempolicy 462271 UNIMPL mq_open 463272 UNIMPL mq_unlink 464273 UNIMPL mq_timedsend 465274 UNIMPL mq_timedreceive 466275 UNIMPL mq_notify 467276 UNIMPL mq_getsetattr 468277 UNIMPL vserve 469278 UNIMPL waitid 470279 UNIMPL setaltroot 471280 UNIMPL add_key 472281 UNIMPL request_key 473282 UNIMPL keyctl 474283 STD { int|linux_sys||set_thread_area(void *tls); } 475284 UNIMPL inotify_init 476285 UNIMPL inotify_add_watch 477286 UNIMPL inotify_rm_watch 478287 UNIMPL migrate_pages 479288 STD { int|linux_sys||openat(int fd, const char *path, \ 480 int flags, ... linux_umode_t mode); } 481289 NOARGS { int|sys||mkdirat(int fd, const char *path, \ 482 linux_umode_t mode); } 483290 STD { int|linux_sys||mknodat(int fd, const char *path, \ 484 linux_umode_t mode, unsigned dev); } 485291 STD { int|linux_sys||fchownat(int fd, const char *path, \ 486 uid_t owner, gid_t group, int flag); } 487292 UNIMPL futimesat 488293 STD { int|linux_sys||fstatat64(int fd, const char *path, \ 489 struct linux_stat64 *sp, int flag); } 490294 STD { int|linux_sys||unlinkat(int fd, const char *path, \ 491 int flag); } 492295 NOARGS { int|sys||renameat(int fromfd, const char *from, \ 493 int tofd, const char *to); } 494296 STD { int|linux_sys||linkat(int fd1, const char *name1, \ 495 int fd2, const char *name2, int flags); } 496297 NOARGS { int|sys||symlinkat(const char *path1, int fd, \ 497 const char *path2); } 498298 NOARGS { ssize_t|sys||readlinkat(int fd, const char *path, \ 499 char *buf, size_t bufsize); } 500299 STD { int|linux_sys||fchmodat(int fd, const char *path, \ 501 linux_umode_t mode); } 502300 STD { int|linux_sys||faccessat(int fd, const char *path, \ 503 int amode); } 504301 STD { int|linux_sys||pselect6(int nfds, fd_set *readfds, \ 505 fd_set *writefds, fd_set *exceptfds, \ 506 struct linux_timespec *timeout, \ 507 linux_sized_sigset_t *ss); } 508302 STD { int|linux_sys||ppoll(struct pollfd *fds, u_int nfds, \ 509 struct linux_timespec *timeout, \ 510 linux_sigset_t *sigset); } 511303 UNIMPL unshare 512304 UNIMPL splice 513305 UNIMPL sync_file_range 514306 UNIMPL tee 515307 UNIMPL vmsplice 516308 UNIMPL move_pages 517309 STD { int|linux_sys||set_robust_list( \ 518 struct linux_robust_list_head *head, size_t len); } 519310 STD { int|linux_sys||get_robust_list(int pid, \ 520 struct linux_robust_list_head **head, \ 521 size_t *len); } 522311 UNIMPL kexec_load 523312 UNIMPL getcpu 524313 UNIMPL epoll_pwait 525314 UNIMPL ioprio_set 526315 UNIMPL ioprio_get 527316 STD { int|linux_sys||utimensat(int fd, const char *path, \ 528 struct linux_timespec *times, int flag); } 529317 UNIMPL signalfd 530318 UNIMPL timerfd 531319 UNIMPL eventfd 532320 STD { int|linux_sys||fallocate(int fd, int mode, \ 533 off_t offset, off_t len); } 534321 UNIMPL timerfd_create 535322 UNIMPL timerfd_gettime 536323 UNIMPL timerfd_settime 537324 UNIMPL signalfd4 538325 UNIMPL eventfd2 539326 UNIMPL epoll_create1 540327 STD { int|linux_sys||dup3(int from, int to, int flags); } 541328 STD { int|linux_sys||pipe2(int *pfds, int flags); } 542329 UNIMPL inotify_init1 543330 UNIMPL preadv 544331 UNIMPL pwritev 545332 UNIMPL rt_tgsigqueueinfo 546333 UNIMPL perf_event_open 547334 STD { int|linux_sys||accept4(int s, \ 548 struct osockaddr *name, \ 549 int *anamelen, int flags); } 550335 STD { int|linux_sys||recvmmsg(int s, \ 551 struct linux_mmsghdr *msgvec, unsigned int vlen, \ 552 unsigned int flags, struct timespec *timeout); } 553336 UNIMPL getdents64 554337 UNIMPL fanotify_init 555338 UNIMPL fanotify_mark 556339 UNIMPL prlimit64 557340 UNIMPL name_to_handle_at 558341 UNIMPL open_by_handle_at 559342 UNIMPL clock_adjtime 560343 UNIMPL syncfs 561344 STD { int|linux_sys||sendmmsg(int s, \ 562 struct linux_mmsghdr *msgvec, unsigned int vlen, \ 563 unsigned int flags); } 564345 UNIMPL setns 565346 UNIMPL process_vm_readv 566347 UNIMPL process_vm_writev 567348 UNIMPL kcmp 568349 UNIMPL finit_module 569350 UNIMPL sched_setattr 570351 UNIMPL sched_getattr 571352 UNIMPL renameat2 572353 UNIMPL seccomp 573354 UNIMPL getrandom 574355 UNIMPL memfd_create 575356 UNIMPL bpf 576357 UNIMPL execveat 577358 UNIMPL userfaultfd 578359 UNIMPL membarrier 579360 UNIMPL mlock2 580361 UNIMPL copy_file_range 581362 UNIMPL preadv2 582363 UNIMPL pwritev2 583364 UNIMPL pkey_mprotect 584365 UNIMPL pkey_alloc 585366 UNIMPL pkey_free 586 587