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