1	$NetBSD: syscalls.master,v 1.41 2002/04/10 18:18:26 christos 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;		fix getfsuid in linux_misc.c
45;		make linux_sys_sigreturn in linux_machdep.c use frame.extramask
46;
47; NOT USED = This syscall is not really used in Linux, except in its
48;		osf compat mode.  Since Linux binaries shouldn't ever
49;		call it and osf binaries run under a different emulation,
50;		it shouldn't matter that the linux version of the
51;		function might not DTRT.  Define it anyway so we
52;		don't have to split off or ifdef the associated function.
53; 		    A bit better might be to have makesyscalls identify this
54; 		as "define but don't include in table" so it doesn't actually
55; 		ever get called.
56; UNIMPL <blank> = not implemented here nor in linux source
57; UNIMPL osf_*   = osf functions implemented in linux, not here.
58;
59
60#if defined(_KERNEL_OPT)
61#include "opt_sysv.h"
62#include "opt_compat_43.h"
63#include "opt_compat_osf1.h"
64#endif
65
66#include <sys/param.h>
67#include <sys/poll.h>
68#include <sys/systm.h>
69#include <sys/signal.h>
70#include <sys/mount.h>
71#include <sys/syscallargs.h>
72
73#include <compat/linux/common/linux_types.h>
74#include <compat/linux/common/linux_signal.h>
75#include <compat/linux/common/linux_siginfo.h>
76#include <compat/linux/common/linux_ipc.h>
77#include <compat/linux/common/linux_msg.h>
78#include <compat/linux/common/linux_sem.h>
79#include <compat/linux/common/linux_shm.h>
80#include <compat/linux/common/linux_mmap.h>
81;#include <compat/linux/common/linux_machdep.h>
82
83#include <compat/linux/linux_syscallargs.h>
84
85%%
86
870	NOARGS		{ int linux_sys_nosys(void); } syscall
881	NOARGS		{ int sys_exit(int rval); }
892	NOARGS		{ int sys_fork(void); }
903	NOARGS		{ int sys_read(int fd, void *buf, size_t nbyte); }
914	NOARGS		{ int sys_write(int fd, const void *buf, size_t nbyte); }
925	UNIMPL
936	NOARGS		{ int sys_close(int fd); }
947	NODEF		{ int osf1_sys_wait4(int pid, int *status, \
95			    int options, struct osf1_rusage *rusage); }
96;8	ALIAS		osf1_sys_old_creat, NOT USED
978	STD		{ int linux_sys_creat(const char *path, mode_t mode); }
989	STD		{ int linux_sys_link(const char *path, const char *link); }
9910	STD		{ int linux_sys_unlink(const char *path); }
10011	UNIMPL
10112	STD		{ int linux_sys_chdir(const char *path); }
10213	NOARGS		{ int sys_fchdir(int fd); }
10314	STD		{ int linux_sys_mknod(const char *path, int mode, int dev); }
10415	STD		{ int linux_sys_chmod(const char *path, int mode); }
10516	NOARGS		{ int sys___posix_chown(const char *path, int uid, int 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, caddr_t 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	STD		{ int linux_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			    caddr_t taddr, unsigned long tsize, \
138			    caddr_t daddr, unsigned long dsize); }
13944	UNIMPL
14045	STD		{ int linux_sys_open(const char *path, int flags, int mode); }
14146	UNIMPL
14247	NOARGS		{ gid_t sys_getgid_with_egid(void); }
143; ALIAS osf1_sys_sigprocmask(int how, unsigned long mask);
144; XXX <- copied from osf1/syscalls.master
14548	NOARGS		{ int compat_13_sys_sigprocmask(int how, \
146			    sigset13_t mask); }
14749	UNIMPL
14850	UNIMPL
14951	NOARGS		{ int sys_acct(const char *path); }
15052	STD		{ int linux_sys_sigpending(linux_old_sigset_t *set); }
15153	UNIMPL
15254	STD		{ int linux_sys_ioctl(int fd, u_long com, \
153			    caddr_t data); }
15455	UNIMPL
15556	UNIMPL
15657	STD		{ int linux_sys_symlink(const char *path, const char *to); }
15758	STD		{ int linux_sys_readlink(const char *name, char *buf, \
158			    int count); }
15959	STD		{ int linux_sys_execve(const char *path, char **argp, \
160			    char **envp); }
16160	NOARGS		{ mode_t sys_umask(mode_t newmask); }
16261	NOARGS		{ int sys_chroot(const char *path); }
16362	UNIMPL
16463	NOARGS		{ int sys_getpgrp(void); }
16564	NOARGS		{ int compat_43_sys_getpagesize(void); }
16665	UNIMPL
16766	NOARGS		{ int sys___vfork14(void); }
16867	STD		{ int linux_sys_stat(const char *path, \
169			    struct linux_stat *sp); }
17068	STD		{ int linux_sys_lstat(const char *path, \
171			    struct linux_stat *sp); }
17269	UNIMPL
17370	UNIMPL
174;71	ALIAS		osf1_sys_mmap
17571	NOARGS		{ int linux_sys_mmap(unsigned long addr, size_t len, \
176			    int prot, int flags, int fd, linux_off_t offset); }
17772	UNIMPL
17873	NOARGS		{ int sys_munmap(void *addr, size_t len); }
17974	STD		{ int linux_sys_mprotect(const void *start, \
180			    unsigned long len, int prot); }
181; Linux sys_madvise just returns 0.
18275	UNIMPL		madvise
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(u_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	NOARGS		{ int sys_getpriority(int which, int who); }
219101	STD		{ int linux_sys_send(int s, caddr_t buf, int len, \
220				int flags); }
221102	STD		{ int linux_sys_recv(int s, caddr_t 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(caddr_t 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		{ size_t linux_sys_recvmsg(int s, struct msghdr *msg, \
241				int flags); }
242114	STD		{ ssize_t linux_sys_sendmsg(int s, \
243				const struct 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, int uid, int gid); }
259124	NOARGS		{ int sys_fchmod(int fd, mode_t mode); }
260125	STD		{ int linux_sys_recvfrom(int s, void *buf, int len, \
261				int flags, struct osockaddr *from, \
262				int *fromlenaddr); }
263126	NOARGS		{ int sys_setreuid(uid_t ruid, uid_t euid); }
264127	NOARGS		{ int sys_setregid(gid_t rgid, gid_t egid); }
265128	STD		{ int linux_sys_rename(const char *from, const char *to); }
266129	STD		{ int linux_sys_truncate(const char *path, long length); }
267130	NOARGS		{ int compat_43_sys_ftruncate(int fd, long length); }
268131	NOARGS		{ int sys_flock(int fd, int how); }
269132	NOARGS		{ int sys_setgid(gid_t gid); }
270133	STD		{ int linux_sys_sendto(int s, void *msg, int len, \
271				int flags, struct osockaddr *to, int tolen); }
272134	NOARGS		{ int sys_shutdown(int s, int how); }
273135	STD		{ int linux_sys_socketpair(int domain, int type, \
274				int protocol, int *rsv); }
275136	STD		{ int linux_sys_mkdir(const char *path, int mode); }
276137	STD		{ int linux_sys_rmdir(const char *path); }
277138	NODEF		{ int osf1_sys_utimes(const char *path, \
278			    const struct osf1_timeval *tptr); }
279139	UNIMPL
280140	UNIMPL
281141	STD		{ int linux_sys_getpeername(int fdes, \
282				caddr_t asa, int *alen); }
283142	UNIMPL
284143	UNIMPL
285144	STD		{ int linux_sys_getrlimit(int which, \
286			    struct orlimit *rlp); }
287145	STD		{ int linux_sys_setrlimit(int which, \
288			    const struct orlimit *rlp); }
289146	UNIMPL
290147	NOARGS		{ int sys_setsid(void); }
291148	UNIMPL		quotactl
292149	UNIMPL
293150	STD		{ int linux_sys_getsockname(int fdec, \
294				caddr_t asa, int *alen); }
295151	UNIMPL
296152	UNIMPL
297153	UNIMPL
298154	UNIMPL
299155	UNIMPL
300;156	ALIAS		osf1_sys_sigaction
301156	STD		{ int linux_sys_sigaction(int signum, \
302				const struct linux_old_sigaction *nsa, \
303				struct linux_old_sigaction *osa); }
304157	UNIMPL
305158	UNIMPL
306;159	ALIAS		osf1_sys_getdirentries
307159	NOARGS		{ int compat_43_sys_getdirentries(int fd, char *buf, \
308			    u_int count, long *basep); }
309160	NODEF		{ int osf1_sys_statfs(const char *path, \
310			    struct osf1_statfs *buf, int len); }
311161	NODEF		{ int osf1_sys_fstatfs(int fd, \
312			    struct osf1_statfs *buf, int len); }
313162	UNIMPL
314163	UNIMPL
315164	UNIMPL
316;165	ALIAS		osf1_sys_getdomainname
317165	NOARGS		{ int compat_09_sys_getdomainname(char *domainname, \
318			    int len); }
319166	STD		{ int linux_sys_setdomainname(char *domainname, \
320                            int len); }
321167	UNIMPL
322168	UNIMPL
323169	UNIMPL
324170	UNIMPL
325171	UNIMPL
326172	UNIMPL
327173	UNIMPL
328174	UNIMPL
329175	UNIMPL
330176	UNIMPL
331177	UNIMPL
332178	UNIMPL
333179	UNIMPL
334180	UNIMPL
335181	UNIMPL
336182	UNIMPL
337183	UNIMPL
338184	UNIMPL
339185	UNIMPL
340186	UNIMPL
341187	UNIMPL
342188	UNIMPL
343189	UNIMPL
344190	UNIMPL
345; XXX: Dunno
346191	STD		{ int linux_sys_ugetrlimit(int which, \
347			    struct rlimit *rlp); }
348192	UNIMPL		mmap2
349193	UNIMPL
350194	UNIMPL
351195	UNIMPL
352196	UNIMPL
353197	UNIMPL
354198	UNIMPL
355199	UNIMPL		osf1_sys_swapon
356#ifdef SYSVMSG
357200	NOARGS		{ int linux_sys_msgctl(int msqid, int cmd, \
358			    struct linux_msqid_ds *buf); }
359201	NOARGS		{ int sys_msgget(key_t key, int msgflg); }
360202	NOARGS		{ ssize_t sys_msgrcv(int msqid, void *msgp, \
361			    size_t msgsz, long msgtyp, int msgflg); }
362203	NOARGS		{ int sys_msgsnd(int msqid, void *msgp, size_t msgsz, \
363			    int msgflg); }
364#else
365200	UNIMPL		msgctl
366201	UNIMPL		msgget
367202	UNIMPL		msgrcv
368203	UNIMPL		msgsnd
369#endif
370#ifdef SYSVSEM
371204	NOARGS		{ int linux_sys_semctl(int semid, int semnum, \
372			    int cmd, union linux_semun arg); }
373205	NOARGS		{ int sys_semget(key_t key, int nsems, int semflg); }
374206	NOARGS		{ int sys_semop(int semid, struct sembuf *sops, \
375			    size_t nsops); }
376#else
377204	UNIMPL		semctl
378205	UNIMPL		semget
379206	UNIMPL		semop
380#endif
381;207	ALIAS		osf1_sys_utsname
382207	STD		{ int linux_sys_olduname(struct linux_old_utsname *up); }
383208	NOARGS		{ int sys___posix_lchown(const char *path, int uid, int gid); }
384#ifdef SYSVSHM
385209	NOARGS		{ int linux_sys_shmat(int shmid, void *shmaddr, \
386			    int shmflg, u_long *raddr); }
387210	NOARGS		{ int linux_sys_shmctl(int shmid, int cmd, \
388			    struct linux_shmid_ds *buf); }
389211	NOARGS		{ int sys_shmdt(const void *shmaddr); }
390212	NOARGS		{ int sys_shmget(key_t key, size_t size, int shmflg); }
391#else
392209	UNIMPL		shmat
393210	UNIMPL		shmctl
394211	UNIMPL		shmdt
395212	UNIMPL		shmget
396#endif
397213	UNIMPL
398214	UNIMPL
399215	UNIMPL
400216	UNIMPL
401217	STD		{ int linux_sys_msync(caddr_t addr, int len, int fl); }
402218	UNIMPL
403219	UNIMPL
404220	UNIMPL
405221	UNIMPL
406222	UNIMPL
407223	UNIMPL
408224	UNIMPL
409225	UNIMPL
410226	UNIMPL
411227	UNIMPL
412228	UNIMPL
413229	UNIMPL
414230	UNIMPL
415231	UNIMPL
416232	UNIMPL
417233	STD		{ int linux_sys_getpgid(int pid); }
418234	NOARGS		{ pid_t sys_getsid(pid_t pid); }
419235	UNIMPL		sigaltstack
420236	UNIMPL
421237	UNIMPL
422238	UNIMPL
423239	UNIMPL
424240	UNIMPL
425241	NODEF		{ int osf1_sys_sysinfo(int cmd, char buf, long len); }
426242	UNIMPL
427243	UNIMPL
428244	UNIMPL		osf1_sys_proplist_syscall
429245	UNIMPL
430246	UNIMPL
431247	UNIMPL
432248	UNIMPL
433249	UNIMPL
434250	UNIMPL
435251	NODEF		{ int osf1_sys_usleep_thread( \
436			    struct osf1_timeval *sleep, \
437			    struct osf1_timeval *slept); }
438252	UNIMPL
439253	UNIMPL
440254	UNIMPL
441255	UNIMPL		sysfs
442256	NODEF		{ int osf1_sys_getsysinfo(u_long op, caddr_t buffer, \
443			    u_long nbytes, caddr_t arg, u_long flag); }
444257	NODEF		{ int osf1_sys_setsysinfo(u_long op, caddr_t buffer, \
445			    u_long nbytes, caddr_t arg, u_long flag); }
446258	UNIMPL
447259	UNIMPL
448260	UNIMPL
449; This entry doesn't exist in the Alpha linux syscall table but the function is
450; implemented and used on other ports.
451261	STD		{ int linux_sys_fdatasync(int fd); }
452262	UNIMPL
453263	UNIMPL
454264	UNIMPL
455265	UNIMPL
456266	UNIMPL
457267	UNIMPL
458268	UNIMPL
459269	UNIMPL
460270	UNIMPL
461271	UNIMPL
462272	UNIMPL
463273	UNIMPL
464274	UNIMPL
465275	UNIMPL
466276	UNIMPL
467277	UNIMPL
468278	UNIMPL
469279	UNIMPL
470280	UNIMPL
471281	UNIMPL
472282	UNIMPL
473283	UNIMPL
474284	UNIMPL
475285	UNIMPL
476286	UNIMPL
477287	UNIMPL
478288	UNIMPL
479289	UNIMPL
480290	UNIMPL
481291	UNIMPL
482292	UNIMPL
483293	UNIMPL
484294	UNIMPL
485295	UNIMPL
486296	UNIMPL
487297	UNIMPL
488298	UNIMPL
489299	UNIMPL
490300	UNIMPL		bdflush
491301	UNIMPL		sethae
492302	UNIMPL		mount
493303	UNIMPL		old_adjtimex
494304	STD		{ int linux_sys_swapoff(const char *path); }
495305	STD		{ int linux_sys_getdents(int fd, \
496			    struct linux_dirent *dent, unsigned int count); }
497306	UNIMPL		alpha_create_module
498307	UNIMPL		init_module
499308	UNIMPL		delete_module
500309	UNIMPL		get_kernel_syms
501310	UNIMPL		syslog
502311	STD		{ int linux_sys_reboot(int magic1, int magic2, \
503			    int cmd, void *arg); }
504312	STD		{ int linux_sys_clone(int flags, void *stack); }
505#ifdef EXEC_AOUT
506313	STD		{ int linux_sys_uselib(const char *path); }
507#else
508313	UNIMPL		sys_uselib
509#endif
510314	NOARGS		{ int sys_mlock(const void *addr, size_t len); }
511315	NOARGS		{ int sys_munlock(const void *addr, size_t len); }
512316	NOARGS		{ int sys_mlockall(int flags); }
513317	NOARGS		{ int sys_munlockall(void); }
514318	STD		{ int linux_sys_sysinfo(struct linux_sysinfo *arg); }
515319	STD		{ int linux_sys___sysctl(struct linux___sysctl *lsp); }
516320	UNIMPL		idle
517321	UNIMPL		oldumount
518322	STD		{ int linux_sys_swapon(const char *name); }
519323	STD		{ int linux_sys_times(struct times *tms); }
520324	STD		{ int linux_sys_personality(int per); }
521325	STD		{ int linux_sys_setfsuid(uid_t uid); }
522326	UNIMPL		setfsgid
523327	UNIMPL		ustat
524328	STD		{ int linux_sys_statfs(const char *path, \
525			    struct linux_statfs *sp); }
526329	STD		{ int linux_sys_fstatfs(int fd, \
527			    struct linux_statfs *sp); }
528330	STD		{ int linux_sys_sched_setparam(pid_t pid, \
529			    const struct linux_sched_param *sp); }
530331	STD		{ int linux_sys_sched_getparam(pid_t pid, \
531			    struct linux_sched_param *sp); }
532332	STD		{ int linux_sys_sched_setscheduler(pid_t pid, \
533			    int policy, const struct linux_sched_param *sp); }
534333	STD		{ int linux_sys_sched_getscheduler(pid_t pid); }
535334	STD		{ int linux_sys_sched_yield(void); }
536335	STD		{ int linux_sys_sched_get_priority_max(int policy); }
537336	STD		{ int linux_sys_sched_get_priority_min(int policy); }
538337	UNIMPL		sched_rr_get_interval
539338	UNIMPL		afs_syscall
540339	STD		{ int linux_sys_uname(struct linux_utsname *up); }
541340	NOARGS		{ int sys_nanosleep(const struct timespec *rqtp, \
542				struct timespec *rmtp); }
543341	STD		{ void *linux_sys_mremap(void *old_address, \
544			    size_t old_size, size_t new_size, u_long flags); }
545342	UNIMPL		nfsservctl
546343	STD		{ int linux_sys_setresuid(uid_t ruid, uid_t euid, \
547			    uid_t suid); }
548344	STD		{ int linux_sys_getresuid(uid_t *ruid, uid_t *euid, \
549			    uid_t *suid); }
550345	UNIMPL		pciconfig_read
551346	UNIMPL		pciconfig_write
552347	UNIMPL		query_module
553348	UNIMPL		prctl
554349	STD		{ int linux_sys_pread(int fd, char *buf, \
555			    size_t nbyte, linux_off_t offset); }
556350	STD		{ int linux_sys_pwrite(int fd, char *buf, \
557			    size_t nbyte, linux_off_t offset); }
558351	STD		{ int linux_sys_rt_sigreturn( \
559				struct linux_rt_sigframe *sfp); }
560352	STD		{ int linux_sys_rt_sigaction(int signum, \
561				const struct linux_sigaction *nsa, \
562				struct linux_sigaction *osa, \
563				size_t sigsetsize); }
564353	STD		{ int linux_sys_rt_sigprocmask(int how, \
565			    const linux_sigset_t *set, \
566			    linux_sigset_t *oset, \
567			    size_t sigsetsize); }
568354	STD		{ int linux_sys_rt_sigpending( \
569			    linux_sigset_t *set, \
570			    size_t sigsetsize); }
571355	UNIMPL		rt_sigtimedwait
572; XXX XAX int here?  sigset_t here?
573356	STD		{ int linux_sys_rt_queueinfo(int pid, int signum, \
574			    linux_siginfo_t *uinfo); }
575357	STD		{ int linux_sys_rt_sigsuspend(linux_sigset_t *unewset, \
576			    size_t sigsetsize); }
577358	STD		{ int linux_sys_select(int nfds, fd_set *readfds, \
578			    fd_set *writefds, fd_set *exceptfds, \
579			    struct timeval *timeout); }
580359	NOARGS		{ int sys_gettimeofday(struct timeval *tp, \
581			    struct timezone *tzp); }
582360	NOARGS		{ int sys_settimeofday(const struct timeval *tp, \
583			    const struct timezone *tzp); }
584361	NOARGS		{ int sys_getitimer(int which, \
585			    struct itimerval *itv); }
586362	NOARGS		{ int sys_setitimer(int which, \
587			    const struct itimerval *itv, \
588			    struct itimerval *oitv); }
589363	NOARGS		{ int sys_utimes(char *path, \
590			    struct timeval *times); }
591364	NOARGS		{ int sys_getrusage(int who, struct rusage *rusage); }
592365	STD		{ int linux_sys_wait4(int pid, int *status, \
593			    int options, struct rusage *rusage); }
594366	UNIMPL		adjtimex
595367	NOARGS		{ int sys___getcwd(char *bufp, size_t length); }
596368	UNIMPL		capget
597369	UNIMPL		capset
598370	UNIMPL		sendfile
599371	UNIMPL		setresgid
600372	UNIMPL		getresgid
601373	UNIMPL		sys_dipc
602374	UNIMPL		pivot_root
603375	UNIMPL		mincore
604376	UNIMPL		pciconfig_iobase
605377	STD		{ int linux_sys_getdents64(int fd, \
606			    struct linux_dirent64 *dent, unsigned int count); }
607