xref: /netbsd-src/sys/compat/linux/arch/mips/syscalls.master (revision 6b54cae3762909b1742ccdb32355331d56211611)
1	$NetBSD: syscalls.master,v 1.83 2024/10/01 16:29:15 riastradh Exp $
2
3;	@(#)syscalls.master	8.1 (Berkeley) 7/19/93
4
5; Derived from NetBSD's sys/compat/linux/arch/powerpc/syscalls.master
6; from Linux's arch/mips/kernel/syscalls.h
7
8; NetBSD mips COMPAT_LINUX system call name/number "master" file.
9; (See syscalls.conf to see what it is processed into.)
10;
11; Expect problems with
12;  48 signal: undefined in Linux???
13;  86 uselib: needs a.out
14;
15; Fields: number type [type-dependent ...]
16;	number	system call number, must be in order
17;	type	one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of
18;		the compatibility options defined in syscalls.conf.
19;
20; types:
21;	STD	always included
22;	OBSOL	obsolete, not included in system
23;	UNIMPL	unimplemented, not included in system
24;	NODEF	included, but don't define the syscall number
25;	NOARGS	included, but don't define the syscall args structure
26;	INDIR	included, but don't define the syscall args structure
27;		and allow it to be "really" varargs.
28;
29; The compat options are defined in the syscalls.conf file, and the
30; compat option name is prefixed to the syscall name.  Other than
31; that, they're like NODEF (for 'compat' options), or STD (for
32; 'libcompat' options).
33;
34; The type-dependent arguments are as follows:
35; For STD, NODEF, NOARGS, and compat syscalls:
36;	{ pseudo-proto } [alias]
37; For other syscalls:
38;	[comment]
39;
40; #ifdef's, etc. may be included, and are copied to the output files.
41; #include's are copied to the syscall names and switch definition files only.
42
43#include <sys/param.h>
44#include <sys/poll.h>
45#include <sys/systm.h>
46#include <sys/signal.h>
47#include <sys/mount.h>
48#include <sys/syscallargs.h>
49
50#include <compat/linux/common/linux_types.h>
51#include <compat/linux/common/linux_signal.h>
52#include <compat/linux/common/linux_siginfo.h>
53#include <compat/linux/common/linux_machdep.h>
54#include <compat/linux/common/linux_mmap.h>
55#include <compat/linux/common/linux_mqueue.h>
56#include <compat/linux/common/linux_socketcall.h>
57#include <compat/linux/common/linux_sched.h>
58
59#include <compat/linux/linux_syscallargs.h>
60
610	NOARGS		{ int|linux_sys||nosys(void); } syscall
621	STD		{ int|linux_sys||exit(int rval); }
632	NOARGS		{ int|sys||fork(void); }
643	NOARGS		{ ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
654	NOARGS		{ ssize_t|sys||write(int fd, const void *buf, \
66			    size_t nbyte); }
675	STD		{ int|linux_sys||open(const char *path, int flags, \
68			    linux_umode_t mode); }
696	NOARGS		{ int|sys||close(int fd); }
707	STD		{ int|linux_sys||waitpid(int pid, int *status, \
71			    int options);}
728	STD		{ int|linux_sys||creat(const char *path, linux_umode_t mode); }
739	NOARGS		{ int|sys||link(const char *path, const char *link); }
7410	STD		{ int|linux_sys||unlink(const char *path); }
7511	NOARGS		{ int|sys||execve(const char *path, char **argp, \
76			    char **envp); }
7712	NOARGS		{ int|sys||chdir(const char *path); }
7813	STD		{ int|linux_sys||time(linux_time_t *t); }
7914	STD		{ int|linux_sys||mknod(const char *path, linux_umode_t mode, \
80			    unsigned dev); }
8115	NOARGS		{ int|sys||chmod(const char *path, int mode); }
8216	NOARGS		{ int|sys||__posix_lchown(const char *path, uid_t uid, \
83			    gid_t gid); }
8417	UNIMPL
8518	OBSOL		ostat
8619	NOARGS		{ long|compat_43_sys||lseek(int fd, long offset, \
87			    int whence); }
8820	NOARGS 		{ pid_t|sys||getpid(void); }
8921	UNIMPL		mount
9022	OBSOL		umount
9123	NOARGS		{ int|sys||setuid(uid_t uid); }
9224	NOARGS		{ uid_t|sys||getuid(void); }
9325	STD		{ int|linux_sys||stime(linux_time_t *t); }
9426	STD		{ int|linux_sys||ptrace(long request, long pid, \
95			  long addr, long data); }
9627	STD		{ int|linux_sys||alarm(unsigned int secs); }
9728	OBSOL		ofstat
9829	STD		{ int|linux_sys||pause(void); }
9930	STD		{ int|linux_sys||utime(const char *path, \
100			    struct linux_utimbuf *times); }
10131	UNIMPL
10232	UNIMPL
10333	NOARGS		{ int|sys||access(const char *path, int flags); }
10434	STD		{ int|linux_sys||nice(int incr); }
10535	UNIMPL
10636	NOARGS		{ int|sys||sync(void); }
10737	STD		{ int|linux_sys||kill(int pid, int signum); }
10838	NOARGS		{ int|sys||__posix_rename(const char *from, \
109			    const char *to); }
11039	NOARGS		{ int|sys||mkdir(const char *path, linux_umode_t mode); }
11140	NOARGS		{ int|sys||rmdir(const char *path); }
11241	NOARGS		{ int|sys||dup(int fd); }
11342	STD		{ int|linux_sys||pipe(int *pfds); }
11443	STD		{ int|linux_sys||times(struct times *tms); }
11544	UNIMPL
11645	STD		{ int|linux_sys||brk(char *nsize); }
11746	NOARGS		{ int|sys||setgid(gid_t gid); }
11847	NOARGS		{ gid_t|sys||getgid(void); }
11948	STD		{ int|linux_sys||signal(int signum, \
120			    linux___sighandler_t handler); }
12149	NOARGS		{ uid_t|sys||geteuid(void); }
12250	NOARGS		{ gid_t|sys||getegid(void); }
12351	NOARGS		{ int|sys||acct(char *path); }
12452	UNIMPL		umount
12553	UNIMPL
12654	STD		{ int|linux_sys||ioctl(int fd, u_long com, \
127			    void *data); }
12855	STD		{ int|linux_sys||fcntl(int fd, int cmd, void *arg); }
12956	OBSOL		mpx
13057	NOARGS		{ int|sys||setpgid(int pid, int pgid); }
13158	UNIMPL
13259	STD  		    { int|linux_sys||olduname(struct linux_old_utsname \
133			    *up); }
13460	NOARGS		{ int|sys||umask(int newmask); }
13561	NOARGS		{ int|sys||chroot(char *path); }
13662	UNIMPL		ustat
13763	NOARGS		{ int|sys||dup2(int from, int to); }
13864	NOARGS		{ pid_t|sys||getppid(void); }
13965	NOARGS		{ int|sys||getpgrp(void); }
14066	NOARGS		{ int|sys||setsid(void); }
14167	STD		{ int|linux_sys||sigaction(int signum, \
142			    const struct linux_old_sigaction *nsa, \
143			    struct linux_old_sigaction *osa); }
14468	STD		{ int|linux_sys||siggetmask(void); }
14569	STD		{ int|linux_sys||sigsetmask(linux_old_sigset_t mask); }
14670	NOARGS		{ int|sys||setreuid(uid_t ruid, uid_t euid); }
14771	NOARGS		{ int|sys||setregid(gid_t rgid, gid_t egid); }
14872	STD		{ int|linux_sys||sigsuspend(void *restart, \
149			    int oldmask, int mask); }
15073	STD		{ int|linux_sys||sigpending(linux_old_sigset_t *set); }
15174	NOARGS		{ int|compat_43_sys||sethostname(char *hostname, \
152			    u_int len);}
15375	STD		{ int|linux_sys||setrlimit(u_int which, \
154			    struct orlimit *rlp); }
15576	STD		{ int|linux_sys||getrlimit(u_int which, \
156			    struct orlimit *rlp); }
15777	NOARGS		{ int|compat_50_sys||getrusage(int who, \
158			    struct rusage50 *rusage); }
15978	STD		{ int|linux_sys||gettimeofday(struct timeval50 *tp, \
160			    struct timezone *tzp); }
16179	STD		{ int|linux_sys||settimeofday(struct timeval50 *tp, \
162			    struct timezone *tzp); }
16380	NOARGS		{ int|sys||getgroups(int gidsetsize, gid_t *gidset); }
16481	NOARGS		{ int|sys||setgroups(int gidsetsize, gid_t *gidset); }
16582	UNIMPL		old_select
16683	NOARGS		{ int|sys||symlink(const char *path, const char *to); }
16784	NOARGS		{ int|compat_43_sys||lstat(const char *path, \
168			    struct stat43 *up); } oolstat
16985	NOARGS		{ ssize_t|sys||readlink(const char *path, char *buf, \
170			    int count); }
17186	UNIMPL		uselib
172;86	STD		{ int|linux_sys||uselib(const char *path); }
17387	STD		{ int|linux_sys||swapon(char *name); }
17488	STD		{ int|linux_sys||reboot(int magic1, int magic2, \
175			    int cmd, void *arg); }
17689	STD		{ int|linux_sys||readdir(int fd, void *dent, \
177			    unsigned int count); }
17890	NOARGS      	{ int|linux_sys||mmap(unsigned long addr, size_t len, \
179			    int prot, int flags, int fd, linux_off_t offset); }
18091	NOARGS		{ int|sys||munmap(void *addr, size_t len); }
18192	NOARGS		{ int|compat_43_sys||truncate(const char *path, \
182			    long length); }
18393	NOARGS		{ int|compat_43_sys||ftruncate(int fd, long length); }
18494	NOARGS		{ int|sys||fchmod(int fd, linux_umode_t mode); }
18595	NOARGS		{ int|sys||__posix_fchown(int fd, uid_t uid, \
186			    gid_t gid); }
18796	STD		{ int|linux_sys||getpriority(int which, int who); }
18897	NOARGS		{ int|sys||setpriority(int which, int who, int prio); }
18998	UNIMPL
19099	STD		{ int|linux_sys||statfs(const char *path, \
191			    struct linux_statfs *sp); }
192100	STD		{ int|linux_sys||fstatfs(int fd, \
193			    struct linux_statfs *sp); }
194101	STD		{ int|linux_sys||ioperm(unsigned int lo, \
195			    unsigned int hi, int val); }
196102	STD		{ int|linux_sys||socketcall(int what, void *args); }
197103	UNIMPL		syslog
198104	NOARGS		{ int|compat_50_sys||setitimer(int which, \
199			    struct itimerval50 *itv, \
200			    struct itimerval50 *oitv); }
201105	NOARGS		{ int|compat_50_sys||getitimer(int which, \
202			    struct itimerval50 *itv); }
203106	STD		{ int|linux_sys||stat(const char *path, \
204			    struct linux_stat *sp); }
205107	STD		{ int|linux_sys||lstat(const char *path, \
206			    struct linux_stat *sp); }
207108	STD		{ int|linux_sys||fstat(int fd, struct linux_stat *sp); }
208109	STD		{ int|linux_sys||uname(struct linux_utsname *up); }
209110	UNIMPL		iopl
210111	UNIMPL		vhangup
211112	UNIMPL		idle
212113	UNIMPL		vm86old
213114	STD		{ int|linux_sys||wait4(int pid, int *status, \
214			    int options, struct rusage50 *rusage); }
215115	STD		{ int|linux_sys||swapoff(const char *path); }
216116	STD		{ int|linux_sys||sysinfo(struct linux_sysinfo *arg); }
217117	STD		{ int|linux_sys||ipc(int what, long a1, long a2, \
218			    long a3, void *ptr); }
219118	NOARGS		{ int|sys||fsync(int fd); }
220119	STD		{ int|linux_sys||sigreturn(struct linux_sigframe *sf); }
221120	STD		{ int|linux_sys||clone(int flags, void *stack, \
222			    void *parent_tidptr, void *tls, void *child_tidptr); }
223121	STD		{ int|linux_sys||setdomainname(char *domainname, \
224			    int len); }
225122	STD		{ int|linux_sys||new_uname(struct linux_utsname *up); }
226123	UNIMPL		modify_ldt
227124	UNIMPL		adjtimex
228125	STD		{ int|linux_sys||mprotect(const void *start, \
229			    unsigned long len, int prot); }
230126	STD		{ int|linux_sys||sigprocmask(int how, \
231			    const linux_old_sigset_t *set, \
232			    linux_old_sigset_t *oset); }
233127	UNIMPL		create_module
234128	UNIMPL		init_module
235129	UNIMPL		delete_module
236130	UNIMPL		get_kernel_syms
237131	UNIMPL		quotactl
238132	NOARGS		{ pid_t|sys||getpgid(pid_t pid); }
239133	NOARGS		{ int|sys||fchdir(int fd); }
240134	UNIMPL		bdflush
241135	UNIMPL		sysfs
242136	STD		{ int|linux_sys||personality(unsigned long per); }
243137	UNIMPL		afs_syscall
244138	STD		{ int|linux_sys||setfsuid(uid_t uid); }
245139	STD		{ int|linux_sys||setfsgid(gid_t gid); }
246140	STD		{ int|linux_sys||llseek(int fd, u_int32_t ohigh, \
247			    u_int32_t olow, void *res, int whence); }
248141	STD		{ int|linux_sys||getdents(int fd, \
249			    struct linux_dirent *dent, unsigned int count); }
250142	STD		{ int|linux_sys||select(int nfds, fd_set *readfds, \
251			    fd_set *writefds, fd_set *exceptfds, \
252			    struct timeval50 *timeout); }
253143	NOARGS		{ int|sys||flock(int fd, int how); }
254144	NOARGS		{ int|sys|13|msync(void *addr, size_t len, int flags); }
255145	NOARGS		{ ssize_t|sys||readv(int fd, \
256			    const struct iovec *iovp, int iovcnt); }
257146	NOARGS		{ ssize_t|sys||writev(int fd, \
258			    const struct iovec *iovp, int iovcnt); }
259147	STD		{ int|linux_sys||cacheflush(void *addr, \
260			    int bytes, int cache); }
261148	UNIMPL		cachectl
262149	STD		{ int|linux_sys||sysmips(long cmd, long arg1, \
263			    long arg2, long arg3); }
264150	UNIMPL
265151	NOARGS		{ pid_t|sys||getsid(pid_t pid); }
266152	STD		{ int|linux_sys||fdatasync(int fd); }
267153	STD		{ int|linux_sys||__sysctl(struct linux___sysctl *lsp); }
268154	NOARGS		{ int|sys||mlock(void *addr, size_t len); }
269155	NOARGS		{ int|sys||munlock(void *addr, size_t len); }
270156	NOARGS		{ int|sys||mlockall(int flags); }
271157	NOARGS		{ int|sys||munlockall(void); }
272158	STD		{ int|linux_sys||sched_setparam(pid_t pid, \
273			    const struct linux_sched_param *sp); }
274159	STD		{ int|linux_sys||sched_getparam(pid_t pid, \
275			    struct linux_sched_param *sp); }
276160	STD		{ int|linux_sys||sched_setscheduler(pid_t pid, \
277			    int policy, const struct linux_sched_param *sp); }
278161	STD		{ int|linux_sys||sched_getscheduler(pid_t pid); }
279162	STD		{ int|linux_sys||sched_yield(void); }
280163	STD		{ int|linux_sys||sched_get_priority_max(int policy); }
281164	STD		{ int|linux_sys||sched_get_priority_min(int policy); }
282165	UNIMPL		sched_rr_get_interval
283166	STD		{ int|linux_sys||nanosleep( \
284			    const struct linux_timespec *rqtp, \
285			    struct linux_timespec *rmtp); }
286167	STD		{ void *|linux_sys||mremap(void *old_address, \
287			    size_t old_size, size_t new_size, u_long flags); }
288168	STD		{ int|linux_sys||accept(int s, \
289			    struct osockaddr *name, int *anamelen); }
290169	STD		{ int|linux_sys||bind(int s, \
291			    const struct osockaddr *name, int namelen); }
292170	STD		{ int|linux_sys||connect(int s, \
293			    const struct osockaddr *name, int namelen); }
294171	STD		{ int|linux_sys||getpeername(int fdes, void *asa, \
295			    int *alen); }
296172	STD		{ int|linux_sys||getsockname(int fdes, void *asa, \
297			    int *alen); }
298173	STD		{ int|linux_sys||getsockopt(int s, int level, \
299			    int optname, void *optval, int *optlen); }
300174	NOARGS		{ int|sys||listen(int s, int backlog); }
301175	STD		{ int|linux_sys||recv(int s, void *buf, int len, \
302			    int flags); }
303176	STD		{ int|linux_sys||recvfrom(int s, void *buf, int len, \
304			    int flags, struct osockaddr *from, \
305			    int *fromlenaddr); }
306177	STD		{ int|linux_sys||recvmsg(int s, \
307			    struct linux_msghdr *msg, u_int flags); }
308178	STD		{ int|linux_sys||send(int s, void *buf, int len, \
309			    int flags); }
310179	STD		{ int|linux_sys||sendmsg(int s, \
311			    struct linux_msghdr *msg, u_int flags); }
312180	STD		{ int|linux_sys||sendto(int s, void *msg, \
313			    int len, int flags, struct osockaddr *to, \
314			    int tolen); }
315181	STD		{ int|linux_sys||setsockopt(int s, int level, \
316			    int optname, void *optval, int optlen); }
317182	UNIMPL		shutdown
318183	STD		{ int|linux_sys||socket(int domain, int type, \
319			    int protocol); }
320184	STD		{ int|linux_sys||socketpair(int domain, int type, \
321			    int protocol, int *rsv); }
322185	STD		{ int|linux_sys||setresuid(uid_t ruid, uid_t euid, \
323			    uid_t suid); }
324186	STD		{ int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \
325			    uid_t *suid); }
326187	UNIMPL		query_module
327188	NOARGS		{ int|sys||poll(struct pollfd *fds, u_int nfds, \
328			    int timeout); }
329189	UNIMPL		nfsservctl
330190	STD		{ int|linux_sys||setresgid(gid_t rgid, gid_t egid, \
331			    gid_t sgid); }
332191	STD		{ int|linux_sys||getresgid(gid_t *rgid, gid_t *egid, \
333			    gid_t *sgid); }
334192	UNIMPL		prctl
335193	STD		{ int|linux_sys||rt_sigreturn( \
336			    struct linux_pt_regs *regs); }
337194	STD		{ int|linux_sys||rt_sigaction(int signum, \
338			    const struct linux_sigaction *nsa, \
339			    struct linux_sigaction *osa, \
340			    size_t sigsetsize); }
341195	STD		{ int|linux_sys||rt_sigprocmask(int how, \
342			    const linux_sigset_t *set, \
343			    linux_sigset_t *oset, \
344			    size_t sigsetsize); }
345196	STD		{ int|linux_sys||rt_sigpending( \
346			    linux_sigset_t *set, \
347			    size_t sigsetsize); }
348197	STD		{ int|linux_sys||rt_sigtimedwait( \
349			    const linux_sigset_t *set, \
350			    linux_siginfo_t *info, \
351			    const struct linux_timespec *timeout); }
352198	STD		{ int|linux_sys||rt_queueinfo(int pid, int signum, \
353			    linux_siginfo_t *uinfo); }
354199	STD		{ int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \
355			    size_t sigsetsize); }
356200	STD		{ int|linux_sys||pread(int fd, char *buf, \
357			    size_t nbyte, off_t offset); }
358201	STD		{ int|linux_sys||pwrite(int fd, char *buf, \
359			    size_t nbyte, off_t offset); }
360202	NOARGS		{ int|sys||__posix_chown(const char *path, uid_t uid, \
361			    gid_t gid); }
362203	NOARGS		{ int|sys||__getcwd(char *bufp, size_t length); }
363204	UNIMPL		capget
364205	UNIMPL		capset
365206	STD		{ int|linux_sys||sigaltstack( \
366			    const struct linux_sigaltstack *ss, \
367			    struct linux_sigaltstack *oss); }
368207	UNIMPL		sendfile
369208	UNIMPL
370209	UNIMPL
371#define linux_sys_mmap2_args linux_sys_mmap_args
372210	NOARGS		{ linux_off_t|linux_sys||mmap2(unsigned long addr, \
373			    size_t len, int prot, int flags, int fd, \
374			    linux_off_t offset); }
375211	STD		{ int|linux_sys||truncate64(const char *path, \
376			    off_t length); }
377212	STD		{ int|linux_sys||ftruncate64(unsigned int fd, \
378			    off_t length); }
379213	STD		{ int|linux_sys||stat64(const char *path, \
380			    struct linux_stat64 *sp); }
381214	STD		{ int|linux_sys||lstat64(const char *path, \
382			    struct linux_stat64 *sp); }
383215	STD		{ int|linux_sys||fstat64(int fd, \
384			    struct linux_stat64 *sp); }
385216	UNIMPL		pivot_root
386217	NOARGS		{ int|sys||mincore(void *addr, size_t len, char *vec); }
387218	NOARGS		{ int|sys||madvise(void *addr, size_t len, int behav); }
388219	STD		{ int|linux_sys||getdents64(int fd, \
389			    struct linux_dirent64 *dent, unsigned int count); }
390220	STD		{ int|linux_sys||fcntl64(int fd, \
391			    int cmd, void *arg); }
392221	UNIMPL		/* reserved */
393222	NOARGS		{ pid_t|linux_sys||gettid(void); }
394223	STD		{ ssize_t|linux_sys||readahead(int fd, off_t offset, \
395			    size_t count); }
396224	STD		{ int|linux_sys||setxattr(char *path, char *name, \
397			    void *value, size_t size, int flags); }
398225	STD		{ int|linux_sys||lsetxattr(char *path, char *name, \
399			    void *value, size_t size, int flags); }
400226	STD		{ int|linux_sys||fsetxattr(int fd, char *name, \
401			    void *value, size_t size, int flags); }
402227	STD		{ ssize_t|linux_sys||getxattr(char *path, char *name, \
403			    void *value, size_t size); }
404228	STD		{ ssize_t|linux_sys||lgetxattr(char *path, char *name, \
405			    void *value, size_t size); }
406229	STD		{ ssize_t|linux_sys||fgetxattr(int fd, char *name, \
407			    void *value, size_t size); }
408230	STD		{ ssize_t|linux_sys||listxattr(char *path, char *list, \
409			    size_t size); }
410231	STD		{ ssize_t|linux_sys||llistxattr(char *path, char *list, \
411			    size_t size); }
412232	STD		{ ssize_t|linux_sys||flistxattr(int fd, char *list, \
413			    size_t size); }
414233	STD		{ int|linux_sys||removexattr(char *path, char *name); }
415234	STD		{ int|linux_sys||lremovexattr(char *path, char *name); }
416235	STD		{ int|linux_sys||fremovexattr(int fd, char *name); }
417236	STD		{ int|linux_sys||tkill(int tid, int sig); }
418237	UNIMPL		sendfile64
419238	STD		{ int|linux_sys||futex(int *uaddr, int op, int val, \
420			    const struct linux_timespec *timeout, int *uaddr2, \
421			    int val3); }
422239	STD		{ int|linux_sys||sched_setaffinity(pid_t pid, \
423			    unsigned int len, unsigned long *mask); }
424240	STD		{ int|linux_sys||sched_getaffinity(pid_t pid, \
425			    unsigned int len, unsigned long *mask); }
426241	UNIMPL		io_setup
427242	UNIMPL		io_destroy
428243	UNIMPL		io_getevents
429244	UNIMPL		io_submit
430245	UNIMPL		io_cancel
431246	STD		{ int|linux_sys||exit_group(int error_code); }
432247	UNIMPL		lookup_dcookie
433248	STD		{ int|linux_sys||epoll_create(int size); }
434249	STD		{ int|linux_sys||epoll_ctl(int epfd, int op, int fd, \
435			    struct linux_epoll_event *event); }
436250	STD		{ int|linux_sys||epoll_wait(int epfd, \
437			    struct linux_epoll_event *events, int maxevents, \
438			    int timeout); }
439251	UNIMPL		remap_file_pages
440252	STD		{ int|linux_sys||set_tid_address(int *tid); }
441253	UNIMPL		restart_syscall
442254	STD		{ int|linux_sys||fadvise64(int fd, off_t offset, \
443			    size_t len, int advice); }
444255	STD		{ int|linux_sys||statfs64(const char *path, \
445			    size_t sz, struct linux_statfs64 *sp); }
446256	STD		{ int|linux_sys||fstatfs64(int fd, \
447			    size_t sz, struct linux_statfs64 *sp); }
448257	STD		{ int|linux_sys||timer_create(clockid_t clockid, \
449			    struct linux_sigevent *evp, timer_t *timerid); }
450258	STD		{ int|linux_sys||timer_settime(timer_t timerid, \
451			    int flags, const struct linux_itimerspec *tim, \
452			    struct linux_itimerspec *otim); }
453259	STD		{ int|linux_sys||timer_gettime(timer_t timerid, \
454			    struct linux_itimerspec *tim); }
455260	NOARGS		{ int|sys||timer_getoverrun(timer_t timerid); }
456261	NOARGS		{ int|sys||timer_delete(timer_t timerid); }
457262	STD		{ int|linux_sys||clock_settime(clockid_t which, \
458			    struct linux_timespec *tp); }
459263	STD		{ int|linux_sys||clock_gettime(clockid_t which, \
460			    struct linux_timespec *tp); }
461264	STD		{ int|linux_sys||clock_getres(clockid_t which, \
462			    struct linux_timespec *tp); }
463265	STD		{ int|linux_sys||clock_nanosleep(clockid_t which, \
464			    int flags, struct linux_timespec *rqtp, \
465			    struct linux_timespec *rmtp); }
466266	STD		{ int|linux_sys||tgkill(int tgid, int tid, int sig); }
467267	NOARGS		{ int|compat_50_sys||utimes(const char *path, \
468			    const struct timeval50 *tptr); }
469268	UNIMPL		mbind
470269	UNIMPL		get_mempolicy
471270	UNIMPL		set_mempolicy
472271	STD		{ linux_mqd_t|linux_sys||mq_open(const char *name, \
473			    int oflag, linux_umode_t mode, \
474			    struct linux_mq_attr *attr); }
475272	STD		{ int|linux_sys||mq_unlink(const char *name); }
476273	STD		{ int|linux_sys||mq_timedsend(linux_mqd_t mqdes, \
477			    const char *msg_ptr, size_t msg_len, \
478			    unsigned int msg_prio, \
479			    const struct linux_timespec *abs_timeout); }
480274	STD		{ ssize_t|linux_sys||mq_timedreceive(linux_mqd_t mqdes, \
481			    char *msg_ptr, size_t msg_len, \
482			    unsigned int *msg_prio, \
483			    const struct linux_timespec *abs_timeout); }
484275	STD		{ int|linux_sys||mq_notify(linux_mqd_t mqdes, \
485			    const struct linux_sigevent *sevp); }
486276	STD		{ int|linux_sys||mq_getsetattr(linux_mqd_t mqdes, \
487			    const struct linux_mq_attr *newattr, \
488			    struct linux_mq_attr *oldattr); }
489277	UNIMPL		vserve
490278	STD		{ int|linux_sys||waitid(int idtype, id_t id, \
491			    linux_siginfo_t *infop, int options, \
492			    struct rusage50 *rusage); }
493279	UNIMPL		setaltroot
494280	UNIMPL		add_key
495281	UNIMPL		request_key
496282	UNIMPL		keyctl
497283	STD		{ int|linux_sys||set_thread_area(void *tls); }
498284	STD		{ int|linux_sys||inotify_init(void); }
499285	STD		{ int|linux_sys||inotify_add_watch(int fd, \
500			    const char *pathname, uint32_t mask); }
501286	STD		{ int|linux_sys||inotify_rm_watch(int fd, int wd); }
502287	UNIMPL		migrate_pages
503288	STD 		{ int|linux_sys||openat(int fd, const char *path, \
504			    int flags, ... linux_umode_t mode); }
505289	NOARGS		{ int|sys||mkdirat(int fd, const char *path, \
506			    linux_umode_t mode); }
507290	STD		{ int|linux_sys||mknodat(int fd, const char *path, \
508			    linux_umode_t mode, unsigned dev); }
509291	STD		{ int|linux_sys||fchownat(int fd, const char *path, \
510			    uid_t owner, gid_t group, int flag); }
511292	UNIMPL		futimesat
512293	STD		{ int|linux_sys||fstatat64(int fd, const char *path, \
513			    struct linux_stat64 *sp, int flag); }
514294	STD		{ int|linux_sys||unlinkat(int fd, const char *path, \
515			    int flag); }
516295	NOARGS		{ int|sys||renameat(int fromfd, const char *from, \
517			    int tofd, const char *to); }
518296	STD		{ int|linux_sys||linkat(int fd1, const char *name1, \
519			    int fd2, const char *name2, int flags); }
520297	NOARGS		{ int|sys||symlinkat(const char *path1, int fd, \
521			    const char *path2); }
522298	NOARGS		{ ssize_t|sys||readlinkat(int fd, const char *path, \
523			    char *buf, size_t bufsize); }
524299	STD		{ int|linux_sys||fchmodat(int fd, const char *path, \
525			    linux_umode_t mode); }
526300	STD		{ int|linux_sys||faccessat(int fd, const char *path, \
527			    int amode); }
528301	STD		{ int|linux_sys||pselect6(int nfds, fd_set *readfds, \
529			   fd_set *writefds, fd_set *exceptfds, \
530			   struct linux_timespec *timeout, \
531			   linux_sized_sigset_t *ss); }
532302	STD		{ int|linux_sys||ppoll(struct pollfd *fds, u_int nfds, \
533			    struct linux_timespec *timeout, \
534			    linux_sigset_t *sigset); }
535303	UNIMPL		unshare
536304	UNIMPL		splice
537305	STD		{ int|linux_sys||sync_file_range(int fd, \
538			    off_t offset, off_t nbytes, unsigned int flags); }
539306	UNIMPL		tee
540307	UNIMPL		vmsplice
541308	UNIMPL		move_pages
542			;
543			; The NetBSD native robust list calls have different
544			; argument names / types, but they are ABI-compatible
545			; with Linux.
546			;
547309	NOARGS		{ int|sys||__futex_set_robust_list(void *head, \
548			    size_t len); }
549310	NOARGS		{ int|sys||__futex_get_robust_list(lwpid_t lwpid, \
550			    void **headp, size_t *lenp); }
551311	UNIMPL		kexec_load
552312	STD		{ int|linux_sys||getcpu(unsigned int *cpu, \
553			    unsigned int *node, \
554			    struct linux_getcpu_cache *tcache); }
555313	STD		{ int|linux_sys||epoll_pwait(int epfd, \
556			    struct linux_epoll_event *events, int maxevents, \
557			    int timeout, const linux_sigset_t *sigmask); }
558314	UNIMPL		ioprio_set
559315	UNIMPL		ioprio_get
560316	STD		{ int|linux_sys||utimensat(int fd, const char *path, \
561			    struct linux_timespec *times, int flag); }
562317	UNIMPL		signalfd
563318	UNIMPL		timerfd
564319	STD		{ int|linux_sys||eventfd(unsigned int initval); }
565320	STD		{ int|linux_sys||fallocate(int fd, int mode, \
566			    off_t offset, off_t len); }
567321	STD		{ int|linux_sys||timerfd_create(clockid_t clock_id, \
568			    int flags); }
569322	STD		{ int|linux_sys||timerfd_gettime(int fd, \
570			    struct linux_itimerspec *tim); }
571323	STD		{ int|linux_sys||timerfd_settime(int fd, int flags, \
572			    const struct linux_itimerspec *tim, \
573			    struct linux_itimerspec *otim); }
574324	UNIMPL		signalfd4
575325	STD		{ int|linux_sys||eventfd2(unsigned int initval, \
576			    int flags); }
577326	STD		{ int|linux_sys||epoll_create1(int flags); }
578327	STD		{ int|linux_sys||dup3(int from, int to, int flags); }
579328	STD		{ int|linux_sys||pipe2(int *pfds, int flags); }
580329	STD		{ int|linux_sys||inotify_init1(int flags); }
581330	STD		{ int|linux_sys||preadv(int fd, \
582			    const struct iovec *iovp, int iovcnt, \
583			    unsigned long off_lo, unsigned long off_hi); }
584331	STD		{ int|linux_sys||pwritev(int fd, \
585			    const struct iovcnt *iovp, int iovcnt, \
586			    unsigned long off_lo, unsigned long off_hi); }
587332	UNIMPL		rt_tgsigqueueinfo
588333	UNIMPL		perf_event_open
589334	STD		{ int|linux_sys||accept4(int s, \
590			    struct osockaddr *name, \
591			    int *anamelen, int flags); }
592335	STD		{ int|linux_sys||recvmmsg(int s, \
593			    struct linux_mmsghdr *msgvec, unsigned int vlen, \
594			    unsigned int flags, struct timespec *timeout); }
595336	UNIMPL		getdents64
596337	UNIMPL		fanotify_init
597338	UNIMPL		fanotify_mark
598339	STD		{ int|linux_sys||prlimit64(pid_t pid, int which, \
599			    struct rlimit *new_rlp, struct rlimit *old_rlp); }
600340	UNIMPL		name_to_handle_at
601341	UNIMPL		open_by_handle_at
602342	UNIMPL		clock_adjtime
603343	STD		{ int|linux_sys||syncfs(int fd); }
604344	STD		{ int|linux_sys||sendmmsg(int s, \
605			    struct linux_mmsghdr *msgvec, unsigned int vlen, \
606			    unsigned int flags); }
607345	UNIMPL		setns
608346	UNIMPL		process_vm_readv
609347	UNIMPL		process_vm_writev
610348	UNIMPL		kcmp
611349	UNIMPL		finit_module
612350	UNIMPL		sched_setattr
613351	UNIMPL		sched_getattr
614352	STD		{ int|linux_sys||renameat2(int fromfd, \
615			    const char *from, int tofd, const char *to, \
616			    unsigned int flags); }
617353	NOARGS		{ ssize_t|sys||getrandom(void *buf, size_t buflen, \
618			    unsigned int flags); }
619354	STD		{ int|linux_sys||memfd_create(const char *name, \
620			    unsigned int flags); }
621355	UNIMPL		bpf
622356	UNIMPL		execveat
623357	UNIMPL		userfaultfd
624358	UNIMPL		membarrier
625359	UNIMPL		mlock2
626360	STD		{ ssize_t|linux_sys||copy_file_range(int fd_in, \
627			off_t * off_in, int fd_out, off_t * off_out, \
628			size_t len, unsigned int flags); }
629361	UNIMPL		preadv2
630362	UNIMPL		pwritev2
631363	UNIMPL		pkey_mprotect
632364	UNIMPL		pkey_alloc
633365	UNIMPL		pkey_free
634366	STD		{ int|linux_sys||statx(int fd, const char *path, \
635			    int flag, unsigned int mask, \
636			    struct linux_statx *sp); }
637367	UNIMPL
638368	UNIMPL
639369	UNIMPL
640370	UNIMPL
641371	UNIMPL
642372	UNIMPL
643373	UNIMPL
644374	UNIMPL
645375	UNIMPL
646376	UNIMPL
647377	UNIMPL
648378	UNIMPL
649379	UNIMPL
650380	UNIMPL
651381	UNIMPL
652382	UNIMPL
653383	UNIMPL
654384	UNIMPL
655385	UNIMPL
656386	UNIMPL
657387	UNIMPL
658388	UNIMPL
659389	UNIMPL
660390	UNIMPL
661391	UNIMPL
662392	UNIMPL
663393	UNIMPL
664394	UNIMPL
665395	UNIMPL
666396	UNIMPL
667397	UNIMPL
668398	UNIMPL
669399	UNIMPL
670400	UNIMPL
671401	UNIMPL
672402	UNIMPL
673403	UNIMPL
674404	UNIMPL
675405	UNIMPL
676406	UNIMPL
677407	UNIMPL
678408	UNIMPL
679409	UNIMPL
680410	UNIMPL
681411	UNIMPL
682412	UNIMPL
683413	UNIMPL
684414	UNIMPL
685415	UNIMPL
686416	UNIMPL
687417	UNIMPL
688418	UNIMPL
689419	UNIMPL
690420	UNIMPL
691421	UNIMPL
692422	UNIMPL
693423	UNIMPL
694424	UNIMPL
695425	UNIMPL
696426	UNIMPL
697427	UNIMPL
698428	UNIMPL
699429	UNIMPL
700430	UNIMPL
701431	UNIMPL
702432	UNIMPL
703433	UNIMPL
704434	UNIMPL
705435	STD		{ int|linux_sys||clone3( \
706			    struct linux_user_clone3_args *cl_args, \
707			    size_t size); }
708436	STD		{ int|linux_sys||close_range(unsigned int first, \
709			    unsigned int last, unsigned int flags); }
710437	UNIMPL
711438	UNIMPL
712439	UNIMPL
713440	UNIMPL
714441	STD		{ int|linux_sys||epoll_pwait2(int epfd, \
715			    struct linux_epoll_event *events, int maxevents, \
716			    const struct linux_timespec *timeout, \
717			    const linux_sigset_t *sigmask); }
718