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