xref: /netbsd-src/sys/compat/linux/arch/mips/syscalls.master (revision d16b7486a53dcb8072b60ec6fcb4373a2d0c27b7)
1	$NetBSD: syscalls.master,v 1.77 2023/07/29 15:05:31 christos 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_socketcall.h>
56
57#include <compat/linux/linux_syscallargs.h>
58
590	NOARGS		{ int|linux_sys||nosys(void); } syscall
601	STD		{ int|linux_sys||exit(int rval); }
612	NOARGS		{ int|sys||fork(void); }
623	NOARGS		{ ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
634	NOARGS		{ ssize_t|sys||write(int fd, const void *buf, \
64			    size_t nbyte); }
655	STD		{ int|linux_sys||open(const char *path, int flags, \
66			    linux_umode_t mode); }
676	NOARGS		{ int|sys||close(int fd); }
687	STD		{ int|linux_sys||waitpid(int pid, int *status, \
69			    int options);}
708	STD		{ int|linux_sys||creat(const char *path, linux_umode_t mode); }
719	NOARGS		{ int|sys||link(const char *path, const char *link); }
7210	STD		{ int|linux_sys||unlink(const char *path); }
7311	NOARGS		{ int|sys||execve(const char *path, char **argp, \
74			    char **envp); }
7512	NOARGS		{ int|sys||chdir(const char *path); }
7613	STD		{ int|linux_sys||time(linux_time_t *t); }
7714	STD		{ int|linux_sys||mknod(const char *path, linux_umode_t mode, \
78			    unsigned dev); }
7915	NOARGS		{ int|sys||chmod(const char *path, int mode); }
8016	NOARGS		{ int|sys||__posix_lchown(const char *path, uid_t uid, \
81			    gid_t gid); }
8217	UNIMPL
8318	OBSOL		ostat
8419	NOARGS		{ long|compat_43_sys||lseek(int fd, long offset, \
85			    int whence); }
8620	NOARGS 		{ pid_t|sys||getpid(void); }
8721	UNIMPL		mount
8822	OBSOL		umount
8923	NOARGS		{ int|sys||setuid(uid_t uid); }
9024	NOARGS		{ uid_t|sys||getuid(void); }
9125	STD		{ int|linux_sys||stime(linux_time_t *t); }
9226	STD		{ int|linux_sys||ptrace(long request, long pid, \
93			  long addr, long data); }
9427	STD		{ int|linux_sys||alarm(unsigned int secs); }
9528	OBSOL		ofstat
9629	STD		{ int|linux_sys||pause(void); }
9730	STD		{ int|linux_sys||utime(const char *path, \
98			    struct linux_utimbuf *times); }
9931	UNIMPL
10032	UNIMPL
10133	NOARGS		{ int|sys||access(const char *path, int flags); }
10234	STD		{ int|linux_sys||nice(int incr); }
10335	UNIMPL
10436	NOARGS		{ int|sys||sync(void); }
10537	STD		{ int|linux_sys||kill(int pid, int signum); }
10638	NOARGS		{ int|sys||__posix_rename(const char *from, \
107			    const char *to); }
10839	NOARGS		{ int|sys||mkdir(const char *path, linux_umode_t mode); }
10940	NOARGS		{ int|sys||rmdir(const char *path); }
11041	NOARGS		{ int|sys||dup(int fd); }
11142	STD		{ int|linux_sys||pipe(int *pfds); }
11243	STD		{ int|linux_sys||times(struct times *tms); }
11344	UNIMPL
11445	STD		{ int|linux_sys||brk(char *nsize); }
11546	NOARGS		{ int|sys||setgid(gid_t gid); }
11647	NOARGS		{ gid_t|sys||getgid(void); }
11748	STD		{ int|linux_sys||signal(int signum, \
118			    linux___sighandler_t handler); }
11949	NOARGS		{ uid_t|sys||geteuid(void); }
12050	NOARGS		{ gid_t|sys||getegid(void); }
12151	NOARGS		{ int|sys||acct(char *path); }
12252	UNIMPL		umount
12353	UNIMPL
12454	STD		{ int|linux_sys||ioctl(int fd, u_long com, \
125			    void *data); }
12655	STD		{ int|linux_sys||fcntl(int fd, int cmd, void *arg); }
12756	OBSOL		mpx
12857	NOARGS		{ int|sys||setpgid(int pid, int pgid); }
12958	UNIMPL
13059 	STD  		    { int|linux_sys||olduname(struct linux_old_utsname \
131			    *up); }
13260	NOARGS		{ int|sys||umask(int newmask); }
13361	NOARGS		{ int|sys||chroot(char *path); }
13462	UNIMPL		ustat
13563	NOARGS		{ int|sys||dup2(int from, int to); }
13664	NOARGS		{ pid_t|sys||getppid(void); }
13765	NOARGS		{ int|sys||getpgrp(void); }
13866	NOARGS		{ int|sys||setsid(void); }
13967	STD		{ int|linux_sys||sigaction(int signum, \
140			    const struct linux_old_sigaction *nsa, \
141			    struct linux_old_sigaction *osa); }
14268	STD		{ int|linux_sys||siggetmask(void); }
14369	STD		{ int|linux_sys||sigsetmask(linux_old_sigset_t mask); }
14470	NOARGS		{ int|sys||setreuid(uid_t ruid, uid_t euid); }
14571	NOARGS		{ int|sys||setregid(gid_t rgid, gid_t egid); }
14672	STD		{ int|linux_sys||sigsuspend(void *restart, \
147			    int oldmask, int mask); }
14873	STD		{ int|linux_sys||sigpending(linux_old_sigset_t *set); }
14974	NOARGS		{ int|compat_43_sys||sethostname(char *hostname, \
150			    u_int len);}
15175	STD		{ int|linux_sys||setrlimit(u_int which, \
152			    struct orlimit *rlp); }
15376	STD		{ int|linux_sys||getrlimit(u_int which, \
154			    struct orlimit *rlp); }
15577	NOARGS		{ int|compat_50_sys||getrusage(int who, \
156			    struct rusage50 *rusage); }
15778	STD		{ int|linux_sys||gettimeofday(struct timeval50 *tp, \
158			    struct timezone *tzp); }
15979	STD		{ int|linux_sys||settimeofday(struct timeval50 *tp, \
160			    struct timezone *tzp); }
16180	NOARGS		{ int|sys||getgroups(int gidsetsize, gid_t *gidset); }
16281	NOARGS		{ int|sys||setgroups(int gidsetsize, gid_t *gidset); }
16382	UNIMPL		old_select
16483	NOARGS		{ int|sys||symlink(const char *path, const char *to); }
16584	NOARGS		{ int|compat_43_sys||lstat(const char *path, \
166			    struct stat43 *up); } oolstat
16785	NOARGS		{ ssize_t|sys||readlink(const char *path, char *buf, \
168			    int count); }
16986	UNIMPL		uselib
170;86	STD		{ int|linux_sys||uselib(const char *path); }
17187	STD		{ int|linux_sys||swapon(char *name); }
17288	STD		{ int|linux_sys||reboot(int magic1, int magic2, \
173			    int cmd, void *arg); }
17489	STD		{ int|linux_sys||readdir(int fd, void *dent, \
175			    unsigned int count); }
17690	NOARGS      	{ int|linux_sys||mmap(unsigned long addr, size_t len, \
177			    int prot, int flags, int fd, linux_off_t offset); }
17891	NOARGS		{ int|sys||munmap(void *addr, size_t len); }
17992	NOARGS		{ int|compat_43_sys||truncate(const char *path, \
180			    long length); }
18193	NOARGS		{ int|compat_43_sys||ftruncate(int fd, long length); }
18294	NOARGS		{ int|sys||fchmod(int fd, linux_umode_t mode); }
18395 	NOARGS		{ int|sys||__posix_fchown(int fd, uid_t uid, \
184			    gid_t gid); }
18596	STD		{ int|linux_sys||getpriority(int which, int who); }
18697	NOARGS		{ int|sys||setpriority(int which, int who, int prio); }
18798	UNIMPL
18899	STD		{ int|linux_sys||statfs(const char *path, \
189			    struct linux_statfs *sp); }
190100	STD		{ int|linux_sys||fstatfs(int fd, \
191			    struct linux_statfs *sp); }
192101	STD		{ int|linux_sys||ioperm(unsigned int lo, \
193			    unsigned int hi, int val); }
194102	STD		{ int|linux_sys||socketcall(int what, void *args); }
195103	UNIMPL		syslog
196104	NOARGS		{ int|compat_50_sys||setitimer(int which, \
197			    struct itimerval50 *itv, \
198			    struct itimerval50 *oitv); }
199105	NOARGS		{ int|compat_50_sys||getitimer(int which, \
200			    struct itimerval50 *itv); }
201106	STD		{ int|linux_sys||stat(const char *path, \
202			    struct linux_stat *sp); }
203107	STD		{ int|linux_sys||lstat(const char *path, \
204			    struct linux_stat *sp); }
205108	STD		{ int|linux_sys||fstat(int fd, struct linux_stat *sp); }
206109	STD		{ int|linux_sys||uname(struct linux_utsname *up); }
207110	UNIMPL		iopl
208111	UNIMPL		vhangup
209112	UNIMPL		idle
210113	UNIMPL		vm86old
211114	STD		{ int|linux_sys||wait4(int pid, int *status, \
212			    int options, struct rusage50 *rusage); }
213115	STD		{ int|linux_sys||swapoff(const char *path); }
214116	STD		{ int|linux_sys||sysinfo(struct linux_sysinfo *arg); }
215117	STD		{ int|linux_sys||ipc(int what, long a1, long a2, \
216			    long a3, void *ptr); }
217118	NOARGS		{ int|sys||fsync(int fd); }
218119	STD		{ int|linux_sys||sigreturn(struct linux_sigframe *sf); }
219120	STD		{ int|linux_sys||clone(int flags, void *stack, \
220			    void *parent_tidptr, void *tls, void *child_tidptr); }
221121	STD		{ int|linux_sys||setdomainname(char *domainname, \
222			    int len); }
223122	STD		{ int|linux_sys||new_uname(struct linux_utsname *up); }
224123	UNIMPL		modify_ldt
225124	UNIMPL		adjtimex
226125	STD		{ int|linux_sys||mprotect(const void *start, \
227			    unsigned long len, int prot); }
228126	STD		{ int|linux_sys||sigprocmask(int how, \
229			    const linux_old_sigset_t *set, \
230			    linux_old_sigset_t *oset); }
231127	UNIMPL		create_module
232128	UNIMPL		init_module
233129	UNIMPL		delete_module
234130	UNIMPL		get_kernel_syms
235131	UNIMPL		quotactl
236132	NOARGS		{ pid_t|sys||getpgid(pid_t pid); }
237133	NOARGS		{ int|sys||fchdir(int fd); }
238134	UNIMPL		bdflush
239135	UNIMPL		sysfs
240136	STD		{ int|linux_sys||personality(unsigned long per); }
241137	UNIMPL		afs_syscall
242138	STD		{ int|linux_sys||setfsuid(uid_t uid); }
243139	STD		{ int|linux_sys||setfsgid(gid_t gid); }
244140	STD		{ int|linux_sys||llseek(int fd, u_int32_t ohigh, \
245			    u_int32_t olow, void *res, int whence); }
246141	STD		{ int|linux_sys||getdents(int fd, \
247			    struct linux_dirent *dent, unsigned int count); }
248142	STD		{ int|linux_sys||select(int nfds, fd_set *readfds, \
249			    fd_set *writefds, fd_set *exceptfds, \
250			    struct timeval50 *timeout); }
251143	NOARGS		{ int|sys||flock(int fd, int how); }
252144	NOARGS		{ int|sys|13|msync(void *addr, size_t len, int flags); }
253145	NOARGS		{ ssize_t|sys||readv(int fd, \
254			    const struct iovec *iovp, int iovcnt); }
255146	NOARGS		{ ssize_t|sys||writev(int fd, \
256			    const struct iovec *iovp, int iovcnt); }
257147	STD		{ int|linux_sys||cacheflush(void *addr, \
258			    int bytes, int cache); }
259148	UNIMPL		cachectl
260149	STD		{ int|linux_sys||sysmips(long cmd, long arg1, \
261			    long arg2, long arg3); }
262150	UNIMPL
263151	NOARGS		{ pid_t|sys||getsid(pid_t pid); }
264152	STD		{ int|linux_sys||fdatasync(int fd); }
265153	STD		{ int|linux_sys||__sysctl(struct linux___sysctl *lsp); }
266154	NOARGS		{ int|sys||mlock(void *addr, size_t len); }
267155	NOARGS		{ int|sys||munlock(void *addr, size_t len); }
268156	NOARGS		{ int|sys||mlockall(int flags); }
269157	NOARGS		{ int|sys||munlockall(void); }
270158	STD		{ int|linux_sys||sched_setparam(pid_t pid, \
271			    const struct linux_sched_param *sp); }
272159	STD		{ int|linux_sys||sched_getparam(pid_t pid, \
273			    struct linux_sched_param *sp); }
274160	STD		{ int|linux_sys||sched_setscheduler(pid_t pid, \
275			    int policy, const struct linux_sched_param *sp); }
276161	STD		{ int|linux_sys||sched_getscheduler(pid_t pid); }
277162	STD		{ int|linux_sys||sched_yield(void); }
278163	STD		{ int|linux_sys||sched_get_priority_max(int policy); }
279164	STD		{ int|linux_sys||sched_get_priority_min(int policy); }
280165	UNIMPL		sched_rr_get_interval
281166	STD		{ int|linux_sys||nanosleep( \
282			    const struct linux_timespec *rqtp, \
283			    struct linux_timespec *rmtp); }
284167	STD		{ void *|linux_sys||mremap(void *old_address, \
285			    size_t old_size, size_t new_size, u_long flags); }
286168	STD		{ int|linux_sys||accept(int s, \
287			    struct osockaddr *name, int *anamelen); }
288169	STD		{ int|linux_sys||bind(int s, \
289			    const struct osockaddr *name, int namelen); }
290170	STD		{ int|linux_sys||connect(int s, \
291			    const struct osockaddr *name, int namelen); }
292171	STD		{ int|linux_sys||getpeername(int fdes, void *asa, \
293			    int *alen); }
294172	STD		{ int|linux_sys||getsockname(int fdes, void *asa, \
295			    int *alen); }
296173	STD		{ int|linux_sys||getsockopt(int s, int level, \
297			    int optname, void *optval, int *optlen); }
298174	NOARGS		{ int|sys||listen(int s, int backlog); }
299175	STD		{ int|linux_sys||recv(int s, void *buf, int len, \
300			    int flags); }
301176	STD		{ int|linux_sys||recvfrom(int s, void *buf, int len, \
302			    int flags, struct osockaddr *from, \
303			    int *fromlenaddr); }
304177	STD		{ int|linux_sys||recvmsg(int s, \
305			    struct linux_msghdr *msg, u_int flags); }
306178	STD		{ int|linux_sys||send(int s, void *buf, int len, \
307			    int flags); }
308179	STD		{ int|linux_sys||sendmsg(int s, \
309			    struct linux_msghdr *msg, u_int flags); }
310180	STD		{ int|linux_sys||sendto(int s, void *msg, \
311			    int len, int flags, struct osockaddr *to, \
312			    int tolen); }
313181	STD		{ int|linux_sys||setsockopt(int s, int level, \
314			    int optname, void *optval, int optlen); }
315182	UNIMPL		shutdown
316183	STD		{ int|linux_sys||socket(int domain, int type, \
317			    int protocol); }
318184	STD		{ int|linux_sys||socketpair(int domain, int type, \
319			    int protocol, int *rsv); }
320185	STD		{ int|linux_sys||setresuid(uid_t ruid, uid_t euid, \
321			    uid_t suid); }
322186	STD		{ int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \
323			    uid_t *suid); }
324187	UNIMPL		query_module
325188	NOARGS		{ int|sys||poll(struct pollfd *fds, u_int nfds, \
326			    int timeout); }
327189	UNIMPL		nfsservctl
328190	STD		{ int|linux_sys||setresgid(gid_t rgid, gid_t egid, \
329			    gid_t sgid); }
330191	STD		{ int|linux_sys||getresgid(gid_t *rgid, gid_t *egid, \
331			    gid_t *sgid); }
332192	UNIMPL		prctl
333193	STD		{ int|linux_sys||rt_sigreturn( \
334			    struct linux_pt_regs *regs); }
335194	STD		{ int|linux_sys||rt_sigaction(int signum, \
336			    const struct linux_sigaction *nsa, \
337			    struct linux_sigaction *osa, \
338			    size_t sigsetsize); }
339195	STD		{ int|linux_sys||rt_sigprocmask(int how, \
340			    const linux_sigset_t *set, \
341			    linux_sigset_t *oset, \
342			    size_t sigsetsize); }
343196	STD		{ int|linux_sys||rt_sigpending( \
344			    linux_sigset_t *set, \
345			    size_t sigsetsize); }
346197	STD		{ int|linux_sys||rt_sigtimedwait( \
347			    const linux_sigset_t *set, \
348			    linux_siginfo_t *info, \
349			    const struct linux_timespec *timeout); }
350198	STD		{ int|linux_sys||rt_queueinfo(int pid, int signum, \
351			    linux_siginfo_t *uinfo); }
352199	STD		{ int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \
353			    size_t sigsetsize); }
354200	STD		{ int|linux_sys||pread(int fd, char *buf, \
355			    size_t nbyte, off_t offset); }
356201	STD		{ int|linux_sys||pwrite(int fd, char *buf, \
357			    size_t nbyte, off_t offset); }
358202	NOARGS		{ int|sys||__posix_chown(const char *path, uid_t uid, \
359			    gid_t gid); }
360203	NOARGS		{ int|sys||__getcwd(char *bufp, size_t length); }
361204	UNIMPL		capget
362205	UNIMPL		capset
363206	STD		{ int|linux_sys||sigaltstack( \
364			    const struct linux_sigaltstack *ss, \
365			    struct linux_sigaltstack *oss); }
366207	UNIMPL		sendfile
367208	UNIMPL
368209	UNIMPL
369#define linux_sys_mmap2_args linux_sys_mmap_args
370210	NOARGS		{ linux_off_t|linux_sys||mmap2(unsigned long addr, \
371			    size_t len, int prot, int flags, int fd, \
372			    linux_off_t offset); }
373211	STD		{ int|linux_sys||truncate64(const char *path, \
374			    off_t length); }
375212	STD		{ int|linux_sys||ftruncate64(unsigned int fd, \
376			    off_t length); }
377213	STD		{ int|linux_sys||stat64(const char *path, \
378			    struct linux_stat64 *sp); }
379214	STD		{ int|linux_sys||lstat64(const char *path, \
380			    struct linux_stat64 *sp); }
381215	STD		{ int|linux_sys||fstat64(int fd, \
382			    struct linux_stat64 *sp); }
383216	UNIMPL		pivot_root
384217	NOARGS		{ int|sys||mincore(void *addr, size_t len, char *vec); }
385218	NOARGS		{ int|sys||madvise(void *addr, size_t len, int behav); }
386219	STD		{ int|linux_sys||getdents64(int fd, \
387			    struct linux_dirent64 *dent, unsigned int count); }
388220	STD		{ int|linux_sys||fcntl64(int fd, \
389			    int cmd, void *arg); }
390221	UNIMPL		/* reserved */
391222	NOARGS		{ pid_t|linux_sys||gettid(void); }
392223	STD		{ ssize_t|linux_sys||readahead(int fd, off_t offset, \
393			    size_t count); }
394224	STD		{ int|linux_sys||setxattr(char *path, char *name, \
395			    void *value, size_t size, int flags); }
396225	STD		{ int|linux_sys||lsetxattr(char *path, char *name, \
397			    void *value, size_t size, int flags); }
398226	STD		{ int|linux_sys||fsetxattr(int fd, char *name, \
399			    void *value, size_t size, int flags); }
400227	STD		{ ssize_t|linux_sys||getxattr(char *path, char *name, \
401			    void *value, size_t size); }
402228	STD		{ ssize_t|linux_sys||lgetxattr(char *path, char *name, \
403			    void *value, size_t size); }
404229	STD		{ ssize_t|linux_sys||fgetxattr(int fd, char *name, \
405			    void *value, size_t size); }
406230	STD		{ ssize_t|linux_sys||listxattr(char *path, char *list, \
407			    size_t size); }
408231	STD		{ ssize_t|linux_sys||llistxattr(char *path, char *list, \
409			    size_t size); }
410232	STD		{ ssize_t|linux_sys||flistxattr(int fd, char *list, \
411			    size_t size); }
412233	STD		{ int|linux_sys||removexattr(char *path, char *name); }
413234	STD		{ int|linux_sys||lremovexattr(char *path, char *name); }
414235	STD		{ int|linux_sys||fremovexattr(int fd, char *name); }
415236	STD		{ int|linux_sys||tkill(int tid, int sig); }
416237	UNIMPL		sendfile64
417238	STD		{ int|linux_sys||futex(int *uaddr, int op, int val, \
418			    const struct linux_timespec *timeout, int *uaddr2, \
419			    int val3); }
420239	STD		{ int|linux_sys||sched_setaffinity(pid_t pid, \
421			    unsigned int len, unsigned long *mask); }
422240	STD		{ int|linux_sys||sched_getaffinity(pid_t pid, \
423			    unsigned int len, unsigned long *mask); }
424241	UNIMPL		io_setup
425242	UNIMPL		io_destroy
426243	UNIMPL		io_getevents
427244	UNIMPL		io_submit
428245	UNIMPL		io_cancel
429246	STD		{ int|linux_sys||exit_group(int error_code); }
430247	UNIMPL		lookup_dcookie
431248	STD		{ int|linux_sys||epoll_create(int size); }
432249	STD		{ int|linux_sys||epoll_ctl(int epfd, int op, int fd, \
433			    struct linux_epoll_event *event); }
434250	STD		{ int|linux_sys||epoll_wait(int epfd, \
435			    struct linux_epoll_event *events, int maxevents, \
436			    int timeout); }
437251	UNIMPL		remap_file_pages
438252	STD		{ int|linux_sys||set_tid_address(int *tid); }
439253	UNIMPL		restart_syscall
440254	STD		{ int|linux_sys||fadvise64(int fd, off_t offset, \
441			    size_t len, int advice); }
442255	STD		{ int|linux_sys||statfs64(const char *path, \
443			    size_t sz, struct linux_statfs64 *sp); }
444256	STD		{ int|linux_sys||fstatfs64(int fd, \
445			    size_t sz, struct linux_statfs64 *sp); }
446257	STD		{ int|linux_sys||timer_create(clockid_t clockid, \
447			    struct linux_sigevent *evp, timer_t *timerid); }
448258	STD		{ int|linux_sys||timer_settime(timer_t timerid, \
449			    int flags, const struct linux_itimerspec *tim, \
450			    struct linux_itimerspec *otim); }
451259	STD		{ int|linux_sys||timer_gettime(timer_t timerid, \
452			    struct linux_itimerspec *tim); }
453260	NOARGS		{ int|sys||timer_getoverrun(timer_t timerid); }
454261	NOARGS		{ int|sys||timer_delete(timer_t timerid); }
455262	STD		{ int|linux_sys||clock_settime(clockid_t which, \
456			    struct linux_timespec *tp); }
457263	STD		{ int|linux_sys||clock_gettime(clockid_t which, \
458			    struct linux_timespec *tp); }
459264	STD		{ int|linux_sys||clock_getres(clockid_t which, \
460			    struct linux_timespec *tp); }
461265	STD		{ int|linux_sys||clock_nanosleep(clockid_t which, \
462			    int flags, struct linux_timespec *rqtp, \
463			    struct linux_timespec *rmtp); }
464266	STD		{ int|linux_sys||tgkill(int tgid, int tid, int sig); }
465267	NOARGS		{ int|compat_50_sys||utimes(const char *path, \
466			    const struct timeval50 *tptr); }
467268	UNIMPL		mbind
468269	UNIMPL		get_mempolicy
469270	UNIMPL		set_mempolicy
470271	UNIMPL		mq_open
471272	UNIMPL		mq_unlink
472273	UNIMPL		mq_timedsend
473274	UNIMPL		mq_timedreceive
474275	UNIMPL		mq_notify
475276	UNIMPL		mq_getsetattr
476277	UNIMPL		vserve
477278	UNIMPL		waitid
478279	UNIMPL		setaltroot
479280	UNIMPL		add_key
480281	UNIMPL		request_key
481282	UNIMPL		keyctl
482283	STD		{ int|linux_sys||set_thread_area(void *tls); }
483284	UNIMPL		inotify_init
484285	UNIMPL		inotify_add_watch
485286	UNIMPL		inotify_rm_watch
486287	UNIMPL		migrate_pages
487288	STD 		{ int|linux_sys||openat(int fd, const char *path, \
488			    int flags, ... linux_umode_t mode); }
489289	NOARGS		{ int|sys||mkdirat(int fd, const char *path, \
490			    linux_umode_t mode); }
491290	STD		{ int|linux_sys||mknodat(int fd, const char *path, \
492			    linux_umode_t mode, unsigned dev); }
493291	STD		{ int|linux_sys||fchownat(int fd, const char *path, \
494			    uid_t owner, gid_t group, int flag); }
495292	UNIMPL		futimesat
496293	STD		{ int|linux_sys||fstatat64(int fd, const char *path, \
497			    struct linux_stat64 *sp, int flag); }
498294	STD		{ int|linux_sys||unlinkat(int fd, const char *path, \
499			    int flag); }
500295	NOARGS		{ int|sys||renameat(int fromfd, const char *from, \
501			    int tofd, const char *to); }
502296	STD		{ int|linux_sys||linkat(int fd1, const char *name1, \
503			    int fd2, const char *name2, int flags); }
504297	NOARGS		{ int|sys||symlinkat(const char *path1, int fd, \
505			    const char *path2); }
506298	NOARGS		{ ssize_t|sys||readlinkat(int fd, const char *path, \
507			    char *buf, size_t bufsize); }
508299	STD		{ int|linux_sys||fchmodat(int fd, const char *path, \
509			    linux_umode_t mode); }
510300	STD		{ int|linux_sys||faccessat(int fd, const char *path, \
511			    int amode); }
512301	STD		{ int|linux_sys||pselect6(int nfds, fd_set *readfds, \
513			   fd_set *writefds, fd_set *exceptfds, \
514			   struct linux_timespec *timeout, \
515			   linux_sized_sigset_t *ss); }
516302	STD		{ int|linux_sys||ppoll(struct pollfd *fds, u_int nfds, \
517			    struct linux_timespec *timeout, \
518			    linux_sigset_t *sigset); }
519303	UNIMPL		unshare
520304	UNIMPL		splice
521305	UNIMPL		sync_file_range
522306	UNIMPL		tee
523307	UNIMPL		vmsplice
524308	UNIMPL		move_pages
525			;
526			; The NetBSD native robust list calls have different
527			; argument names / types, but they are ABI-compatible
528			; with Linux.
529			;
530309	NOARGS		{ int|sys||__futex_set_robust_list(void *head, \
531			    size_t len); }
532310	NOARGS		{ int|sys||__futex_get_robust_list(lwpid_t lwpid, \
533			    void **headp, size_t *lenp); }
534311	UNIMPL		kexec_load
535312	UNIMPL		getcpu
536313	STD		{ int|linux_sys||epoll_pwait(int epfd, \
537			    struct linux_epoll_event *events, int maxevents, \
538			    int timeout, const linux_sigset_t *sigmask); }
539314	UNIMPL		ioprio_set
540315	UNIMPL		ioprio_get
541316	STD		{ int|linux_sys||utimensat(int fd, const char *path, \
542			    struct linux_timespec *times, int flag); }
543317	UNIMPL		signalfd
544318	UNIMPL		timerfd
545319	STD		{ int|linux_sys||eventfd(unsigned int initval); }
546320	STD		{ int|linux_sys||fallocate(int fd, int mode, \
547			    off_t offset, off_t len); }
548321	STD		{ int|linux_sys||timerfd_create(clockid_t clock_id, \
549			    int flags); }
550322	STD		{ int|linux_sys||timerfd_gettime(int fd, \
551			    struct linux_itimerspec *tim); }
552323	STD		{ int|linux_sys||timerfd_settime(int fd, int flags, \
553			    const struct linux_itimerspec *tim, \
554			    struct linux_itimerspec *otim); }
555324	UNIMPL		signalfd4
556325	STD		{ int|linux_sys||eventfd2(unsigned int initval, \
557			    int flags); }
558326	STD		{ int|linux_sys||epoll_create1(int flags); }
559327	STD		{ int|linux_sys||dup3(int from, int to, int flags); }
560328	STD		{ int|linux_sys||pipe2(int *pfds, int flags); }
561329	UNIMPL		inotify_init1
562330	STD		{ int|linux_sys||preadv(int fd, \
563			    const struct iovec *iovp, int iovcnt, \
564			    unsigned long off_lo, unsigned long off_hi); }
565331	STD		{ int|linux_sys||pwritev(int fd, \
566			    const struct iovcnt *iovp, int iovcnt, \
567			    unsigned long off_lo, unsigned long off_hi); }
568332	UNIMPL		rt_tgsigqueueinfo
569333	UNIMPL		perf_event_open
570334	STD		{ int|linux_sys||accept4(int s, \
571			    struct osockaddr *name, \
572			    int *anamelen, int flags); }
573335	STD		{ int|linux_sys||recvmmsg(int s, \
574			    struct linux_mmsghdr *msgvec, unsigned int vlen, \
575			    unsigned int flags, struct timespec *timeout); }
576336	UNIMPL		getdents64
577337	UNIMPL		fanotify_init
578338	UNIMPL		fanotify_mark
579339	STD		{ int|linux_sys||prlimit64(pid_t pid, int which, \
580			    struct rlimit *new_rlp, struct rlimit *old_rlp); }
581340	UNIMPL		name_to_handle_at
582341	UNIMPL		open_by_handle_at
583342	UNIMPL		clock_adjtime
584343	UNIMPL		syncfs
585344	STD		{ int|linux_sys||sendmmsg(int s, \
586			    struct linux_mmsghdr *msgvec, unsigned int vlen, \
587			    unsigned int flags); }
588345	UNIMPL		setns
589346	UNIMPL		process_vm_readv
590347	UNIMPL		process_vm_writev
591348	UNIMPL		kcmp
592349	UNIMPL		finit_module
593350	UNIMPL		sched_setattr
594351	UNIMPL		sched_getattr
595352	UNIMPL		renameat2
596353	NOARGS		{ ssize_t|sys||getrandom(void *buf, size_t buflen, \
597			    unsigned int flags); }
598354	STD		{ int|linux_sys||memfd_create(const char *name, \
599			    unsigned int flags); }
600355	UNIMPL		bpf
601356	UNIMPL		execveat
602357	UNIMPL		userfaultfd
603358	UNIMPL		membarrier
604359	UNIMPL		mlock2
605360	UNIMPL		copy_file_range
606361	UNIMPL		preadv2
607362	UNIMPL		pwritev2
608363	UNIMPL		pkey_mprotect
609364	UNIMPL		pkey_alloc
610365	UNIMPL		pkey_free
611366     STD		{ int|linux_sys||statx(int fd, const char *path, \
612			    int flag, unsigned int mask, \
613			    struct linux_statx *sp); }
614367	UNIMPL
615368	UNIMPL
616369	UNIMPL
617370	UNIMPL
618371	UNIMPL
619372	UNIMPL
620373	UNIMPL
621374	UNIMPL
622375	UNIMPL
623376	UNIMPL
624377	UNIMPL
625378	UNIMPL
626379	UNIMPL
627380	UNIMPL
628381	UNIMPL
629382	UNIMPL
630383	UNIMPL
631384	UNIMPL
632385	UNIMPL
633386	UNIMPL
634387	UNIMPL
635388	UNIMPL
636389	UNIMPL
637390	UNIMPL
638391	UNIMPL
639392	UNIMPL
640393	UNIMPL
641394	UNIMPL
642395	UNIMPL
643396	UNIMPL
644397	UNIMPL
645398	UNIMPL
646399	UNIMPL
647400	UNIMPL
648401	UNIMPL
649402	UNIMPL
650403	UNIMPL
651404	UNIMPL
652405	UNIMPL
653406	UNIMPL
654407	UNIMPL
655408	UNIMPL
656409	UNIMPL
657410	UNIMPL
658411	UNIMPL
659412	UNIMPL
660413	UNIMPL
661414	UNIMPL
662415	UNIMPL
663416	UNIMPL
664417	UNIMPL
665418	UNIMPL
666419	UNIMPL
667420	UNIMPL
668421	UNIMPL
669422	UNIMPL
670423	UNIMPL
671424	UNIMPL
672425	UNIMPL
673426	UNIMPL
674427	UNIMPL
675428	UNIMPL
676429	UNIMPL
677430	UNIMPL
678431	UNIMPL
679432	UNIMPL
680433	UNIMPL
681434	UNIMPL
682435	UNIMPL
683436	STD		{ int|linux_sys||close_range(unsigned int first, \
684			    unsigned int last, unsigned int flags); }
685437	UNIMPL
686438	UNIMPL
687439	UNIMPL
688440	UNIMPL
689441	STD		{ int|linux_sys||epoll_pwait2(int epfd, \
690			    struct linux_epoll_event *events, int maxevents, \
691			    const struct linux_timespec *timeout, \
692			    const linux_sigset_t *sigmask); }
693