Home | History | Annotate | Line # | Download | only in mips
syscalls.master revision 1.77
      1 	$NetBSD: syscalls.master,v 1.77 2023/07/29 15:05:31 christos 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 
     59 0	NOARGS		{ int|linux_sys||nosys(void); } syscall
     60 1	STD		{ int|linux_sys||exit(int rval); }
     61 2	NOARGS		{ int|sys||fork(void); }
     62 3	NOARGS		{ ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
     63 4	NOARGS		{ ssize_t|sys||write(int fd, const void *buf, \
     64 			    size_t nbyte); }
     65 5	STD		{ int|linux_sys||open(const char *path, int flags, \
     66 			    linux_umode_t mode); }
     67 6	NOARGS		{ int|sys||close(int fd); }
     68 7	STD		{ int|linux_sys||waitpid(int pid, int *status, \
     69 			    int options);}
     70 8	STD		{ int|linux_sys||creat(const char *path, linux_umode_t mode); }
     71 9	NOARGS		{ int|sys||link(const char *path, const char *link); }
     72 10	STD		{ int|linux_sys||unlink(const char *path); }
     73 11	NOARGS		{ int|sys||execve(const char *path, char **argp, \
     74 			    char **envp); }
     75 12	NOARGS		{ int|sys||chdir(const char *path); }
     76 13	STD		{ int|linux_sys||time(linux_time_t *t); }
     77 14	STD		{ int|linux_sys||mknod(const char *path, linux_umode_t mode, \
     78 			    unsigned dev); }
     79 15	NOARGS		{ int|sys||chmod(const char *path, int mode); }
     80 16	NOARGS		{ int|sys||__posix_lchown(const char *path, uid_t uid, \
     81 			    gid_t gid); }
     82 17	UNIMPL
     83 18	OBSOL		ostat
     84 19	NOARGS		{ long|compat_43_sys||lseek(int fd, long offset, \
     85 			    int whence); }
     86 20	NOARGS 		{ pid_t|sys||getpid(void); }
     87 21	UNIMPL		mount
     88 22	OBSOL		umount
     89 23	NOARGS		{ int|sys||setuid(uid_t uid); }
     90 24	NOARGS		{ uid_t|sys||getuid(void); }
     91 25	STD		{ int|linux_sys||stime(linux_time_t *t); }
     92 26	STD		{ int|linux_sys||ptrace(long request, long pid, \
     93 			  long addr, long data); }
     94 27	STD		{ int|linux_sys||alarm(unsigned int secs); }
     95 28	OBSOL		ofstat
     96 29	STD		{ int|linux_sys||pause(void); }
     97 30	STD		{ int|linux_sys||utime(const char *path, \
     98 			    struct linux_utimbuf *times); }
     99 31	UNIMPL
    100 32	UNIMPL
    101 33	NOARGS		{ int|sys||access(const char *path, int flags); }
    102 34	STD		{ int|linux_sys||nice(int incr); }
    103 35	UNIMPL
    104 36	NOARGS		{ int|sys||sync(void); }
    105 37	STD		{ int|linux_sys||kill(int pid, int signum); }
    106 38	NOARGS		{ int|sys||__posix_rename(const char *from, \
    107 			    const char *to); }
    108 39	NOARGS		{ int|sys||mkdir(const char *path, linux_umode_t mode); }
    109 40	NOARGS		{ int|sys||rmdir(const char *path); }
    110 41	NOARGS		{ int|sys||dup(int fd); }
    111 42	STD		{ int|linux_sys||pipe(int *pfds); }
    112 43	STD		{ int|linux_sys||times(struct times *tms); }
    113 44	UNIMPL
    114 45	STD		{ int|linux_sys||brk(char *nsize); }
    115 46	NOARGS		{ int|sys||setgid(gid_t gid); }
    116 47	NOARGS		{ gid_t|sys||getgid(void); }
    117 48	STD		{ int|linux_sys||signal(int signum, \
    118 			    linux___sighandler_t handler); }
    119 49	NOARGS		{ uid_t|sys||geteuid(void); }
    120 50	NOARGS		{ gid_t|sys||getegid(void); }
    121 51	NOARGS		{ int|sys||acct(char *path); }
    122 52	UNIMPL		umount
    123 53	UNIMPL
    124 54	STD		{ int|linux_sys||ioctl(int fd, u_long com, \
    125 			    void *data); }
    126 55	STD		{ int|linux_sys||fcntl(int fd, int cmd, void *arg); }
    127 56	OBSOL		mpx
    128 57	NOARGS		{ int|sys||setpgid(int pid, int pgid); }
    129 58	UNIMPL
    130 59 	STD  		    { int|linux_sys||olduname(struct linux_old_utsname \
    131 			    *up); }
    132 60	NOARGS		{ int|sys||umask(int newmask); }
    133 61	NOARGS		{ int|sys||chroot(char *path); }
    134 62	UNIMPL		ustat
    135 63	NOARGS		{ int|sys||dup2(int from, int to); }
    136 64	NOARGS		{ pid_t|sys||getppid(void); }
    137 65	NOARGS		{ int|sys||getpgrp(void); }
    138 66	NOARGS		{ int|sys||setsid(void); }
    139 67	STD		{ int|linux_sys||sigaction(int signum, \
    140 			    const struct linux_old_sigaction *nsa, \
    141 			    struct linux_old_sigaction *osa); }
    142 68	STD		{ int|linux_sys||siggetmask(void); }
    143 69	STD		{ int|linux_sys||sigsetmask(linux_old_sigset_t mask); }
    144 70	NOARGS		{ int|sys||setreuid(uid_t ruid, uid_t euid); }
    145 71	NOARGS		{ int|sys||setregid(gid_t rgid, gid_t egid); }
    146 72	STD		{ int|linux_sys||sigsuspend(void *restart, \
    147 			    int oldmask, int mask); }
    148 73	STD		{ int|linux_sys||sigpending(linux_old_sigset_t *set); }
    149 74	NOARGS		{ int|compat_43_sys||sethostname(char *hostname, \
    150 			    u_int len);}
    151 75	STD		{ int|linux_sys||setrlimit(u_int which, \
    152 			    struct orlimit *rlp); }
    153 76	STD		{ int|linux_sys||getrlimit(u_int which, \
    154 			    struct orlimit *rlp); }
    155 77	NOARGS		{ int|compat_50_sys||getrusage(int who, \
    156 			    struct rusage50 *rusage); }
    157 78	STD		{ int|linux_sys||gettimeofday(struct timeval50 *tp, \
    158 			    struct timezone *tzp); }
    159 79	STD		{ int|linux_sys||settimeofday(struct timeval50 *tp, \
    160 			    struct timezone *tzp); }
    161 80	NOARGS		{ int|sys||getgroups(int gidsetsize, gid_t *gidset); }
    162 81	NOARGS		{ int|sys||setgroups(int gidsetsize, gid_t *gidset); }
    163 82	UNIMPL		old_select
    164 83	NOARGS		{ int|sys||symlink(const char *path, const char *to); }
    165 84	NOARGS		{ int|compat_43_sys||lstat(const char *path, \
    166 			    struct stat43 *up); } oolstat
    167 85	NOARGS		{ ssize_t|sys||readlink(const char *path, char *buf, \
    168 			    int count); }
    169 86	UNIMPL		uselib
    170 ;86	STD		{ int|linux_sys||uselib(const char *path); }
    171 87	STD		{ int|linux_sys||swapon(char *name); }
    172 88	STD		{ int|linux_sys||reboot(int magic1, int magic2, \
    173 			    int cmd, void *arg); }
    174 89	STD		{ int|linux_sys||readdir(int fd, void *dent, \
    175 			    unsigned int count); }
    176 90	NOARGS      	{ int|linux_sys||mmap(unsigned long addr, size_t len, \
    177 			    int prot, int flags, int fd, linux_off_t offset); }
    178 91	NOARGS		{ int|sys||munmap(void *addr, size_t len); }
    179 92	NOARGS		{ int|compat_43_sys||truncate(const char *path, \
    180 			    long length); }
    181 93	NOARGS		{ int|compat_43_sys||ftruncate(int fd, long length); }
    182 94	NOARGS		{ int|sys||fchmod(int fd, linux_umode_t mode); }
    183 95 	NOARGS		{ int|sys||__posix_fchown(int fd, uid_t uid, \
    184 			    gid_t gid); }
    185 96	STD		{ int|linux_sys||getpriority(int which, int who); }
    186 97	NOARGS		{ int|sys||setpriority(int which, int who, int prio); }
    187 98	UNIMPL
    188 99	STD		{ int|linux_sys||statfs(const char *path, \
    189 			    struct linux_statfs *sp); }
    190 100	STD		{ int|linux_sys||fstatfs(int fd, \
    191 			    struct linux_statfs *sp); }
    192 101	STD		{ int|linux_sys||ioperm(unsigned int lo, \
    193 			    unsigned int hi, int val); }
    194 102	STD		{ int|linux_sys||socketcall(int what, void *args); }
    195 103	UNIMPL		syslog
    196 104	NOARGS		{ int|compat_50_sys||setitimer(int which, \
    197 			    struct itimerval50 *itv, \
    198 			    struct itimerval50 *oitv); }
    199 105	NOARGS		{ int|compat_50_sys||getitimer(int which, \
    200 			    struct itimerval50 *itv); }
    201 106	STD		{ int|linux_sys||stat(const char *path, \
    202 			    struct linux_stat *sp); }
    203 107	STD		{ int|linux_sys||lstat(const char *path, \
    204 			    struct linux_stat *sp); }
    205 108	STD		{ int|linux_sys||fstat(int fd, struct linux_stat *sp); }
    206 109	STD		{ int|linux_sys||uname(struct linux_utsname *up); }
    207 110	UNIMPL		iopl
    208 111	UNIMPL		vhangup
    209 112	UNIMPL		idle
    210 113	UNIMPL		vm86old
    211 114	STD		{ int|linux_sys||wait4(int pid, int *status, \
    212 			    int options, struct rusage50 *rusage); }
    213 115	STD		{ int|linux_sys||swapoff(const char *path); }
    214 116	STD		{ int|linux_sys||sysinfo(struct linux_sysinfo *arg); }
    215 117	STD		{ int|linux_sys||ipc(int what, long a1, long a2, \
    216 			    long a3, void *ptr); }
    217 118	NOARGS		{ int|sys||fsync(int fd); }
    218 119	STD		{ int|linux_sys||sigreturn(struct linux_sigframe *sf); }
    219 120	STD		{ int|linux_sys||clone(int flags, void *stack, \
    220 			    void *parent_tidptr, void *tls, void *child_tidptr); }
    221 121	STD		{ int|linux_sys||setdomainname(char *domainname, \
    222 			    int len); }
    223 122	STD		{ int|linux_sys||new_uname(struct linux_utsname *up); }
    224 123	UNIMPL		modify_ldt
    225 124	UNIMPL		adjtimex
    226 125	STD		{ int|linux_sys||mprotect(const void *start, \
    227 			    unsigned long len, int prot); }
    228 126	STD		{ int|linux_sys||sigprocmask(int how, \
    229 			    const linux_old_sigset_t *set, \
    230 			    linux_old_sigset_t *oset); }
    231 127	UNIMPL		create_module
    232 128	UNIMPL		init_module
    233 129	UNIMPL		delete_module
    234 130	UNIMPL		get_kernel_syms
    235 131	UNIMPL		quotactl
    236 132	NOARGS		{ pid_t|sys||getpgid(pid_t pid); }
    237 133	NOARGS		{ int|sys||fchdir(int fd); }
    238 134	UNIMPL		bdflush
    239 135	UNIMPL		sysfs
    240 136	STD		{ int|linux_sys||personality(unsigned long per); }
    241 137	UNIMPL		afs_syscall
    242 138	STD		{ int|linux_sys||setfsuid(uid_t uid); }
    243 139	STD		{ int|linux_sys||setfsgid(gid_t gid); }
    244 140	STD		{ int|linux_sys||llseek(int fd, u_int32_t ohigh, \
    245 			    u_int32_t olow, void *res, int whence); }
    246 141	STD		{ int|linux_sys||getdents(int fd, \
    247 			    struct linux_dirent *dent, unsigned int count); }
    248 142	STD		{ int|linux_sys||select(int nfds, fd_set *readfds, \
    249 			    fd_set *writefds, fd_set *exceptfds, \
    250 			    struct timeval50 *timeout); }
    251 143	NOARGS		{ int|sys||flock(int fd, int how); }
    252 144	NOARGS		{ int|sys|13|msync(void *addr, size_t len, int flags); }
    253 145	NOARGS		{ ssize_t|sys||readv(int fd, \
    254 			    const struct iovec *iovp, int iovcnt); }
    255 146	NOARGS		{ ssize_t|sys||writev(int fd, \
    256 			    const struct iovec *iovp, int iovcnt); }
    257 147	STD		{ int|linux_sys||cacheflush(void *addr, \
    258 			    int bytes, int cache); }
    259 148	UNIMPL		cachectl
    260 149	STD		{ int|linux_sys||sysmips(long cmd, long arg1, \
    261 			    long arg2, long arg3); }
    262 150	UNIMPL
    263 151	NOARGS		{ pid_t|sys||getsid(pid_t pid); }
    264 152	STD		{ int|linux_sys||fdatasync(int fd); }
    265 153	STD		{ int|linux_sys||__sysctl(struct linux___sysctl *lsp); }
    266 154	NOARGS		{ int|sys||mlock(void *addr, size_t len); }
    267 155	NOARGS		{ int|sys||munlock(void *addr, size_t len); }
    268 156	NOARGS		{ int|sys||mlockall(int flags); }
    269 157	NOARGS		{ int|sys||munlockall(void); }
    270 158	STD		{ int|linux_sys||sched_setparam(pid_t pid, \
    271 			    const struct linux_sched_param *sp); }
    272 159	STD		{ int|linux_sys||sched_getparam(pid_t pid, \
    273 			    struct linux_sched_param *sp); }
    274 160	STD		{ int|linux_sys||sched_setscheduler(pid_t pid, \
    275 			    int policy, const struct linux_sched_param *sp); }
    276 161	STD		{ int|linux_sys||sched_getscheduler(pid_t pid); }
    277 162	STD		{ int|linux_sys||sched_yield(void); }
    278 163	STD		{ int|linux_sys||sched_get_priority_max(int policy); }
    279 164	STD		{ int|linux_sys||sched_get_priority_min(int policy); }
    280 165	UNIMPL		sched_rr_get_interval
    281 166	STD		{ int|linux_sys||nanosleep( \
    282 			    const struct linux_timespec *rqtp, \
    283 			    struct linux_timespec *rmtp); }
    284 167	STD		{ void *|linux_sys||mremap(void *old_address, \
    285 			    size_t old_size, size_t new_size, u_long flags); }
    286 168	STD		{ int|linux_sys||accept(int s, \
    287 			    struct osockaddr *name, int *anamelen); }
    288 169	STD		{ int|linux_sys||bind(int s, \
    289 			    const struct osockaddr *name, int namelen); }
    290 170	STD		{ int|linux_sys||connect(int s, \
    291 			    const struct osockaddr *name, int namelen); }
    292 171	STD		{ int|linux_sys||getpeername(int fdes, void *asa, \
    293 			    int *alen); }
    294 172	STD		{ int|linux_sys||getsockname(int fdes, void *asa, \
    295 			    int *alen); }
    296 173	STD		{ int|linux_sys||getsockopt(int s, int level, \
    297 			    int optname, void *optval, int *optlen); }
    298 174	NOARGS		{ int|sys||listen(int s, int backlog); }
    299 175	STD		{ int|linux_sys||recv(int s, void *buf, int len, \
    300 			    int flags); }
    301 176	STD		{ int|linux_sys||recvfrom(int s, void *buf, int len, \
    302 			    int flags, struct osockaddr *from, \
    303 			    int *fromlenaddr); }
    304 177	STD		{ int|linux_sys||recvmsg(int s, \
    305 			    struct linux_msghdr *msg, u_int flags); }
    306 178	STD		{ int|linux_sys||send(int s, void *buf, int len, \
    307 			    int flags); }
    308 179	STD		{ int|linux_sys||sendmsg(int s, \
    309 			    struct linux_msghdr *msg, u_int flags); }
    310 180	STD		{ int|linux_sys||sendto(int s, void *msg, \
    311 			    int len, int flags, struct osockaddr *to, \
    312 			    int tolen); }
    313 181	STD		{ int|linux_sys||setsockopt(int s, int level, \
    314 			    int optname, void *optval, int optlen); }
    315 182	UNIMPL		shutdown
    316 183	STD		{ int|linux_sys||socket(int domain, int type, \
    317 			    int protocol); }
    318 184	STD		{ int|linux_sys||socketpair(int domain, int type, \
    319 			    int protocol, int *rsv); }
    320 185	STD		{ int|linux_sys||setresuid(uid_t ruid, uid_t euid, \
    321 			    uid_t suid); }
    322 186	STD		{ int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \
    323 			    uid_t *suid); }
    324 187	UNIMPL		query_module
    325 188	NOARGS		{ int|sys||poll(struct pollfd *fds, u_int nfds, \
    326 			    int timeout); }
    327 189	UNIMPL		nfsservctl
    328 190	STD		{ int|linux_sys||setresgid(gid_t rgid, gid_t egid, \
    329 			    gid_t sgid); }
    330 191	STD		{ int|linux_sys||getresgid(gid_t *rgid, gid_t *egid, \
    331 			    gid_t *sgid); }
    332 192	UNIMPL		prctl
    333 193	STD		{ int|linux_sys||rt_sigreturn( \
    334 			    struct linux_pt_regs *regs); }
    335 194	STD		{ int|linux_sys||rt_sigaction(int signum, \
    336 			    const struct linux_sigaction *nsa, \
    337 			    struct linux_sigaction *osa, \
    338 			    size_t sigsetsize); }
    339 195	STD		{ int|linux_sys||rt_sigprocmask(int how, \
    340 			    const linux_sigset_t *set, \
    341 			    linux_sigset_t *oset, \
    342 			    size_t sigsetsize); }
    343 196	STD		{ int|linux_sys||rt_sigpending( \
    344 			    linux_sigset_t *set, \
    345 			    size_t sigsetsize); }
    346 197	STD		{ int|linux_sys||rt_sigtimedwait( \
    347 			    const linux_sigset_t *set, \
    348 			    linux_siginfo_t *info, \
    349 			    const struct linux_timespec *timeout); }
    350 198	STD		{ int|linux_sys||rt_queueinfo(int pid, int signum, \
    351 			    linux_siginfo_t *uinfo); }
    352 199	STD		{ int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \
    353 			    size_t sigsetsize); }
    354 200	STD		{ int|linux_sys||pread(int fd, char *buf, \
    355 			    size_t nbyte, off_t offset); }
    356 201	STD		{ int|linux_sys||pwrite(int fd, char *buf, \
    357 			    size_t nbyte, off_t offset); }
    358 202	NOARGS		{ int|sys||__posix_chown(const char *path, uid_t uid, \
    359 			    gid_t gid); }
    360 203	NOARGS		{ int|sys||__getcwd(char *bufp, size_t length); }
    361 204	UNIMPL		capget
    362 205	UNIMPL		capset
    363 206	STD		{ int|linux_sys||sigaltstack( \
    364 			    const struct linux_sigaltstack *ss, \
    365 			    struct linux_sigaltstack *oss); }
    366 207	UNIMPL		sendfile
    367 208	UNIMPL
    368 209	UNIMPL
    369 #define linux_sys_mmap2_args linux_sys_mmap_args
    370 210	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); }
    373 211	STD		{ int|linux_sys||truncate64(const char *path, \
    374 			    off_t length); }
    375 212	STD		{ int|linux_sys||ftruncate64(unsigned int fd, \
    376 			    off_t length); }
    377 213	STD		{ int|linux_sys||stat64(const char *path, \
    378 			    struct linux_stat64 *sp); }
    379 214	STD		{ int|linux_sys||lstat64(const char *path, \
    380 			    struct linux_stat64 *sp); }
    381 215	STD		{ int|linux_sys||fstat64(int fd, \
    382 			    struct linux_stat64 *sp); }
    383 216	UNIMPL		pivot_root
    384 217	NOARGS		{ int|sys||mincore(void *addr, size_t len, char *vec); }
    385 218	NOARGS		{ int|sys||madvise(void *addr, size_t len, int behav); }
    386 219	STD		{ int|linux_sys||getdents64(int fd, \
    387 			    struct linux_dirent64 *dent, unsigned int count); }
    388 220	STD		{ int|linux_sys||fcntl64(int fd, \
    389 			    int cmd, void *arg); }
    390 221	UNIMPL		/* reserved */
    391 222	NOARGS		{ pid_t|linux_sys||gettid(void); }
    392 223	STD		{ ssize_t|linux_sys||readahead(int fd, off_t offset, \
    393 			    size_t count); }
    394 224	STD		{ int|linux_sys||setxattr(char *path, char *name, \
    395 			    void *value, size_t size, int flags); }
    396 225	STD		{ int|linux_sys||lsetxattr(char *path, char *name, \
    397 			    void *value, size_t size, int flags); }
    398 226	STD		{ int|linux_sys||fsetxattr(int fd, char *name, \
    399 			    void *value, size_t size, int flags); }
    400 227	STD		{ ssize_t|linux_sys||getxattr(char *path, char *name, \
    401 			    void *value, size_t size); }
    402 228	STD		{ ssize_t|linux_sys||lgetxattr(char *path, char *name, \
    403 			    void *value, size_t size); }
    404 229	STD		{ ssize_t|linux_sys||fgetxattr(int fd, char *name, \
    405 			    void *value, size_t size); }
    406 230	STD		{ ssize_t|linux_sys||listxattr(char *path, char *list, \
    407 			    size_t size); }
    408 231	STD		{ ssize_t|linux_sys||llistxattr(char *path, char *list, \
    409 			    size_t size); }
    410 232	STD		{ ssize_t|linux_sys||flistxattr(int fd, char *list, \
    411 			    size_t size); }
    412 233	STD		{ int|linux_sys||removexattr(char *path, char *name); }
    413 234	STD		{ int|linux_sys||lremovexattr(char *path, char *name); }
    414 235	STD		{ int|linux_sys||fremovexattr(int fd, char *name); }
    415 236	STD		{ int|linux_sys||tkill(int tid, int sig); }
    416 237	UNIMPL		sendfile64
    417 238	STD		{ int|linux_sys||futex(int *uaddr, int op, int val, \
    418 			    const struct linux_timespec *timeout, int *uaddr2, \
    419 			    int val3); }
    420 239	STD		{ int|linux_sys||sched_setaffinity(pid_t pid, \
    421 			    unsigned int len, unsigned long *mask); }
    422 240	STD		{ int|linux_sys||sched_getaffinity(pid_t pid, \
    423 			    unsigned int len, unsigned long *mask); }
    424 241	UNIMPL		io_setup
    425 242	UNIMPL		io_destroy
    426 243	UNIMPL		io_getevents
    427 244	UNIMPL		io_submit
    428 245	UNIMPL		io_cancel
    429 246	STD		{ int|linux_sys||exit_group(int error_code); }
    430 247	UNIMPL		lookup_dcookie
    431 248	STD		{ int|linux_sys||epoll_create(int size); }
    432 249	STD		{ int|linux_sys||epoll_ctl(int epfd, int op, int fd, \
    433 			    struct linux_epoll_event *event); }
    434 250	STD		{ int|linux_sys||epoll_wait(int epfd, \
    435 			    struct linux_epoll_event *events, int maxevents, \
    436 			    int timeout); }
    437 251	UNIMPL		remap_file_pages
    438 252	STD		{ int|linux_sys||set_tid_address(int *tid); }
    439 253	UNIMPL		restart_syscall
    440 254	STD		{ int|linux_sys||fadvise64(int fd, off_t offset, \
    441 			    size_t len, int advice); }
    442 255	STD		{ int|linux_sys||statfs64(const char *path, \
    443 			    size_t sz, struct linux_statfs64 *sp); }
    444 256	STD		{ int|linux_sys||fstatfs64(int fd, \
    445 			    size_t sz, struct linux_statfs64 *sp); }
    446 257	STD		{ int|linux_sys||timer_create(clockid_t clockid, \
    447 			    struct linux_sigevent *evp, timer_t *timerid); }
    448 258	STD		{ int|linux_sys||timer_settime(timer_t timerid, \
    449 			    int flags, const struct linux_itimerspec *tim, \
    450 			    struct linux_itimerspec *otim); }
    451 259	STD		{ int|linux_sys||timer_gettime(timer_t timerid, \
    452 			    struct linux_itimerspec *tim); }
    453 260	NOARGS		{ int|sys||timer_getoverrun(timer_t timerid); }
    454 261	NOARGS		{ int|sys||timer_delete(timer_t timerid); }
    455 262	STD		{ int|linux_sys||clock_settime(clockid_t which, \
    456 			    struct linux_timespec *tp); }
    457 263	STD		{ int|linux_sys||clock_gettime(clockid_t which, \
    458 			    struct linux_timespec *tp); }
    459 264	STD		{ int|linux_sys||clock_getres(clockid_t which, \
    460 			    struct linux_timespec *tp); }
    461 265	STD		{ int|linux_sys||clock_nanosleep(clockid_t which, \
    462 			    int flags, struct linux_timespec *rqtp, \
    463 			    struct linux_timespec *rmtp); }
    464 266	STD		{ int|linux_sys||tgkill(int tgid, int tid, int sig); }
    465 267	NOARGS		{ int|compat_50_sys||utimes(const char *path, \
    466 			    const struct timeval50 *tptr); }
    467 268	UNIMPL		mbind
    468 269	UNIMPL		get_mempolicy
    469 270	UNIMPL		set_mempolicy
    470 271	UNIMPL		mq_open
    471 272	UNIMPL		mq_unlink
    472 273	UNIMPL		mq_timedsend
    473 274	UNIMPL		mq_timedreceive
    474 275	UNIMPL		mq_notify
    475 276	UNIMPL		mq_getsetattr
    476 277	UNIMPL		vserve
    477 278	UNIMPL		waitid
    478 279	UNIMPL		setaltroot
    479 280	UNIMPL		add_key
    480 281	UNIMPL		request_key
    481 282	UNIMPL		keyctl
    482 283	STD		{ int|linux_sys||set_thread_area(void *tls); }
    483 284	UNIMPL		inotify_init
    484 285	UNIMPL		inotify_add_watch
    485 286	UNIMPL		inotify_rm_watch
    486 287	UNIMPL		migrate_pages
    487 288	STD 		{ int|linux_sys||openat(int fd, const char *path, \
    488 			    int flags, ... linux_umode_t mode); }
    489 289	NOARGS		{ int|sys||mkdirat(int fd, const char *path, \
    490 			    linux_umode_t mode); }
    491 290	STD		{ int|linux_sys||mknodat(int fd, const char *path, \
    492 			    linux_umode_t mode, unsigned dev); }
    493 291	STD		{ int|linux_sys||fchownat(int fd, const char *path, \
    494 			    uid_t owner, gid_t group, int flag); }
    495 292	UNIMPL		futimesat
    496 293	STD		{ int|linux_sys||fstatat64(int fd, const char *path, \
    497 			    struct linux_stat64 *sp, int flag); }
    498 294	STD		{ int|linux_sys||unlinkat(int fd, const char *path, \
    499 			    int flag); }
    500 295	NOARGS		{ int|sys||renameat(int fromfd, const char *from, \
    501 			    int tofd, const char *to); }
    502 296	STD		{ int|linux_sys||linkat(int fd1, const char *name1, \
    503 			    int fd2, const char *name2, int flags); }
    504 297	NOARGS		{ int|sys||symlinkat(const char *path1, int fd, \
    505 			    const char *path2); }
    506 298	NOARGS		{ ssize_t|sys||readlinkat(int fd, const char *path, \
    507 			    char *buf, size_t bufsize); }
    508 299	STD		{ int|linux_sys||fchmodat(int fd, const char *path, \
    509 			    linux_umode_t mode); }
    510 300	STD		{ int|linux_sys||faccessat(int fd, const char *path, \
    511 			    int amode); }
    512 301	STD		{ int|linux_sys||pselect6(int nfds, fd_set *readfds, \
    513 			   fd_set *writefds, fd_set *exceptfds, \
    514 			   struct linux_timespec *timeout, \
    515 			   linux_sized_sigset_t *ss); }
    516 302	STD		{ int|linux_sys||ppoll(struct pollfd *fds, u_int nfds, \
    517 			    struct linux_timespec *timeout, \
    518 			    linux_sigset_t *sigset); }
    519 303	UNIMPL		unshare
    520 304	UNIMPL		splice
    521 305	UNIMPL		sync_file_range
    522 306	UNIMPL		tee
    523 307	UNIMPL		vmsplice
    524 308	UNIMPL		move_pages
    525 			;
    526 			; The NetBSD native robust list calls have different
    527 			; argument names / types, but they are ABI-compatible
    528 			; with Linux.
    529 			;
    530 309	NOARGS		{ int|sys||__futex_set_robust_list(void *head, \
    531 			    size_t len); }
    532 310	NOARGS		{ int|sys||__futex_get_robust_list(lwpid_t lwpid, \
    533 			    void **headp, size_t *lenp); }
    534 311	UNIMPL		kexec_load
    535 312	UNIMPL		getcpu
    536 313	STD		{ int|linux_sys||epoll_pwait(int epfd, \
    537 			    struct linux_epoll_event *events, int maxevents, \
    538 			    int timeout, const linux_sigset_t *sigmask); }
    539 314	UNIMPL		ioprio_set
    540 315	UNIMPL		ioprio_get
    541 316	STD		{ int|linux_sys||utimensat(int fd, const char *path, \
    542 			    struct linux_timespec *times, int flag); }
    543 317	UNIMPL		signalfd
    544 318	UNIMPL		timerfd
    545 319	STD		{ int|linux_sys||eventfd(unsigned int initval); }
    546 320	STD		{ int|linux_sys||fallocate(int fd, int mode, \
    547 			    off_t offset, off_t len); }
    548 321	STD		{ int|linux_sys||timerfd_create(clockid_t clock_id, \
    549 			    int flags); }
    550 322	STD		{ int|linux_sys||timerfd_gettime(int fd, \
    551 			    struct linux_itimerspec *tim); }
    552 323	STD		{ int|linux_sys||timerfd_settime(int fd, int flags, \
    553 			    const struct linux_itimerspec *tim, \
    554 			    struct linux_itimerspec *otim); }
    555 324	UNIMPL		signalfd4
    556 325	STD		{ int|linux_sys||eventfd2(unsigned int initval, \
    557 			    int flags); }
    558 326	STD		{ int|linux_sys||epoll_create1(int flags); }
    559 327	STD		{ int|linux_sys||dup3(int from, int to, int flags); }
    560 328	STD		{ int|linux_sys||pipe2(int *pfds, int flags); }
    561 329	UNIMPL		inotify_init1
    562 330	STD		{ int|linux_sys||preadv(int fd, \
    563 			    const struct iovec *iovp, int iovcnt, \
    564 			    unsigned long off_lo, unsigned long off_hi); }
    565 331	STD		{ int|linux_sys||pwritev(int fd, \
    566 			    const struct iovcnt *iovp, int iovcnt, \
    567 			    unsigned long off_lo, unsigned long off_hi); }
    568 332	UNIMPL		rt_tgsigqueueinfo
    569 333	UNIMPL		perf_event_open
    570 334	STD		{ int|linux_sys||accept4(int s, \
    571 			    struct osockaddr *name, \
    572 			    int *anamelen, int flags); }
    573 335	STD		{ int|linux_sys||recvmmsg(int s, \
    574 			    struct linux_mmsghdr *msgvec, unsigned int vlen, \
    575 			    unsigned int flags, struct timespec *timeout); }
    576 336	UNIMPL		getdents64
    577 337	UNIMPL		fanotify_init
    578 338	UNIMPL		fanotify_mark
    579 339	STD		{ int|linux_sys||prlimit64(pid_t pid, int which, \
    580 			    struct rlimit *new_rlp, struct rlimit *old_rlp); }
    581 340	UNIMPL		name_to_handle_at
    582 341	UNIMPL		open_by_handle_at
    583 342	UNIMPL		clock_adjtime
    584 343	UNIMPL		syncfs
    585 344	STD		{ int|linux_sys||sendmmsg(int s, \
    586 			    struct linux_mmsghdr *msgvec, unsigned int vlen, \
    587 			    unsigned int flags); }
    588 345	UNIMPL		setns
    589 346	UNIMPL		process_vm_readv
    590 347	UNIMPL		process_vm_writev
    591 348	UNIMPL		kcmp
    592 349	UNIMPL		finit_module
    593 350	UNIMPL		sched_setattr
    594 351	UNIMPL		sched_getattr
    595 352	UNIMPL		renameat2
    596 353	NOARGS		{ ssize_t|sys||getrandom(void *buf, size_t buflen, \
    597 			    unsigned int flags); }
    598 354	STD		{ int|linux_sys||memfd_create(const char *name, \
    599 			    unsigned int flags); }
    600 355	UNIMPL		bpf
    601 356	UNIMPL		execveat
    602 357	UNIMPL		userfaultfd
    603 358	UNIMPL		membarrier
    604 359	UNIMPL		mlock2
    605 360	UNIMPL		copy_file_range
    606 361	UNIMPL		preadv2
    607 362	UNIMPL		pwritev2
    608 363	UNIMPL		pkey_mprotect
    609 364	UNIMPL		pkey_alloc
    610 365	UNIMPL		pkey_free
    611 366     STD		{ int|linux_sys||statx(int fd, const char *path, \
    612 			    int flag, unsigned int mask, \
    613 			    struct linux_statx *sp); }
    614 367	UNIMPL
    615 368	UNIMPL
    616 369	UNIMPL
    617 370	UNIMPL
    618 371	UNIMPL
    619 372	UNIMPL
    620 373	UNIMPL
    621 374	UNIMPL
    622 375	UNIMPL
    623 376	UNIMPL
    624 377	UNIMPL
    625 378	UNIMPL
    626 379	UNIMPL
    627 380	UNIMPL
    628 381	UNIMPL
    629 382	UNIMPL
    630 383	UNIMPL
    631 384	UNIMPL
    632 385	UNIMPL
    633 386	UNIMPL
    634 387	UNIMPL
    635 388	UNIMPL
    636 389	UNIMPL
    637 390	UNIMPL
    638 391	UNIMPL
    639 392	UNIMPL
    640 393	UNIMPL
    641 394	UNIMPL
    642 395	UNIMPL
    643 396	UNIMPL
    644 397	UNIMPL
    645 398	UNIMPL
    646 399	UNIMPL
    647 400	UNIMPL
    648 401	UNIMPL
    649 402	UNIMPL
    650 403	UNIMPL
    651 404	UNIMPL
    652 405	UNIMPL
    653 406	UNIMPL
    654 407	UNIMPL
    655 408	UNIMPL
    656 409	UNIMPL
    657 410	UNIMPL
    658 411	UNIMPL
    659 412	UNIMPL
    660 413	UNIMPL
    661 414	UNIMPL
    662 415	UNIMPL
    663 416	UNIMPL
    664 417	UNIMPL
    665 418	UNIMPL
    666 419	UNIMPL
    667 420	UNIMPL
    668 421	UNIMPL
    669 422	UNIMPL
    670 423	UNIMPL
    671 424	UNIMPL
    672 425	UNIMPL
    673 426	UNIMPL
    674 427	UNIMPL
    675 428	UNIMPL
    676 429	UNIMPL
    677 430	UNIMPL
    678 431	UNIMPL
    679 432	UNIMPL
    680 433	UNIMPL
    681 434	UNIMPL
    682 435	UNIMPL
    683 436	STD		{ int|linux_sys||close_range(unsigned int first, \
    684 			    unsigned int last, unsigned int flags); }
    685 437	UNIMPL
    686 438	UNIMPL
    687 439	UNIMPL
    688 440	UNIMPL
    689 441	STD		{ int|linux_sys||epoll_pwait2(int epfd, \
    690 			    struct linux_epoll_event *events, int maxevents, \
    691 			    const struct linux_timespec *timeout, \
    692 			    const linux_sigset_t *sigmask); }
    693