xref: /netbsd-src/sys/compat/linux/arch/aarch64/syscalls.master (revision 2718af68c3efc72c9769069b5c7f9ed36f6b9def)
1	$NetBSD: syscalls.master,v 1.4 2021/12/02 04:29:47 ryo Exp $
2
3;	@(#)syscalls.master	8.1 (Berkeley) 7/19/93
4
5; Derived from sys/compat/linux/arch/*/syscalls.master
6; and from Linux include/uapi/asm-generic/unistd.h
7
8; NetBSD aarch64 COMPAT_LINUX system call name/number "master" file.
9; (See syscalls.conf to see what it is processed into.)
10;
11; Fields: number type [type-dependent ...]
12;	number	system call number, must be in order
13;	type	one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of
14;		the compatibility options defined in syscalls.conf.
15;
16; types:
17;	STD	always included
18;	OBSOL	obsolete, not included in system
19;	UNIMPL	unimplemented, not included in system
20;	NODEF	included, but don't define the syscall number
21;	NOARGS	included, but don't define the syscall args structure
22;	INDIR	included, but don't define the syscall args structure
23;		and allow it to be "really" varargs.
24;
25; The compat options are defined in the syscalls.conf file, and the
26; compat option name is prefixed to the syscall name.  Other than
27; that, they're like NODEF (for 'compat' options), or STD (for
28; 'libcompat' options).
29;
30; The type-dependent arguments are as follows:
31; For STD, NODEF, NOARGS, and compat syscalls:
32;	{ pseudo-proto } [alias]
33; For other syscalls:
34;	[comment]
35;
36; #ifdef's, etc. may be included, and are copied to the output files.
37; #include's are copied to the syscall names and switch definition files only.
38
39#if defined(_KERNEL_OPT)
40#include "opt_sysv.h"
41#include "opt_compat_43.h"
42#include "opt_compat_netbsd.h"
43#endif
44
45#include <sys/param.h>
46#include <sys/poll.h>
47#include <sys/systm.h>
48#include <sys/signal.h>
49#include <sys/mount.h>
50#include <sys/syscallargs.h>
51#include <sys/time.h>
52
53#include <compat/sys/time.h>
54
55#include <compat/linux/common/linux_types.h>
56#include <compat/linux/common/linux_machdep.h>
57#include <compat/linux/common/linux_mmap.h>
58#include <compat/linux/common/linux_ipc.h>
59#include <compat/linux/common/linux_msg.h>
60#include <compat/linux/common/linux_sem.h>
61#include <compat/linux/common/linux_shm.h>
62#include <compat/linux/common/linux_signal.h>
63#include <compat/linux/common/linux_siginfo.h>
64#include <compat/linux/common/linux_machdep.h>
65
66#include <compat/linux/linux_syscallargs.h>
67
68%%
69
700	UNIMPL		io_setup
711	UNIMPL		io_destroy
722	UNIMPL		io_submit
733	UNIMPL		io_cancel
744	UNIMPL		io_getevents
755	STD		{ int|linux_sys||setxattr(char *path, char *name, \
76			    void *value, size_t size, int flags); }
776	STD		{ int|linux_sys||lsetxattr(char *path, char *name, \
78			    void *value, size_t size, int flags); }
797	STD		{ int|linux_sys||fsetxattr(int fd, char *name, \
80			    void *value, size_t size, int flags); }
818	STD		{ ssize_t|linux_sys||getxattr(char *path, char *name, \
82			    void *value, size_t size); }
839	STD		{ ssize_t|linux_sys||lgetxattr(char *path, char *name, \
84			    void *value, size_t size); }
8510	STD		{ ssize_t|linux_sys||fgetxattr(int fd, char *name, \
86			    void *value, size_t size); }
8711	STD		{ ssize_t|linux_sys||listxattr(char *path, char *list, \
88			    size_t size); }
8912	STD		{ ssize_t|linux_sys||llistxattr(char *path, char *list, \
90			    size_t size); }
9113	STD		{ ssize_t|linux_sys||flistxattr(int fd, char *list, \
92			    size_t size); }
9314	STD		{ int|linux_sys||removexattr(char *path, char *name); }
9415	STD		{ int|linux_sys||lremovexattr(char *path, char *name); }
9516	STD		{ int|linux_sys||fremovexattr(int fd, char *name); }
9617	NOARGS		{ int|sys||__getcwd(char *bufp, size_t length); }
9718	UNIMPL		lookup_dcookie
9819	STD		{ int|linux_sys||eventfd2(unsigned int initval, \
99			    int flags); }
10020	UNIMPL		epoll_create1
10121	UNIMPL		epoll_ctl
10222	UNIMPL		epoll_pwait
10323	NOARGS		{ int|sys||dup(int fd); }
10424	STD		{ int|linux_sys||dup3(int from, int to, int flags); }
10525	STD		{ int|linux_sys||fcntl(int fd, int cmd, void *arg); }
10626	UNIMPL		inotify_init1
10727	UNIMPL		inotify_add_watch
10828	UNIMPL		inotify_rm_watch
10929	STD		{ int|linux_sys||ioctl(int fd, u_long com, \
110			    void *data); }
11130	UNIMPL		ioprio_set
11231	UNIMPL		ioprio_get
11332	NOARGS		{ int|sys||flock(int fd, int how); }
11433	STD		{ int|linux_sys||mknodat(int fd, const char *path, \
115			    linux_umode_t mode, unsigned dev); }
11634	NOARGS		{ int|sys||mkdirat(int fd, const char *path, \
117			    linux_umode_t mode); }
11835	STD		{ int|linux_sys||unlinkat(int fd, const char *path, \
119			    int flag); }
12036	NOARGS		{ int|sys||symlinkat(const char *path1, int fd, \
121			    const char *path2); }
12237	STD		{ int|linux_sys||linkat(int fd1, const char *name1, \
123			    int fd2, const char *name2, int flags); }
12438	NOARGS		{ int|sys||renameat(int fromfd, const char *from, \
125			    int tofd, const char *to); }
12639	UNIMPL		umount2
12740	UNIMPL		mount
12841	UNIMPL		pivot_root
12942	UNIMPL		nfsservctl
13043	STD		{ int|linux_sys||statfs(const char *path, \
131			    struct linux_statfs *sp); }
13244	STD		{ int|linux_sys||fstatfs(int fd, \
133			    struct linux_statfs *sp); }
13445	STD		{ int|linux_sys||truncate64(const char *path, \
135			    off_t length); }
13646	STD		{ int|linux_sys||ftruncate64(unsigned int fd, \
137			    off_t length); }
13847	STD		{ int|linux_sys||fallocate(int fd, int mode, \
139			    off_t offset, off_t len); }
14048	STD		{ int|linux_sys||faccessat(int fd, const char *path, \
141			    int amode); }
14249	NOARGS		{ int|sys||chdir(const char *path); }
14350	NOARGS		{ int|sys||fchdir(int fd); }
14451	NOARGS		{ int|sys||chroot(char *path); }
14552	NOARGS		{ int|sys||fchmod(int fd, linux_umode_t mode); }
14653	STD		{ int|linux_sys||fchmodat(int fd, const char *path, \
147			    linux_umode_t mode); }
14854	STD		{ int|linux_sys||fchownat(int fd, const char *path, \
149			    uid_t owner, gid_t group, int flag); }
15055	NOARGS		{ int|sys||__posix_fchown(int fd, uid_t uid, \
151			    gid_t gid); }
15256	STD 		{ int|linux_sys||openat(int fd, const char *path, \
153			    int flags, ... linux_umode_t mode); }
15457	NOARGS		{ int|sys||close(int fd); }
15558	UNIMPL		vhangup
15659	STD		{ int|linux_sys||pipe2(int *pfds, int flags); }
15760	UNIMPL		quotactl
15861	STD		{ int|linux_sys||getdents64(int fd, \
159			    struct linux_dirent64 *dent, unsigned int count); }
16062	NOARGS		{ long|compat_43_sys||lseek(int fd, long offset, \
161			    int whence); }
16263	NOARGS		{ ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
16364	NOARGS		{ ssize_t|sys||write(int fd, const void *buf, \
164			    size_t nbyte); }
16565	NOARGS		{ ssize_t|sys||readv(int fd, \
166			    const struct iovec *iovp, int iovcnt); }
16766	NOARGS		{ ssize_t|sys||writev(int fd, \
168			    const struct iovec *iovp, int iovcnt); }
16967	STD		{ int|linux_sys||pread(int fd, char *buf, \
170			    size_t nbyte, off_t offset); }
17168	STD		{ int|linux_sys||pwrite(int fd, char *buf, \
172			    size_t nbyte, off_t offset); }
17369	STD		{ int|linux_sys||preadv(int fd, \
174			    const struct iovec *iovp, int iovcnt, \
175			    unsigned long off_lo, unsigned long off_hi); }
17670	STD		{ int|linux_sys||pwritev(int fd, \
177			    const struct iovcnt *iovp, int iovcnt, \
178			    unsigned long off_lo, unsigned long off_hi); }
17971	UNIMPL		sendfile
18072	STD		{ int|linux_sys||pselect6(int nfds, fd_set *readfds, \
181			   fd_set *writefds, fd_set *exceptfds, \
182			   struct linux_timespec *timeout, \
183			   linux_sized_sigset_t *ss); }
18473	STD		{ int|linux_sys||ppoll(struct pollfd *fds, u_int nfds, \
185			    struct linux_timespec *timeout, \
186			    linux_sigset_t *sigset); }
18774	UNIMPL		signalfd4
18875	UNIMPL		vmsplice
18976	UNIMPL		splice
19077	UNIMPL		tee
19178	NOARGS		{ ssize_t|sys||readlinkat(int fd, const char *path, \
192			    char *buf, size_t bufsize); }
19379	STD		{ int|linux_sys||fstatat64(int fd, const char *path, \
194			    struct linux_stat *sp, int flag); }
19580	STD		{ int|linux_sys||fstat64(int fd, \
196			    struct linux_stat *sp); }
19781	NOARGS		{ int|sys||sync(void); }
19882	NOARGS		{ int|sys||fsync(int fd); }
19983	STD		{ int|linux_sys||fdatasync(int fd); }
20084	UNIMPL		sync_file_range
20185	STD		{ int|linux_sys||timerfd_create(clockid_t clock_id, \
202			    int flags); }
20386	STD		{ int|linux_sys||timerfd_settime(int fd, int flags, \
204			    const struct linux_itimerspec *tim, \
205			    struct linux_itimerspec *otim); }
20687	STD		{ int|linux_sys||timerfd_gettime(int fd, \
207			    struct linux_itimerspec *tim); }
20888	STD		{ int|linux_sys||utimensat(int fd, const char *path, \
209			    struct linux_timespec *times, int flag); }
21089	NOARGS		{ int|sys||acct(char *path); }
21190	UNIMPL		capget
21291	UNIMPL		capset
21392	STD		{ int|linux_sys||personality(unsigned long per); }
21493	STD		{ int|linux_sys||exit(int rval); }
21594	STD		{ int|linux_sys||exit_group(int error_code); }
21695	UNIMPL		waitid
21796	STD		{ int|linux_sys||set_tid_address(int *tid); }
21897	UNIMPL		unshare
21998	STD		{ int|linux_sys||futex(int *uaddr, int op, int val, \
220			    const struct linux_timespec *timeout, int *uaddr2, \
221			    int val3); }
222			;
223			; The NetBSD native robust list calls have different
224			; argument names / types, but they are ABI-compatible
225			; with Linux.
226			;
22799	NOARGS		{ int|sys||__futex_set_robust_list(void *head, \
228			    size_t len); }
229100	NOARGS		{ int|sys||__futex_get_robust_list(lwpid_t lwpid, \
230			    void **headp, size_t *lenp); }
231101	STD		{ int|linux_sys||nanosleep( \
232			    const struct linux_timespec *rqtp, \
233			    struct linux_timespec *rmtp); }
234102	NOARGS		{ int|compat_50_sys||getitimer(int which, \
235			    struct itimerval50 *itv); }
236103	NOARGS		{ int|compat_50_sys||setitimer(int which, \
237			    struct itimerval50 *itv, \
238			    struct itimerval50 *oitv); }
239104	UNIMPL		kexec_load
240105	UNIMPL		init_module
241106	UNIMPL		delete_module
242107	STD		{ int|linux_sys||timer_create(clockid_t clockid, \
243			    struct linux_sigevent *evp, timer_t *timerid); }
244108	STD		{ int|linux_sys||timer_gettime(timer_t timerid, \
245			    struct linux_itimerspec *tim); }
246109	NOARGS		{ int|sys||timer_getoverrun(timer_t timerid); }
247110	STD		{ int|linux_sys||timer_settime(timer_t timerid, \
248			    int flags, const struct linux_itimerspec *tim, \
249			    struct linux_itimerspec *otim); }
250111	NOARGS		{ int|sys||timer_delete(timer_t timerid); }
251112	STD		{ int|linux_sys||clock_settime(clockid_t which, \
252			    struct linux_timespec *tp); }
253113	STD		{ int|linux_sys||clock_gettime(clockid_t which, \
254			    struct linux_timespec *tp); }
255114	STD		{ int|linux_sys||clock_getres(clockid_t which, \
256			    struct linux_timespec *tp); }
257115	STD		{ int|linux_sys||clock_nanosleep(clockid_t which, \
258			    int flags, struct linux_timespec *rqtp, \
259			    struct linux_timespec *rmtp); }
260116	UNIMPL		syslog
261117	STD		{ int|linux_sys||ptrace(long request, long pid, \
262			  long addr, long data); }
263118	STD		{ int|linux_sys||sched_setparam(pid_t pid, \
264			    const struct linux_sched_param *sp); }
265119	STD		{ int|linux_sys||sched_setscheduler(pid_t pid, \
266			    int policy, const struct linux_sched_param *sp); }
267120	STD		{ int|linux_sys||sched_getscheduler(pid_t pid); }
268121	STD		{ int|linux_sys||sched_getparam(pid_t pid, \
269			    struct linux_sched_param *sp); }
270122	STD		{ int|linux_sys||sched_setaffinity(pid_t pid, \
271			    unsigned int len, unsigned long *mask); }
272123	STD		{ int|linux_sys||sched_getaffinity(pid_t pid, \
273			    unsigned int len, unsigned long *mask); }
274124	STD		{ int|linux_sys||sched_yield(void); }
275125	STD		{ int|linux_sys||sched_get_priority_max(int policy); }
276126	STD		{ int|linux_sys||sched_get_priority_min(int policy); }
277127	UNIMPL		sys_sched_rr_get_interval
278128	UNIMPL		restart_syscall
279129	STD		{ int|linux_sys||kill(int pid, int signum); }
280130	STD		{ int|linux_sys||tkill(int tid, int sig); }
281131	STD		{ int|linux_sys||tgkill(int tgid, int tid, int sig); }
282132	STD		{ int|linux_sys||sigaltstack( \
283			    const struct linux_sigaltstack *ss, \
284			    struct linux_sigaltstack *oss); }
285133	STD		{ int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \
286			    size_t sigsetsize); }
287134	STD		{ int|linux_sys||rt_sigaction(int signum, \
288			    const struct linux_sigaction *nsa, \
289			    struct linux_sigaction *osa, \
290			    size_t sigsetsize); }
291135	STD		{ int|linux_sys||rt_sigprocmask(int how, \
292			    const linux_sigset_t *set, \
293			    linux_sigset_t *oset, \
294			    size_t sigsetsize); }
295136	STD		{ int|linux_sys||rt_sigpending( \
296			    linux_sigset_t *set, \
297			    size_t sigsetsize); }
298137	STD		{ int|linux_sys||rt_sigtimedwait( \
299			    const linux_sigset_t *set, \
300			    linux_siginfo_t *info, \
301			    const struct linux_timespec *timeout); }
302138	UNIMPL		rt_sigqueueinfo
303139	NOARGS		{ int|linux_sys||rt_sigreturn(void); }
304140	NOARGS		{ int|sys||setpriority(int which, int who, int prio); }
305141	STD		{ int|linux_sys||getpriority(int which, int who); }
306142	STD		{ int|linux_sys||reboot(int magic1, int magic2, \
307			    int cmd, void *arg); }
308143	NOARGS		{ int|sys||setregid(gid_t rgid, gid_t egid); }
309144	NOARGS		{ int|sys||setgid(gid_t gid); }
310145	NOARGS		{ int|sys||setreuid(uid_t ruid, uid_t euid); }
311146	NOARGS		{ int|sys||setuid(uid_t uid); }
312147	STD		{ int|linux_sys||setresuid(uid_t ruid, uid_t euid, \
313			    uid_t suid); }
314148	STD		{ int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \
315			    uid_t *suid); }
316149	STD		{ int|linux_sys||setresgid(gid_t rgid, gid_t egid, \
317			    gid_t sgid); }
318150	STD		{ int|linux_sys||getresgid(gid_t *rgid, gid_t *egid, \
319			    gid_t *sgid); }
320151	STD		{ int|linux_sys||setfsuid(uid_t uid); }
321152	STD		{ int|linux_sys||setfsgid(gid_t gid); }
322153	STD		{ int|linux_sys||times(struct times *tms); }
323154	NOARGS		{ int|sys||setpgid(int pid, int pgid); }
324155	NOARGS		{ pid_t|sys||getpgid(pid_t pid); }
325156	NOARGS		{ pid_t|sys||getsid(pid_t pid); }
326157	NOARGS		{ int|sys||setsid(void); }
327158	NOARGS		{ int|sys||getgroups(int gidsetsize, gid_t *gidset); }
328159	NOARGS		{ int|sys||setgroups(int gidsetsize, gid_t *gidset); }
329160	STD		{ int|linux_sys||uname(struct linux_utsname *up); }
330161	NOARGS		{ int|compat_43_sys||sethostname(char *hostname, \
331			    u_int len);}
332162	STD		{ int|linux_sys||setdomainname(char *domainname, \
333			    int len); }
334163	STD		{ int|linux_sys||getrlimit(int which, \
335			    struct rlimit *rlp); }
336164	STD		{ int|linux_sys||setrlimit(u_int which, \
337			    struct rlimit *rlp); }
338165	NOARGS		{ int|compat_50_sys||getrusage(int who, \
339			    struct rusage50 *rusage); }
340166	NOARGS		{ int|sys||umask(int newmask); }
341167	UNIMPL		prctl
342168	UNIMPL		getcpu
343169	STD		{ int|linux_sys||gettimeofday(struct timeval50 *tp, \
344			    struct timezone *tzp); }
345170	STD		{ int|linux_sys||settimeofday(struct timeval50 *tp, \
346			    struct timezone *tzp); }
347171	UNIMPL		adjtimex
348172	STD		{ pid_t|sys||getpid(void); }
349173	STD		{ pid_t|sys||getppid(void); }
350174	NOARGS		{ uid_t|sys||getuid(void); }
351175	NOARGS		{ uid_t|sys||geteuid(void); }
352176	NOARGS		{ gid_t|sys||getgid(void); }
353177	NOARGS		{ gid_t|sys||getegid(void); }
354178	STD		{ pid_t|linux_sys||gettid(void); }
355179	STD		{ int|linux_sys||sysinfo(struct linux_sysinfo *arg); }
356180	UNIMPL		mq_open
357181	UNIMPL		mq_unlink
358182	UNIMPL		mq_timedsend
359183	UNIMPL		mq_timedreceive
360184	UNIMPL		mq_notify
361185	UNIMPL		mq_getsetattr
362#ifdef SYSVMSG
363186	NOARGS		{ int|sys||msgget(key_t key, int msgflg); }
364187	NOARGS		{ int|linux_sys||msgctl(int msqid, int cmd, \
365			    struct linux_msqid_ds *buf); }
366188	NOARGS		{ ssize_t|sys||msgrcv(int msqid, void *msgp, \
367			    size_t msgsz, long msgtyp, int msgflg); }
368189	NOARGS		{ int|sys||msgsnd(int msqid, void *msgp, size_t msgsz, \
369			    int msgflg); }
370#else
371186	UNIMPL		msgget
372187	UNIMPL		msgctl
373188	UNIMPL		msgrcv
374189	UNIMPL		msgsnd
375#endif
376#ifdef SYSVSEM
377190	NOARGS		{ int|sys||semget(key_t key, int nsems, int semflg); }
378191	STD		{ int|linux_sys||semctl(int semid, int semnum, \
379			    int cmd, union linux_semun arg); }
380192	UNIMPL		semtimedop
381193	NOARGS		{ int|sys||semop(int semid, struct sembuf *sops, \
382			    size_t nsops); }
383#else
384190	UNIMPL		semget
385191	UNIMPL		semctl
386192	UNIMPL		semtimedop
387193	UNIMPL		semop
388#endif
389#ifdef SYSVSEM
390194	NOARGS		{ int|linux_sys||shmget(key_t key, size_t size, \
391			    int shmflg); }
392195	NOARGS		{ int|linux_sys||shmctl(int shmid, int cmd, \
393			    struct linux_shmid_ds *buf); }
394196	NOARGS		{ int|sys||shmat(int shmid, void *shmaddr, int shmflg); }
395197	NOARGS		{ int|sys||shmdt(const void *shmaddr); }
396#else
397194	UNIMPL		shmget
398195	UNIMPL		shmctl
399196	UNIMPL		shmat
400197	UNIMPL		shmdt
401#endif
402198	STD		{ int|linux_sys||socket(int domain, \
403			    int type, int protocol); }
404199	STD		{ int|linux_sys||socketpair(int domain, int type, \
405			    int protocol, int *rsv); }
406200	STD		{ int|linux_sys||bind(int s, \
407			    const struct osockaddr *name, \
408			    unsigned int namelen); }
409201	NOARGS		{ int|sys||listen(int s, int backlog); }
410202	STD		{ int|linux_sys||accept(int s, struct osockaddr *name, \
411			    int *anamelen); } oaccept
412203	STD		{ int|linux_sys||connect(int s, \
413			    const struct osockaddr *name, \
414			    unsigned int namelen); }
415204	STD		{ int|linux_sys||getsockname(int fdec, void *asa, \
416			    int *alen); }
417205	STD		{ int|linux_sys||getpeername(int fdes, \
418			    struct sockaddr *asa, unsigned int *alen); }
419206	STD		{ ssize_t|linux_sys||sendto(int s, void *msg, int len, \
420			    int flags, struct osockaddr *to, int tolen); }
421207	STD		{ ssize_t|linux_sys||recvfrom(int s, void *buf, \
422			    size_t len, int flags, struct osockaddr *from, \
423			    unsigned int *fromlenaddr); }
424208	STD		{ int|linux_sys||setsockopt(int s, int level, \
425			    int optname, void *optval, int optlen); }
426209	STD		{ int|linux_sys||getsockopt(int s, int level, \
427			    int optname, void *optval, int *optlen); }
428210	NOARGS		{ int|sys||shutdown(int s, int how); }
429211	STD		{ int|linux_sys||sendmsg(int s, \
430			    const struct linux_msghdr *msg, int flags); }
431212	STD		{ ssize_t|linux_sys||recvmsg(int s, \
432			    struct linux_msghdr *msg, int flags); }
433213	UNIMPL		readahead
434214	STD		{ int|linux_sys||brk(char *nsize); }
435215	NOARGS		{ int|sys||munmap(void *addr, size_t len); }
436216	STD		{ void *|linux_sys||mremap(void *old_address, \
437			    size_t old_size, size_t new_size, u_long flags); }
438217	UNIMPL		add_key
439218	UNIMPL		request_key
440219	UNIMPL		keyctl
441220	STD		{ int|linux_sys||clone(int flags, void *stack, \
442			    void *parent_tidptr, void *child_tidptr, void *tls); }
443221	NOARGS		{ int|sys||execve(const char *path, char **argp, \
444			    char **envp); }
445222	NOARGS		{ linux_off_t|linux_sys||mmap(unsigned long addr, \
446			    size_t len, int prot, int flags, int fd, \
447			    linux_off_t offset); }
448223	STD		{ int|linux_sys||fadvise64(int fd, off_t offset, \
449			    size_t len, int advice); }
450224	STD		{ int|linux_sys||swapon(char *name); }
451225	STD		{ int|linux_sys||swapoff(const char *path); }
452226	STD		{ int|linux_sys||mprotect(const void *start, \
453			    unsigned long len, int prot); }
454227	NOARGS		{ int|sys|13|msync(void *addr, size_t len, int flags); }
455228	NOARGS		{ int|sys||mlock(void *addr, size_t len); }
456229	NOARGS		{ int|sys||munlock(void *addr, size_t len); }
457230	NOARGS		{ int|sys||mlockall(int flags); }
458231	NOARGS		{ int|sys||munlockall(void); }
459232	NOARGS		{ int|sys||mincore(void *addr, size_t len, char *vec); }
460233	NOARGS		{ int|sys||madvise(void *addr, size_t len, int behav); }
461234	UNIMPL		remap_file_pages
462235	UNIMPL		mbind
463236	UNIMPL		get_mempolicy
464237	UNIMPL		set_mempolicy
465238	UNIMPL		migrate_pages
466239	UNIMPL		move_pages
467240	UNIMPL		rt_tgsigqueueinfo
468241	UNIMPL		perf_event_open
469242	STD		{ int|linux_sys||accept4(int s, \
470			    struct osockaddr *name, \
471			    int *anamelen, int flags); }
472243	STD		{ int|linux_sys||recvmmsg(int s, \
473			    struct linux_mmsghdr *msgvec, unsigned int vlen, \
474			    unsigned int flags, struct timespec *timeout); }
475244	UNIMPL		arch_specific_syscall
476245	UNIMPL
477246	UNIMPL
478247	UNIMPL
479248	UNIMPL
480249	UNIMPL
481250	UNIMPL
482251	UNIMPL
483252	UNIMPL
484253	UNIMPL
485254	UNIMPL
486255	UNIMPL
487256	UNIMPL
488257	UNIMPL
489258	UNIMPL
490259	UNIMPL
491260	STD		{ int|linux_sys||wait4(int pid, int *status, \
492			    int options, struct rusage50 *rusage); }
493261	STD		{ int|linux_sys||prlimit64(pid_t pid, int which, \
494			    struct rlimit *new_rlp, struct rlimit *old_rlp); }
495262	UNIMPL		fanotify_init
496263	UNIMPL		fanotify_mark
497264	UNIMPL		name_to_handle_at
498265	UNIMPL		open_by_handle_at
499266	UNIMPL		clock_adjtime
500267	UNIMPL		syncfs
501268	UNIMPL		setns
502269	STD		{ int|linux_sys||sendmmsg(int s, \
503			    struct linux_mmsghdr *msgvec, unsigned int vlen, \
504			    unsigned int flags); }
505270	UNIMPL		process_vm_readv
506271	UNIMPL		process_vm_writev
507272	UNIMPL		kcmp
508273	UNIMPL		finit_module
509274	UNIMPL		sched_setattr
510275	UNIMPL		sched_getattr
511276	UNIMPL		renameat2
512277	UNIMPL		seccomp
513278	NOARGS		{ ssize_t|sys||getrandom(void *buf, size_t buflen, \
514			    unsigned int flags); }
515279	UNIMPL		memfd_create
516280	UNIMPL		bpf
517281	UNIMPL		execveat
518282	UNIMPL		userfaultfd
519283	UNIMPL		membarrier
520284	UNIMPL		mlock2
521285	UNIMPL		copy_file_range
522286	UNIMPL		preadv2
523287	UNIMPL		pwritev2
524288	UNIMPL		pkey_mprotect
525289	UNIMPL		pkey_alloc
526290	UNIMPL		pkey_free
527291	STD		{ int|linux_sys||statx(int fd, const char *path, \
528			    int flag, unsigned int mask, \
529			    struct linux_statx *sp); }
530292	UNIMPL		io_pgetevents
531293	UNIMPL		rseq
532294	UNIMPL		kexec_file_load
533295	UNIMPL
534296	UNIMPL
535297	UNIMPL
536298	UNIMPL
537299	UNIMPL
538300	UNIMPL
539301	UNIMPL
540302	UNIMPL
541303	UNIMPL
542304	UNIMPL
543305	UNIMPL
544306	UNIMPL
545307	UNIMPL
546308	UNIMPL
547309	UNIMPL
548310	UNIMPL
549311	UNIMPL
550312	UNIMPL
551313	UNIMPL
552314	UNIMPL
553315	UNIMPL
554316	UNIMPL
555317	UNIMPL
556318	UNIMPL
557319	UNIMPL
558320	UNIMPL
559321	UNIMPL
560322	UNIMPL
561323	UNIMPL
562324	UNIMPL
563325	UNIMPL
564326	UNIMPL
565327	UNIMPL
566328	UNIMPL
567329	UNIMPL
568330	UNIMPL
569331	UNIMPL
570332	UNIMPL
571333	UNIMPL
572334	UNIMPL
573335	UNIMPL
574336	UNIMPL
575337	UNIMPL
576338	UNIMPL
577339	UNIMPL
578340	UNIMPL
579341	UNIMPL
580342	UNIMPL
581343	UNIMPL
582344	UNIMPL
583345	UNIMPL
584346	UNIMPL
585347	UNIMPL
586348	UNIMPL
587349	UNIMPL
588350	UNIMPL
589351	UNIMPL
590352	UNIMPL
591353	UNIMPL
592354	UNIMPL
593355	UNIMPL
594356	UNIMPL
595357	UNIMPL
596358	UNIMPL
597359	UNIMPL
598360	UNIMPL
599361	UNIMPL
600362	UNIMPL
601363	UNIMPL
602364	UNIMPL
603365	UNIMPL
604366	UNIMPL
605367	UNIMPL
606368	UNIMPL
607369	UNIMPL
608370	UNIMPL
609371	UNIMPL
610372	UNIMPL
611373	UNIMPL
612374	UNIMPL
613375	UNIMPL
614376	UNIMPL
615377	UNIMPL
616378	UNIMPL
617379	UNIMPL
618380	UNIMPL
619381	UNIMPL
620382	UNIMPL
621383	UNIMPL
622384	UNIMPL
623385	UNIMPL
624386	UNIMPL
625387	UNIMPL
626388	UNIMPL
627389	UNIMPL
628390	UNIMPL
629391	UNIMPL
630392	UNIMPL
631393	UNIMPL
632394	UNIMPL
633395	UNIMPL
634396	UNIMPL
635397	UNIMPL
636398	UNIMPL
637399	UNIMPL
638400	UNIMPL
639401	UNIMPL
640402	UNIMPL
641403	UNIMPL
642404	UNIMPL
643405	UNIMPL
644406	UNIMPL
645407	UNIMPL
646408	UNIMPL
647409	UNIMPL
648410	UNIMPL
649411	UNIMPL
650412	UNIMPL
651413	UNIMPL
652414	UNIMPL
653415	UNIMPL
654416	UNIMPL
655417	UNIMPL
656418	UNIMPL
657419	UNIMPL
658420	UNIMPL
659421	UNIMPL
660422	UNIMPL
661423	UNIMPL
662424	UNIMPL		pidfd_send_signal
663425	UNIMPL		io_uring_setup
664426	UNIMPL		io_uring_enter
665427	UNIMPL		io_uring_register
666428	UNIMPL		open_tree
667429	UNIMPL		move_mount
668430	UNIMPL		fsopen
669431	UNIMPL		fsconfig
670432	UNIMPL		fsmount
671433	UNIMPL		fspick
672434	UNIMPL		pidfd_open
673435	UNIMPL		clone3
674436	UNIMPL
675437	UNIMPL		openat2
676438	UNIMPL		pidfd_getfd
677439	UNIMPL		faccessat2
678
679; we want a "nosys" syscall, we'll just add an extra entry for it.
680440	STD		{ int|linux_sys||nosys(void); }
681