xref: /netbsd-src/sys/compat/linux/arch/i386/syscalls.master (revision a3740e150a4bea0d03e70539dc6fe36956b72c38)
1	$NetBSD: syscalls.master,v 1.137 2024/09/28 19:35:55 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_mqueue.h>
51#include <compat/linux/common/linux_sched.h>
52
53#include <compat/linux/linux_syscallargs.h>
54
55%%
56
570	NOARGS		{ int|linux_sys||nosys(void); } syscall
581	STD		{ int|linux_sys||exit(int rval); }
592	NOARGS		{ int|sys||fork(void); }
603	NOARGS		{ ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
614	NOARGS		{ ssize_t|sys||write(int fd, const void *buf, \
62			    size_t nbyte); }
635	STD		{ int|linux_sys||open(const char *path, int flags, \
64			    linux_umode_t mode); }
656	NOARGS		{ int|sys||close(int fd); }
667	STD		{ int|linux_sys||waitpid(int pid, int *status, \
67			    int options);}
688	STD		{ int|linux_sys||creat(const char *path, linux_umode_t mode); }
699	NOARGS		{ int|sys||link(const char *path, const char *link); }
7010	STD		{ int|linux_sys||unlink(const char *path); }
7111	NOARGS		{ int|sys||execve(const char *path, char **argp, \
72			    char **envp); }
7312	NOARGS		{ int|sys||chdir(const char *path); }
7413	STD		{ int|linux_sys||time(linux_time_t *t); }
7514	STD		{ int|linux_sys||mknod(const char *path, linux_umode_t mode, \
76			    unsigned dev); }
7715	NOARGS		{ int|sys||chmod(const char *path, linux_umode_t mode); }
7816	STD		{ int|linux_sys||lchown16(const char *path, \
79			    linux_uid16_t uid, linux_gid16_t gid); }
80;17 - no longer in linux source.
8117	STD		{ int|linux_sys||break(char *nsize); }
8218	OBSOL		ostat
8319	NOARGS		{ long|compat_43_sys||lseek(int fd, long offset, \
84			    int whence); }
8520	NOARGS 		{ pid_t|sys||getpid(void); }
8621	UNIMPL		mount
8722	UNIMPL		umount
8823	NOARGS		linux_setuid16 { int|sys||setuid(uid_t uid); }
8924	NOARGS		linux_getuid16 { uid_t|sys||getuid(void); }
9025	STD		{ int|linux_sys||stime(linux_time_t *t); }
9126	STD		{ int|linux_sys||ptrace(int request, int pid, \
92			  int addr, int data); }
9327	STD		{ int|linux_sys||alarm(unsigned int secs); }
9428	OBSOL		ofstat
9529	NOARGS		{ int|linux_sys||pause(void); }
9630	STD		{ int|linux_sys||utime(const char *path, \
97			    struct linux_utimbuf *times); }
9831	OBSOL		stty
9932	OBSOL		gtty
10033	NOARGS		{ int|sys||access(const char *path, int flags); }
10134	STD		{ int|linux_sys||nice(int incr); }
10235	OBSOL		ftime
10336	NOARGS		{ int|sys||sync(void); }
10437	STD		{ int|linux_sys||kill(int pid, int signum); }
10538	NOARGS		{ int|sys||__posix_rename(const char *from, \
106			    const char *to); }
10739	NOARGS		{ int|sys||mkdir(const char *path, linux_umode_t mode); }
10840	NOARGS		{ int|sys||rmdir(const char *path); }
10941	NOARGS		{ int|sys||dup(int fd); }
11042	STD		{ int|linux_sys||pipe(int *pfds); }
11143	STD		{ int|linux_sys||times(struct times *tms); }
11244	OBSOL		prof
11345	STD		{ int|linux_sys||brk(char *nsize); }
11446	NOARGS		linux_setgid16 { int|sys||setgid(gid_t gid); }
11547	NOARGS		linux_getgid16 { gid_t|sys||getgid(void); }
11648	STD		{ int|linux_sys||signal(int signum, \
117			    linux_handler_t handler); }
11849	NOARGS		linux_geteuid16 { uid_t|sys||geteuid(void); }
11950	NOARGS		linux_getegid16 { gid_t|sys||getegid(void); }
12051	NOARGS		{ int|sys||acct(char *path); }
12152	OBSOL		phys
12253	OBSOL		lock
12354	STD		{ int|linux_sys||ioctl(int fd, u_long com, \
124			    void *data); }
12555	STD		{ int|linux_sys||fcntl(int fd, int cmd, void *arg); }
12656	OBSOL		mpx
12757	NOARGS		{ int|sys||setpgid(int pid, int pgid); }
12858	OBSOL		ulimit
12959	STD		{ int|linux_sys||oldolduname( \
130			    struct linux_oldold_utsname *up); }
13160	NOARGS		{ int|sys||umask(int newmask); }
13261	NOARGS		{ int|sys||chroot(char *path); }
13362	UNIMPL		ustat
13463	NOARGS		{ int|sys||dup2(int from, int to); }
13564	NOARGS		{ pid_t|sys||getppid(void); }
13665	NOARGS		{ int|sys||getpgrp(void); }
13766	NOARGS		{ int|sys||setsid(void); }
13867	STD		{ int|linux_sys||sigaction(int signum, \
139			    const struct linux_old_sigaction *nsa, \
140			    struct linux_old_sigaction *osa); }
14168	NOARGS		{ int|linux_sys||siggetmask(void); }
14269	STD		{ int|linux_sys||sigsetmask(linux_old_sigset_t mask); }
14370	STD		{ int|linux_sys||setreuid16(linux_uid16_t ruid, \
144			    linux_uid16_t euid); }
14571	STD		{ int|linux_sys||setregid16(linux_gid16_t rgid, \
146			    linux_gid16_t egid); }
14772	STD		{ int|linux_sys||sigsuspend(void *restart, \
148			    int oldmask, int mask); }
14973	STD		{ int|linux_sys||sigpending(linux_old_sigset_t *set); }
15074	NOARGS		{ int|compat_43_sys||sethostname(char *hostname, \
151			    u_int len);}
15275	STD		{ int|linux_sys||setrlimit(u_int which, \
153			    struct orlimit *rlp); }
15476	STD		{ int|linux_sys||getrlimit(u_int which, \
155			    struct orlimit *rlp); }
15677	NOARGS		{ int|compat_50_sys||getrusage(int who, \
157			    struct rusage50 *rusage); }
15878	STD		{ int|linux_sys||gettimeofday(struct timeval50 *tp, \
159			    struct timezone *tzp); }
16079	STD		{ int|linux_sys||settimeofday(struct timeval50 *tp, \
161			    struct timezone *tzp); }
16280	STD		{ int|linux_sys||getgroups16(int gidsetsize, \
163			    linux_gid16_t *gidset); }
16481	STD		{ int|linux_sys||setgroups16(int gidsetsize, \
165			    linux_gid16_t *gidset); }
16682	STD		{ int|linux_sys||oldselect(struct linux_oldselect *lsp); }
16783	NOARGS		{ int|sys||symlink(const char *path, const char *link); }
16884	NOARGS		{ int|compat_43_sys||lstat(const char *path, \
169			    struct stat43 *ub); } oolstat
17085	NOARGS		{ ssize_t|sys||readlink(const char *path, char *buf, \
171			    int count); }
172#ifdef EXEC_AOUT
17386	STD		{ int|linux_sys||uselib(const char *path); }
174#else
17586	UNIMPL		sys_uselib
176#endif
17787	STD		{ int|linux_sys||swapon(char *name); }
17888	STD		{ int|linux_sys||reboot(int magic1, int magic2, \
179			    int cmd, void *arg); }
18089	STD		{ int|linux_sys||readdir(int fd, void *dent, \
181			    unsigned int count); }
18290	STD		{ int|linux_sys||old_mmap(struct linux_oldmmap *lmp); }
18391	NOARGS		{ int|sys||munmap(void *addr, size_t len); }
18492	NOARGS		{ int|compat_43_sys||truncate(const char *path, \
185			    long length); }
18693	NOARGS		{ int|compat_43_sys||ftruncate(int fd, long length); }
18794	NOARGS		{ int|sys||fchmod(int fd, linux_umode_t mode); }
18895	STD		{ int|linux_sys||fchown16(int fd, linux_uid16_t uid, \
189			    linux_gid16_t gid); }
19096	STD		{ int|linux_sys||getpriority(int which, int who); }
19197	NOARGS		{ int|sys||setpriority(int which, int who, int prio); }
19298	NOARGS		{ int|sys||profil(void *samples, u_int size, \
193			    u_int offset, u_int scale); }
19499	STD		{ int|linux_sys||statfs(const char *path, \
195			    struct linux_statfs *sp); }
196100	STD		{ int|linux_sys||fstatfs(int fd, \
197			    struct linux_statfs *sp); }
198101	STD		{ int|linux_sys||ioperm(unsigned int lo, \
199			    unsigned int hi, int val); }
200102	STD		{ int|linux_sys||socketcall(int what, void *args); }
201103	UNIMPL		syslog
202104	NOARGS		{ int|compat_50_sys||setitimer(int which, \
203			    struct itimerval50 *itv, struct itimerval50 *oitv); }
204105	NOARGS		{ int|compat_50_sys||getitimer(int which, \
205			    struct itimerval50 *itv); }
206106	STD		{ int|linux_sys||stat(const char *path, \
207			    struct linux_stat *sp); }
208107	STD		{ int|linux_sys||lstat(const char *path, \
209			    struct linux_stat *sp); }
210108	STD		{ int|linux_sys||fstat(int fd, struct linux_stat *sp); }
211109	STD		{ int|linux_sys||olduname(struct linux_old_utsname *up); }
212110	STD		{ int|linux_sys||iopl(int level); }
213111	UNIMPL		vhangup
214112	UNIMPL		idle
215113	UNIMPL		vm86old
216114	STD		{ int|linux_sys||wait4(int pid, int *status, \
217			    int options, struct rusage50 *rusage); }
218115	STD		{ int|linux_sys||swapoff(const char *path); }
219116	STD		{ int|linux_sys||sysinfo(struct linux_sysinfo *arg); }
220117	STD		{ int|linux_sys||ipc(int what, int a1, int a2, int a3, \
221			    void *ptr); }
222118	NOARGS		{ int|sys||fsync(int fd); }
223119	STD		{ int|linux_sys||sigreturn(struct linux_sigcontext *scp); }
224120	STD		{ int|linux_sys||clone(int flags, void *stack, \
225			    void *parent_tidptr, void *tls, void *child_tidptr); }
226121	STD		{ int|linux_sys||setdomainname(char *domainname, \
227			    int len); }
228122	STD		{ int|linux_sys||uname(struct linux_utsname *up); }
229123	STD		{ int|linux_sys||modify_ldt(int func, void *ptr, \
230			    size_t bytecount); }
231124	UNIMPL		adjtimex
232125	STD		{ int|linux_sys||mprotect(const void *start, \
233			    unsigned long len, int prot); }
234126	STD		{ int|linux_sys||sigprocmask(int how, \
235			    const linux_old_sigset_t *set, \
236			    linux_old_sigset_t *oset); }
237127	UNIMPL		create_module
238128	UNIMPL		init_module
239129	UNIMPL		delete_module
240130	UNIMPL		get_kernel_syms
241131	UNIMPL		quotactl
242132	NOARGS		{ pid_t|sys||getpgid(pid_t pid); }
243133	NOARGS		{ int|sys||fchdir(int fd); }
244134	UNIMPL		bdflush
245135	UNIMPL		sysfs
246136	STD		{ int|linux_sys||personality(unsigned long per); }
247137	UNIMPL		afs_syscall
248138	NOARGS		linux_setfsuid16 { int|linux_sys||setfsuid(uid_t uid); }
249139	NOARGS		linux_setfsgid16 { int|linux_sys||setfsgid(gid_t gid); }
250140	STD		{ int|linux_sys||llseek(int fd, u_int32_t ohigh, \
251			    u_int32_t olow, void *res, int whence); }
252141	STD		{ int|linux_sys||getdents(int fd, \
253			    struct linux_dirent *dent, unsigned int count); }
254142	STD		{ int|linux_sys||select(int nfds, fd_set *readfds, \
255			    fd_set *writefds, fd_set *exceptfds, \
256			    struct timeval50 *timeout); }
257143	NOARGS		{ int|sys||flock(int fd, int how); }
258144	NOARGS		{ int|sys|13|msync(void *addr, size_t len, int flags); }
259145	NOARGS		{ ssize_t|sys||readv(int fd, \
260			    const struct iovec *iovp, int iovcnt); }
261146	NOARGS		{ ssize_t|sys||writev(int fd, \
262			    const struct iovec *iovp, int iovcnt); }
263147	NOARGS		{ pid_t|sys||getsid(pid_t pid); }
264148	STD		{ int|linux_sys||fdatasync(int fd); }
265149	STD		{ int|linux_sys||__sysctl(struct linux___sysctl *lsp); }
266150	NOARGS		{ int|sys||mlock(void *addr, size_t len); }
267151	NOARGS		{ int|sys||munlock(void *addr, size_t len); }
268152	NOARGS		{ int|sys||mlockall(int flags); }
269153	NOARGS		{ int|sys||munlockall(void); }
270154	STD		{ int|linux_sys||sched_setparam(pid_t pid, \
271			    const struct linux_sched_param *sp); }
272155	STD		{ int|linux_sys||sched_getparam(pid_t pid, \
273			    struct linux_sched_param *sp); }
274156	STD		{ int|linux_sys||sched_setscheduler(pid_t pid, \
275			    int policy, const struct linux_sched_param *sp); }
276157	STD		{ int|linux_sys||sched_getscheduler(pid_t pid); }
277158	STD		{ int|linux_sys||sched_yield(void); }
278159	STD		{ int|linux_sys||sched_get_priority_max(int policy); }
279160	STD		{ int|linux_sys||sched_get_priority_min(int policy); }
280161	UNIMPL		sys_sched_rr_get_interval
281162	STD		{ int|linux_sys||nanosleep( \
282			    const struct linux_timespec *rqtp, \
283			    struct linux_timespec *rmtp); }
284163	STD		{ void *|linux_sys||mremap(void *old_address, \
285			    size_t old_size, size_t new_size, u_long flags); }
286164	STD		{ int|linux_sys||setresuid16(linux_uid16_t ruid, \
287			    linux_uid16_t euid, linux_uid16_t suid); }
288165	STD		{ int|linux_sys||getresuid16(linux_uid16_t *ruid, \
289			    linux_uid16_t *euid, linux_uid16_t *suid); }
290166	UNIMPL		vm86
291167	UNIMPL		query_module
292168	NOARGS		{ int|sys||poll(struct pollfd *fds, u_int nfds, \
293			    int timeout); }
294169	UNIMPL		nfsservctl
295170	STD		{ int|linux_sys||setresgid16(linux_gid16_t rgid, \
296			    linux_gid16_t egid, linux_gid16_t sgid); }
297171	STD		{ int|linux_sys||getresgid16(linux_gid16_t *rgid, \
298			    linux_gid16_t *egid, linux_gid16_t *sgid); }
299172	UNIMPL		prctl
300173	STD		{ int|linux_sys||rt_sigreturn( \
301			    struct linux_ucontext *ucp); }
302174	STD		{ int|linux_sys||rt_sigaction(int signum, \
303			    const struct linux_sigaction *nsa, \
304			    struct linux_sigaction *osa, \
305			    size_t sigsetsize); }
306175	STD		{ int|linux_sys||rt_sigprocmask(int how, \
307			    const linux_sigset_t *set, \
308			    linux_sigset_t *oset, \
309			    size_t sigsetsize); }
310176	STD		{ int|linux_sys||rt_sigpending( \
311			    linux_sigset_t *set, \
312			    size_t sigsetsize); }
313177	STD		{ int|linux_sys||rt_sigtimedwait( \
314			    const linux_sigset_t *set, \
315			    linux_siginfo_t *info, \
316			    const struct linux_timespec *timeout); }
317178	STD		{ int|linux_sys||rt_queueinfo(int pid, int signum, \
318			    linux_siginfo_t *uinfo); }
319179	STD		{ int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \
320			    size_t sigsetsize); }
321180	STD		{ int|linux_sys||pread(int fd, char *buf, \
322			    size_t nbyte, off_t offset); }
323181	STD		{ int|linux_sys||pwrite(int fd, char *buf, \
324			    size_t nbyte, off_t offset); }
325182	STD		{ int|linux_sys||chown16(const char *path, \
326			    linux_uid16_t uid, linux_gid16_t gid); }
327183	NOARGS		{ int|sys||__getcwd(char *bufp, size_t length); }
328184	UNIMPL		capget
329185	UNIMPL		capset
330186	STD		{ int|linux_sys||sigaltstack( \
331			    const struct linux_sigaltstack *ss, \
332			    struct linux_sigaltstack *oss); }
333187	UNIMPL		sendfile
334188	UNIMPL		getpmsg
335189	UNIMPL		putpmsg
336190	NOARGS		{ int|sys|14|vfork(void); }
337191	STD		{ int|linux_sys||ugetrlimit(int which, \
338			    struct orlimit *rlp); }
339#define linux_sys_mmap2_args linux_sys_mmap_args
340192	NOARGS		{ linux_off_t|linux_sys||mmap2(unsigned long addr, \
341			    size_t len, int prot, int flags, int fd, \
342			    linux_off_t offset); }
343193	STD		{ int|linux_sys||truncate64(const char *path, \
344			    off_t length); }
345194	STD		{ int|linux_sys||ftruncate64(unsigned int fd, \
346			    off_t length); }
347195	STD		{ int|linux_sys||stat64(const char *path, \
348			    struct linux_stat64 *sp); }
349196	STD		{ int|linux_sys||lstat64(const char *path, \
350			    struct linux_stat64 *sp); }
351197	STD		{ int|linux_sys||fstat64(int fd, \
352			    struct linux_stat64 *sp); }
353198	NOARGS		{ int|sys||__posix_lchown(const char *path, uid_t uid, \
354			    gid_t gid); }
355199	NOARGS		{ uid_t|sys||getuid(void); }
356200	NOARGS		{ gid_t|sys||getgid(void); }
357201	NOARGS		{ uid_t|sys||geteuid(void); }
358202	NOARGS		{ gid_t|sys||getegid(void); }
359203	NOARGS		{ int|sys||setreuid(uid_t ruid, uid_t euid); }
360204	NOARGS		{ int|sys||setregid(gid_t rgid, gid_t egid); }
361205	NOARGS		{ int|sys||getgroups(int gidsetsize, gid_t *gidset); }
362206	NOARGS		{ int|sys||setgroups(int gidsetsize, gid_t *gidset); }
363207	NOARGS		{ int|sys||__posix_fchown(int fd, uid_t uid, \
364			    gid_t gid); }
365208	STD		{ int|linux_sys||setresuid(uid_t ruid, uid_t euid, \
366			    uid_t suid); }
367209	STD		{ int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \
368			    uid_t *suid); }
369210	STD		{ int|linux_sys||setresgid(gid_t rgid, gid_t egid, \
370			    gid_t sgid); }
371211	STD		{ int|linux_sys||getresgid(gid_t *rgid, gid_t *egid, \
372			    gid_t *sgid); }
373212	NOARGS		{ int|sys||__posix_chown(const char *path, uid_t uid, \
374				gid_t gid); }
375213	NOARGS		{ int|sys||setuid(uid_t uid); }
376214	NOARGS		{ int|sys||setgid(gid_t gid); }
377215	STD		{ int|linux_sys||setfsuid(uid_t uid); }
378216	STD		{ int|linux_sys||setfsgid(gid_t gid); }
379217	UNIMPL		pivot_root
380218	NOARGS		{ int|sys||mincore(void *addr, size_t len, char *vec); }
381219	NOARGS		{ int|sys||madvise(void *addr, size_t len, int behav); }
382220	STD		{ int|linux_sys||getdents64(int fd, \
383			    struct linux_dirent64 *dent, unsigned int count); }
384221	STD		{ int|linux_sys||fcntl64(int fd, int cmd, void *arg); }
385222	UNIMPL		/* unused */
386223	UNIMPL		/* unused */
387224	NOARGS		{ pid_t|linux_sys||gettid(void); }
388225	STD		{ ssize_t|linux_sys||readahead(int fd, off_t offset, \
389			    size_t count); }
390226	STD		{ int|linux_sys||setxattr(char *path, char *name, \
391			    void *value, size_t size, int flags); }
392227	STD		{ int|linux_sys||lsetxattr(char *path, char *name, \
393			    void *value, size_t size, int flags); }
394228	STD		{ int|linux_sys||fsetxattr(int fd, char *name, \
395			    void *value, size_t size, int flags); }
396229	STD		{ ssize_t|linux_sys||getxattr(char *path, char *name, \
397			    void *value, size_t size); }
398230	STD		{ ssize_t|linux_sys||lgetxattr(char *path, char *name, \
399			    void *value, size_t size); }
400231	STD		{ ssize_t|linux_sys||fgetxattr(int fd, char *name, \
401			    void *value, size_t size); }
402232	STD		{ ssize_t|linux_sys||listxattr(char *path, char *list, \
403			    size_t size); }
404233	STD		{ ssize_t|linux_sys||llistxattr(char *path, char *list, \
405			    size_t size); }
406234	STD		{ ssize_t|linux_sys||flistxattr(int fd, char *list, \
407			    size_t size); }
408235	STD		{ int|linux_sys||removexattr(char *path, char *name); }
409236	STD		{ int|linux_sys||lremovexattr(char *path, char *name); }
410237	STD		{ int|linux_sys||fremovexattr(int fd, char *name); }
411238	STD		{ int|linux_sys||tkill(int tid, int sig); }
412239	UNIMPL		sendfile64
413240	STD		{ int|linux_sys||futex(int *uaddr, int op, int val, \
414			    const struct linux_timespec *timeout, int *uaddr2, \
415			    int val3); }
416241	STD		{ int|linux_sys||sched_setaffinity(pid_t pid, \
417			    unsigned int len, unsigned long *mask); }
418242	STD		{ int|linux_sys||sched_getaffinity(pid_t pid, \
419			    unsigned int len, unsigned long *mask); }
420243	STD		{ int|linux_sys||set_thread_area( \
421			    struct linux_user_desc *desc); }
422244	STD		{ int|linux_sys||get_thread_area( \
423			    struct linux_user_desc *desc); }
424245	UNIMPL		io_setup
425246	UNIMPL		io_destroy
426247	UNIMPL		io_getevents
427248	UNIMPL		io_submit
428249	UNIMPL		io_cancel
429250	STD		{ int|linux_sys||fadvise64(int fd, off_t offset, \
430			    size_t len, int advice); }
431251	UNIMPL		/* unused */
432252	STD		{ int|linux_sys||exit_group(int error_code); }
433253	UNIMPL		lookup_dcookie
434254	STD		{ int|linux_sys||epoll_create(int size); }
435255	STD		{ int|linux_sys||epoll_ctl(int epfd, int op, int fd, \
436			    struct linux_epoll_event *event); }
437256	STD		{ int|linux_sys||epoll_wait(int epfd, \
438			    struct linux_epoll_event *events, int maxevents, \
439			    int timeout); }
440257	UNIMPL		remap_file_pages
441258	STD		{ int|linux_sys||set_tid_address(int *tid); }
442259	STD		{ int|linux_sys||timer_create(clockid_t clockid, \
443			    struct linux_sigevent *evp, timer_t *timerid); }
444260	STD		{ int|linux_sys||timer_settime(timer_t timerid, \
445			    int flags, const struct linux_itimerspec *tim, \
446			    struct linux_itimerspec *otim); }
447261	STD		{ int|linux_sys||timer_gettime(timer_t timerid, \
448			    struct linux_itimerspec *tim); }
449262	NOARGS		{ int|sys||timer_getoverrun(timer_t timerid); }
450263	NOARGS		{ int|sys||timer_delete(timer_t timerid); }
451264	STD		{ int|linux_sys||clock_settime(clockid_t which, \
452			    struct linux_timespec *tp); }
453265	STD		{ int|linux_sys||clock_gettime(clockid_t which, \
454			    struct linux_timespec *tp); }
455266	STD		{ int|linux_sys||clock_getres(clockid_t which, \
456			    struct linux_timespec *tp); }
457267	STD		{ int|linux_sys||clock_nanosleep(clockid_t which, \
458			    int flags, struct linux_timespec *rqtp, \
459			    struct linux_timespec *rmtp); }
460268	STD		{ int|linux_sys||statfs64(const char *path, \
461			    size_t sz, struct linux_statfs64 *sp); }
462269	STD		{ int|linux_sys||fstatfs64(int fd, \
463			    size_t sz, struct linux_statfs64 *sp); }
464270	STD		{ int|linux_sys||tgkill(int tgid, int tid, int sig); }
465271	NOARGS		{ int|compat_50_sys||utimes(const char *path, \
466			    const struct timeval50 *tptr); }
467272	STD		{ int|linux_sys||fadvise64_64(int fd, off_t offset, \
468			    off_t len, int advice); }
469273	UNIMPL		vserver
470274	UNIMPL		mbind
471275	UNIMPL		get_mempolicy
472276	UNIMPL		set_mempolicy
473277	STD		{ linux_mqd_t|linux_sys||mq_open(const char *name, \
474			    int oflag, linux_umode_t mode, \
475			    struct linux_mq_attr *attr); }
476278	STD		{ int|linux_sys||mq_unlink(const char *name); }
477279	STD		{ int|linux_sys||mq_timedsend(linux_mqd_t mqdes, \
478			    const char *msg_ptr, size_t msg_len, \
479			    unsigned int msg_prio, \
480			    const struct linux_timespec *abs_timeout); }
481280	STD		{ ssize_t|linux_sys||mq_timedreceive(linux_mqd_t mqdes, \
482			    char *msg_ptr, size_t msg_len, \
483			    unsigned int *msg_prio, \
484			    const struct linux_timespec *abs_timeout); }
485281	STD		{ int|linux_sys||mq_notify(linux_mqd_t mqdes, \
486			    const struct linux_sigevent *sevp); }
487282	STD		{ int|linux_sys||mq_getsetattr(linux_mqd_t mqdes, \
488			    const struct linux_mq_attr *newattr, \
489			    struct linux_mq_attr *oldattr); }
490283	UNIMPL		sys_kexec_load
491284	STD		{ int|linux_sys||waitid(int idtype, id_t id, \
492			    linux_siginfo_t *infop, int options, \
493			    struct rusage50 *rusage); }
494285	UNIMPL		/* unused */
495286	UNIMPL		add_key
496287	UNIMPL		request_key
497288	UNIMPL		keyctl
498289	UNIMPL		ioprio_set
499290	UNIMPL		ioprio_get
500291	STD		{ int|linux_sys||inotify_init(void); }
501292	STD		{ int|linux_sys||inotify_add_watch(int fd, \
502			    const char *pathname, uint32_t mask); }
503293	STD		{ int|linux_sys||inotify_rm_watch(int fd, int wd); }
504294	UNIMPL		migrate_pages
505295	STD 		{ int|linux_sys||openat(int fd, const char *path, \
506			    int flags, ... linux_umode_t mode); }
507296	NOARGS		{ int|sys||mkdirat(int fd, const char *path, \
508			    linux_umode_t mode); }
509297	STD		{ int|linux_sys||mknodat(int fd, const char *path, \
510			    linux_umode_t mode, unsigned dev); }
511298	STD		{ int|linux_sys||fchownat(int fd, const char *path, \
512			    uid_t owner, gid_t group, int flag); }
513299	UNIMPL		futimesat
514300	STD		{ int|linux_sys||fstatat64(int fd, const char *path, \
515			    struct linux_stat64 *sp, int flag); }
516301	STD		{ int|linux_sys||unlinkat(int fd, const char *path, \
517			    int flag); }
518302	NOARGS		{ int|sys||renameat(int fromfd, const char *from, \
519			    int tofd, const char *to); }
520303	STD		{ int|linux_sys||linkat(int fd1, const char *name1, \
521			    int fd2, const char *name2, int flags); }
522304	NOARGS		{ int|sys||symlinkat(const char *path1, int fd, \
523			    const char *path2); }
524305	NOARGS		{ ssize_t|sys||readlinkat(int fd, const char *path, \
525			    char *buf, size_t bufsize); }
526306	STD		{ int|linux_sys||fchmodat(int fd, const char *path, \
527			    linux_umode_t mode); }
528307	STD		{ int|linux_sys||faccessat(int fd, const char *path, \
529			    int amode); }
530308	STD		{ int|linux_sys||pselect6(int nfds, fd_set *readfds, \
531			   fd_set *writefds, fd_set *exceptfds, \
532			   struct linux_timespec *timeout, \
533			   linux_sized_sigset_t *ss); }
534309	STD		{ int|linux_sys||ppoll(struct pollfd *fds, u_int nfds, \
535			    struct linux_timespec *timeout, \
536			    linux_sigset_t *sigset); }
537310	UNIMPL		unshare
538311	NOARGS		{ int|sys||__futex_set_robust_list(void *head, \
539			    size_t len); }
540312	NOARGS		{ int|sys||__futex_get_robust_list(lwpid_t lwpid, \
541			    void **headp, size_t *lenp); }
542313	UNIMPL		splice
543314	STD		{ int|linux_sys||sync_file_range(int fd, \
544			    off_t offset, off_t nbytes, unsigned int flags); }
545315	UNIMPL		tee
546316	UNIMPL		vmsplice
547317	UNIMPL		move_pages
548318	STD		{ int|linux_sys||getcpu(unsigned int *cpu, \
549			    unsigned int *node, \
550			    struct linux_getcpu_cache *tcache); }
551319	STD		{ int|linux_sys||epoll_pwait(int epfd, \
552			    struct linux_epoll_event *events, int maxevents, \
553			    int timeout, const linux_sigset_t *sigmask); }
554320	STD		{ int|linux_sys||utimensat(int fd, const char *path, \
555			    struct linux_timespec *times, int flag); }
556321	UNIMPL		signalfd
557322	STD		{ int|linux_sys||timerfd_create(clockid_t clock_id, \
558			    int flags); }
559323	STD		{ int|linux_sys||eventfd(unsigned int initval); }
560324	STD		{ int|linux_sys||fallocate(int fd, int mode, \
561			    off_t offset, off_t len); }
562325	STD		{ int|linux_sys||timerfd_settime(int fd, int flags, \
563			    const struct linux_itimerspec *tim, \
564			    struct linux_itimerspec *otim); }
565326	STD		{ int|linux_sys||timerfd_gettime(int fd, \
566			    struct linux_itimerspec *tim); }
567327	UNIMPL		signalfd4
568328	STD		{ int|linux_sys||eventfd2(unsigned int initval, \
569			    int flags); }
570329	STD		{ int|linux_sys||epoll_create1(int flags); }
571330	STD             { int|linux_sys||dup3(int from, int to, int flags); }
572331	STD             { int|linux_sys||pipe2( int *pfds, int flags); }
573332	STD		{ int|linux_sys||inotify_init1(int flags); }
574333	STD		{ int|linux_sys||preadv(int fd, \
575			    const struct iovec *iovp, int iovcnt, \
576			    unsigned long off_lo, unsigned long off_hi); }
577334	STD		{ int|linux_sys||pwritev(int fd, \
578			    const struct iovcnt *iovp, int iovcnt, \
579			    unsigned long off_lo, unsigned long off_hi); }
580335	UNIMPL		rt_tgsigqueueinfo
581336	UNIMPL		perf_counter_open
582337	UNIMPL		recvmmsg
583338	UNIMPL		fanotify_init
584339	UNIMPL		fanotify_mark
585340	STD		{ int|linux_sys||prlimit64(pid_t pid, int which, \
586			    struct rlimit *new_rlp, struct rlimit *old_rlp); }
587341	UNIMPL		name_to_handle_at
588342	UNIMPL		open_by_handle_at
589343	UNIMPL		clock_adjtime
590344	STD		{ int|linux_sys||syncfs(int fd); }
591345	UNIMPL		sendmmsg
592346	UNIMPL		setns
593347	UNIMPL		process_vm_readv
594348	UNIMPL		process_vm_writev
595349	UNIMPL		kcmp
596350	UNIMPL		finit_module
597351	UNIMPL		sched_setattr
598352	UNIMPL		sched_getattr
599353	STD		{ int|linux_sys||renameat2(int fromfd, \
600			    const char *from, int tofd, const char *to, \
601			    unsigned int flags); }
602354	UNIMPL		seccomp
603355	NOARGS		{ ssize_t|sys||getrandom(void *buf, size_t buflen, \
604			    unsigned int flags); }
605356	STD		{ int|linux_sys||memfd_create(const char *name, \
606			    unsigned int flags); }
607357	UNIMPL		bpf
608358	UNIMPL		execveat
609359	UNIMPL		socket
610360	UNIMPL		socketpair
611361	UNIMPL		bind
612362	UNIMPL		connect
613363	UNIMPL		listen
614364	UNIMPL		accept4
615365	UNIMPL		getsockopt
616366	UNIMPL		setsockopt
617367	UNIMPL		getsockname
618368	UNIMPL		getpeername
619369	UNIMPL		sendto
620370	UNIMPL		sendmsg
621371	UNIMPL		recvfrom
622372	UNIMPL		recvmsg
623373	UNIMPL		shutdown
624374	UNIMPL		userfaultfd
625375	UNIMPL		membarrier
626376	UNIMPL		mlock2
627377	STD		{ ssize_t|linux_sys||copy_file_range(int fd_in, \
628			off_t * off_in, int fd_out, off_t * off_out, \
629			size_t len, unsigned int flags); }
630378	UNIMPL		preadv2
631379	UNIMPL		pwritev2
632380	UNIMPL		pkey_mprotect
633381	UNIMPL		pkey_alloc
634382	UNIMPL		pkey_free
635383	UNIMPL		statx
636384	UNIMPL		arch_prctl
637385	UNIMPL		io_pgetevents
638386	UNIMPL		rseq
639387	UNIMPL
640388	UNIMPL
641389	UNIMPL
642390	UNIMPL
643391	UNIMPL
644392	UNIMPL
645393	UNIMPL		semget
646394	UNIMPL		semctl
647395	UNIMPL		shmget
648396	UNIMPL		shmctl
649397	STD		{ int|linux_sys||statx(int fd, const char *path, \
650			    int flag, unsigned int mask, \
651			    struct linux_statx *sp); }
652398	UNIMPL		shmdt
653399	UNIMPL		msgget
654400	UNIMPL		msgsnd
655401	UNIMPL		msgrcv
656402	UNIMPL		msgctl
657403	UNIMPL		clock_gettime64
658404	UNIMPL		clock_settime64
659405	UNIMPL		clock_adjtime64
660406	UNIMPL		clock_getres_time64
661407	UNIMPL		clock_nanosleep_time64
662408	UNIMPL		timer_gettime64
663409	UNIMPL		timer_settime64
664410	UNIMPL		timerfd_gettime64
665411	UNIMPL		timerfd_settime64
666412	UNIMPL		utimensat_time64
667413	UNIMPL		pselect6_time64
668414	UNIMPL		ppoll_time64
669415	UNIMPL
670416	UNIMPL		io_pgetevents_time64
671417	UNIMPL		recvmmsg_time64
672418	UNIMPL		mq_timedsend_time64
673419	UNIMPL		mq_timedreceive_time64
674420	UNIMPL		semtimedop_time64
675421	UNIMPL		rt_sigtimedwait_time64
676422	UNIMPL		futex_time64
677423	UNIMPL		sched_rr_get_interval_time64
678424	UNIMPL		pidfd_send_signal
679425	UNIMPL		io_uring_setup
680426	UNIMPL		io_uring_enter
681427	UNIMPL		io_uring_register
682428	UNIMPL		open_tree
683429	UNIMPL		move_mount
684430	UNIMPL		fsopen
685431	UNIMPL		fsconfig
686432	UNIMPL		fsmount
687433	UNIMPL		fspick
688434	UNIMPL		pidfd_open
689435	STD		{ int|linux_sys||clone3(\
690			    struct linux_user_clone3_args *cl_args, \
691			    size_t size); }
692436	STD		{ int|linux_sys||close_range(unsigned int first, \
693			    unsigned int last, unsigned int flags); }
694437	UNIMPL		openat2
695438	UNIMPL		pidfd_getfd
696439	STD		{ int|linux_sys||faccessat2(int fd, const char *path, \
697			    int amode, int flags); }
698440	UNIMPL		process_madvise
699441	STD		{ int|linux_sys||epoll_pwait2(int epfd, \
700			    struct linux_epoll_event *events, int maxevents, \
701			    const struct linux_timespec *timeout, \
702			    const linux_sigset_t *sigmask); }
703