xref: /netbsd-src/sys/rump/kern/lib/libsys_linux/syscalls.master (revision dd255ccea4286b0c44fa8fd48a9a19a768afe8e1)
1	$NetBSD: syscalls.master,v 1.12 2014/01/10 20:10:23 njoly Exp $
2
3;	@(#)syscalls.master	8.2 (Berkeley) 1/13/94
4
5; NetBSD system call name/number "master" file.
6; (See syscalls.conf to see what it is processed into.)
7;
8; Fields: number type [type-dependent ...]
9;	number	system call number, must be in order
10;	type	one of NODEF, UNIMPL, or NOARGS
11;
12; types:
13;	NODEF	always included
14;	UNIMPL	unimplemented, not included in system
15;	NODEF	included, but don't define the syscall number
16;	NOARGS	included, but don't define the syscall args structure
17;
18; arguments:
19;	PAD	argument not part of the C interface, used only for padding
20;
21;
22; The purpose of this syscalls.master is to map to the Linux types which
23; are marshalled into the arg structure by the clientside rump_syscalls.c
24; code in librumpclient.
25;
26
27#include <sys/param.h>
28#include <sys/systm.h>
29#include <sys/signal.h>
30#include <sys/socket.h>
31#include <sys/mount.h>
32#include <sys/sched.h>
33#include <sys/syscallargs.h>
34
35#include <compat/linux/common/linux_types.h>
36#include <compat/linux/common/linux_signal.h>
37#include <compat/linux/linux_syscallargs.h>
38#include <compat/linux/linux_syscall.h>
39
40#ifdef LINUX_SYS_socketcall
41#include <compat/linux/common/linux_socketcall.h>
42#endif
43
44#include "rump_linux_syscallargs.h"
45
46%%
47
480	NOARGS		{ int|linux_sys||nosys(void); }
491	UNIMPL 		exit
502	UNIMPL 		fork
513	NOARGS		{ ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
524	NOARGS		{ ssize_t|sys||write(int fd, const void *buf, \
53			    size_t nbyte); }
545	NOARGS		{ int|linux_sys||open(const char *path, \
55			    int flags, int mode); }
566	NOARGS	 	{ int|sys||close(int fd); }
577	UNIMPL		wait4
588	UNIMPL		creat
599	NOARGS 		{ int|sys||link(const char *path, const char *link); }
6010	NOARGS 	 	{ int|linux_sys||unlink(const char *path); }
6111	UNIMPL		execv
6212	NOARGS 	 	{ int|sys||chdir(const char *path); }
6313	NOARGS 	 	{ int|sys||fchdir(int fd); }
6414	UNIMPL		mknod
6515	NOARGS 	 	{ int|sys||chmod(const char *path, mode_t mode); }
6616	NOARGS 	 	{ int|sys||__posix_chown(const char *path, uid_t uid, \
67			    gid_t gid); }
6817	UNIMPL		obreak
6918	UNIMPL		getfsstat
7019	UNIMPL		lseek
7120	NOARGS 		{ pid_t|sys||getpid_with_ppid(void); } getpid
7221	UNIMPL		mount
7322	UNIMPL		unmount
7423	NOARGS		{ int|sys||setuid(uid_t uid); }
7524	NOARGS		{ uid_t|sys||getuid_with_euid(void); } getuid
7625	NOARGS		{ uid_t|sys||geteuid(void); }
7726	UNIMPL 		ptrace
7827	NOARGS 		{ ssize_t|linux_sys||recvmsg(int s, \
79			    struct linux_msghdr *msg, int flags); }
8028	NOARGS 		{ ssize_t|linux_sys||sendmsg(int s, \
81			    const struct linux_msghdr *msg, int flags); }
8229	NOARGS 		{ ssize_t|linux_sys||recvfrom(int s, void *buf, \
83			    int len, int flags, struct osockaddr *from, \
84			    int *fromlenaddr); }
8530	NOARGS		{ int|linux_sys||accept(int s, struct osockaddr *name, \
86			    int *anamelen); }
8731	NOARGS		{ int|linux_sys||getpeername(int fdes, \
88			    struct osockaddr *asa, int *alen); }
8932	NOARGS		{ int|linux_sys||getsockname(int fdes, \
90			    struct osockaddr *asa, int *alen); }
9133	NOARGS 		{ int|sys||access(const char *path, int flags); }
9234	UNIMPL		chflags
9335	UNIMPL		fchflags
9436	NOARGS		{ void|sys||sync(void); }
9537	UNIMPL 		kill
9638	UNIMPL		stat
9739	UNIMPL		getppid
9840	UNIMPL		lstat
9941	NOARGS 		{ int|sys||dup(int fd); }
100
101; we mimic the librumpclient calling convention, therefore no linux_sys_pipe
10242	NOARGS 		{ int|sys||pipe(void); }
103
10443	UNIMPL		getegid
10544	UNIMPL 		profil
10645	UNIMPL 		ktrace
10746	UNIMPL		sigaction
10847	NOARGS 		{ gid_t|sys||getgid_with_egid(void); } getgid
10948	UNIMPL		sigprocmask
11049	UNIMPL		__getlogin
11150	UNIMPL		__setlogin
11251	UNIMPL		acct
11352	UNIMPL  	sigpending
11453	UNIMPL  	sigaltstack
11554	NOARGS		{ int|linux_sys||ioctl(int fd, \
116			    u_long com, void *data); }
11755	UNIMPL		reboot
11856	UNIMPL		revoke
11957	NOARGS 	 	{ int|sys||symlink(const char *path, \
120			    const char *link); }
12158	NOARGS 	 	{ ssize_t|sys||readlink(const char *path, char *buf, \
122			    int count); }
12359	UNIMPL 		execve
12460	NOARGS 	 	{ mode_t|sys||umask(mode_t newmask); }
12561	NOARGS 	 	{ int|sys||chroot(const char *path); }
12662	UNIMPL		fstat43
12763	UNIMPL		getkerninfo
12864	UNIMPL		getpagesize
12965	UNIMPL		msync
13066	UNIMPL 		vfork
13167	UNIMPL		vread
13268	UNIMPL		vwrite
13369	UNIMPL 		sbrk
13470	UNIMPL 		sstk
13571	UNIMPL  	mmap
13672	UNIMPL 		ovadvise
13773	UNIMPL 		munmap
13874	UNIMPL 		mprotect
13975	UNIMPL 		madvise
14076	UNIMPL		vhangup
14177	UNIMPL		vlimit
14278	UNIMPL 		mincore
14379	NOARGS 		{ int|sys||getgroups(int gidsetsize, \
144			    int *gidset); }
14580	NOARGS 		{ int|sys||setgroups(int gidsetsize, \
146			    const int *gidset); }
14781	NOARGS 		{ int|sys||getpgrp(void); }
14882	NOARGS 		{ int|sys||setpgid(int pid, int pgid); }
14983	UNIMPL		setitimer
15084	UNIMPL		wait
15185	UNIMPL		swapon
15286	UNIMPL		getitimer
15387	UNIMPL		gethostname
15488	UNIMPL		sethostname
15589	UNIMPL		getdtablesize
15690	NOARGS 	 	{ int|sys||dup2(int from, int to); }
15791	UNIMPL		getdopt
15892	NOARGS		{ int|linux_sys||fcntl(int fd, int cmd, void *arg); }
15993	UNIMPL		select
16094	UNIMPL		setdopt
16195	NOARGS		{ int|sys||fsync(int fd); }
16296	UNIMPL		setpriority
16397	UNIMPL		socket
16498	NOARGS		{ int|linux_sys||connect(int s, \
165			    const struct osockaddr *name, \
166			    unsigned int namelen); }
16799	UNIMPL		accept
168100	UNIMPL 		getpriority
169
170101	UNIMPL		send
171102	UNIMPL		recv
172
173103	UNIMPL		sigreturn
174104	NOARGS		{ int|linux_sys||bind(int s, \
175			    const struct osockaddr *name, unsigned namelen); }
176105	NOARGS		{ int|linux_sys||setsockopt(int s, int level, \
177			    int name, const void *val, int optlen); }
178106	NOARGS		{ int|sys||listen(int s, int backlog); }
179107	UNIMPL		vtimes
180108	UNIMPL		sigvec
181109	UNIMPL		sigblock
182110	UNIMPL		sigsetmask
183111	UNIMPL		sigsuspend
184112	UNIMPL		sigstack
185113	UNIMPL		orecvmsg
186114	UNIMPL		osendmsg
187115	UNIMPL		vtrace
188116	UNIMPL		gettimeofday
189117	UNIMPL 		getrusage
190118	NOARGS		{ int|linux_sys||getsockopt(int s, int level, \
191			    int name, void *val, int *avalsize); }
192119	UNIMPL		resuba
193120	NOARGS 		{ ssize_t|sys||readv(int fd, \
194			    const struct iovec *iovp, int iovcnt); }
195121	NOARGS 		{ ssize_t|sys||writev(int fd, \
196			    const struct iovec *iovp, int iovcnt); }
197122	UNIMPL		settimeofday
198123	NOARGS 	 	{ int|sys||__posix_fchown(int fd, int uid, int gid); }
199124	NOARGS 	 	{ int|sys||fchmod(int fd, mode_t mode); }
200125	UNIMPL		orecvfrom
201126	NOARGS 		{ int|sys||setreuid(uid_t ruid, uid_t euid); }
202127	NOARGS 		{ int|sys||setregid(gid_t rgid, gid_t egid); }
203128	NOARGS 	 	{ int|sys||__posix_rename(const char *from, \
204			    const char *to); }
205129	UNIMPL		otruncate
206130	UNIMPL		oftruncate
207131	NOARGS 	 	{ int|sys||flock(int fd, int how); }
208132	UNIMPL 	 	mkfifo
209133	NOARGS 	 	{ int|linux_sys||sendto(int s, void *buf, \
210			    int len, int flags, const struct osockaddr *to, \
211			    int tolen); }
212134	NOARGS	 	{ int|sys||shutdown(int s, int how); }
213135	NOARGS	 	{ int|linux_sys||socketpair(int domain, int type, \
214			    int protocol, int *rsv); }
215136	NOARGS 	 	{ int|sys||mkdir(const char *path, mode_t mode); }
216137	NOARGS 	 	{ int|sys||rmdir(const char *path); }
217138	UNIMPL		utimes
218
219139	UNIMPL		4.2 sigreturn
220140	UNIMPL		adjtime
221141	UNIMPL		ogetpeername
222142	UNIMPL		ogethostid
223143	UNIMPL		osethostid
224144	UNIMPL		ogetrlimit
225145	UNIMPL		osetrlimit
226146	UNIMPL		okillpg
227147	NOARGS 		{ int|sys||setsid(void); }
228148	UNIMPL		quotactl
229149	UNIMPL		oquota
230150	UNIMPL		ogetsockname
231
232; Syscalls 151-180 inclusive are reserved for vendor-specific
233; system calls.  (This includes various calls added for compatibity
234; with other Unix variants.)
235; Some of these calls are now supported by BSD...
236151	UNIMPL
237152	UNIMPL
238153	UNIMPL
239154	UNIMPL
240155	UNIMPL		nfssvc
241156	UNIMPL		ogetdirentries
242157	UNIMPL		statfs12
243158	UNIMPL		fstatfs12
244159	UNIMPL
245160	UNIMPL
246161	UNIMPL		getfh30
247162	UNIMPL		ogetdomainname
248163	UNIMPL		osetdomainname
249164	UNIMPL		ouname
250165	UNIMPL 		sysarch
251166	UNIMPL
252167	UNIMPL
253168	UNIMPL
254169	UNIMPL		1.0 semsys
255170	UNIMPL		1.0 msgsys
256171	UNIMPL		1.0 shmsys
257172	UNIMPL
258173	NOARGS 	 	{ ssize_t|sys||pread(int fd, char *buf, \
259			    size_t nbyte, int PAD, linux_off_t offset); }
260174	NOARGS 	 	{ ssize_t|sys||pwrite(int fd, char *buf, \
261			    size_t nbyte, int PAD, linux_off_t offset); }
262175	UNIMPL		ntp_gettime
263176	UNIMPL		ntp_adjtime
264177	UNIMPL
265178	UNIMPL
266179	UNIMPL
267180	UNIMPL
268
269; Syscalls 180-199 are used by/reserved for BSD
270181	NOARGS 		{ int|sys||setgid(gid_t gid); }
271182	NOARGS 		{ int|sys||setegid(gid_t egid); }
272183	NOARGS 		{ int|sys||seteuid(uid_t euid); }
273184	UNIMPL		lfs_bmapv
274185	UNIMPL		lfs_markv
275186	UNIMPL		lfs_segclean
276187	UNIMPL		lfs_segwait
277188	UNIMPL		stat12
278189	UNIMPL		fstat12
279190	UNIMPL		lstat12
280191	UNIMPL 		pathconf
281192	UNIMPL 		fpathconf
282193	UNIMPL
283194	NOARGS 		{ int|linux_sys||getrlimit(int which, \
284			    struct orlimit *rlp); }
285195	NOARGS 		{ int|linux_sys||setrlimit(int which, \
286			    const struct orlimit *rlp); }
287196	UNIMPL		getdirentries
288197	UNIMPL		mmap
289198	UNIMPL		__syscall
290199	NOARGS 	 	{ off_t|sys||lseek(int fd, int PAD, off_t offset, \
291			    int whence); }
292200	NOARGS 	 	{ int|sys||truncate(const char *path, int PAD, \
293			    off_t length); }
294201	NOARGS 	 	{ int|sys||ftruncate(int fd, int PAD, off_t length); }
295202	UNIMPL		__sysctl
296203	UNIMPL		mlock
297204	UNIMPL		munlock
298205	UNIMPL		undelete
299206	UNIMPL		futimes
300207	NOARGS 	 	{ pid_t|sys||getpgid(pid_t pid); }
301208	UNIMPL	 	reboot
302209	NOARGS 	 	{ int|sys||poll(struct pollfd *fds, u_int nfds, \
303			    int timeout); }
304;
305; Syscalls 210-219 are reserved for dynamically loaded syscalls
306;
307210	UNIMPL	 	afssys
308211	UNIMPL
309212	UNIMPL
310213	UNIMPL
311214	UNIMPL
312215	UNIMPL
313216	UNIMPL
314217	UNIMPL
315218	UNIMPL
316219	UNIMPL
317220	UNIMPL		compat_14_semctl
318221	UNIMPL		semget
319222	UNIMPL		semop
320223	UNIMPL		semconfig
321224	UNIMPL 		compat_14_msgctl
322225	UNIMPL 		msgget
323226	UNIMPL 		msgsnd
324227	UNIMPL 		msgrcv
325228	UNIMPL		shmat
326229	UNIMPL		compat_14_shmctl
327230	UNIMPL		shmdt
328231	UNIMPL		shmget
329
330232	UNIMPL		clock_gettime
331233	UNIMPL		clock_settime
332234	UNIMPL		clock_getres
333235	UNIMPL		timer_create
334236	UNIMPL		timer_delete
335237	UNIMPL		timer_settime
336238	UNIMPL		timer_gettime
337239	UNIMPL		timer_getoverrun
338;
339; Syscalls 240-269 are reserved for other IEEE Std1003.1b syscalls
340;
341240	UNIMPL		nanosleep
342241	NOARGS 	 	{ int|linux_sys||fdatasync(int fd); }
343242	UNIMPL		mlockall
344243	UNIMPL		munlockall
345244	UNIMPL		__sigtimedwait
346245	UNIMPL		sigqueueinfo
347246	UNIMPL		modctl
348247	UNIMPL		_ksem_init
349248	UNIMPL		_ksem_open
350249	UNIMPL		_ksem_unlink
351250	UNIMPL		_ksem_close
352251	UNIMPL		_ksem_post
353252	UNIMPL		_ksem_wait
354253	UNIMPL		_ksem_trywait
355254	UNIMPL		_ksem_getvalue
356255	UNIMPL		_ksem_destroy
357256	UNIMPL		_ksem_timedwait
358
359257	UNIMPL		mq_open
360258	UNIMPL		mq_close
361259	UNIMPL		mq_unlink
362260	UNIMPL		mq_getattr
363261	UNIMPL		mq_setattr
364262	UNIMPL		mq_notify
365263	UNIMPL		mq_send
366264	UNIMPL		mq_receive
367265	UNIMPL		mq_timedsend
368266	UNIMPL		mq_timedreceive
369267	UNIMPL
370268	UNIMPL
371269	UNIMPL
372270	UNIMPL		__posix_rename
373271	UNIMPL		swapctl
374272	UNIMPL		getdents
375273	UNIMPL		minherit
376274	UNIMPL 	 	lchmod
377275	UNIMPL 	 	lchown
378276	UNIMPL		lutimes
379277	UNIMPL		msync
380278	UNIMPL		stat
381279	UNIMPL		fstat
382280	UNIMPL		lstat
383281	UNIMPL		sigaltstack
384282	UNIMPL		vfork
385283	UNIMPL		__posix_chown
386284	UNIMPL		__posix_fchown
387285	UNIMPL		__posix_lchown
388286	NOARGS 		{ pid_t|sys||getsid(pid_t pid); }
389
390287	UNIMPL		__clone
391288	UNIMPL		fktrace
392289	UNIMPL 		{ ssize_t|sys||preadv(int fd, \
393			    const struct iovec *iovp, int iovcnt, \
394			    int PAD, off_t offset); }
395290	UNIMPL 		{ ssize_t|sys||pwritev(int fd, \
396			    const struct iovec *iovp, int iovcnt, \
397			    int PAD, off_t offset); }
398291	UNIMPL		sigaction
399292	UNIMPL		sigpending
400293	UNIMPL		sigprocmask
401294	UNIMPL		sigsuspend
402295	UNIMPL		sigreturn
403296	NOARGS 	 	{ int|sys||__getcwd(char *bufp, size_t length); }
404297	NOARGS 	 	{ int|sys||fchroot(int fd); }
405298	UNIMPL		fhopen
406299	UNIMPL		fhstat
407300	UNIMPL		fhstatfs
408301	UNIMPL		____semctl13
409302	UNIMPL		__msgctl13
410303	UNIMPL		__shmctl13
411304	UNIMPL 	 	lchflags
412305	UNIMPL		issetugid
413306	UNIMPL		utrace
414307	UNIMPL		getcontext
415308	UNIMPL		setcontext
416309	UNIMPL		_lwp_create
417310	UNIMPL		_lwp_exit
418311	UNIMPL		_lwp_self
419312	UNIMPL		_lwp_wait
420313	UNIMPL		_lwp_suspend
421314	UNIMPL		_lwp_continue
422315	UNIMPL		_lwp_wakeup
423316	UNIMPL		_lwp_getprivate
424317	UNIMPL		_lwp_setprivate
425318	UNIMPL		_lwp_kill
426319	UNIMPL		_lwp_detach
427320	UNIMPL		_lwp_park
428321	UNIMPL		_lwp_unpark
429322	UNIMPL		_lwp_unpark_all
430323	UNIMPL		_lwp_setname
431324	UNIMPL		_lwp_getname
432325	UNIMPL		_lwp_ctl
433
434; Syscalls 326-339 reserved for LWP syscalls.
435326	UNIMPL
436327	UNIMPL
437328	UNIMPL
438329	UNIMPL
439; SA system calls.
440330	UNIMPL		sa_register
441331	UNIMPL		sa_stacks
442332	UNIMPL		sa_enable
443333	UNIMPL		sa_setconcurrency
444334	UNIMPL		sa_yield
445335	UNIMPL		sa_preempt
446336	UNIMPL 		sys_sa_unblockyield
447;
448; Syscalls 337-339 are reserved for other scheduler activation syscalls.
449;
450337	UNIMPL
451338	UNIMPL
452339	UNIMPL
453
454340	UNIMPL		__sigaction_sigtramp
455341	UNIMPL		pmc_get_info
456342	UNIMPL		pmc_control
457343	UNIMPL		rasctl
458344	UNIMPL		kqueue
459345	UNIMPL		kevent
460
461; Scheduling system calls.
462346	UNIMPL		_sched_setparam
463347	UNIMPL		_sched_getparam
464348	UNIMPL		_sched_setaffinity
465349	UNIMPL		_sched_getaffinity
466350	UNIMPL		sched_yield
467351	UNIMPL
468352	UNIMPL
469353	UNIMPL
470
471354	UNIMPL		fsync_range
472355	UNIMPL		uuidgen
473356	UNIMPL		getvfsstat
474357	UNIMPL		statvfs1
475358	UNIMPL		fstatvfs1
476359	UNIMPL		fhstatvfs1
477360	UNIMPL		extattrctl
478361	UNIMPL		extattr_set_file
479362	UNIMPL		extattr_get_file
480363	UNIMPL		extattr_delete_file
481364	UNIMPL		extattr_set_fd
482365	UNIMPL		extattr_get_fd
483366	UNIMPL		extattr_delete_fd
484367	UNIMPL		extattr_set_link
485368	UNIMPL		extattr_get_link
486369	UNIMPL		extattr_delete_link
487370	UNIMPL		extattr_list_fd
488371	UNIMPL		extattr_list_file
489372	UNIMPL		extattr_list_link
490373	UNIMPL		pselect
491374	UNIMPL		pollts
492375	UNIMPL		setxattr
493376	UNIMPL		lsetxattr
494377	UNIMPL		fsetxattr
495378	UNIMPL		getxattr
496379	UNIMPL		lgetxattr
497380	UNIMPL		fgetxattr
498381	UNIMPL		listxattr
499382	UNIMPL		llistxattr
500383	UNIMPL		flistxattr
501384	UNIMPL		removexattr
502385	UNIMPL		lremovexattr
503386	UNIMPL		fremovexattr
504387	UNIMPL		stat30
505388	UNIMPL		fstat30
506389	UNIMPL		lstat30
507390	NOARGS		{ int|linux_sys||getdents64(int fd, \
508			    struct linux_dirent64 *dent, unsigned int count); }
509391	UNIMPL		old posix_fadvise
510392	UNIMPL		fhstat
511393	UNIMPL		ntp_gettime
512394	NOARGS	 	{ int|linux_sys||socket(int domain, \
513			    int type, int protocol); }
514395	UNIMPL		getfh
515396	UNIMPL		fhopen
516397	UNIMPL		fhstatvfs1
517398	UNIMPL		fhstat
518
519; Asynchronous I/O system calls
520399	UNIMPL		aio_cancel
521400	UNIMPL		aio_error
522401	UNIMPL		aio_fsync
523402	UNIMPL		aio_read
524403	UNIMPL		aio_return
525404	UNIMPL		aio_suspend
526405	UNIMPL		aio_write
527406	UNIMPL		lio_listio
528
529407	UNIMPL
530408	UNIMPL
531409	UNIMPL
532
533410	UNIMPL		mount
534411	UNIMPL		mremap
535
536; Processor-sets system calls
537412	UNIMPL		pset_create
538413	UNIMPL		pset_destroy
539414	UNIMPL		pset_assign
540415	UNIMPL		_pset_bind
541416	UNIMPL		fadvise
542417	NOARGS  		{ int|linux_sys||select(int nd, \
543			    fd_set *in, fd_set *ou, fd_set *ex, \
544			    struct timeval50 *tv); }
545418	UNIMPL		gettimeofday
546419	UNIMPL		settimeofday
547420	NOARGS		{ int|linux_sys||utimes(const char *path, \
548			    struct linux_timeval *tv); }
549421	UNIMPL		adjtime
550422	UNIMPL		lfs_segwait
551423	NOARGS		{ int|sys|50|futimes(int fd, \
552			    const struct timeval *tptr); }
553424	NOARGS		{ int|sys|50|lutimes(const char *path, \
554			    const struct timeval *tptr); }
555425	UNIMPL		setitimer
556426	UNIMPL		getitimer
557427	UNIMPL		clock_gettime
558428	UNIMPL		clock_settime
559429	UNIMPL		clock_getres
560430	UNIMPL		nanosleep
561431	UNIMPL		__sigtimedwait
562432	UNIMPL		mq_timedsend
563433	UNIMPL		mq_timedreceive
564434	UNIMPL		_lwp_park
565435	UNIMPL		kevent
566436	UNIMPL		pselect
567437	NOARGS		{ int|linux_sys||ppoll(struct pollfd *fds, \
568			    u_int nfds, const struct linux_timespec *timeout, \
569			    const linux_sigset_t *mask);}
570438	UNIMPL		aio_suspend
571439	NOARGS  		{ int|linux_sys||stat64(const char *path, \
572			    struct linux_stat64 *sp); }
573440	NOARGS  		{ int|linux_sys||fstat64(int fd, \
574			    struct linux_stat64 *sp); }
575441	NOARGS  		{ int|linux_sys||lstat64(const char *path, \
576			    struct linux_stat64 *sp); }
577442	UNIMPL		__semctl
578443	UNIMPL		shmctl
579444	UNIMPL		msgctl
580445	UNIMPL		getrusage
581446	UNIMPL		timer_settime
582447	UNIMPL		timer_gettime
583448	UNIMPL		ntp_gettime
584449	UNIMPL		wait4
585450	NOARGS  		{ int|linux_sys||mknod(const char *path, mode_t mode, \
586			    int dev); }
587451	UNIMPL		fhstat
588
589; 452 only ever appeared in 5.99.x and can be reused after netbsd-7
590452	UNIMPL		5.99 quotactl
591453	UNIMPL		pipe2
592454	NOARGS		{ int|linux_sys||dup3(int from, int to, int flags); }
593455	UNIMPL		kqueue1
594456	UNIMPL		paccept
595457	NOARGS		{ int|linux_sys||linkat(int fd1, const char *name1, \
596			    int fd2, const char *name2, int flags); }
597458	NOARGS		{ int|sys||renameat(int fromfd, const char *from, \
598			    int tofd, const char *to); }
599459	UNIMPL		mkfifoat
600460	STD		{ int|rump_linux_sys||mknodat(int fd, const char *path, \
601			    mode_t mode, int PAD, unsigned dev); }
602461	NOARGS		{ int|sys||mkdirat(int fd, const char *path, \
603			    mode_t mode); }
604462	NOARGS		{ int|linux_sys||faccessat(int fd, const char *path, \
605			    int amode); }
606463	NOARGS		{ int|linux_sys||fchmodat(int fd, const char *path, \
607			    mode_t mode); }
608464	NOARGS		{ int|linux_sys||fchownat(int fd, const char *path, \
609			    uid_t owner, gid_t group, int flag); }
610465	UNIMPL		fexecve
611466	NOARGS		{ int|linux_sys||fstatat64(int fd, const char *path, \
612			   struct linux_stat *sp, int flag); }
613467	NOARGS		{ int|linux_sys||utimensat(int fd, const char *path, \
614			    struct linux_timespec *times, int flag); }
615468	NOARGS		{ int|linux_sys||openat(int fd, const char *path, \
616			    int flags, ... mode_t mode); }
617469	NOARGS		{ int|sys||readlinkat(int fd, const char *path, \
618			    char *buf, size_t bufsize); }
619470	NOARGS		{ int|sys||symlinkat(const char *path1, int fd, \
620			    const char *path2); }
621471	NOARGS		{ int|linux_sys||unlinkat(int fd, const char *path, \
622			    int flag); }
623472	UNIMPL		futimens
624473	UNIMPL		__quotactl
625474	UNIMPL		posix_spawn
626475	UNIMPL		recvmmsg
627476	UNIMPL		sendmmsg
628