Home | History | Annotate | Line # | Download | only in m68k
syscalls.master revision 1.100
      1 	$NetBSD: syscalls.master,v 1.100 2021/11/24 18:52:13 ryo Exp $
      2 
      3 ;	@(#)syscalls.master	8.1 (Berkeley) 7/19/93
      4 
      5 ; NetBSD m68k COMPAT_LINUX system call name/number "master" file.
      6 ; (See syscalls.conf to see what it is processed into.)
      7 ;
      8 ; Fields: number type [type-dependent ...]
      9 ;	number	system call number, must be in order
     10 ;	type	one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of
     11 ;		the compatibility options defined in syscalls.conf.
     12 ;
     13 ; types:
     14 ;	STD	always included
     15 ;	OBSOL	obsolete, not included in system
     16 ;	UNIMPL	unimplemented, not included in system
     17 ;	NODEF	included, but don't define the syscall number
     18 ;	NOARGS	included, but don't define the syscall args structure
     19 ;	INDIR	included, but don't define the syscall args structure
     20 ;		and allow it to be "really" varargs.
     21 ;
     22 ; The compat options are defined in the syscalls.conf file, and the
     23 ; compat option name is prefixed to the syscall name.  Other than
     24 ; that, they're like NODEF (for 'compat' options), or STD (for
     25 ; 'libcompat' options).
     26 ;
     27 ; The type-dependent arguments are as follows:
     28 ; For STD, NODEF, NOARGS, and compat syscalls:
     29 ;	{ pseudo-proto } [alias]
     30 ; For other syscalls:
     31 ;	[comment]
     32 ;
     33 ; #ifdef's, etc. may be included, and are copied to the output files.
     34 ; #include's are copied to the syscall names and switch definition files only.
     35 
     36 #if defined(_KERNEL_OPT)
     37 #include "opt_compat_netbsd.h"
     38 #include "opt_compat_43.h"
     39 #endif
     40 
     41 #include <sys/param.h>
     42 #include <sys/poll.h>
     43 #include <sys/systm.h>
     44 #include <sys/signal.h>
     45 #include <sys/mount.h>
     46 #include <sys/sched.h>
     47 #include <sys/syscallargs.h>
     48 
     49 #include <compat/linux/common/linux_types.h>
     50 #include <compat/linux/common/linux_signal.h>
     51 #include <compat/linux/common/linux_siginfo.h>
     52 #include <compat/linux/common/linux_machdep.h>
     53 #include <compat/linux/common/linux_mmap.h>
     54 
     55 #include <compat/linux/linux_syscallargs.h>
     56 
     57 %%
     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 lchown on i386; chown on m68k.
     81 16	STD		{ int|linux_sys||chown16(const char *path, \
     82 			    linux_uid16_t uid, linux_gid16_t gid); }
     83 17	OBSOL		break
     84 18	OBSOL		ostat
     85 #if !defined(_KERNEL) || defined(COMPAT_43)
     86 19	NOARGS		{ long|compat_43_sys||lseek(int fd, long offset, \
     87 			    int whence); }
     88 #else
     89 19	UNIMPL		compat_43_sys_lseek
     90 #endif
     91 20	NOARGS 		{ pid_t|sys||getpid(void); }
     92 21	UNIMPL		mount
     93 22	OBSOL		umount
     94 23	NOARGS		linux_setuid16 { int|sys||setuid(uid_t uid); }
     95 24	NOARGS		linux_getuid16 { uid_t|sys||getuid(void); }
     96 25	STD		{ int|linux_sys||stime(linux_time_t *t); }
     97 26	STD		{ int|linux_sys||ptrace(int request, int pid, \
     98 			  int addr, int data); }
     99 27	STD		{ int|linux_sys||alarm(unsigned int secs); }
    100 28	OBSOL		ofstat
    101 29	STD		{ int|linux_sys||pause(void); }
    102 30	STD		{ int|linux_sys||utime(const char *path, \
    103 			    struct linux_utimbuf *times); }
    104 31	OBSOL		stty
    105 32	OBSOL		gtty
    106 33	NOARGS		{ int|sys||access(const char *path, int flags); }
    107 34	STD		{ int|linux_sys||nice(int incr); }
    108 35	OBSOL		ftime
    109 36	NOARGS		{ int|sys||sync(void); }
    110 37	STD		{ int|linux_sys||kill(int pid, int signum); }
    111 38	NOARGS		{ int|sys||__posix_rename(const char *from, \
    112 			    const char *to); }
    113 39	NOARGS		{ int|sys||mkdir(const char *path, linux_umode_t mode); }
    114 40	NOARGS		{ int|sys||rmdir(const char *path); }
    115 41	NOARGS		{ int|sys||dup(int fd); }
    116 42	STD		{ int|linux_sys||pipe(int *pfds); }
    117 43	STD		{ int|linux_sys||times(struct times *tms); }
    118 44	OBSOL		prof
    119 45	STD		{ int|linux_sys||brk(char *nsize); }
    120 46	NOARGS		linux_setgid16 { int|sys||setgid(gid_t gid); }
    121 47	NOARGS		linux_getgid16 { gid_t|sys||getgid(void); }
    122 48	STD		{ int|linux_sys||signal(int signum, \
    123 			    linux_handler_t handler); }
    124 49	NOARGS		linux_geteuid16 { uid_t|sys||geteuid(void); }
    125 50	NOARGS		linux_getegid16 { gid_t|sys||getegid(void); }
    126 51	NOARGS		{ int|sys||acct(char *path); }
    127 52	UNIMPL		umount
    128 53	OBSOL		lock
    129 54	STD		{ int|linux_sys||ioctl(int fd, u_long com, \
    130 			    void *data); }
    131 55	STD		{ int|linux_sys||fcntl(int fd, int cmd, void *arg); }
    132 56	OBSOL		mpx
    133 57	NOARGS		{ int|sys||setpgid(int pid, int pgid); }
    134 58	OBSOL		ulimit
    135 59	UNIMPL		oldolduname
    136 60	NOARGS		{ int|sys||umask(int newmask); }
    137 61	NOARGS		{ int|sys||chroot(char *path); }
    138 62	UNIMPL		ustat
    139 63	NOARGS		{ int|sys||dup2(int from, int to); }
    140 64	NOARGS		{ pid_t|sys||getppid(void); }
    141 65	NOARGS		{ int|sys||getpgrp(void); }
    142 66	NOARGS		{ int|sys||setsid(void); }
    143 67	STD		{ int|linux_sys||sigaction(int signum, \
    144 			    const struct linux_old_sigaction *nsa, \
    145 			    struct linux_old_sigaction *osa); }
    146 68	STD		{ int|linux_sys||siggetmask(void); }
    147 69	STD		{ int|linux_sys||sigsetmask(linux_old_sigset_t mask); }
    148 70	STD		{ int|linux_sys||setreuid16(linux_uid16_t ruid, \
    149 			    linux_uid16_t euid); }
    150 71	STD		{ int|linux_sys||setregid16(linux_gid16_t rgid, \
    151 			    linux_gid16_t egid); }
    152 72	STD		{ int|linux_sys||sigsuspend(void *restart, \
    153 			    int oldmask, int mask); }
    154 73	STD		{ int|linux_sys||sigpending(linux_old_sigset_t *set); }
    155 #if !defined(_KERNEL) || defined(COMPAT_43)
    156 74	NOARGS		{ int|compat_43_sys||sethostname(char *hostname, \
    157 			    u_int len);}
    158 #else
    159 74	UNIMPL		compat_43_sys_sethostname
    160 #endif
    161 75	STD		{ int|linux_sys||setrlimit(u_int which, \
    162 			    struct orlimit *rlp); }
    163 76	STD		{ int|linux_sys||getrlimit(u_int which, \
    164 			    struct orlimit *rlp); }
    165 77	NOARGS		{ int|compat_50_sys||getrusage(int who, \
    166 			    struct rusage50 *rusage); }
    167 78	STD		{ int|linux_sys||gettimeofday(struct timeval50 *tp, \
    168 			    struct timezone *tzp); }
    169 79	STD		{ int|linux_sys||settimeofday(struct timeval50 *tp, \
    170 			    struct timezone *tzp); }
    171 80	STD		{ int|linux_sys||getgroups16(int gidsetsize, \
    172 			    linux_gid16_t *gidset); }
    173 81	STD		{ int|linux_sys||setgroups16(int gidsetsize, \
    174 			    linux_gid16_t *gidset); }
    175 82	STD		{ int|linux_sys||oldselect(struct linux_oldselect *lsp); }
    176 83	NOARGS		{ int|sys||symlink(const char *path, const char *to); }
    177 #if !defined(_KERNEL) || defined(COMPAT_43)
    178 84	NOARGS		{ int|compat_43_sys||lstat(const char *path, \
    179 			    struct stat43 *up); } oolstat
    180 #else
    181 84	UNIMPL		compat_43_sys_lstat
    182 #endif
    183 85	NOARGS		{ ssize_t|sys||readlink(const char *path, char *buf, \
    184 			    int count); }
    185 #ifdef EXEC_AOUT
    186 86	STD		{ int|linux_sys||uselib(const char *path); }
    187 #else
    188 86	UNIMPL		sys_uselib
    189 #endif
    190 87	STD		{ int|linux_sys||swapon(char *name); }
    191 88	STD		{ int|linux_sys||reboot(int magic1, int magic2, \
    192 			    int cmd, void *arg); }
    193 89	STD		{ int|linux_sys||readdir(int fd, void *dent, \
    194 			    unsigned int count); }
    195 90	STD		{ int|linux_sys||old_mmap(struct linux_oldmmap *lmp); }
    196 91	NOARGS		{ int|sys||munmap(void *addr, size_t len); }
    197 92	NOARGS		{ int|compat_43_sys||truncate(const char *path, \
    198 			    long length); }
    199 #if !defined(_KERNEL) || defined(COMPAT_43)
    200 93	NOARGS		{ int|compat_43_sys||ftruncate(int fd, long length); }
    201 #else
    202 93	UNIMPL		compat_43_sys_ftruncate
    203 #endif
    204 94	NOARGS		{ int|sys||fchmod(int fd, linux_umode_t mode); }
    205 95	STD		{ int|linux_sys||fchown16(int fd, linux_uid16_t uid, \
    206 			    linux_gid16_t gid); }
    207 96	STD		{ int|linux_sys||getpriority(int which, int who); }
    208 97	NOARGS		{ int|sys||setpriority(int which, int who, int prio); }
    209 98	NOARGS		{ int|sys||profil(void *samples, u_int size, \
    210 			    u_int offset, u_int scale); }
    211 99	STD		{ int|linux_sys||statfs(const char *path, \
    212 			    struct linux_statfs *sp); }
    213 100	STD		{ int|linux_sys||fstatfs(int fd, \
    214 			    struct linux_statfs *sp); }
    215 101	UNIMPL		ioperm
    216 102	STD		{ int|linux_sys||socketcall(int what, void *args); }
    217 103	UNIMPL		syslog
    218 104	NOARGS		{ int|compat_50_sys||setitimer(int which, \
    219 			    struct itimerval50 *itv, \
    220 			    struct itimerval50 *oitv); }
    221 105	NOARGS		{ int|compat_50_sys||getitimer(int which, \
    222 			    struct itimerval50 *itv); }
    223 106	STD		{ int|linux_sys||stat(const char *path, \
    224 			    struct linux_stat *sp); }
    225 107	STD		{ int|linux_sys||lstat(const char *path, \
    226 			    struct linux_stat *sp); }
    227 108	STD		{ int|linux_sys||fstat(int fd, struct linux_stat *sp); }
    228 109	UNIMPL		olduname
    229 110	UNIMPL		iopl
    230 111	UNIMPL		vhangup
    231 112	UNIMPL		idle
    232 113	UNIMPL		vm86old
    233 114	STD		{ int|linux_sys||wait4(int pid, int *status, \
    234 			    int options, struct rusage50 *rusage); }
    235 115	STD		{ int|linux_sys||swapoff(const char *path); }
    236 116	STD		{ int|linux_sys||sysinfo(struct linux_sysinfo *arg); }
    237 117	STD		{ int|linux_sys||ipc(int what, int a1, int a2, int a3, \
    238 			    void *ptr); }
    239 118	NOARGS		{ int|sys||fsync(int fd); }
    240 119	STD		{ int|linux_sys||sigreturn(void); }
    241 120	STD		{ int|linux_sys||clone(int flags, void *stack, \
    242 			    void *parent_tidptr, void *tls, void *child_tidptr); }
    243 121	STD		{ int|linux_sys||setdomainname(char *domainname, \
    244 			    int len); }
    245 122	STD		{ int|linux_sys||uname(struct linux_utsname *up); }
    246 123	STD		{ int|linux_sys||cacheflush(unsigned long addr, \
    247 			    int scope, int cache, unsigned long len); }
    248 124	UNIMPL		adjtimex
    249 125	STD		{ int|linux_sys||mprotect(const void *start, \
    250 			    unsigned long len, int prot); }
    251 126	STD		{ int|linux_sys||sigprocmask(int how, \
    252 			    const linux_old_sigset_t *set, \
    253 			    linux_old_sigset_t *oset); }
    254 127	UNIMPL		create_module
    255 128	UNIMPL		init_module
    256 129	UNIMPL		delete_module
    257 130	UNIMPL		get_kernel_syms
    258 131	UNIMPL		quotactl
    259 132	NOARGS		{ pid_t|sys||getpgid(pid_t pid); }
    260 133	NOARGS		{ int|sys||fchdir(int fd); }
    261 134	UNIMPL		bdflush
    262 135	UNIMPL		sysfs
    263 136	STD		{ int|linux_sys||personality(unsigned long per); }
    264 137	UNIMPL		afs_syscall
    265 138	NOARGS		linux_setfsuid16 { int|linux_sys||setfsuid(uid_t uid); }
    266 139	NOARGS		linux_setfsgid16 { int|linux_sys||setfsgid(gid_t gid); }
    267 140	STD		{ int|linux_sys||llseek(int fd, u_int32_t ohigh, \
    268 			    u_int32_t olow, void *res, int whence); }
    269 141	STD		{ int|linux_sys||getdents(int fd, \
    270 			    struct linux_dirent *dent, unsigned int count); }
    271 142	STD		{ int|linux_sys||select(int nfds, fd_set *readfds, \
    272 			    fd_set *writefds, fd_set *exceptfds, \
    273 			    struct timeval50 *timeout); }
    274 143	NOARGS		{ int|sys||flock(int fd, int how); }
    275 144	NOARGS		{ int|sys|13|msync(void *addr, size_t len, int flags); }
    276 145	NOARGS		{ ssize_t|sys||readv(int fd, \
    277 			    const struct iovec *iovp, int iovcnt); }
    278 146	NOARGS		{ ssize_t|sys||writev(int fd, \
    279 			    const struct iovec *iovp, int iovcnt); }
    280 147	NOARGS		{ pid_t|sys||getsid(pid_t pid); }
    281 148	STD		{ int|linux_sys||fdatasync(int fd); }
    282 149	STD		{ int|linux_sys||__sysctl(struct linux___sysctl *lsp); }
    283 150	NOARGS		{ int|sys||mlock(void *addr, size_t len); }
    284 151	NOARGS		{ int|sys||munlock(void *addr, size_t len); }
    285 152	NOARGS		{ int|sys||mlockall(int flags); }
    286 153	NOARGS		{ int|sys||munlockall(void); }
    287 154	STD		{ int|linux_sys||sched_setparam(pid_t pid, \
    288 			    const struct linux_sched_param *sp); }
    289 155	STD		{ int|linux_sys||sched_getparam(pid_t pid, \
    290 			    struct linux_sched_param *sp); }
    291 156	STD		{ int|linux_sys||sched_setscheduler(pid_t pid, \
    292 			    int policy, const struct linux_sched_param *sp); }
    293 157	STD		{ int|linux_sys||sched_getscheduler(pid_t pid); }
    294 158	STD		{ int|linux_sys||sched_yield(void); }
    295 159	STD		{ int|linux_sys||sched_get_priority_max(int policy); }
    296 160	STD		{ int|linux_sys||sched_get_priority_min(int policy); }
    297 161	UNIMPL		sched_rr_get_interval
    298 162	STD		{ int|linux_sys||nanosleep( \
    299 			    const struct linux_timespec *rqtp, \
    300 			    struct linux_timespec *rmtp); }
    301 163	STD		{ void *|linux_sys||mremap(void *old_address, \
    302 			    size_t old_size, size_t new_size, u_long flags); }
    303 164	STD		{ int|linux_sys||setresuid16(linux_uid16_t ruid, \
    304 			    linux_uid16_t euid, linux_uid16_t suid); }
    305 165	STD		{ int|linux_sys||getresuid16(linux_uid16_t *ruid, \
    306 			    linux_uid16_t *euid, linux_uid16_t *suid); }
    307 166	UNIMPL		vm86
    308 167	UNIMPL		query_module
    309 168	NOARGS		{ int|sys||poll(struct pollfd *fds, u_int nfds, \
    310 			    int timeout); }
    311 169	UNIMPL		nfsservctl
    312 170	STD		{ int|linux_sys||setresgid16(linux_gid16_t rgid, \
    313 			    linux_gid16_t egid, linux_gid16_t sgid); }
    314 171	STD		{ int|linux_sys||getresgid16(linux_gid16_t *rgid, \
    315 			    linux_gid16_t *egid, linux_gid16_t *sgid); }
    316 172	UNIMPL		prctl
    317 173	STD		{ int|linux_sys||rt_sigreturn(void); }
    318 174	STD		{ int|linux_sys||rt_sigaction(int signum, \
    319 			    const struct linux_sigaction *nsa, \
    320 			    struct linux_sigaction *osa, \
    321 			    size_t sigsetsize); }
    322 175	STD		{ int|linux_sys||rt_sigprocmask(int how, \
    323 			    const linux_sigset_t *set, \
    324 			    linux_sigset_t *oset, \
    325 			    size_t sigsetsize); }
    326 176	STD		{ int|linux_sys||rt_sigpending( \
    327 			    linux_sigset_t *set, \
    328 			    size_t sigsetsize); }
    329 177	STD		{ int|linux_sys||rt_sigtimedwait( \
    330 			    const linux_sigset_t *set, \
    331 			    linux_siginfo_t *info, \
    332 			    const struct linux_timespec *timeout); }
    333 178	STD		{ int|linux_sys||rt_queueinfo(int pid, int signum, \
    334 			    linux_siginfo_t *uinfo); }
    335 179	STD		{ int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \
    336 			    size_t sigsetsize); }
    337 180	STD		{ int|linux_sys||pread(int fd, char *buf, \
    338 			    size_t nbyte, off_t offset); }
    339 181	STD		{ int|linux_sys||pwrite(int fd, char *buf, \
    340 			    size_t nbyte, off_t offset); }
    341 ;182 chown on i386; lchown on m68k.
    342 182	STD		{ int|linux_sys||lchown16(const char *path, \
    343 			    linux_uid16_t uid, linux_gid16_t gid); }
    344 183	NOARGS		{ int|sys||__getcwd(char *bufp, size_t length); }
    345 184	UNIMPL		capget
    346 185	UNIMPL		capset
    347 186	STD		{ int|linux_sys||sigaltstack( \
    348 			    const struct linux_sigaltstack *ss, \
    349 			    struct linux_sigaltstack *oss); }
    350 187	UNIMPL		sendfile
    351 188	UNIMPL		getpmsg
    352 189	UNIMPL		putpmsg
    353 190	NOARGS		{ int|sys|14|vfork(void); }
    354 191	STD		{ int|linux_sys||ugetrlimit(int which, \
    355 			    struct orlimit *rlp); }
    356 #define linux_sys_mmap2_args linux_sys_mmap_args
    357 192	NOARGS		{ linux_off_t|linux_sys||mmap2(unsigned long addr, \
    358 			    size_t len, int prot, int flags, int fd, \
    359 			    linux_off_t offset); }
    360 193	STD		{ int|linux_sys||truncate64(const char *path, \
    361 			    off_t length); }
    362 194	STD		{ int|linux_sys||ftruncate64(unsigned int fd, \
    363 			    off_t length); }
    364 195	STD		{ int|linux_sys||stat64(const char *path, \
    365 			    struct linux_stat64 *sp); }
    366 196	STD		{ int|linux_sys||lstat64(const char *path, \
    367 			    struct linux_stat64 *sp); }
    368 197	STD		{ int|linux_sys||fstat64(int fd, \
    369 			    struct linux_stat64 *sp); }
    370 198	NOARGS		 { int|sys||__posix_chown(const char *path, uid_t uid, \
    371 			    gid_t gid); }
    372 199	NOARGS		{ uid_t|sys||getuid(void); }
    373 200	NOARGS		{ gid_t|sys||getgid(void); }
    374 201	NOARGS		{ uid_t|sys||geteuid(void); }
    375 202	NOARGS		{ gid_t|sys||getegid(void); }
    376 203	NOARGS		{ int|sys||setreuid(uid_t ruid, uid_t euid); }
    377 204	NOARGS		{ int|sys||setregid(gid_t rgid, gid_t egid); }
    378 205	NOARGS		{ int|sys||getgroups(int gidsetsize, gid_t *gidset); }
    379 206	NOARGS		{ int|sys||setgroups(int gidsetsize, gid_t *gidset); }
    380 207	NOARGS		{ int|sys||__posix_fchown(int fd, uid_t uid, \
    381 			    gid_t gid); }
    382 208	STD		{ int|linux_sys||setresuid(uid_t ruid, uid_t euid, \
    383 			    uid_t suid); }
    384 209	STD		{ int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \
    385 			    uid_t *suid); }
    386 210	STD		{ int|linux_sys||setresgid(gid_t rgid, gid_t egid, \
    387 			    gid_t sgid); }
    388 211	STD		{ int|linux_sys||getresgid(gid_t *rgid, gid_t *egid, \
    389 			    gid_t *sgid); }
    390 212	NOARGS		{ int|sys||__posix_lchown(const char *path, uid_t uid, \
    391 			    gid_t gid); }
    392 213	NOARGS		{ int|sys||setuid(uid_t uid); }
    393 214	NOARGS		{ int|sys||setgid(gid_t gid); }
    394 215	STD		{ int|linux_sys||setfsuid(uid_t uid); }
    395 216	STD		{ int|linux_sys||setfsgid(gid_t gid); }
    396 217	UNIMPL		/* unused */
    397 218	UNIMPL		/* unused */
    398 219	UNIMPL		/* unused */
    399 220	STD		{ int|linux_sys||getdents64(int fd, \
    400 			    struct linux_dirent64 *dent, unsigned int count); }
    401 221	NOARGS		{ pid_t|linux_sys||gettid(void); }
    402 222	STD		{ int|linux_sys||tkill(int tid, int sig); }
    403 223	STD		{ int|linux_sys||setxattr(char *path, char *name, \
    404 			    void *value, size_t size, int flags); }
    405 224	STD		{ int|linux_sys||lsetxattr(char *path, char *name, \
    406 			    void *value, size_t size, int flags); }
    407 225	STD		{ int|linux_sys||fsetxattr(int fd, char *name, \
    408 			    void *value, size_t size, int flags); }
    409 226	STD		{ ssize_t|linux_sys||getxattr(char *path, char *name, \
    410 			    void *value, size_t size); }
    411 227	STD		{ ssize_t|linux_sys||lgetxattr(char *path, char *name, \
    412 			    void *value, size_t size); }
    413 228	STD		{ ssize_t|linux_sys||fgetxattr(int fd, char *name, \
    414 			    void *value, size_t size); }
    415 229	STD		{ ssize_t|linux_sys||listxattr(char *path, char *list, \
    416 			    size_t size); }
    417 230	STD		{ ssize_t|linux_sys||llistxattr(char *path, char *list, \
    418 			    size_t size); }
    419 231	STD		{ ssize_t|linux_sys||flistxattr(int fd, char *list, \
    420 			    size_t size); }
    421 232	STD		{ int|linux_sys||removexattr(char *path, char *name); }
    422 233	STD		{ int|linux_sys||lremovexattr(char *path, char *name); }
    423 234	STD		{ int|linux_sys||fremovexattr(int fd, char *name); }
    424 235	STD		{ int|linux_sys||futex(int *uaddr, int op, int val, \
    425 			    const struct linux_timespec *timeout, int *uaddr2, \
    426 			    int val3); }
    427 236	UNIMPL		sendfile64
    428 237	NOARGS		{ int|sys||mincore(void *addr, size_t len, char *vec); }
    429 238	NOARGS		{ int|sys||madvise(void *addr, size_t len, int behav); }
    430 239	STD		{ int|linux_sys||fcntl64(int fd, int cmd, void *arg); }
    431 240	UNIMPL		readahead
    432 241	UNIMPL		io_setup
    433 242	UNIMPL		io_destroy
    434 243	UNIMPL		io_getevents
    435 244	UNIMPL		io_submit
    436 245	UNIMPL		io_cancel
    437 246	STD		{ int|linux_sys||fadvise64(int fd, off_t offset, \
    438 			    size_t len, int advice); }
    439 247	UNIMPL		exit_group
    440 248	UNIMPL		lookup_dcookie
    441 249	UNIMPL		epoll_create
    442 250	UNIMPL		epoll_ctl
    443 251	UNIMPL		epoll_wait
    444 252	UNIMPL		remap_file_pages
    445 253	STD		{ int|linux_sys||set_tid_address(int *tid); }
    446 254	STD		{ int|linux_sys||timer_create(clockid_t clockid, \
    447 			    struct linux_sigevent *evp, timer_t *timerid); }
    448 255	STD		{ int|linux_sys||timer_settime(timer_t timerid, \
    449 			    int flags, const struct linux_itimerspec *tim, \
    450 			    struct linux_itimerspec *otim); }
    451 256	STD		{ int|linux_sys||timer_gettime(timer_t timerid, \
    452 			    struct linux_itimerspec *tim); }
    453 257	NOARGS		{ int|sys||timer_getoverrun(timer_t timerid); }
    454 258	NOARGS		{ int|sys||timer_delete(timer_t timerid); }
    455 259	STD		{ int|linux_sys||clock_settime(clockid_t which, \
    456 			    struct linux_timespec *tp); }
    457 260	STD		{ int|linux_sys||clock_gettime(clockid_t which, \
    458 			    struct linux_timespec *tp); }
    459 261	STD		{ int|linux_sys||clock_getres(clockid_t which, \
    460 			    struct linux_timespec *tp); }
    461 262	STD		{ int|linux_sys||clock_nanosleep(clockid_t which, \
    462 			    int flags, struct linux_timespec *rqtp, \
    463 			    struct linux_timespec *rmtp); }
    464 263	STD		{ int|linux_sys||statfs64(const char *path, \
    465 			    size_t sz, struct linux_statfs64 *sp); }
    466 264	STD		{ int|linux_sys||fstatfs64(int fd, \
    467 			    size_t sz, struct linux_statfs64 *sp); }
    468 265	STD		{ int|linux_sys||tgkill(int tgid, int tid, int sig); }
    469 266	NOARGS		{ int|compat_50_sys||utimes(const char *path, \
    470 			    const struct timeval50 *tptr); }
    471 267	STD		{ int|linux_sys||fadvise64_64(int fd, off_t offset, \
    472 			    off_t len, int advice); }
    473 268	UNIMPL		mbind
    474 269	UNIMPL		get_mempolicy
    475 270	UNIMPL		set_mempolicy
    476 271	UNIMPL		mq_open
    477 272	UNIMPL		mq_unlink
    478 273	UNIMPL		mq_timedsend
    479 274	UNIMPL		mq_timedreceive
    480 275	UNIMPL		mq_notify
    481 276	UNIMPL		mq_getsetattr
    482 277	UNIMPL		waitid
    483 278	UNIMPL		vserver
    484 279	UNIMPL		add_key
    485 280	UNIMPL		request_key
    486 281	UNIMPL		keyctl
    487 282	UNIMPL		ioprio_set
    488 283	UNIMPL		ioprio_get
    489 284	UNIMPL		inotify_init
    490 285	UNIMPL		inotify_add_watch
    491 286	UNIMPL		inotify_rm_watch
    492 287	UNIMPL		migrate_pages
    493 288	STD 		{ int|linux_sys||openat(int fd, const char *path, \
    494 			    int flags, ... linux_umode_t mode); }
    495 289	NOARGS		{ int|sys||mkdirat(int fd, const char *path, \
    496 			    linux_umode_t mode); }
    497 290	STD		{ int|linux_sys||mknodat(int fd, const char *path, \
    498 			    linux_umode_t mode, unsigned dev); }
    499 291	STD		{ int|linux_sys||fchownat(int fd, const char *path, \
    500 			    uid_t owner, gid_t group, int flag); }
    501 292	UNIMPL		futimesat
    502 293	STD		{ int|linux_sys||fstatat64(int fd, const char *path, \
    503 			    struct linux_stat64 *sp, int flag); }
    504 294	STD		{ int|linux_sys||unlinkat(int fd, const char *path, \
    505 			    int flag); }
    506 295	NOARGS		{ int|sys||renameat(int fromfd, const char *from, \
    507 			    int tofd, const char *to); }
    508 296	STD		{ int|linux_sys||linkat(int fd1, const char *name1, \
    509 			    int fd2, const char *name2, int flags); }
    510 297	NOARGS		{ int|sys||symlinkat(const char *path1, int fd, \
    511 			    const char *path2); }
    512 298	NOARGS		{ ssize_t|sys||readlinkat(int fd, const char *path, \
    513 			    char *buf, size_t bufsize); }
    514 299	STD		{ int|linux_sys||fchmodat(int fd, const char *path, \
    515 			    linux_umode_t mode); }
    516 300	STD		{ int|linux_sys||faccessat(int fd, const char *path, \
    517 			    int amode); }
    518 301	STD		{ int|linux_sys||pselect6(int nfds, fd_set *readfds, \
    519 			   fd_set *writefds, fd_set *exceptfds, \
    520 			   struct linux_timespec *timeout, \
    521 			   linux_sized_sigset_t *ss); }
    522 302	STD             { int|linux_sys||ppoll(struct pollfd *fds, u_int nfds, \
    523 			    struct linux_timespec *timeout, \
    524 			    linux_sigset_t *sigset); }
    525 303	UNIMPL		unshare
    526 			;
    527 			; The NetBSD native robust list calls have different
    528 			; argument names / types, but they are ABI-compatible
    529 			; with Linux.
    530 			;
    531 304	NOARGS		{ int|sys||__futex_set_robust_list(void *head, \
    532 			    size_t len); }
    533 305	NOARGS		{ int|sys||__futex_get_robust_list(lwpid_t lwpid, \
    534 			    void **headp, size_t *lenp); }
    535 306	UNIMPL		splice
    536 307	UNIMPL		sync_file_range
    537 308	UNIMPL		tee
    538 309	UNIMPL		vmsplice
    539 310	UNIMPL		move_pages
    540 311	STD		{ int|linux_sys||sched_setaffinity(pid_t pid, \
    541 			    unsigned int len, unsigned long *mask); }
    542 312	STD		{ int|linux_sys||sched_getaffinity(pid_t pid, \
    543 			    unsigned int len, unsigned long *mask); }
    544 313	UNIMPL		kexec_load
    545 314	UNIMPL		getcpu
    546 315	UNIMPL		epoll_wait
    547 316	STD		{ int|linux_sys||utimensat(int fd, const char *path, \
    548 			    struct linux_timespec *times, int flag); }
    549 317	UNIMPL		signalfd
    550 318	STD		{ int|linux_sys||timerfd_create(clockid_t clock_id, \
    551 			    int flags); }
    552 319	STD		{ int|linux_sys||eventfd(unsigned int initval); }
    553 320	STD		{ int|linux_sys||fallocate(int fd, int mode, \
    554 			    off_t offset, off_t len); }
    555 321	STD		{ int|linux_sys||timerfd_settime(int fd, int flags, \
    556 			    const struct linux_itimerspec *tim, \
    557 			    struct linux_itimerspec *otim); }
    558 322	STD		{ int|linux_sys||timerfd_gettime(int fd, \
    559 			    struct linux_itimerspec *tim); }
    560 323	UNIMPL		signalfd4
    561 324	STD		{ int|linux_sys||eventfd2(unsigned int initval, \
    562 			    int flags); }
    563 325	UNIMPL		epoll_create1
    564 326	STD		{ int|linux_sys||dup3(int from, int to, int flags); }
    565 327	STD		{ int|linux_sys||pipe2(int *pfds, int flags); }
    566 328	UNIMPL		inotify_init1
    567 329	STD		{ int|linux_sys||preadv(int fd, \
    568 			    const struct iovec *iovp, int iovcnt, \
    569 			    unsigned long off_lo, unsigned long off_hi); }
    570 330	STD		{ int|linux_sys||pwritev(int fd, \
    571 			    const struct iovcnt *iovp, int iovcnt, \
    572 			    unsigned long off_lo, unsigned long off_hi); }
    573 331	UNIMPL		rt_tgsigqueueinfo
    574 332	UNIMPL		perf_counter_open
    575 333	UNIMPL		set_thread_area
    576 334	UNIMPL		get_thread_area
    577 335	UNIMPL		atomic_cmpxchg_32
    578 336	UNIMPL		atomic_barrier
    579 337	UNIMPL		fanotify_init
    580 338	UNIMPL		fanotify_mark
    581 339	UNIMPL		prlimit64
    582 340	UNIMPL		name_to_handle_at
    583 341	UNIMPL		open_by_handle_at
    584 342	UNIMPL		clock_adjtime
    585 343	UNIMPL		syncfs
    586 344	UNIMPL		setns
    587 345	UNIMPL		process_vm_readv
    588 346	UNIMPL		process_vm_writev
    589 347	UNIMPL		kcmp
    590 348	UNIMPL		finit_module
    591 349	UNIMPL		sched_setattr
    592 350	UNIMPL		sched_getattr
    593 351	UNIMPL		renameat2
    594 352	NOARGS		{ ssize_t|sys||getrandom(void *buf, size_t buflen, \
    595 			    unsigned int flags); }
    596 353	UNIMPL		memfd_create
    597 354	UNIMPL		bpf
    598 355	UNIMPL		execveat
    599 356	UNIMPL		socket
    600 357	UNIMPL		socketpair
    601 358	UNIMPL		bind
    602 359	UNIMPL		connect
    603 360	UNIMPL		listen
    604 361	STD		{ int|linux_sys||accept4(int s, \
    605 			    struct osockaddr *name, \
    606 			    int *anamelen, int flags); }
    607 362	UNIMPL		getsockopt
    608 363	UNIMPL		setsockopt
    609 364	UNIMPL		getsockname
    610 365	UNIMPL		getpeername
    611 366	UNIMPL		sendto
    612 367	UNIMPL		sendmsg
    613 368	UNIMPL		recvfrom
    614 369	UNIMPL		recvmsg
    615 370	UNIMPL		shutdown
    616 371	STD		{ int|linux_sys||recvmmsg(int s, \
    617 			    struct linux_mmsghdr *msgvec, unsigned int vlen, \
    618 			    unsigned int flags, struct timespec *timeout); }
    619 372	STD		{ int|linux_sys||sendmmsg(int s, \
    620 			    struct linux_mmsghdr *msgvec, unsigned int vlen, \
    621 			    unsigned int flags); }
    622 373	UNIMPL		userfaultfd
    623 374	UNIMPL		membarrier
    624 375	UNIMPL		mlock2
    625 376	UNIMPL		copy_file_range
    626 377	UNIMPL		preadv2
    627 378	UNIMPL		pwritev2
    628