1	$NetBSD: syscalls.master,v 1.91 2016/07/24 13:22:01 njoly Exp $
2;
3;	@(#)syscalls.master	8.1 (Berkeley) 7/19/93
4
5; NetBSD alpha COMPAT_LINUX 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 STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of
11;		the compatibility options defined in syscalls.conf.
12;
13; types:
14;	STD	always included
15;	OBSOL	obsolete, not included in system
16;	UNIMPL	unimplemented, not included in system
17;	NODEF	included, but don't define the syscall number
18;	NOARGS	included, but don't define the syscall args structure
19;	INDIR	included, but don't define the syscall args structure
20;		and allow it to be "really" varargs.
21;
22; The compat options are defined in the syscalls.conf file, and the
23; compat option name is prefixed to the syscall name.  Other than
24; that, they're like NODEF (for 'compat' options), or STD (for
25; 'libcompat' options).
26;
27; The type-dependent arguments are as follows:
28; For STD, NODEF, NOARGS, and compat syscalls:
29;	{ pseudo-proto } [alias]
30; For other syscalls:
31;	[comment]
32;
33; #ifdef's, etc. may be included, and are copied to the output files.
34; #include's are copied to the syscall names and switch definition files only.
35;
36; (ERH: 3/18/00)
37;
38; XXX XAX things to do:
39;		make sure non-linux_foo() matches real linux syscalls.
40;			create new linux_foo functions otherwise
41;			(i.e. reboot, msgrcv? )
42;		make sure linux_foo() matches expected prototypes in .c files.
43;		kill not used functions.  (ifdef the actual code)
44;		make linux_sys_sigreturn in linux_machdep.c use frame.extramask
45;
46; NOT USED = This syscall is not really used in Linux, except in its
47;		osf compat mode.  Since Linux binaries shouldn't ever
48;		call it and osf binaries run under a different emulation,
49;		it shouldn't matter that the linux version of the
50;		function might not DTRT.  Define it anyway so we
51;		don't have to split off or ifdef the associated function.
52; 		    A bit better might be to have makesyscalls identify this
53; 		as "define but don't include in table" so it doesn't actually
54; 		ever get called.
55; UNIMPL <blank> = not implemented here nor in linux source
56; UNIMPL osf_*   = osf functions implemented in linux, not here.
57;
58
59#if defined(_KERNEL_OPT)
60#include "opt_sysv.h"
61#endif
62
63#include <sys/param.h>
64#include <sys/poll.h>
65#include <sys/systm.h>
66#include <sys/signal.h>
67#include <sys/mount.h>
68#include <sys/syscallargs.h>
69
70#include <compat/linux/common/linux_types.h>
71#include <compat/linux/common/linux_signal.h>
72#include <compat/linux/common/linux_siginfo.h>
73#include <compat/linux/common/linux_ipc.h>
74#include <compat/linux/common/linux_msg.h>
75#include <compat/linux/common/linux_sem.h>
76#include <compat/linux/common/linux_shm.h>
77#include <compat/linux/common/linux_mmap.h>
78;#include <compat/linux/common/linux_machdep.h>
79
80#include <compat/linux/linux_syscallargs.h>
81
82%%
83
840	NOARGS		{ int|linux_sys||nosys(void); } syscall
851	STD		{ int|linux_sys||exit(int rval); }
862	NOARGS		{ int|sys||fork(void); }
873	NOARGS		{ ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
884	NOARGS		{ ssize_t|sys||write(int fd, const void *buf, \
89			    size_t nbyte); }
905	UNIMPL
916	NOARGS		{ int|sys||close(int fd); }
927	NODEF		{ int|osf1_sys||wait4(int pid, int *status, \
93			    int options, struct osf1_rusage *rusage); }
94;8	ALIAS		osf1_sys_old_creat, NOT USED
958	STD		{ int|linux_sys||creat(const char *path, linux_umode_t mode); }
969	NOARGS		{ int|sys||link(const char *path, const char *link); }
9710	STD		{ int|linux_sys||unlink(const char *path); }
9811	UNIMPL
9912	NOARGS		{ int|sys||chdir(const char *path); }
10013	NOARGS		{ int|sys||fchdir(int fd); }
10114	STD		{ int|linux_sys||mknod(const char *path, linux_umode_t mode, \
102			    unsigned dev); }
10315	NOARGS		{ int|sys||chmod(const char *path, int mode); }
10416	NOARGS		{ int|sys||__posix_chown(const char *path, uid_t uid, \
105			    gid_t gid); }
106;17	ALIAS		osf1_sys_brk
10717	STD		{ int|linux_sys||brk(char *nsize); }
10818	UNIMPL
10919	NOARGS		{ long|compat_43_sys||lseek(int fd, long offset, \
110			    int whence); }
11120	NOARGS		{ pid_t|sys||getpid_with_ppid(void); }
11221	NODEF		{ int|osf1_sys||mount(int type, const char *path, \
113			    int flags, void *data); }
11422	UNIMPL		umount
11523	NOARGS		{ int|sys||setuid(uid_t uid); }
11624	NOARGS		{ uid_t|sys||getuid_with_euid(void); }
11725	UNIMPL
11826	STD		{ int|linux_sys||ptrace(long request, long pid, \
119			  long addr, long data); }
12027	UNIMPL
12128	UNIMPL
12229	UNIMPL
12330	UNIMPL
12431	UNIMPL
12532	UNIMPL
12633	NOARGS		{ int|sys||access(const char *path, int flags); }
12734	UNIMPL
12835	UNIMPL
12936	NOARGS		{ int|sys||sync(void); }
13037	STD		{ int|linux_sys||kill(int pid, int signum); }
13138	UNIMPL
13239	NOARGS		{ int|sys||setpgid(int pid, int pgid); }
13340	UNIMPL
13441	NOARGS		{ int|sys||dup(int fd); }
13542	NOARGS		{ int|linux_sys||pipe(void); }
13643	NODEF		{ int|osf1_sys||set_program_attributes( \
137			    void *taddr, unsigned long tsize, \
138			    void *daddr, unsigned long dsize); }
13944	UNIMPL
14045	STD		{ int|linux_sys||open(const char *path, int flags, \
141			    linux_umode_t mode); }
14246	UNIMPL
14347	NOARGS		{ gid_t|sys||getgid_with_egid(void); }
144; ALIAS osf1_sys_sigprocmask(int how, unsigned long mask);
145; XXX <- copied from osf1/syscalls.master
14648	NOARGS		{ int|compat_13_sys||sigprocmask(int how, \
147			    sigset13_t mask); }
14849	UNIMPL
14950	UNIMPL
15051	NOARGS		{ int|sys||acct(const char *path); }
15152	STD		{ int|linux_sys||sigpending(linux_old_sigset_t *set); }
15253	UNIMPL
15354	STD		{ int|linux_sys||ioctl(int fd, u_long com, \
154			    void *data); }
15555	UNIMPL
15656	UNIMPL
15757	NOARGS		{ int|sys||symlink(const char *path, const char *to); }
15858	NOARGS		{ ssize_t|sys||readlink(const char *path, char *buf, \
159			    int count); }
16059	NOARGS		{ int|sys||execve(const char *path, char **argp, \
161			    char **envp); }
16260	NOARGS		{ mode_t|sys||umask(mode_t newmask); }
16361	NOARGS		{ int|sys||chroot(const char *path); }
16462	UNIMPL
16563	NOARGS		{ int|sys||getpgrp(void); }
16664	NOARGS		{ int|compat_43_sys||getpagesize(void); }
16765	UNIMPL
16866	NOARGS		{ int|sys|14|vfork(void); }
16967	STD		{ int|linux_sys||stat(const char *path, \
170			    struct linux_stat *sp); }
17168	STD		{ int|linux_sys||lstat(const char *path, \
172			    struct linux_stat *sp); }
17369	UNIMPL
17470	UNIMPL
175;71	ALIAS		osf1_sys_mmap
17671	NOARGS		{ int|linux_sys||mmap(unsigned long addr, size_t len, \
177			    int prot, int flags, int fd, linux_off_t offset); }
17872	UNIMPL
17973	NOARGS		{ int|sys||munmap(void *addr, size_t len); }
18074	STD		{ int|linux_sys||mprotect(const void *start, \
181			    unsigned long len, int prot); }
18275	NOARGS		{ int|sys||madvise(void *addr, size_t len, int behav); }
18376	UNIMPL		vhangup
18477	UNIMPL
18578	UNIMPL
18679	NOARGS		{ int|sys||getgroups(int gidsetsize, gid_t *gidset); }
18780	NOARGS		{ int|sys||setgroups(int gidsetsize, const gid_t *gidset); }
18881	UNIMPL
18982	UNIMPL		setpgrp
19083	NODEF		{ int|osf1_sys||setitimer(int which, \
191			    struct osf1_itimerval *itv, \
192			    struct osf1_itimerval *oitv); }
19384	UNIMPL
19485	UNIMPL
19586	UNIMPL		osf1_sys_getitimer
19687	NOARGS		{ int|compat_43_sys||gethostname(char *hostname, \
197			    u_int len); }
19888	NOARGS		{ int|compat_43_sys||sethostname(char *hostname, \
199			    u_int len); }
20089	UNIMPL		getdtablesize
20190	NOARGS		{ int|sys||dup2(int from, int to); }
20291	STD		{ int|linux_sys||fstat(int fd, struct linux_stat *sp); }
20392	STD		{ int|linux_sys||fcntl(int fd, int cmd, void *arg); }
20493	NODEF		{ int|osf1_sys||select(u_int nd, fd_set *in, \
205			    fd_set *ou, fd_set *ex, struct osf1_timeval *tv); }
20694	NOARGS		{ int|sys||poll(struct pollfd *fds, u_int nfds, \
207			    int timeout); }
20895	NOARGS		{ int|sys||fsync(int fd); }
20996	NOARGS		{ int|sys||setpriority(int which, int who, int prio); }
21097	STD		{ int|linux_sys||socket(int domain, int type, \
211			    int protocol); }
21298	STD		{ int|linux_sys||connect(int s, \
213			    const struct osockaddr *name, \
214			    unsigned int namelen); }
21599	STD		{ int|linux_sys||accept(int s, \
216				struct osockaddr *name, int *anamelen); }
217;100	ALIAS		osf1_sys_getpriority
218100	STD		{ int|linux_sys||getpriority(int which, int who); }
219101	STD		{ int|linux_sys||send(int s, void *buf, int len, \
220				int flags); }
221102	STD		{ int|linux_sys||recv(int s, void *buf, int len, \
222				int flags); }
223103	STD		{ int|linux_sys||sigreturn(struct linux_sigframe *sfp); }
224104	STD		{ int|linux_sys||bind(int s,	     \
225				const struct osockaddr *name, \
226				unsigned int namelen); }
227105	STD		{ int|linux_sys||setsockopt(int s, int level, \
228				int optname, void *optval, int optlen); }
229106	NOARGS		{ int|sys||listen(int s, int backlog); }
230107	UNIMPL
231108	UNIMPL
232109	UNIMPL
233110	UNIMPL
234
235111	STD		{ int|linux_sys||sigsuspend(void *restart, \
236			    int oldmask, int mask); }
237;112	ALIAS		osf1_sys_sigstack
238112	NOARGS		{ int|compat_43_sys||sigstack(struct sigstack *nss, \
239			    struct sigstack *oss); }
240113	STD		{ ssize_t|linux_sys||recvmsg(int s, \
241			    struct linux_msghdr *msg, int flags); }
242114	STD		{ ssize_t|linux_sys||sendmsg(int s, \
243				const struct linux_msghdr *msg, int flags); }
244115	UNIMPL
245116	NODEF		{ int|osf1_sys||gettimeofday(struct osf1_timeval *tv, \
246			    struct osf1_timezone *tzp); }
247117	NODEF		{ int|osf1_sys||getrusage(int who, \
248			    struct osf1_rusage *rusage); }
249118	STD		{ int|linux_sys||getsockopt(int s, int level, \
250				int optname, void *optval, int *optlen); }
251119	UNIMPL
252120	NOARGS		{ ssize_t|sys||readv(int fd, const struct iovec *iovp, \
253				int iovcnt); }
254121	NOARGS		{ ssize_t|sys||writev(int fd, const struct iovec *iovp, \
255				int iovcnt); }
256122	NODEF		{ int|osf1_sys||settimeofday(struct osf1_timeval *tv, \
257			    struct osf1_timezone *tzp); }
258123	NOARGS		{ int|sys||__posix_fchown(int fd, uid_t uid, \
259			    gid_t gid); }
260124	NOARGS		{ int|sys||fchmod(int fd, linux_umode_t mode); }
261125	STD		{ int|linux_sys||recvfrom(int s, void *buf, int len, \
262				int flags, struct osockaddr *from, \
263				int *fromlenaddr); }
264126	NOARGS		{ int|sys||setreuid(uid_t ruid, uid_t euid); }
265127	NOARGS		{ int|sys||setregid(gid_t rgid, gid_t egid); }
266128	NOARGS		{ int|sys||__posix_rename(const char *from, const char *to); }
267129	NOARGS		{ int|compat_43_sys||truncate(const char *path, \
268				long length); }
269130	NOARGS		{ int|compat_43_sys||ftruncate(int fd, long length); }
270131	NOARGS		{ int|sys||flock(int fd, int how); }
271132	NOARGS		{ int|sys||setgid(gid_t gid); }
272133	STD		{ int|linux_sys||sendto(int s, void *msg, int len, \
273				int flags, struct osockaddr *to, int tolen); }
274134	NOARGS		{ int|sys||shutdown(int s, int how); }
275135	STD		{ int|linux_sys||socketpair(int domain, int type, \
276				int protocol, int *rsv); }
277136	NOARGS		{ int|sys||mkdir(const char *path, linux_umode_t mode); }
278137	NOARGS		{ int|sys||rmdir(const char *path); }
279138	NODEF		{ int|osf1_sys||utimes(const char *path, \
280			    const struct osf1_timeval *tptr); }
281139	UNIMPL
282140	UNIMPL
283141	STD		{ int|linux_sys||getpeername(int fdes, \
284				void *asa, int *alen); }
285142	UNIMPL
286143	UNIMPL
287144	STD		{ int|linux_sys||getrlimit(int which, \
288			    struct orlimit *rlp); }
289145	STD		{ int|linux_sys||setrlimit(int which, \
290			    const struct orlimit *rlp); }
291146	UNIMPL
292147	NOARGS		{ int|sys||setsid(void); }
293148	UNIMPL		quotactl
294149	UNIMPL
295150	STD		{ int|linux_sys||getsockname(int fdec, \
296				void *asa, int *alen); }
297151	UNIMPL
298152	UNIMPL
299153	UNIMPL
300154	UNIMPL
301155	UNIMPL
302;156	ALIAS		osf1_sys_sigaction
303156	STD		{ int|linux_sys||sigaction(int signum, \
304				const struct linux_old_sigaction *nsa, \
305				struct linux_old_sigaction *osa); }
306157	UNIMPL
307158	UNIMPL
308;159	ALIAS		osf1_sys_getdirentries
309159	NOARGS		{ int|compat_43_sys||getdirentries(int fd, char *buf, \
310			    u_int count, long *basep); }
311160	NODEF		{ int|osf1_sys||statfs(const char *path, \
312			    struct osf1_statfs *buf, int len); }
313161	NODEF		{ int|osf1_sys||fstatfs(int fd, \
314			    struct osf1_statfs *buf, int len); }
315162	UNIMPL
316163	UNIMPL
317164	UNIMPL
318;165	ALIAS		osf1_sys_getdomainname
319165	NOARGS		{ int|compat_09_sys||getdomainname(char *domainname, \
320			    int len); }
321166	STD		{ int|linux_sys||setdomainname(char *domainname, \
322                            int len); }
323167	UNIMPL
324168	UNIMPL
325169	UNIMPL
326170	UNIMPL
327171	UNIMPL
328172	UNIMPL
329173	UNIMPL
330174	UNIMPL
331175	UNIMPL
332176	UNIMPL
333177	UNIMPL
334178	UNIMPL
335179	UNIMPL
336180	UNIMPL
337181	UNIMPL
338182	UNIMPL
339183	UNIMPL
340184	UNIMPL
341185	UNIMPL
342186	UNIMPL
343187	UNIMPL
344188	UNIMPL
345189	UNIMPL
346190	UNIMPL
347; XXX: Dunno
348191	STD		{ int|linux_sys||ugetrlimit(int which, \
349			    struct rlimit *rlp); }
350192	UNIMPL		mmap2
351193	UNIMPL
352194	UNIMPL
353195	UNIMPL
354196	UNIMPL
355197	UNIMPL
356198	UNIMPL
357199	UNIMPL		osf1_sys_swapon
358#ifdef SYSVMSG
359200	NOARGS		{ int|linux_sys||msgctl(int msqid, int cmd, \
360			    struct linux_msqid_ds *buf); }
361201	NOARGS		{ int|sys||msgget(key_t key, int msgflg); }
362202	NOARGS		{ ssize_t|sys||msgrcv(int msqid, void *msgp, \
363			    size_t msgsz, long msgtyp, int msgflg); }
364203	NOARGS		{ int|sys||msgsnd(int msqid, void *msgp, size_t msgsz, \
365			    int msgflg); }
366#else
367200	UNIMPL		msgctl
368201	UNIMPL		msgget
369202	UNIMPL		msgrcv
370203	UNIMPL		msgsnd
371#endif
372#ifdef SYSVSEM
373204	NOARGS		{ int|linux_sys||semctl(int semid, int semnum, \
374			    int cmd, union linux_semun arg); }
375205	NOARGS		{ int|sys||semget(key_t key, int nsems, int semflg); }
376206	NOARGS		{ int|sys||semop(int semid, struct sembuf *sops, \
377			    size_t nsops); }
378#else
379204	UNIMPL		semctl
380205	UNIMPL		semget
381206	UNIMPL		semop
382#endif
383;207	ALIAS		osf1_sys_utsname
384207	STD		{ int|linux_sys||olduname(struct linux_old_utsname *up); }
385208	NOARGS		{ int|sys||__posix_lchown(const char *path, uid_t uid, \
386			    gid_t gid); }
387#ifdef SYSVSHM
388209	NOARGS		{ int|linux_sys||shmat(int shmid, void *shmaddr, \
389			    int shmflg, u_long *raddr); }
390210	NOARGS		{ int|linux_sys||shmctl(int shmid, int cmd, \
391			    struct linux_shmid_ds *buf); }
392211	NOARGS		{ int|sys||shmdt(const void *shmaddr); }
393212	NOARGS		{ int|linux_sys||shmget(key_t key, size_t size, int shmflg); }
394#else
395209	UNIMPL		shmat
396210	UNIMPL		shmctl
397211	UNIMPL		shmdt
398212	UNIMPL		shmget
399#endif
400213	UNIMPL
401214	UNIMPL
402215	UNIMPL
403216	UNIMPL
404217	NOARGS		{ int|sys|13|msync(void *addr, size_t len, int flags); }
405218	UNIMPL
406219	UNIMPL
407220	UNIMPL
408221	UNIMPL
409222	UNIMPL
410223	UNIMPL
411224	UNIMPL
412225	UNIMPL
413226	UNIMPL
414227	UNIMPL
415228	UNIMPL
416229	UNIMPL
417230	UNIMPL
418231	UNIMPL
419232	UNIMPL
420233	NOARGS		{ pid_t|sys||getpgid(pid_t pid); }
421234	NOARGS		{ pid_t|sys||getsid(pid_t pid); }
422235	UNIMPL		sigaltstack
423236	UNIMPL
424237	UNIMPL
425238	UNIMPL
426239	UNIMPL
427240	UNIMPL
428241	NODEF		{ int|osf1_sys||sysinfo(int cmd, char buf, long len); }
429242	UNIMPL
430243	UNIMPL
431244	UNIMPL		osf1_sys_proplist_syscall
432245	UNIMPL
433246	UNIMPL
434247	UNIMPL
435248	UNIMPL
436249	UNIMPL
437250	UNIMPL
438251	NODEF		{ int|osf1_sys||usleep_thread( \
439			    struct osf1_timeval *sleep, \
440			    struct osf1_timeval *slept); }
441252	UNIMPL
442253	UNIMPL
443254	UNIMPL
444255	UNIMPL		sysfs
445256	NODEF		{ int|osf1_sys||getsysinfo(u_long op, void *buffer, \
446			    u_long nbytes, void *arg, u_long flag); }
447257	NODEF		{ int|osf1_sys||setsysinfo(u_long op, void *buffer, \
448			    u_long nbytes, void *arg, u_long flag); }
449258	UNIMPL
450259	UNIMPL
451260	UNIMPL
452; This entry doesn't exist in the Alpha linux syscall table but the function is
453; implemented and used on other ports.
454261	STD		{ int|linux_sys||fdatasync(int fd); }
455262	UNIMPL
456263	UNIMPL
457264	UNIMPL
458265	UNIMPL
459266	UNIMPL
460267	UNIMPL
461268	UNIMPL
462269	UNIMPL
463270	UNIMPL
464271	UNIMPL
465272	UNIMPL
466273	UNIMPL
467274	UNIMPL
468275	UNIMPL
469276	UNIMPL
470277	UNIMPL
471278	UNIMPL
472279	UNIMPL
473280	UNIMPL
474281	UNIMPL
475282	UNIMPL
476283	UNIMPL
477284	UNIMPL
478285	UNIMPL
479286	UNIMPL
480287	UNIMPL
481288	UNIMPL
482289	UNIMPL
483290	UNIMPL
484291	UNIMPL
485292	UNIMPL
486293	UNIMPL
487294	UNIMPL
488295	UNIMPL
489296	UNIMPL
490297	UNIMPL
491298	UNIMPL
492299	UNIMPL
493300	UNIMPL		bdflush
494301	UNIMPL		sethae
495302	UNIMPL		mount
496303	UNIMPL		old_adjtimex
497304	STD		{ int|linux_sys||swapoff(const char *path); }
498305	STD		{ int|linux_sys||getdents(int fd, \
499			    struct linux_dirent *dent, unsigned int count); }
500306	UNIMPL		alpha_create_module
501307	UNIMPL		init_module
502308	UNIMPL		delete_module
503309	UNIMPL		get_kernel_syms
504310	UNIMPL		syslog
505311	STD		{ int|linux_sys||reboot(int magic1, int magic2, \
506			    int cmd, void *arg); }
507312	STD		{ int|linux_sys||clone(int flags, void *stack, \
508			    void *parent_tidptr, void *child_tidptr, void *tls); }
509#ifdef EXEC_AOUT
510313	STD		{ int|linux_sys||uselib(const char *path); }
511#else
512313	UNIMPL		sys_uselib
513#endif
514314	NOARGS		{ int|sys||mlock(const void *addr, size_t len); }
515315	NOARGS		{ int|sys||munlock(const void *addr, size_t len); }
516316	NOARGS		{ int|sys||mlockall(int flags); }
517317	NOARGS		{ int|sys||munlockall(void); }
518318	STD		{ int|linux_sys||sysinfo(struct linux_sysinfo *arg); }
519319	STD		{ int|linux_sys||__sysctl(struct linux___sysctl *lsp); }
520320	UNIMPL		idle
521321	UNIMPL		oldumount
522322	STD		{ int|linux_sys||swapon(const char *name); }
523323	STD		{ int|linux_sys||times(struct times *tms); }
524324	STD		{ int|linux_sys||personality(unsigned long per); }
525325	STD		{ int|linux_sys||setfsuid(uid_t uid); }
526326	STD		{ int|linux_sys||setfsgid(gid_t gid); }
527327	UNIMPL		ustat
528328	STD		{ int|linux_sys||statfs(const char *path, \
529			    struct linux_statfs *sp); }
530329	STD		{ int|linux_sys||fstatfs(int fd, \
531			    struct linux_statfs *sp); }
532330	STD		{ int|linux_sys||sched_setparam(pid_t pid, \
533			    const struct linux_sched_param *sp); }
534331	STD		{ int|linux_sys||sched_getparam(pid_t pid, \
535			    struct linux_sched_param *sp); }
536332	STD		{ int|linux_sys||sched_setscheduler(pid_t pid, \
537			    int policy, const struct linux_sched_param *sp); }
538333	STD		{ int|linux_sys||sched_getscheduler(pid_t pid); }
539334	STD		{ int|linux_sys||sched_yield(void); }
540335	STD		{ int|linux_sys||sched_get_priority_max(int policy); }
541336	STD		{ int|linux_sys||sched_get_priority_min(int policy); }
542337	UNIMPL		sched_rr_get_interval
543338	UNIMPL		afs_syscall
544339	STD		{ int|linux_sys||uname(struct linux_utsname *up); }
545340	STD		{ int|linux_sys||nanosleep( \
546			    const struct linux_timespec *rqtp, \
547			    struct linux_timespec *rmtp); }
548341	STD		{ void *|linux_sys||mremap(void *old_address, \
549			    size_t old_size, size_t new_size, u_long flags); }
550342	UNIMPL		nfsservctl
551343	STD		{ int|linux_sys||setresuid(uid_t ruid, uid_t euid, \
552			    uid_t suid); }
553344	STD		{ int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \
554			    uid_t *suid); }
555345	UNIMPL		pciconfig_read
556346	UNIMPL		pciconfig_write
557347	UNIMPL		query_module
558348	UNIMPL		prctl
559349	STD		{ int|linux_sys||pread(int fd, char *buf, \
560			    size_t nbyte, off_t offset); }
561350	STD		{ int|linux_sys||pwrite(int fd, char *buf, \
562			    size_t nbyte, off_t offset); }
563351	STD		{ int|linux_sys||rt_sigreturn( \
564				struct linux_rt_sigframe *sfp); }
565352	STD		{ int|linux_sys||rt_sigaction(int signum, \
566				const struct linux_sigaction *nsa, \
567				struct linux_sigaction *osa, \
568				size_t sigsetsize); }
569353	STD		{ int|linux_sys||rt_sigprocmask(int how, \
570			    const linux_sigset_t *set, \
571			    linux_sigset_t *oset, \
572			    size_t sigsetsize); }
573354	STD		{ int|linux_sys||rt_sigpending( \
574			    linux_sigset_t *set, \
575			    size_t sigsetsize); }
576355	STD		{ int|linux_sys||rt_sigtimedwait( \
577			    const linux_sigset_t *set, \
578			    linux_siginfo_t *info, \
579			    const struct linux_timespec *timeout); }
580356	STD		{ int|linux_sys||rt_queueinfo(int pid, int signum, \
581			    linux_siginfo_t *uinfo); }
582357	STD		{ int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \
583			    size_t sigsetsize); }
584358	STD		{ int|linux_sys||select(int nfds, fd_set *readfds, \
585			    fd_set *writefds, fd_set *exceptfds, \
586			    struct timeval50 *timeout); }
587359	STD		{ int|linux_sys||gettimeofday(struct timeval50 *tp, \
588			    struct timezone *tzp); }
589360	STD		{ int|linux_sys||settimeofday(struct timeval50 *tp, \
590			    struct timezone *tzp); }
591361	NOARGS		{ int|compat_50_sys||getitimer(int which, \
592			    struct itimerval50 *itv); }
593362	NOARGS		{ int|compat_50_sys||setitimer(int which, \
594			    const struct itimerval50 *itv, \
595			    struct itimerval50 *oitv); }
596363	NOARGS		{ int|compat_50_sys||utimes(const char *path, \
597			    const struct timeval50 *tptr); }
598364	NOARGS		{ int|compat_50_sys||getrusage(int who, \
599			    struct rusage50 *rusage); }
600365	STD		{ int|linux_sys||wait4(int pid, int *status, \
601			    int options, struct rusage50 *rusage); }
602366	UNIMPL		adjtimex
603367	NOARGS		{ int|sys||__getcwd(char *bufp, size_t length); }
604368	UNIMPL		capget
605369	UNIMPL		capset
606370	UNIMPL		sendfile
607371	UNIMPL		setresgid
608372	UNIMPL		getresgid
609373	UNIMPL		sys_dipc
610374	UNIMPL		pivot_root
611375	NOARGS		{ int|sys||mincore(void *addr, size_t len, char *vec); }
612376	UNIMPL		pciconfig_iobase
613377	STD		{ int|linux_sys||getdents64(int fd, \
614			    struct linux_dirent64 *dent, unsigned int count); }
615378	NOARGS		{ pid_t|linux_sys||gettid(void); }
616379	UNIMPL		readahead
617380	UNIMPL		/* unused */
618381	STD		{ int|linux_sys||tkill(int tid, int sig); }
619382	STD		{ int|linux_sys||setxattr(char *path, char *name, \
620			    void *value, size_t size, int flags); }
621383	STD		{ int|linux_sys||lsetxattr(char *path, char *name, \
622			    void *value, size_t size, int flags); }
623384	STD		{ int|linux_sys||fsetxattr(int fd, char *name, \
624			    void *value, size_t size, int flags); }
625385	STD		{ ssize_t|linux_sys||getxattr(char *path, char *name, \
626			    void *value, size_t size); }
627386	STD		{ ssize_t|linux_sys||lgetxattr(char *path, char *name, \
628			    void *value, size_t size); }
629387	STD		{ ssize_t|linux_sys||fgetxattr(int fd, char *name, \
630			    void *value, size_t size); }
631388	STD		{ ssize_t|linux_sys||listxattr(char *path, char *list, \
632			    size_t size); }
633389	STD		{ ssize_t|linux_sys||llistxattr(char *path, char *list, \
634			    size_t size); }
635390	STD		{ ssize_t|linux_sys||flistxattr(int fd, char *list, \
636			    size_t size); }
637391	STD		{ int|linux_sys||removexattr(char *path, char *name); }
638392	STD		{ int|linux_sys||lremovexattr(char *path, char *name); }
639393	STD		{ int|linux_sys||fremovexattr(int fd, char *name); }
640394	STD		{ int|linux_sys||futex(int *uaddr, int op, int val, \
641			    const struct linux_timespec *timeout, int *uaddr2, \
642			    int val3); }
643395	STD		{ int|linux_sys||sched_setaffinity(pid_t pid, \
644			    unsigned int len, unsigned long *mask); }
645396	STD		{ int|linux_sys||sched_getaffinity(pid_t pid, \
646			    unsigned int len, unsigned long *mask); }
647397	UNIMPL		tuxcall
648398	UNIMPL		io_setup
649399	UNIMPL		io_destroy
650400	UNIMPL		io_getevents
651401	UNIMPL		io_submit
652402	UNIMPL		io_cancel
653403	UNIMPL		/* unused */
654404	UNIMPL		/* unused */
655405	STD		{ int|linux_sys||exit_group(int error_code); }
656406	UNIMPL		lookup_dcookie
657407	UNIMPL		sys_epoll_create
658408	UNIMPL		sys_epoll_ctl
659409	UNIMPL		sys_epoll_wait
660410	UNIMPL		remap_file_pages
661411	STD		{ int|linux_sys||set_tid_address(int *tid); }
662412	UNIMPL		restart_syscall
663413	STD		{ int|linux_sys||fadvise64(int fd, off_t offset, \
664			    size_t len, int advice); }
665414	UNIMPL		timer_create
666415	UNIMPL		timer_settime
667416	UNIMPL		timer_gettime
668417	UNIMPL		timer_getoverrun
669418	UNIMPL		timer_delete
670419	STD		{ int|linux_sys||clock_settime(clockid_t which, \
671			    struct linux_timespec *tp); }
672420	STD		{ int|linux_sys||clock_gettime(clockid_t which, \
673			    struct linux_timespec *tp); }
674421	STD		{ int|linux_sys||clock_getres(clockid_t which, \
675			    struct linux_timespec *tp); }
676422	STD		{ int|linux_sys||clock_nanosleep(clockid_t which, \
677			    int flags, struct linux_timespec *rqtp, \
678			    struct linux_timespec *rmtp); }
679423	UNIMPL		semtimedop
680424	STD		{ int|linux_sys||tgkill(int tgid, int tid, int sig); }
681425	STD		{ int|linux_sys||stat64(const char *path, \
682			    struct linux_stat64 *sp); }
683426	STD		{ int|linux_sys||lstat64(const char *path, \
684			    struct linux_stat64 *sp); }
685427	STD		{ int|linux_sys||fstat64(int fd, \
686			    struct linux_stat64 *sp); }
687428	UNIMPL		vserver
688429	UNIMPL		mbind
689430	UNIMPL		get_mempolicy
690431	UNIMPL		set_mempolicy
691432	UNIMPL		mq_open
692433	UNIMPL		mq_unlink
693434	UNIMPL		mq_timedsend
694435	UNIMPL		mq_timedreceive
695436	UNIMPL		mq_notify
696437	UNIMPL		mq_getsetattr
697438	UNIMPL		waitid
698439	UNIMPL		add_key
699440	UNIMPL		request_key
700441	UNIMPL		keyctl
701442	UNIMPL		ioprio_set
702443	UNIMPL		ioprio_get
703444	UNIMPL		inotify_init
704445	UNIMPL		inotify_add_watch
705446	UNIMPL		inotify_rm_watch
706447	UNIMPL		fdatasync
707448	UNIMPL		kexec_load
708449	UNIMPL		migrate_pages
709450	STD 		{ int|linux_sys||openat(int fd, const char *path, \
710			    int flags, ... linux_umode_t mode); }
711451	NOARGS		{ int|sys||mkdirat(int fd, const char *path, \
712			    linux_umode_t mode); }
713452	STD		{ int|linux_sys||mknodat(int fd, const char *path, \
714			    linux_umode_t mode, unsigned dev); }
715453	STD		{ int|linux_sys||fchownat(int fd, const char *path, \
716			    uid_t owner, gid_t group, int flag); }
717454	UNIMPL		futimesat
718455	STD		{ int|linux_sys||fstatat64(int fd, const char *path, \
719			    struct linux_stat64 *sp, int flag); }
720456	STD		{ int|linux_sys||unlinkat(int fd, const char *path, \
721			    int flag); }
722457	NOARGS		{ int|sys||renameat(int fromfd, const char *from, \
723			    int tofd, const char *to); }
724458	STD		{ int|linux_sys||linkat(int fd1, const char *name1, \
725			    int fd2, const char *name2, int flags); }
726459	NOARGS		{ int|sys||symlinkat(const char *path1, int fd, \
727			    const char *path2); }
728460	NOARGS		{ ssize_t|sys||readlinkat(int fd, const char *path, \
729			    char *buf, size_t bufsize); }
730461	STD		{ int|linux_sys||fchmodat(int fd, const char *path, \
731			    linux_umode_t mode); }
732462	STD		{ int|linux_sys||faccessat(int fd, const char *path, \
733			    int amode); }
734463	UNIMPL		pselect6
735464	STD		{ int|linux_sys||ppoll(struct pollfd *fds, u_int nfds, \
736			    struct linux_timespec *timeout, \
737			    linux_sigset_t *sigset); }
738465	UNIMPL		unshare
739466	STD		{ int|linux_sys||set_robust_list( \
740			    struct linux_robust_list_head *head, size_t len); }
741467	STD		{ int|linux_sys||get_robust_list(int pid, \
742			    struct linux_robust_list_head **head, \
743			    size_t *len); }
744468	UNIMPL		splice
745469	UNIMPL		sync_file_range
746470	UNIMPL		tee
747471	UNIMPL		vmsplice
748472	UNIMPL		move_pages
749473	UNIMPL		getcpu
750474	UNIMPL		epoll_wait
751475	STD		{ int|linux_sys||utimensat(int fd, const char *path, \
752			    struct linux_timespec *times, int flag); }
753476	UNIMPL		signalfd
754477	UNIMPL		timerfd
755478	UNIMPL		eventfd
756479	UNIMPL		recvmmsg
757480	UNIMPL		fallocate
758481	UNIMPL		timerfd_create
759482	UNIMPL		timerfd_settime
760483	UNIMPL		timerfd_gettime
761484	UNIMPL		signalfd4
762485	UNIMPL		eventfd2
763486	UNIMPL		epoll_create1
764487	STD		{ int|linux_sys||dup3(int from, int to, int flags); }
765488	STD		{ int|linux_sys||pipe2(int *pfds, int flags); }
766489	UNIMPL		inotify_init1
767490	UNIMPL		preadv
768491	UNIMPL		pwritev
769492	UNIMPL		rt_tgsigqueueinfo
770493	UNIMPL		perf_counter_open
771