xref: /netbsd-src/sys/compat/linux/arch/amd64/syscalls.master (revision a3740e150a4bea0d03e70539dc6fe36956b72c38)
1*a3740e15Schristos	$NetBSD: syscalls.master,v 1.75 2024/09/28 19:35:55 christos Exp $
289647c7cSmanu
389647c7cSmanu;	@(#)syscalls.master	8.1 (Berkeley) 7/19/93
489647c7cSmanu
589647c7cSmanu; NetBSD amd64 COMPAT_LINUX system call name/number "master" file.
689647c7cSmanu; (See syscalls.conf to see what it is processed into.)
789647c7cSmanu;
889647c7cSmanu; Fields: number type [type-dependent ...]
989647c7cSmanu;	number	system call number, must be in order
1089647c7cSmanu;	type	one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of
1189647c7cSmanu;		the compatibility options defined in syscalls.conf.
1289647c7cSmanu;
1389647c7cSmanu; types:
1489647c7cSmanu;	STD	always included
1589647c7cSmanu;	OBSOL	obsolete, not included in system
1689647c7cSmanu;	UNIMPL	unimplemented, not included in system
1789647c7cSmanu;	NODEF	included, but don't define the syscall number
1889647c7cSmanu;	NOARGS	included, but don't define the syscall args structure
1989647c7cSmanu;	INDIR	included, but don't define the syscall args structure
2089647c7cSmanu;		and allow it to be "really" varargs.
2189647c7cSmanu;
2289647c7cSmanu; The compat options are defined in the syscalls.conf file, and the
2389647c7cSmanu; compat option name is prefixed to the syscall name.  Other than
2489647c7cSmanu; that, they're like NODEF (for 'compat' options), or STD (for
2589647c7cSmanu; 'libcompat' options).
2689647c7cSmanu;
2789647c7cSmanu; The type-dependent arguments are as follows:
2889647c7cSmanu; For STD, NODEF, NOARGS, and compat syscalls:
2989647c7cSmanu;	{ pseudo-proto } [alias]
3089647c7cSmanu; For other syscalls:
3189647c7cSmanu;	[comment]
3289647c7cSmanu;
3389647c7cSmanu; #ifdef's, etc. may be included, and are copied to the output files.
3489647c7cSmanu; #include's are copied to the syscall names and switch definition files only.
3589647c7cSmanu
3689647c7cSmanu#if defined(_KERNEL_OPT)
37ee0c5b44Smanu#include "opt_sysv.h"
3889647c7cSmanu#include "opt_compat_43.h"
39461a86f9Schristos#include "opt_compat_netbsd.h"
4089647c7cSmanu#endif
4189647c7cSmanu
42461a86f9Schristos
4389647c7cSmanu#include <sys/param.h>
4489647c7cSmanu#include <sys/poll.h>
4589647c7cSmanu#include <sys/systm.h>
4689647c7cSmanu#include <sys/signal.h>
4789647c7cSmanu#include <sys/mount.h>
4889647c7cSmanu#include <sys/syscallargs.h>
49461a86f9Schristos#include <sys/time.h>
50461a86f9Schristos
51461a86f9Schristos#include <compat/sys/time.h>
5289647c7cSmanu
5389647c7cSmanu#include <compat/linux/common/linux_types.h>
54d11110f4Schristos#include <compat/linux/common/linux_misc.h>
5589647c7cSmanu#include <compat/linux/common/linux_mmap.h>
56ee0c5b44Smanu#include <compat/linux/common/linux_ipc.h>
577e2790cfSdsl#include <compat/linux/common/linux_msg.h>
58bc9a9bdbSchristos#include <compat/linux/common/linux_sched.h>
59ee0c5b44Smanu#include <compat/linux/common/linux_sem.h>
607e2790cfSdsl#include <compat/linux/common/linux_shm.h>
6189647c7cSmanu#include <compat/linux/common/linux_signal.h>
6289647c7cSmanu#include <compat/linux/common/linux_siginfo.h>
630124a941Schristos#include <compat/linux/common/linux_mqueue.h>
6489647c7cSmanu#include <compat/linux/common/linux_machdep.h>
65*a3740e15Schristos#include <compat/linux/common/linux_sched.h>
6689647c7cSmanu
6789647c7cSmanu#include <compat/linux/linux_syscallargs.h>
6889647c7cSmanu
6989647c7cSmanu%%
7089647c7cSmanu
71903adfd8Snjoly0	NOARGS		{ ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
72903adfd8Snjoly1	NOARGS		{ ssize_t|sys||write(int fd, const void *buf, \
73e72b8ff8Snjoly			    size_t nbyte); }
74a9a2ce83Spooka2	STD		{ int|linux_sys||open(const char *path, int flags, \
7529a841b3Schs			    linux_umode_t mode); }
76a9a2ce83Spooka3	NOARGS		{ int|sys||close(int fd); }
77a9a2ce83Spooka4	STD		{ int|linux_sys||stat64(const char *path, \
78e8df95dcSnjoly			    struct linux_stat64 *sp); }
79a9a2ce83Spooka5	STD		{ int|linux_sys||fstat64(int fd, \
80e8df95dcSnjoly			    struct linux_stat64 *sp); }
81a9a2ce83Spooka6	STD		{ int|linux_sys||lstat64(const char *path, \
82e8df95dcSnjoly			    struct linux_stat64 *sp); }
83a9a2ce83Spooka7	NOARGS		{ int|sys||poll(struct pollfd *fds, u_int nfds, \
8489647c7cSmanu			    int timeout); }
85a9a2ce83Spooka8	NOARGS		{ long|compat_43_sys||lseek(int fd, long offset, \
8689647c7cSmanu			    int whence); }
87a9a2ce83Spooka9	NOARGS		{ linux_off_t|linux_sys||mmap(unsigned long addr, \
8889647c7cSmanu			    size_t len, int prot, int flags, int fd, \
8989647c7cSmanu			    linux_off_t offset); }
90a9a2ce83Spooka10	STD		{ int|linux_sys||mprotect(const void *start, \
9189647c7cSmanu			    unsigned long len, int prot); }
9272a681e4Snjoly11	NOARGS		{ int|sys||munmap(void *addr, size_t len); }
93a9a2ce83Spooka12	STD		{ int|linux_sys||brk(char *nsize); }
94a9a2ce83Spooka13	STD		{ int|linux_sys||rt_sigaction(int signum, \
9589647c7cSmanu			    const struct linux_sigaction *nsa, \
9689647c7cSmanu			    struct linux_sigaction *osa, \
9789647c7cSmanu			    size_t sigsetsize); }
98a9a2ce83Spooka14	STD		{ int|linux_sys||rt_sigprocmask(int how, \
9989647c7cSmanu			    const linux_sigset_t *set, \
10089647c7cSmanu			    linux_sigset_t *oset, \
10189647c7cSmanu			    size_t sigsetsize); }
102a9a2ce83Spooka15	NOARGS		{ int|linux_sys||rt_sigreturn(void); }
103a9a2ce83Spooka16	STD		{ int|linux_sys||ioctl(int fd, u_long com, \
10453524e44Schristos			    void *data); }
105a9a2ce83Spooka17	STD		{ int|linux_sys||pread(int fd, char *buf, \
106d63cac9fSnjoly			    size_t nbyte, off_t offset); }
107a9a2ce83Spooka18	STD		{ int|linux_sys||pwrite(int fd, char *buf, \
108d63cac9fSnjoly			    size_t nbyte, off_t offset); }
109903adfd8Snjoly19	NOARGS		{ ssize_t|sys||readv(int fd, \
110903adfd8Snjoly			    const struct iovec *iovp, int iovcnt); }
111903adfd8Snjoly20	NOARGS		{ ssize_t|sys||writev(int fd, \
112903adfd8Snjoly			    const struct iovec *iovp, int iovcnt); }
113a9a2ce83Spooka21	NOARGS		{ int|sys||access(const char *path, int flags); }
114a9a2ce83Spooka22	STD		{ int|linux_sys||pipe(int *pfds); }
115a9a2ce83Spooka23	STD		{ int|linux_sys||select(int nfds, fd_set *readfds, \
11689647c7cSmanu			    fd_set *writefds, fd_set *exceptfds, \
1177345858aSnjoly			    struct timeval50 *timeout); }
118a9a2ce83Spooka24	STD		{ int|linux_sys||sched_yield(void); }
119a9a2ce83Spooka25	STD		{ void *|linux_sys||mremap(void *old_address, \
12089647c7cSmanu			    size_t old_size, size_t new_size, u_long flags); }
121a9a2ce83Spooka26	NOARGS		{ int|sys|13|msync(void *addr, size_t len, int flags); }
122a9a2ce83Spooka27	NOARGS		{ int|sys||mincore(void *addr, size_t len, char *vec); }
123a9a2ce83Spooka28	NOARGS		{ int|sys||madvise(void *addr, size_t len, int behav); }
124ee0c5b44Smanu#ifdef SYSVSHM
125a9a2ce83Spooka29	NOARGS		{ int|linux_sys||shmget(key_t key, size_t size, \
126432f035fSmanu			    int shmflg); }
127a9a2ce83Spooka30	NOARGS		{ int|sys||shmat(int shmid, void *shmaddr, int shmflg); }
128a9a2ce83Spooka31	NOARGS		{ int|linux_sys||shmctl(int shmid, int cmd, \
129ee0c5b44Smanu			    struct linux_shmid_ds *buf); }
130ee0c5b44Smanu#else
13189647c7cSmanu29	UNIMPL		shmget
13289647c7cSmanu30	UNIMPL		shmat
13389647c7cSmanu31	UNIMPL		shmctl
134ee0c5b44Smanu#endif
135dffea6adSnjoly32	NOARGS		{ int|sys||dup(int fd); }
136dffea6adSnjoly33	NOARGS		{ int|sys||dup2(int from, int to); }
137a9a2ce83Spooka34	STD		{ int|linux_sys||pause(void); }
138a9a2ce83Spooka35	STD		{ int|linux_sys||nanosleep( \
139cf192232Snjoly			    const struct linux_timespec *rqtp, \
140cf192232Snjoly			    struct linux_timespec *rmtp); }
1416fd46573Schristos36	NOARGS		{ int|compat_50_sys||getitimer(int which, \
142461a86f9Schristos			    struct itimerval50 *itv); }
143a9a2ce83Spooka37	STD		{ int|linux_sys||alarm(unsigned int secs); }
1446fd46573Schristos38	NOARGS		{ int|compat_50_sys||setitimer(int which, \
145461a86f9Schristos			    struct itimerval50 *itv, \
146461a86f9Schristos			    struct itimerval50 *oitv); }
14733fa5ccbSchs39	STD		{ pid_t|sys||getpid(void); }
14889647c7cSmanu40	UNIMPL		sendfile
149a9a2ce83Spooka41	STD		{ int|linux_sys||socket(int domain, \
15089647c7cSmanu			    int type, int protocol); }
151a9a2ce83Spooka42	STD		{ int|linux_sys||connect(int s, \
15289647c7cSmanu			    const struct osockaddr *name, \
15389647c7cSmanu			    unsigned int namelen); }
154a9a2ce83Spooka43	STD		{ int|linux_sys||accept(int s, struct osockaddr *name, \
15589647c7cSmanu			    int *anamelen); } oaccept
156a9a2ce83Spooka44	STD		{ ssize_t|linux_sys||sendto(int s, void *msg, int len, \
15789647c7cSmanu			    int flags, struct osockaddr *to, int tolen); }
158a9a2ce83Spooka45	STD		{ ssize_t|linux_sys||recvfrom(int s, void *buf, \
15989647c7cSmanu			    size_t len, int flags, struct osockaddr *from, \
16089647c7cSmanu			    unsigned int *fromlenaddr); }
161a9a2ce83Spooka46	STD		{ int|linux_sys||sendmsg(int s, \
162f50c7f6eSnjoly			    const struct linux_msghdr *msg, int flags); }
163a9a2ce83Spooka47	STD		{ ssize_t|linux_sys||recvmsg(int s, \
164f50c7f6eSnjoly			    struct linux_msghdr *msg, int flags); }
165a9a2ce83Spooka48	NOARGS		{ int|sys||shutdown(int s, int how); }
166a9a2ce83Spooka49	STD		{ int|linux_sys||bind(int s, \
16789647c7cSmanu			    const struct osockaddr *name, \
16889647c7cSmanu			    unsigned int namelen); }
169a9a2ce83Spooka50	NOARGS		{ int|sys||listen(int s, int backlog); }
170a9a2ce83Spooka51	STD		{ int|linux_sys||getsockname(int fdec, void *asa, \
17189647c7cSmanu			    int *alen); }
172a9a2ce83Spooka52	STD		{ int|linux_sys||getpeername(int fdes, \
17389647c7cSmanu			    struct sockaddr *asa, unsigned int *alen); }
174a9a2ce83Spooka53	STD		{ int|linux_sys||socketpair(int domain, int type, \
17589647c7cSmanu			    int protocol, int *rsv); }
176a9a2ce83Spooka54	STD		{ int|linux_sys||setsockopt(int s, int level, \
17789647c7cSmanu			    int optname, void *optval, int optlen); }
178a9a2ce83Spooka55	STD		{ int|linux_sys||getsockopt(int s, int level, \
17989647c7cSmanu			    int optname, void *optval, int *optlen); }
180a9a2ce83Spooka56	STD		{ int|linux_sys||clone(int flags, void *stack, \
18133fa5ccbSchs			    void *parent_tidptr, void *child_tidptr, void *tls); }
1822284e7a4Schristos57	NOARGS		{ int|sys||fork(void); }
183a9a2ce83Spooka58	NOARGS		{ int|sys|14|vfork(void); }
184a9a2ce83Spooka59	NOARGS		{ int|sys||execve(const char *path, char **argp, \
18589647c7cSmanu			    char **envp); }
18633fa5ccbSchs60	STD		{ int|linux_sys||exit(int rval); }
187a9a2ce83Spooka61	STD		{ int|linux_sys||wait4(int pid, int *status, \
18825a76c08Snjoly			    int options, struct rusage50 *rusage); }
189a9a2ce83Spooka62	STD		{ int|linux_sys||kill(int pid, int signum); }
190a9a2ce83Spooka63	STD		{ int|linux_sys||uname(struct linux_utsname *up); }
191ee0c5b44Smanu#ifdef SYSVSEM
192a9a2ce83Spooka64	NOARGS		{ int|sys||semget(key_t key, int nsems, int semflg); }
193a9a2ce83Spooka65	NOARGS		{ int|sys||semop(int semid, struct sembuf *sops, \
194ee0c5b44Smanu			    size_t nsops); }
195a9a2ce83Spooka66	STD		{ int|linux_sys||semctl(int semid, int semnum, \
196ee0c5b44Smanu			    int cmd, union linux_semun arg); }
197ee0c5b44Smanu#else
19889647c7cSmanu64	UNIMPL		semget
19989647c7cSmanu65	UNIMPL		semop
20089647c7cSmanu66	UNIMPL		semctl
201ee0c5b44Smanu#endif
202ee0c5b44Smanu#ifdef SYSVSHM
203a9a2ce83Spooka67	NOARGS		{ int|sys||shmdt(const void *shmaddr); }
204ee0c5b44Smanu#else
20589647c7cSmanu67	UNIMPL		shmdt
206ee0c5b44Smanu#endif
207ee0c5b44Smanu#ifdef SYSVMSG
208a9a2ce83Spooka68	NOARGS		{ int|sys||msgget(key_t key, int msgflg); }
209a9a2ce83Spooka69	NOARGS		{ int|sys||msgsnd(int msqid, void *msgp, size_t msgsz, \
210ee0c5b44Smanu			    int msgflg); }
211a9a2ce83Spooka70	NOARGS		{ ssize_t|sys||msgrcv(int msqid, void *msgp, \
212ee0c5b44Smanu			    size_t msgsz, long msgtyp, int msgflg); }
213a9a2ce83Spooka71	NOARGS		{ int|linux_sys||msgctl(int msqid, int cmd, \
214ee0c5b44Smanu			    struct linux_msqid_ds *buf); }
215ee0c5b44Smanu#else
21689647c7cSmanu68	UNIMPL		msgget
21789647c7cSmanu69	UNIMPL		msgsnd
21889647c7cSmanu70	UNIMPL		msgrcv
21989647c7cSmanu71	UNIMPL		msgctl
220ee0c5b44Smanu#endif
221a9a2ce83Spooka72	STD		{ int|linux_sys||fcntl(int fd, int cmd, void *arg); }
222a9a2ce83Spooka73	NOARGS		{ int|sys||flock(int fd, int how); }
223a9a2ce83Spooka74	NOARGS		{ int|sys||fsync(int fd); }
224a9a2ce83Spooka75	STD		{ int|linux_sys||fdatasync(int fd); }
225a9a2ce83Spooka76	STD		{ int|linux_sys||truncate64(const char *path, \
22689647c7cSmanu			    off_t length); }
227a9a2ce83Spooka77	STD		{ int|linux_sys||ftruncate64(unsigned int fd, \
22889647c7cSmanu			    off_t length); }
229a9a2ce83Spooka78	STD		{ int|linux_sys||getdents(int fd, \
23089647c7cSmanu			    struct linux_dirent *dent, unsigned int count); }
231a9a2ce83Spooka79	NOARGS		{ int|sys||__getcwd(char *bufp, size_t length); }
232a9a2ce83Spooka80	NOARGS		{ int|sys||chdir(const char *path); }
233a9a2ce83Spooka81	NOARGS		{ int|sys||fchdir(int fd); }
234a9a2ce83Spooka82	NOARGS		{ int|sys||__posix_rename(const char *from, \
23589647c7cSmanu			    const char *to); }
23629a841b3Schs83	NOARGS		{ int|sys||mkdir(const char *path, linux_umode_t mode); }
237a9a2ce83Spooka84	NOARGS		{ int|sys||rmdir(const char *path); }
2387baf52cdSnjoly85	STD		{ int|linux_sys||creat(const char *path, linux_umode_t mode); }
239a9a2ce83Spooka86	NOARGS		{ int|sys||link(const char *path, const char *link); }
240a9a2ce83Spooka87	STD		{ int|linux_sys||unlink(const char *path); }
24106978185Schristos88	NOARGS		{ int|sys||symlink(const char *path, const char *link); }
242733b812eSnjoly89	NOARGS		{ ssize_t|sys||readlink(const char *path, char *buf, \
24389647c7cSmanu			    int count); }
24429a841b3Schs90	NOARGS		{ int|sys||chmod(const char *path, linux_umode_t mode); }
24529a841b3Schs91	NOARGS		{ int|sys||fchmod(int fd, linux_umode_t mode); }
246a9a2ce83Spooka92	NOARGS		{ int|sys||__posix_chown(const char *path, uid_t uid, \
24789647c7cSmanu				gid_t gid); }
248a9a2ce83Spooka93	NOARGS		{ int|sys||__posix_fchown(int fd, uid_t uid, \
24989647c7cSmanu			    gid_t gid); }
250a9a2ce83Spooka94	NOARGS		{ int|sys||__posix_lchown(const char *path, uid_t uid, \
25189647c7cSmanu			    gid_t gid); }
252a9a2ce83Spooka95	NOARGS		{ int|sys||umask(int newmask); }
2537345858aSnjoly96	STD		{ int|linux_sys||gettimeofday(struct timeval50 *tp, \
25489647c7cSmanu			    struct timezone *tzp); }
255a9a2ce83Spooka97	STD		{ int|linux_sys||getrlimit(int which, \
25623cf341eSmanu			    struct rlimit *rlp); }
2577345858aSnjoly98	NOARGS		{ int|compat_50_sys||getrusage(int who, \
2587345858aSnjoly			    struct rusage50 *rusage); }
259a9a2ce83Spooka99	STD		{ int|linux_sys||sysinfo(struct linux_sysinfo *arg); }
260a9a2ce83Spooka100	STD		{ int|linux_sys||times(struct times *tms); }
261a9a2ce83Spooka101	STD		{ int|linux_sys||ptrace(long request, long pid, \
26289647c7cSmanu			  long addr, long data); }
263a9a2ce83Spooka102	NOARGS		{ uid_t|sys||getuid(void); }
26489647c7cSmanu103	UNIMPL		syslog
265a9a2ce83Spooka104	NOARGS		{ gid_t|sys||getgid(void); }
266ca819d28Snjoly105	NOARGS		{ int|sys||setuid(uid_t uid); }
267ca819d28Snjoly106	NOARGS		{ int|sys||setgid(gid_t gid); }
268a9a2ce83Spooka107	NOARGS		{ uid_t|sys||geteuid(void); }
269a9a2ce83Spooka108	NOARGS		{ gid_t|sys||getegid(void); }
270a9a2ce83Spooka109	NOARGS		{ int|sys||setpgid(int pid, int pgid); }
27133fa5ccbSchs110	STD		{ pid_t|sys||getppid(void); }
272a9a2ce83Spooka111	NOARGS		{ int|sys||getpgrp(void); }
273a9a2ce83Spooka112	NOARGS		{ int|sys||setsid(void); }
274a9a2ce83Spooka113	NOARGS		{ int|sys||setreuid(uid_t ruid, uid_t euid); }
275a9a2ce83Spooka114	NOARGS		{ int|sys||setregid(gid_t rgid, gid_t egid); }
2761085071eSnjoly115	NOARGS		{ int|sys||getgroups(int gidsetsize, gid_t *gidset); }
2771085071eSnjoly116	NOARGS		{ int|sys||setgroups(int gidsetsize, gid_t *gidset); }
278a9a2ce83Spooka117	STD		{ int|linux_sys||setresuid(uid_t ruid, uid_t euid, \
27989647c7cSmanu			    uid_t suid); }
280a9a2ce83Spooka118	STD		{ int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \
28189647c7cSmanu			    uid_t *suid); }
282a9a2ce83Spooka119	STD		{ int|linux_sys||setresgid(gid_t rgid, gid_t egid, \
28389647c7cSmanu			    gid_t sgid); }
284a9a2ce83Spooka120	STD		{ int|linux_sys||getresgid(gid_t *rgid, gid_t *egid, \
28589647c7cSmanu			    gid_t *sgid); }
286a9a2ce83Spooka121	NOARGS		{ pid_t|sys||getpgid(pid_t pid); }
287a9a2ce83Spooka122	STD		{ int|linux_sys||setfsuid(uid_t uid); }
288a9a2ce83Spooka123	STD		{ int|linux_sys||setfsgid(gid_t gid); }
289a9a2ce83Spooka124	NOARGS		{ pid_t|sys||getsid(pid_t pid); }
29089647c7cSmanu125	UNIMPL		capget
29189647c7cSmanu126	UNIMPL		capset
292a9a2ce83Spooka127	STD		{ int|linux_sys||rt_sigpending( \
29389647c7cSmanu			    linux_sigset_t *set, \
29489647c7cSmanu			    size_t sigsetsize); }
2954a806ef7Schristos128	STD		{ int|linux_sys||rt_sigtimedwait( \
2964a806ef7Schristos			    const linux_sigset_t *set, \
2974a806ef7Schristos			    linux_siginfo_t *info, \
2984a806ef7Schristos			    const struct linux_timespec *timeout); }
299a9a2ce83Spooka129	STD		{ int|linux_sys||rt_queueinfo(int pid, int signum, \
3005bf0ee73Snjoly			    linux_siginfo_t *uinfo); }
301a9a2ce83Spooka130	STD		{ int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \
30289647c7cSmanu			    size_t sigsetsize); }
303a9a2ce83Spooka131	STD		{ int|linux_sys||sigaltstack( \
30489647c7cSmanu			    const struct linux_sigaltstack *ss, \
30589647c7cSmanu			    struct linux_sigaltstack *oss); }
306a9a2ce83Spooka132	STD		{ int|linux_sys||utime(const char *path, \
30789647c7cSmanu			    struct linux_utimbuf *times); }
30829a841b3Schs133	STD		{ int|linux_sys||mknod(const char *path, linux_umode_t mode, \
30929a841b3Schs			    unsigned dev); }
31039fcee12Sjoerg#ifdef EXEC_AOUT
311a9a2ce83Spooka134	STD		{ int|linux_sys||uselib(const char *path); }
31239fcee12Sjoerg#else
31339fcee12Sjoerg134	UNIMPL		sys_uselib
31439fcee12Sjoerg#endif
315675b20daSnjoly135	STD		{ int|linux_sys||personality(unsigned long per); }
31689647c7cSmanu136	UNIMPL		ustat
317a9a2ce83Spooka137	STD		{ int|linux_sys||statfs(const char *path, \
3184e3a8d7dSnjoly			    struct linux_statfs *sp); }
319a9a2ce83Spooka138	STD		{ int|linux_sys||fstatfs(int fd, \
3204e3a8d7dSnjoly			    struct linux_statfs *sp); }
32189647c7cSmanu139	UNIMPL		sysfs
322a9a2ce83Spooka140	STD		{ int|linux_sys||getpriority(int which, int who); }
323a9a2ce83Spooka141	NOARGS		{ int|sys||setpriority(int which, int who, int prio); }
324a9a2ce83Spooka142	STD		{ int|linux_sys||sched_setparam(pid_t pid, \
32589647c7cSmanu			    const struct linux_sched_param *sp); }
326a9a2ce83Spooka143	STD		{ int|linux_sys||sched_getparam(pid_t pid, \
32789647c7cSmanu			    struct linux_sched_param *sp); }
328a9a2ce83Spooka144	STD		{ int|linux_sys||sched_setscheduler(pid_t pid, \
32989647c7cSmanu			    int policy, const struct linux_sched_param *sp); }
330a9a2ce83Spooka145	STD		{ int|linux_sys||sched_getscheduler(pid_t pid); }
331a9a2ce83Spooka146	STD		{ int|linux_sys||sched_get_priority_max(int policy); }
332a9a2ce83Spooka147	STD		{ int|linux_sys||sched_get_priority_min(int policy); }
33389647c7cSmanu148	UNIMPL		sys_sched_rr_get_interval
334a9a2ce83Spooka149	NOARGS		{ int|sys||mlock(void *addr, size_t len); }
335a9a2ce83Spooka150	NOARGS		{ int|sys||munlock(void *addr, size_t len); }
336a9a2ce83Spooka151	NOARGS		{ int|sys||mlockall(int flags); }
337a9a2ce83Spooka152	NOARGS		{ int|sys||munlockall(void); }
33889647c7cSmanu153	UNIMPL		vhangup
339a9a2ce83Spooka154	STD		{ int|linux_sys||modify_ldt(int func, void *ptr, \
34089647c7cSmanu			    size_t bytecount); }
34189647c7cSmanu155	UNIMPL		pivot_root
342a9a2ce83Spooka156	STD		{ int|linux_sys||__sysctl(struct linux___sysctl *lsp); }
34389647c7cSmanu157	UNIMPL		prctl
344a9a2ce83Spooka158	STD		{ int|linux_sys||arch_prctl(int code, \
34589647c7cSmanu			    unsigned long addr); }
34689647c7cSmanu159	UNIMPL		adjtimex
347a9a2ce83Spooka160	STD		{ int|linux_sys||setrlimit(u_int which, \
34823cf341eSmanu			    struct rlimit *rlp); }
349a9a2ce83Spooka161	NOARGS		{ int|sys||chroot(char *path); }
350a9a2ce83Spooka162	NOARGS		{ int|sys||sync(void); }
351a9a2ce83Spooka163	NOARGS		{ int|sys||acct(char *path); }
3527345858aSnjoly164	STD		{ int|linux_sys||settimeofday(struct timeval50 *tp, \
35389647c7cSmanu			    struct timezone *tzp); }
35489647c7cSmanu165	UNIMPL		mount
35589647c7cSmanu166	UNIMPL		umount2
356a9a2ce83Spooka167	STD		{ int|linux_sys||swapon(char *name); }
357a9a2ce83Spooka168	STD		{ int|linux_sys||swapoff(const char *path); }
358a9a2ce83Spooka169	STD		{ int|linux_sys||reboot(int magic1, int magic2, \
35989647c7cSmanu			    int cmd, void *arg); }
360a9a2ce83Spooka170	NOARGS		{ int|compat_43_sys||sethostname(char *hostname, \
36189647c7cSmanu			    u_int len);}
362a9a2ce83Spooka171	STD		{ int|linux_sys||setdomainname(char *domainname, \
36389647c7cSmanu			    int len); }
364a9a2ce83Spooka172	STD		{ int|linux_sys||iopl(int level); }
365a9a2ce83Spooka173	STD		{ int|linux_sys||ioperm(unsigned int lo, \
36689647c7cSmanu			    unsigned int hi, int val); }
36789647c7cSmanu174	UNIMPL		create_module
36889647c7cSmanu175	UNIMPL		init_module
36989647c7cSmanu176	UNIMPL		delete_module
37089647c7cSmanu177	UNIMPL		get_kernel_syms
37189647c7cSmanu178	UNIMPL		query_module
37289647c7cSmanu179	UNIMPL		quotactl
37389647c7cSmanu180	UNIMPL		nfsservctl
37489647c7cSmanu181	UNIMPL		getpmsg
37589647c7cSmanu182	UNIMPL		putpmsg
37689647c7cSmanu183	UNIMPL		afs_syscall
37789647c7cSmanu184	UNIMPL		tuxcall
37889647c7cSmanu185	UNIMPL		security
379a9a2ce83Spooka186	STD		{ pid_t|linux_sys||gettid(void); }
380a0a4eb1dSchristos187	STD		{ ssize_t|linux_sys||readahead(int fd, off_t offset, \
381a0a4eb1dSchristos			    size_t count); }
382a9a2ce83Spooka188	STD		{ int|linux_sys||setxattr(char *path, char *name, \
383711b0df6Sfvdl			    void *value, size_t size, int flags); }
384a9a2ce83Spooka189	STD		{ int|linux_sys||lsetxattr(char *path, char *name, \
385711b0df6Sfvdl			    void *value, size_t size, int flags); }
386a9a2ce83Spooka190	STD		{ int|linux_sys||fsetxattr(int fd, char *name, \
387711b0df6Sfvdl			    void *value, size_t size, int flags); }
388a9a2ce83Spooka191	STD		{ ssize_t|linux_sys||getxattr(char *path, char *name, \
389711b0df6Sfvdl			    void *value, size_t size); }
390a9a2ce83Spooka192	STD		{ ssize_t|linux_sys||lgetxattr(char *path, char *name, \
391711b0df6Sfvdl			    void *value, size_t size); }
392a9a2ce83Spooka193	STD		{ ssize_t|linux_sys||fgetxattr(int fd, char *name, \
393711b0df6Sfvdl			    void *value, size_t size); }
394a9a2ce83Spooka194	STD		{ ssize_t|linux_sys||listxattr(char *path, char *list, \
395711b0df6Sfvdl			    size_t size); }
396a9a2ce83Spooka195	STD		{ ssize_t|linux_sys||llistxattr(char *path, char *list, \
397711b0df6Sfvdl			    size_t size); }
398a9a2ce83Spooka196	STD		{ ssize_t|linux_sys||flistxattr(int fd, char *list, \
399711b0df6Sfvdl			    size_t size); }
400a9a2ce83Spooka197	STD		{ int|linux_sys||removexattr(char *path, char *name); }
401a9a2ce83Spooka198	STD		{ int|linux_sys||lremovexattr(char *path, char *name); }
402a9a2ce83Spooka199	STD		{ int|linux_sys||fremovexattr(int fd, char *name); }
403a9a2ce83Spooka200	STD		{ int|linux_sys||tkill(int tid, int sig); }
404a9a2ce83Spooka201	STD		{ int|linux_sys||time(linux_time_t *t); }
405a9a2ce83Spooka202	STD		{ int|linux_sys||futex(int *uaddr, int op, int val, \
406377975c1Snjoly			    const struct linux_timespec *timeout, int *uaddr2, \
407e1c0c1c9Smanu			    int val3); }
408a9a2ce83Spooka203	STD		{ int|linux_sys||sched_setaffinity(pid_t pid, \
40941455b2eSmanu			    unsigned int len, unsigned long *mask); }
410a9a2ce83Spooka204	STD		{ int|linux_sys||sched_getaffinity(pid_t pid, \
41141455b2eSmanu			    unsigned int len, unsigned long *mask); }
41289647c7cSmanu205	UNIMPL		set_thread_area
41389647c7cSmanu206	UNIMPL		io_setup
41489647c7cSmanu207	UNIMPL		io_destroy
41589647c7cSmanu208	UNIMPL		io_getevents
41689647c7cSmanu209	UNIMPL		io_submit
41789647c7cSmanu210	UNIMPL		io_cancel
41889647c7cSmanu211	UNIMPL		get_thread_area
41989647c7cSmanu212	UNIMPL		lookup_dcookie
420d11110f4Schristos213	STD		{ int|linux_sys||epoll_create(int size); }
42189647c7cSmanu214	UNIMPL		epoll_ctl_old
42289647c7cSmanu215	UNIMPL		epoll_wait_old
42389647c7cSmanu216	UNIMPL		remap_file_pages
424a9a2ce83Spooka217	STD		{ int|linux_sys||getdents64(int fd, \
42589647c7cSmanu			    struct linux_dirent64 *dent, unsigned int count); }
426a9a2ce83Spooka218	STD		{ int|linux_sys||set_tid_address(int *tid); }
42789647c7cSmanu219	UNIMPL		restart_syscall
42889647c7cSmanu220	UNIMPL		semtimedop
429e9bb8ecaSnjoly221	STD		{ int|linux_sys||fadvise64(int fd, off_t offset, \
430e9bb8ecaSnjoly			    size_t len, int advice); }
431555b1851Sthorpej222	STD		{ int|linux_sys||timer_create(clockid_t clockid, \
432555b1851Sthorpej			    struct linux_sigevent *evp, timer_t *timerid); }
433555b1851Sthorpej223	STD		{ int|linux_sys||timer_settime(timer_t timerid, \
434555b1851Sthorpej			    int flags, const struct linux_itimerspec *tim, \
435555b1851Sthorpej			    struct linux_itimerspec *otim); }
436555b1851Sthorpej224	STD		{ int|linux_sys||timer_gettime(timer_t timerid, \
437555b1851Sthorpej			    struct linux_itimerspec *tim); }
438555b1851Sthorpej225	NOARGS		{ int|sys||timer_getoverrun(timer_t timerid); }
439555b1851Sthorpej226	NOARGS		{ int|sys||timer_delete(timer_t timerid); }
440a9a2ce83Spooka227	STD		{ int|linux_sys||clock_settime(clockid_t which, \
441fe3dd48aSfvdl			    struct linux_timespec *tp); }
442a9a2ce83Spooka228	STD		{ int|linux_sys||clock_gettime(clockid_t which, \
443fe3dd48aSfvdl			    struct linux_timespec *tp); }
444a9a2ce83Spooka229	STD		{ int|linux_sys||clock_getres(clockid_t which, \
445fe3dd48aSfvdl			    struct linux_timespec *tp); }
446a9a2ce83Spooka230	STD		{ int|linux_sys||clock_nanosleep(clockid_t which, \
447fe3dd48aSfvdl			    int flags, struct linux_timespec *rqtp, \
448fe3dd48aSfvdl			    struct linux_timespec *rmtp); }
449a9a2ce83Spooka231	STD		{ int|linux_sys||exit_group(int error_code); }
450d11110f4Schristos232	STD		{ int|linux_sys||epoll_wait(int epfd, \
451d11110f4Schristos			    struct linux_epoll_event *events, int maxevents, \
452d11110f4Schristos			    int timeout); }
453d11110f4Schristos233	STD		{ int|linux_sys||epoll_ctl(int epfd, int op, int fd, \
454d11110f4Schristos			    struct linux_epoll_event *event); }
455a9a2ce83Spooka234	STD		{ int|linux_sys||tgkill(int tgid, int tid, int sig); }
45676972874Snjoly235	NOARGS		{ int|compat_50_sys||utimes(const char *path, \
45776972874Snjoly			    const struct timeval50 *tptr); }
45889647c7cSmanu236	UNIMPL		vserver
459b5a45a5fSchristos237	UNIMPL		mbind
460b5a45a5fSchristos238	UNIMPL		set_mempolicy
461b5a45a5fSchristos239	UNIMPL		get_mempolicy
4620124a941Schristos240	STD		{ linux_mqd_t|linux_sys||mq_open(const char *name, \
4630124a941Schristos			    int oflag, linux_umode_t mode, \
4640124a941Schristos			    struct linux_mq_attr *attr); }
4650124a941Schristos241	STD		{ int|linux_sys||mq_unlink(const char *name); }
4660124a941Schristos242	STD		{ int|linux_sys||mq_timedsend(linux_mqd_t mqdes, \
4670124a941Schristos			    const char *msg_ptr, size_t msg_len, \
4680124a941Schristos			    unsigned int msg_prio, \
4690124a941Schristos			    const struct linux_timespec *abs_timeout); }
4700124a941Schristos243	STD		{ ssize_t|linux_sys||mq_timedreceive(linux_mqd_t mqdes, \
4710124a941Schristos			    char *msg_ptr, size_t msg_len, \
4720124a941Schristos			    unsigned int *msg_prio, \
4730124a941Schristos			    const struct linux_timespec *abs_timeout); }
4740124a941Schristos244	STD		{ int|linux_sys||mq_notify(linux_mqd_t mqdes, \
4750124a941Schristos			    const struct linux_sigevent *sevp); }
4760124a941Schristos245	STD		{ int|linux_sys||mq_getsetattr(linux_mqd_t mqdes, \
4770124a941Schristos			    const struct linux_mq_attr *newattr, \
4780124a941Schristos			    struct linux_mq_attr *oldattr); }
479b5a45a5fSchristos246	UNIMPL		kexec_load
48069e4d6a0Schristos247	STD		{ int|linux_sys||waitid(int idtype, id_t id, \
48169e4d6a0Schristos			    linux_siginfo_t *infop, int options, \
48269e4d6a0Schristos			    struct rusage50 *rusage); }
483b5a45a5fSchristos248	UNIMPL		add_key
484b5a45a5fSchristos249	UNIMPL		request_key
485b5a45a5fSchristos250	UNIMPL		keyctl
486b5a45a5fSchristos251	UNIMPL		ioprio_set
487b5a45a5fSchristos252	UNIMPL		ioprio_get
48890efcc86Schristos253	STD		{ int|linux_sys||inotify_init(void); }
48990efcc86Schristos254	STD		{ int|linux_sys||inotify_add_watch(int fd, \
49090efcc86Schristos			    const char *pathname, uint32_t mask); }
49190efcc86Schristos255	STD		{ int|linux_sys||inotify_rm_watch(int fd, int wd); }
492b5a45a5fSchristos256	UNIMPL		migrate_pages
49329a841b3Schs257	STD 		{ int|linux_sys||openat(int fd, const char *path, \
49429a841b3Schs			    int flags, ... linux_umode_t mode); }
49529a841b3Schs258	NOARGS		{ int|sys||mkdirat(int fd, const char *path, \
49629a841b3Schs			    linux_umode_t mode); }
49729a841b3Schs259	STD		{ int|linux_sys||mknodat(int fd, const char *path, \
49829a841b3Schs			    linux_umode_t mode, unsigned dev); }
49929a841b3Schs260	STD		{ int|linux_sys||fchownat(int fd, const char *path, \
50029a841b3Schs			    uid_t owner, gid_t group, int flag); }
501b5a45a5fSchristos261	UNIMPL		futimesat
50229a841b3Schs262	STD		{ int|linux_sys||fstatat64(int fd, const char *path, \
50329a841b3Schs			    struct linux_stat *sp, int flag); }
50429a841b3Schs263	STD		{ int|linux_sys||unlinkat(int fd, const char *path, \
50529a841b3Schs			    int flag); }
50629a841b3Schs264	NOARGS		{ int|sys||renameat(int fromfd, const char *from, \
50729a841b3Schs			    int tofd, const char *to); }
50829a841b3Schs265	STD		{ int|linux_sys||linkat(int fd1, const char *name1, \
50929a841b3Schs			    int fd2, const char *name2, int flags); }
51029a841b3Schs266	NOARGS		{ int|sys||symlinkat(const char *path1, int fd, \
51129a841b3Schs			    const char *path2); }
512733b812eSnjoly267	NOARGS		{ ssize_t|sys||readlinkat(int fd, const char *path, \
51329a841b3Schs			    char *buf, size_t bufsize); }
51429a841b3Schs268	STD		{ int|linux_sys||fchmodat(int fd, const char *path, \
51529a841b3Schs			    linux_umode_t mode); }
51629a841b3Schs269	STD		{ int|linux_sys||faccessat(int fd, const char *path, \
51729a841b3Schs			    int amode); }
518d25eb1e9Smanu270	STD		{ int|linux_sys||pselect6(int nfds, fd_set *readfds, \
519d25eb1e9Smanu			   fd_set *writefds, fd_set *exceptfds, \
520d25eb1e9Smanu			   struct linux_timespec *timeout, \
521d25eb1e9Smanu			   linux_sized_sigset_t *ss); }
522cc18605eSnjoly271	STD		{ int|linux_sys||ppoll(struct pollfd *fds, u_int nfds, \
523c44c9c49Spooka			    struct linux_timespec *timeout, \
524c44c9c49Spooka			    linux_sigset_t *sigset); }
525b5a45a5fSchristos272	UNIMPL		unshare
526276ef223Sthorpej			;
527276ef223Sthorpej			; The NetBSD native robust list calls have different
528276ef223Sthorpej			; argument names / types, but they are ABI-compatible
529276ef223Sthorpej			; with Linux.
530276ef223Sthorpej			;
531276ef223Sthorpej273	NOARGS		{ int|sys||__futex_set_robust_list(void *head, \
532276ef223Sthorpej			    size_t len); }
533276ef223Sthorpej274	NOARGS		{ int|sys||__futex_get_robust_list(lwpid_t lwpid, \
534276ef223Sthorpej			    void **headp, size_t *lenp); }
535b5a45a5fSchristos275	UNIMPL		splice
536b5a45a5fSchristos276	UNIMPL		tee
537*a3740e15Schristos277	STD		{ int|linux_sys||sync_file_range(int fd, \
538*a3740e15Schristos			    off_t offset, off_t nbytes, unsigned int flags); }
539b5a45a5fSchristos278	UNIMPL		vmsplice
540b5a45a5fSchristos279	UNIMPL		move_pages
541eb2a213aSnjoly280	STD		{ int|linux_sys||utimensat(int fd, const char *path, \
542eb2a213aSnjoly			    struct linux_timespec *times, int flag); }
543d11110f4Schristos281	STD		{ int|linux_sys||epoll_pwait(int epfd, \
544d11110f4Schristos			    struct linux_epoll_event *events, int maxevents, \
545d11110f4Schristos			    int timeout, const linux_sigset_t *sigmask); }
546b5a45a5fSchristos282	UNIMPL		signalfd
547185d6cd7Sthorpej283	STD		{ int|linux_sys||timerfd_create(clockid_t clock_id, \
548185d6cd7Sthorpej			    int flags); }
5494d055d8aSthorpej284	STD		{ int|linux_sys||eventfd(unsigned int initval); }
55054412fcaSjdolecek285	STD		{ int|linux_sys||fallocate(int fd, int mode, \
55154412fcaSjdolecek			    off_t offset, off_t len); }
552185d6cd7Sthorpej286	STD		{ int|linux_sys||timerfd_settime(int fd, int flags, \
553185d6cd7Sthorpej			    const struct linux_itimerspec *tim, \
554185d6cd7Sthorpej			    struct linux_itimerspec *otim); }
555185d6cd7Sthorpej287	STD		{ int|linux_sys||timerfd_gettime(int fd, \
556185d6cd7Sthorpej			    struct linux_itimerspec *tim); }
5575e0e9545Schristos288	STD		{ int|linux_sys||accept4(int s, \
5585e0e9545Schristos			    struct osockaddr *name, \
5595e0e9545Schristos			    int *anamelen, int flags); }
56033fa5ccbSchs289	UNIMPL		signalfd4
5614d055d8aSthorpej290	STD		{ int|linux_sys||eventfd2(unsigned int initval, \
5624d055d8aSthorpej			    int flags); }
563d11110f4Schristos291	STD		{ int|linux_sys||epoll_create1(int flags); }
564dd9e944eSchristos292	STD		{ int|linux_sys||dup3(int from, int to, int flags); }
565dd9e944eSchristos293	STD		{ int|linux_sys||pipe2(int *pfds, int flags); }
56690efcc86Schristos294	STD		{ int|linux_sys||inotify_init1(int flags); }
5674d7b9c05Sthorpej295	STD		{ int|linux_sys||preadv(int fd, \
5684d7b9c05Sthorpej			    const struct iovec *iovp, int iovcnt, \
5694d7b9c05Sthorpej			    unsigned long off_lo, unsigned long off_hi); }
5704d7b9c05Sthorpej296	STD		{ int|linux_sys||pwritev(int fd, \
5714d7b9c05Sthorpej			    const struct iovcnt *iovp, int iovcnt, \
5724d7b9c05Sthorpej			    unsigned long off_lo, unsigned long off_hi); }
57333fa5ccbSchs297	UNIMPL		rt_tgsigqueueinfo
57433fa5ccbSchs298	UNIMPL		perf_counter_open
57569d5c344Schristos299	STD		{ int|linux_sys||recvmmsg(int s, \
57669d5c344Schristos			    struct linux_mmsghdr *msgvec, unsigned int vlen, \
57769d5c344Schristos			    unsigned int flags, struct timespec *timeout); }
57829a841b3Schs300	UNIMPL		fanotify_init
57929a841b3Schs301	UNIMPL		fanotify_mark
5808f021900Sryo302	STD		{ int|linux_sys||prlimit64(pid_t pid, int which, \
5818f021900Sryo			    struct rlimit *new_rlp, struct rlimit *old_rlp); }
58229a841b3Schs303	UNIMPL		name_to_handle_at
58329a841b3Schs304	UNIMPL		open_by_handle_at
58429a841b3Schs305	UNIMPL		clock_adjtime
585*a3740e15Schristos306	STD		{ int|linux_sys||syncfs(int fd); }
58669d5c344Schristos307	STD		{ int|linux_sys||sendmmsg(int s, \
58769d5c344Schristos			    struct linux_mmsghdr *msgvec, unsigned int vlen, \
58869d5c344Schristos			    unsigned int flags); }
58929a841b3Schs308	UNIMPL		setns
590bc9a9bdbSchristos309	STD		{ int|linux_sys||getcpu(unsigned int *cpu, \
591bc9a9bdbSchristos			    unsigned int *node, \
592bc9a9bdbSchristos			    struct linux_getcpu_cache *tcache); }
59329a841b3Schs310	UNIMPL		process_vm_readv
59429a841b3Schs311	UNIMPL		process_vm_writev
59529a841b3Schs312	UNIMPL		kcmp
59629a841b3Schs313	UNIMPL		finit_module
5977eace3daSchristos314	UNIMPL		sched_setattr
5987eace3daSchristos315	UNIMPL		sched_getattr
599*a3740e15Schristos316	STD		{ int|linux_sys||renameat2(int fromfd, \
600*a3740e15Schristos			    const char *from, int tofd, const char *to, \
601*a3740e15Schristos			    unsigned int flags); }
6027eace3daSchristos317	UNIMPL		seccomp
6037eace3daSchristos318	NOARGS		{ ssize_t|sys||getrandom(void *buf, size_t buflen, \
6047eace3daSchristos			    unsigned int flags); }
6057eace3daSchristos319	STD		{ int|linux_sys||memfd_create(const char *name, \
6067eace3daSchristos			    unsigned int flags); }
6077eace3daSchristos320	UNIMPL		kexec_file_load
6087eace3daSchristos321	UNIMPL		bpf
6097eace3daSchristos322	UNIMPL		execveat
6107eace3daSchristos323	UNIMPL		userfaultfd
6117eace3daSchristos324	UNIMPL		membarrier
6127eace3daSchristos325	UNIMPL		mlock2
613*a3740e15Schristos326	STD		{ ssize_t|linux_sys||copy_file_range(int fd_in, \
614*a3740e15Schristos			off_t * off_in, int fd_out, off_t * off_out, \
615*a3740e15Schristos			size_t len, unsigned int flags); }
6167eace3daSchristos327	UNIMPL		preadv2
6177eace3daSchristos328	UNIMPL		pwritev2
6187eace3daSchristos329	UNIMPL		pkey_mprotect
6197eace3daSchristos330	UNIMPL		pkey_alloc
6207eace3daSchristos331	UNIMPL		pkey_free
621a0a4eb1dSchristos332	STD		{ int|linux_sys||statx(int fd, const char *path, \
622a0a4eb1dSchristos			    int flag, unsigned int mask, \
623a0a4eb1dSchristos			    struct linux_statx *sp); }
6247eace3daSchristos333	UNIMPL		io_pgetevents
6257eace3daSchristos334	UNIMPL		rseq
6267eace3daSchristos335	UNIMPL
6277eace3daSchristos336	UNIMPL
6287eace3daSchristos337	UNIMPL
6297eace3daSchristos338	UNIMPL
6307eace3daSchristos339	UNIMPL
6317eace3daSchristos340	UNIMPL
6327eace3daSchristos341	UNIMPL
6337eace3daSchristos342	UNIMPL
6347eace3daSchristos343	UNIMPL
6357eace3daSchristos344	UNIMPL
6367eace3daSchristos345	UNIMPL
6377eace3daSchristos346	UNIMPL
6387eace3daSchristos347	UNIMPL
6397eace3daSchristos348	UNIMPL
6407eace3daSchristos349	UNIMPL
6417eace3daSchristos350	UNIMPL
6427eace3daSchristos351	UNIMPL
6437eace3daSchristos352	UNIMPL
6447eace3daSchristos353	UNIMPL
6457eace3daSchristos354	UNIMPL
6467eace3daSchristos355	UNIMPL
6477eace3daSchristos356	UNIMPL
6487eace3daSchristos357	UNIMPL
6497eace3daSchristos358	UNIMPL
6507eace3daSchristos359	UNIMPL
6517eace3daSchristos360	UNIMPL
6527eace3daSchristos361	UNIMPL
6537eace3daSchristos362	UNIMPL
6547eace3daSchristos363	UNIMPL
6557eace3daSchristos364	UNIMPL
6567eace3daSchristos365	UNIMPL
6577eace3daSchristos366	UNIMPL
6587eace3daSchristos367	UNIMPL
6597eace3daSchristos368	UNIMPL
6607eace3daSchristos369	UNIMPL
6617eace3daSchristos370	UNIMPL
6627eace3daSchristos371	UNIMPL
6637eace3daSchristos372	UNIMPL
6647eace3daSchristos373	UNIMPL
6657eace3daSchristos374	UNIMPL
6667eace3daSchristos375	UNIMPL
6677eace3daSchristos376	UNIMPL
6687eace3daSchristos377	UNIMPL
6697eace3daSchristos378	UNIMPL
6707eace3daSchristos379	UNIMPL
6717eace3daSchristos380	UNIMPL
6727eace3daSchristos381	UNIMPL
6737eace3daSchristos382	UNIMPL
6747eace3daSchristos383	UNIMPL
6757eace3daSchristos384	UNIMPL
6767eace3daSchristos385	UNIMPL
6777eace3daSchristos386	UNIMPL
6787eace3daSchristos387	UNIMPL
6797eace3daSchristos388	UNIMPL
6807eace3daSchristos389	UNIMPL
6817eace3daSchristos390	UNIMPL
6827eace3daSchristos391	UNIMPL
6837eace3daSchristos392	UNIMPL
6847eace3daSchristos393	UNIMPL
6857eace3daSchristos394	UNIMPL
6867eace3daSchristos395	UNIMPL
6877eace3daSchristos396	UNIMPL
6887eace3daSchristos397	UNIMPL
6897eace3daSchristos398	UNIMPL
6907eace3daSchristos399	UNIMPL
6917eace3daSchristos400	UNIMPL
6927eace3daSchristos401	UNIMPL
6937eace3daSchristos402	UNIMPL
6947eace3daSchristos403	UNIMPL
6957eace3daSchristos404	UNIMPL
6967eace3daSchristos405	UNIMPL
6977eace3daSchristos406	UNIMPL
6987eace3daSchristos407	UNIMPL
6997eace3daSchristos408	UNIMPL
7007eace3daSchristos409	UNIMPL
7017eace3daSchristos410	UNIMPL
7027eace3daSchristos411	UNIMPL
7037eace3daSchristos412	UNIMPL
7047eace3daSchristos413	UNIMPL
7057eace3daSchristos414	UNIMPL
7067eace3daSchristos415	UNIMPL
7077eace3daSchristos416	UNIMPL
7087eace3daSchristos417	UNIMPL
7097eace3daSchristos418	UNIMPL
7107eace3daSchristos419	UNIMPL
7117eace3daSchristos420	UNIMPL
7127eace3daSchristos421	UNIMPL
7137eace3daSchristos422	UNIMPL
7147eace3daSchristos423	UNIMPL
7157eace3daSchristos424	UNIMPL		pidfd_send_signal
7167eace3daSchristos425	UNIMPL		io_uring_setup
7177eace3daSchristos426	UNIMPL		io_uring_enter
7187eace3daSchristos427	UNIMPL		io_uring_register
7197eace3daSchristos428	UNIMPL		open_tree
7207eace3daSchristos429	UNIMPL		move_mount
7217eace3daSchristos430	UNIMPL		fsopen
7227eace3daSchristos431	UNIMPL		fsconfig
7237eace3daSchristos432	UNIMPL		fsmount
7247eace3daSchristos433	UNIMPL		fspick
7257eace3daSchristos434	UNIMPL		pidfd_open
726*a3740e15Schristos435	STD		{ int|linux_sys||clone3( \
727*a3740e15Schristos			    struct linux_user_clone3_args *cl_args, \
728*a3740e15Schristos			    size_t size); }
729a0a4eb1dSchristos436	STD		{ int|linux_sys||close_range(unsigned int first, \
730a0a4eb1dSchristos			    unsigned int last, unsigned int flags); }
7317eace3daSchristos437	UNIMPL		openat2
7327eace3daSchristos438	UNIMPL		pidfd_getfd
733bc9a9bdbSchristos439	STD		{ int|linux_sys||faccessat2(int fd, const char *path, \
734bc9a9bdbSchristos			    int amode, int flags); }
7357eace3daSchristos440	UNIMPL		process_madvise
736d11110f4Schristos441	STD		{ int|linux_sys||epoll_pwait2(int epfd, \
737d11110f4Schristos			    struct linux_epoll_event *events, int maxevents, \
738d11110f4Schristos			    const struct linux_timespec *timeout, \
739d11110f4Schristos			    const linux_sigset_t *sigmask); }
7407eace3daSchristos442	UNIMPL		mount_setattr
7417eace3daSchristos443	UNIMPL		quotactl_fd
7427eace3daSchristos444	UNIMPL		landlock_create_ruleset
7437eace3daSchristos445	UNIMPL		landlock_add_rule
7447eace3daSchristos446	UNIMPL		landlock_restrict_self
7457eace3daSchristos447	UNIMPL		memfd_secret
7467eace3daSchristos448	UNIMPL		process_mrelease
7477eace3daSchristos449	UNIMPL		futex_waitv
7487eace3daSchristos450	UNIMPL		set_mempolicy_home_node
74933fa5ccbSchs
75033fa5ccbSchs; we want a "nosys" syscall, we'll just add an extra entry for it.
7517eace3daSchristos451	STD		{ int|linux_sys||nosys(void); }
752