Home | History | Annotate | Line # | Download | only in alpha
syscalls.master revision 1.17
      1 	$NetBSD: syscalls.master,v 1.17 2000/03/18 22:46:27 erh Exp $
      2 ;
      3 ; XXX XAX lib/libc/sys/reboot.2 needs updating
      4 ;
      5 ;	@(#)syscalls.master	8.1 (Berkeley) 7/19/93
      6 
      7 ; NetBSD alpha COMPAT_LINUX system call name/number "master" file.
      8 ; (See syscalls.conf to see what it is processed into.)
      9 ;
     10 ; Fields: number type [type-dependent ...]
     11 ;	number	system call number, must be in order
     12 ;	type	one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of
     13 ;		the compatibility options defined in syscalls.conf.
     14 ;
     15 ; types:
     16 ;	STD	always included
     17 ;	OBSOL	obsolete, not included in system
     18 ;	UNIMPL	unimplemented, not included in system
     19 ;	NODEF	included, but don't define the syscall number
     20 ;	NOARGS	included, but don't define the syscall args structure
     21 ;	INDIR	included, but don't define the syscall args structure
     22 ;		and allow it to be "really" varargs.
     23 ;
     24 ; The compat options are defined in the syscalls.conf file, and the
     25 ; compat option name is prefixed to the syscall name.  Other than
     26 ; that, they're like NODEF (for 'compat' options), or STD (for
     27 ; 'libcompat' options).
     28 ;
     29 ; The type-dependent arguments are as follows:
     30 ; For STD, NODEF, NOARGS, and compat syscalls:
     31 ;	{ pseudo-proto } [alias]
     32 ; For other syscalls:
     33 ;	[comment]
     34 ;
     35 ; #ifdef's, etc. may be included, and are copied to the output files.
     36 ; #include's are copied to the syscall names and switch definition files only.
     37 ;
     38 ; (ERH: 3/18/00)
     39 ;
     40 ; XXX XAX things to do:
     41 ;		make sure non-linux_foo() matches real linux syscalls.
     42 ;			create new linux_foo functions otherwise
     43 ;			(i.e. reboot, msgrcv? )
     44 ;		make sure linux_foo() matches expected prototypes in .c files.
     45 ;		kill not used functions.  (ifdef the actual code)
     46 ;		fix getfsuid in linux_misc.c
     47 ;		fix clone in linux_sched.c
     48 ;
     49 ; NOT USED = This syscall is not really used in Linux, except in its
     50 ;		osf compat mode.  Since Linux binaries shouldn't ever
     51 ;		call it and osf binaries run under a different emulation,
     52 ;		it shouldn't matter that the linux version of the
     53 ;		function might not DTRT.  Define it anyway so we
     54 ;		don't have to split off or ifdef the associated function.
     55 ; 		    A bit better might be to have makesyscalls identify this
     56 ; 		as "define but don't include in table" so it doesn't actually
     57 ; 		ever get called.
     58 ; UNIMPL <blank> = not implemented here nor in linux source
     59 ; UNIMPL osf_*   = osf functions implemented in linux, not here.
     60 ;
     61 
     62 #include "opt_sysv.h"
     63 #include "opt_compat_43.h"
     64 
     65 #include <sys/param.h>
     66 #include <sys/poll.h>
     67 #include <sys/systm.h>
     68 #include <sys/signal.h>
     69 #include <sys/mount.h>
     70 #include <sys/syscallargs.h>
     71 
     72 #include <compat/linux/common/linux_types.h>
     73 #include <compat/linux/common/linux_signal.h>
     74 #include <compat/linux/common/linux_siginfo.h>
     75 #include <compat/linux/common/linux_ipc.h>
     76 #include <compat/linux/common/linux_msg.h>
     77 #include <compat/linux/common/linux_sem.h>
     78 #include <compat/linux/common/linux_shm.h>
     79 #include <compat/linux/common/linux_mmap.h>
     80 ;#include <compat/linux/common/linux_machdep.h>
     81 
     82 #include <compat/linux/linux_syscallargs.h>
     83 
     84 
     85 0	NOARGS		{ int sys_nosys(void); } syscall
     86 1	NOARGS		{ int sys_exit(int rval); }
     87 2	NOARGS		{ int sys_fork(void); }
     88 3	NOARGS		{ int sys_read(int fd, void *buf, size_t nbyte); }
     89 4	NOARGS		{ int sys_write(int fd, const void *buf, size_t nbyte); }
     90 5	UNIMPL
     91 6	NOARGS		{ int sys_close(int fd); }
     92 7	UNIMPL		osf_wait4
     93 ;8	OBSOL		osf_old_creat, NOT USED
     94 8	STD		{ int linux_sys_creat(const char *path, mode_t mode); }
     95 9	NOARGS		{ int sys_link(const char *path, const char *link); }
     96 10	STD		{ int linux_sys_unlink(const char *path); }
     97 11	UNIMPL
     98 12	STD		{ int linux_sys_chdir(const char *path); }
     99 13	NOARGS		{ int sys_fchdir(int fd); }
    100 14	STD		{ int linux_sys_mknod(const char *path, int mode, int dev); }
    101 15	STD		{ int linux_sys_chmod(const char *path, int mode); }
    102 16	STD		{ int linux_sys_chown(const char *path, int uid, int gid); }
    103 ;17	ALIAS		osf_brk
    104 17	STD		{ int linux_sys_brk(char *nsize); }
    105 18	UNIMPL
    106 19	NOARGS		{ long compat_43_sys_lseek(int fd, long offset, \
    107 			    int whence); }
    108 20	NOARGS		{ pid_t sys_getpid(void); }
    109 21	UNIMPL		osf_mount
    110 22	UNIMPL		osf_umount
    111 23	NOARGS		{ int sys_setuid(uid_t uid); }
    112 24	NOARGS		{ uid_t sys_getuid(void); }
    113 25	UNIMPL
    114 26	STD		{ int linux_sys_ptrace(long request, long pid, \
    115 			  long addr, long data); }
    116 27	UNIMPL
    117 28	UNIMPL
    118 29	UNIMPL
    119 30	UNIMPL
    120 31	UNIMPL
    121 32	UNIMPL
    122 33	STD		{ int linux_sys_access(const char *path, int flags); }
    123 34	UNIMPL
    124 35	UNIMPL
    125 36	NOARGS		{ int sys_sync(void); }
    126 37	STD		{ int linux_sys_kill(int pid, int signum); }
    127 38	UNIMPL
    128 39	NOARGS		{ int sys_setpgid(int pid, int pgid); }
    129 40	UNIMPL
    130 41	NOARGS		{ int sys_dup(int fd); }
    131 42	NOARGS		{ int linux_sys_pipe(void); }
    132 43	UNIMPL		osf_set_program_attributes
    133 44	UNIMPL
    134 45	STD		{ int linux_sys_open(const char *path, int flags, int mode); }
    135 46	UNIMPL
    136 47	NOARGS		{ gid_t sys_getgid(void); }
    137 48	UNIMPL		osf_sigprocmask
    138 49	UNIMPL
    139 50	UNIMPL
    140 51	NOARGS		{ int sys_acct(const char *path); }
    141 52	STD		{ int linux_sys_sigpending(linux_old_sigset_t *set); }
    142 53	UNIMPL
    143 54	STD		{ int linux_sys_ioctl(int fd, u_long com, \
    144 			    caddr_t data); }
    145 55	UNIMPL
    146 56	UNIMPL
    147 57	STD		{ int linux_sys_symlink(const char *path, const char *to); }
    148 58	STD		{ int linux_sys_readlink(const char *name, char *buf, \
    149 			    int count); }
    150 59	STD		{ int linux_sys_execve(const char *path, char **argp, \
    151 			    char **envp); }
    152 60	NOARGS		{ mode_t sys_umask(mode_t newmask); }
    153 61	NOARGS		{ int sys_chroot(const char *path); }
    154 62	UNIMPL
    155 63	NOARGS		{ int sys_getpgrp(void); }
    156 64	NOARGS		{ int compat_43_sys_getpagesize(void); }
    157 65	UNIMPL
    158 66	NOARGS		{ int sys___vfork14(void); }
    159 67	STD		{ int linux_sys_stat(const char *path, \
    160 			    struct linux_stat *sp); }
    161 68	STD		{ int linux_sys_lstat(const char *path, \
    162 			    struct linux_stat *sp); }
    163 69	UNIMPL 
    164 70	UNIMPL
    165 71	NOARGS		{ int linux_sys_mmap(unsigned long addr, size_t len, \
    166 			    int prot, int flags, int fd, off_t offset); }
    167 72	UNIMPL
    168 73	NOARGS		{ int sys_munmap(void *addr, size_t len); }
    169 74	NOARGS		{ int sys_mprotect(void *addr, size_t len, int prot); }
    170 75	UNIMPL		madvise
    171 76	UNIMPL		vhangup
    172 77	UNIMPL
    173 78	UNIMPL
    174 79	NOARGS		{ int sys_getgroups(int gidsetsize, gid_t *gidset); }
    175 80	NOARGS		{ int sys_setgroups(int gidsetsize, const gid_t *gidset); }
    176 81	UNIMPL
    177 82	UNIMPL		setpgrp
    178 ;83: Uses int for seconds, and time_t.  so need different itimerval struct.
    179 83	UNIMPL		osf_setitimer
    180 84	UNIMPL
    181 85	UNIMPL	
    182 ;86: Uses int for seconds, and time_t.  so need different itimerval struct.
    183 86	UNIMPL		osf_getitimer
    184 87	NOARGS		{ int compat_43_sys_gethostname(char *hostname, \
    185 			    u_int len); }
    186 88	NOARGS		{ int compat_43_sys_sethostname(char *hostname, \
    187 			    u_int len); }
    188 89	UNIMPL		getdtablesize
    189 90	NOARGS		{ int sys_dup2(int from, int to); }
    190 91	STD		{ int linux_sys_fstat(int fd, struct linux_stat *sp); }
    191 92	STD		{ int linux_sys_fcntl(int fd, int cmd, void *arg); }
    192 93	UNIMPL		osf_select
    193 94	NOARGS		{ int sys_poll(struct pollfd *fds, u_int nfds, \
    194 			    int timeout); }
    195 95	NOARGS		{ int sys_fsync(int fd); }
    196 96	NOARGS		{ int sys_setpriority(int which, int who, int prio); }
    197 97	STD		{ int linux_sys_socket(int domain, int type, \
    198 			    int protocol); }
    199 98	STD		{ int linux_sys_connect(int s, \
    200 			    const struct sockaddr *name, \
    201 			    unsigned int namelen); }
    202 99	NOARGS		{ int compat_43_sys_accept(int s, \
    203 				caddr_t name, int *anamelen); }
    204 ;100	ALIAS		osf_getpriority
    205 100	NOARGS		{ int sys_getpriority(int which, int who); }
    206 101	NOARGS		{ int compat_43_sys_send(int s, caddr_t buf, int len, \
    207 				int flags); }
    208 102	NOARGS		{ int compat_43_sys_recv(int s, caddr_t buf, int len, \
    209 				int flags); }
    210 103	STD		{ int linux_sys_sigreturn(struct linux_sigframe *sfp); }
    211 104	NOARGS		{ int sys_bind(int s, const struct sockaddr *name, \
    212 			    unsigned int namelen); }
    213 105	STD		{ int linux_sys_setsockopt(int s, int level, \
    214 				int optname, void *optval, int optlen); }
    215 106	NOARGS		{ int sys_listen(int s, int backlog); }
    216 107	UNIMPL
    217 108	UNIMPL
    218 109	UNIMPL
    219 110	UNIMPL
    220 
    221 111	STD		{ int linux_sys_sigsuspend(caddr_t restart, \
    222 			    int oldmask, int mask); }
    223 112	UNIMPL
    224 113	NOARGS		{ size_t sys_recvmsg(int fd, struct msghdr *msg, \
    225 				int flags); }
    226 114	NOARGS		{ ssize_t sys_sendmsg(int fd, \
    227 				const struct msghdr *msg, int flags); }
    228 115	UNIMPL
    229 116	UNIMPL		osf_gettimeofday
    230 117	UNIMPL		osf_getrusage
    231 118	STD		{ int linux_sys_getsockopt(int s, int level, \
    232 				int optname, void *optval, int *optlen); }
    233 119	UNIMPL
    234 120	NOARGS		{ ssize_t sys_readv(int fd, const struct iovec *iovp, \
    235 				int iovcnt); }
    236 121	NOARGS		{ ssize_t sys_writev(int fd, struct iovec *iovp, \
    237 				int iovcnt); }
    238 122	UNIMPL		osf_settimeofday
    239 123	STD		{ int linux_sys_fchown(int fd, int uid, int gid); }
    240 124	NOARGS		{ int sys_fchmod(int fd, mode_t mode); }
    241 125	STD		{ int linux_sys_recvfrom(int s, void *buf, int len, \
    242 				int flags, struct sockaddr *from, \
    243 				int *fromlen); }
    244 126	STD		{ int linux_sys_setreuid(int ruid, int euid); }
    245 127	STD		{ int linux_sys_setregid(int rgid, int egid); }
    246 128	STD		{ int linux_sys_rename(const char *from, const char *to); }
    247 129	STD		{ int linux_sys_truncate(const char *path, long length); }
    248 130	NOARGS		{ int compat_43_sys_ftruncate(int fd, long length); }
    249 131	NOARGS		{ int sys_flock(int fd, int how); }
    250 132	NOARGS		{ int sys_setgid(gid_t gid); }
    251 133	STD		{ int linux_sys_sendto(int s, void *msg, int len, \
    252 				int flags, struct sockaddr *to, int tolen); }
    253 134	NOARGS		{ int sys_shutdown(int s, int how); }
    254 135	STD		{ int linux_sys_socketpair(int domain, int type, \
    255 				int protocol, int *rsv); }
    256 136	STD		{ int linux_sys_mkdir(const char *path, int mode); }
    257 137	STD		{ int linux_sys_rmdir(const char *path); }
    258 138	UNIMPL		osf_utimes
    259 139	UNIMPL
    260 140	UNIMPL
    261 141	NOARGS		{ int compat_43_sys_getpeername(int fdes, \
    262 				caddr_t asa, int *alen); }
    263 142	UNIMPL
    264 143	UNIMPL
    265 144	NOARGS		{ int compat_43_sys_getrlimit(int which, \
    266 			    struct orlimit *rlp); }
    267 145	NOARGS		{ int compat_43_sys_setrlimit(int which, \
    268 			    const struct orlimit *rlp); }
    269 146	UNIMPL
    270 147	NOARGS		{ int sys_setsid(void); }
    271 148	UNIMPL		quotactl
    272 149	UNIMPL
    273 150	NOARGS		{ int compat_43_sys_getsockname(int fdec, \
    274 				caddr_t asa, int *alen); }
    275 151	UNIMPL
    276 152	UNIMPL
    277 153	UNIMPL
    278 154	UNIMPL
    279 155	UNIMPL
    280 ;156	ALIAS		osf_sigaction
    281 156	STD		{ int linux_sys_sigaction(int signum, \
    282 				const struct linux_old_sigaction *nsa, \
    283 				struct linux_old_sigaction *osa); }
    284 157	UNIMPL
    285 158	UNIMPL
    286 159	UNIMPL		osf_getdirentries
    287 160	UNIMPL		osf_statfs
    288 161	UNIMPL		osf_fstatfs
    289 162	UNIMPL
    290 163	UNIMPL
    291 164	UNIMPL
    292 165	UNIMPL		osf_getdomainname
    293 ;166	ALIAS		osf_setdomainname
    294 166	UNIMPL		setdomainname
    295 167	UNIMPL
    296 168	UNIMPL
    297 169	UNIMPL
    298 170	UNIMPL
    299 171	UNIMPL
    300 172	UNIMPL
    301 173	UNIMPL
    302 174	UNIMPL
    303 175	UNIMPL
    304 176	UNIMPL
    305 177	UNIMPL
    306 178	UNIMPL
    307 179	UNIMPL
    308 180	UNIMPL
    309 181	UNIMPL
    310 182	UNIMPL
    311 183	UNIMPL
    312 184	UNIMPL
    313 185	UNIMPL
    314 186	UNIMPL
    315 187	UNIMPL
    316 188	UNIMPL
    317 189	UNIMPL
    318 190	UNIMPL
    319 191	UNIMPL
    320 192	UNIMPL
    321 193	UNIMPL
    322 194	UNIMPL
    323 195	UNIMPL
    324 196	UNIMPL
    325 197	UNIMPL
    326 198	UNIMPL
    327 199	UNIMPL		osf_swapon
    328 #ifdef SYSVMSG
    329 200	NOARGS		{ int linux_sys_msgctl(int msqid, int cmd, \
    330 			    struct linux_msqid_ds *buf); }
    331 201	NOARGS		{ int sys_msgget(key_t key, int msgflg); }
    332 ; XXX XXX XAX msgrcv is (int, void*, size_t, long, int) in kern/syscalls.master.
    333 202	NOARGS		{ int sys_msgrcv(int msqid, void *msgp, size_t msgsz, \
    334 			    int msgflg); }
    335 203	NOARGS		{ int sys_msgsnd(int msqid, void *msgp, size_t msgsz, \
    336 			    int msgflg); }
    337 #else
    338 200	UNIMPL		msgctl
    339 201	UNIMPL		msgget
    340 202	UNIMPL		msgrcv
    341 203	UNIMPL		msgsnd
    342 #endif
    343 #ifdef SYSVSEM
    344 204	NOARGS		{ int linux_sys_semctl(int semid, int semnum, \
    345 			    int cmd, union linux_semun arg); }
    346 205	NOARGS		{ int sys_semget(key_t key, int nsems, int semflg); }
    347 206	NOARGS		{ int sys_semop(int semid, struct sembuf *sops, \
    348 			    size_t nsops); }
    349 #else
    350 204	UNIMPL		semctl
    351 205	UNIMPL		semget
    352 206	UNIMPL		semop
    353 #endif
    354 ;207	OBSOL		osf_utsname, NOT USED
    355 207	STD		{ int linux_sys_olduname(struct linux_old_utsname *up); }
    356 208	STD		{ int linux_sys_lchown(char *path, int uid, int gid); }
    357 #ifdef SYSVSHM
    358 209	NOARGS		{ int linux_sys_shmat(int shmid, void *shmaddr, \
    359 			    int shmflg, u_long *raddr); }
    360 210	NOARGS		{ int linux_sys_shmctl(int shmid, int cmd, \
    361 			    struct linux_shmid_ds *buf); }
    362 211	NOARGS		{ int sys_shmdt(const void *shmaddr); }
    363 212	NOARGS		{ int sys_shmget(key_t key, size_t size, int shmflg); }
    364 #else
    365 209	UNIMPL		shmat
    366 210	UNIMPL		shmctl
    367 211	UNIMPL		shmdt
    368 212	UNIMPL		shmget
    369 #endif
    370 213	UNIMPL
    371 214	UNIMPL
    372 215	UNIMPL
    373 216	UNIMPL
    374 217	STD		{ int linux_sys_msync(caddr_t addr, int len, int fl); }
    375 218	UNIMPL		osf_signal
    376 219	UNIMPL
    377 220	UNIMPL
    378 221	UNIMPL
    379 222	UNIMPL
    380 223	UNIMPL
    381 224	UNIMPL
    382 225	UNIMPL
    383 226	UNIMPL
    384 227	UNIMPL
    385 228	UNIMPL
    386 229	UNIMPL
    387 230	UNIMPL
    388 231	UNIMPL
    389 232	UNIMPL
    390 233	STD		{ int linux_sys_getpgid(int pid); }
    391 234	NOARGS		{ pid_t sys_getsid(pid_t pid); }
    392 235	UNIMPL
    393 236	UNIMPL
    394 237	UNIMPL
    395 238	UNIMPL
    396 239	UNIMPL
    397 240	UNIMPL
    398 241	UNIMPL		osf_sysinfo
    399 242	UNIMPL
    400 243	UNIMPL
    401 244	UNIMPL		osf_proplist_syscall
    402 245	UNIMPL
    403 246	UNIMPL
    404 247	UNIMPL
    405 248	UNIMPL
    406 249	UNIMPL
    407 250	UNIMPL
    408 251	UNIMPL		osf_usleep_thread
    409 252	UNIMPL
    410 253	UNIMPL
    411 254	UNIMPL		sysfs
    412 255	UNIMPL
    413 256	UNIMPL		osf_getsysinfo
    414 257	UNIMPL		osf_setsysinfo
    415 258	UNIMPL
    416 259	UNIMPL
    417 260	UNIMPL
    418 ;			???: fdatasync isn't implemented in Linux.
    419 261	STD		{ int linux_sys_fdatasync(int fd); }
    420 262	UNIMPL
    421 263	UNIMPL
    422 264	UNIMPL
    423 265	UNIMPL
    424 266	UNIMPL
    425 267	UNIMPL
    426 268	UNIMPL
    427 269	UNIMPL
    428 270	UNIMPL
    429 271	UNIMPL
    430 272	UNIMPL
    431 273	UNIMPL
    432 274	UNIMPL
    433 275	UNIMPL
    434 276	UNIMPL
    435 277	UNIMPL
    436 278	UNIMPL
    437 279	UNIMPL
    438 280	UNIMPL
    439 281	UNIMPL
    440 282	UNIMPL
    441 283	UNIMPL
    442 284	UNIMPL
    443 285	UNIMPL
    444 286	UNIMPL
    445 287	UNIMPL
    446 288	UNIMPL
    447 289	UNIMPL
    448 290	UNIMPL
    449 291	UNIMPL
    450 292	UNIMPL
    451 293	UNIMPL
    452 294	UNIMPL
    453 295	UNIMPL
    454 296	UNIMPL
    455 297	UNIMPL
    456 298	UNIMPL
    457 299	UNIMPL
    458 300	UNIMPL		bdflush
    459 301	UNIMPL		sethae
    460 302	UNIMPL		mount
    461 303	UNIMPL		old_adjtimex
    462 304	UNIMPL		swapoff
    463 305	STD		{ int linux_sys_getdents(int fd, \
    464 			    struct linux_dirent *dent, unsigned int count); }
    465 306	UNIMPL		create_module
    466 307	UNIMPL		init_module
    467 308	UNIMPL		delete_module
    468 309	UNIMPL		get_kernel_syms
    469 310	UNIMPL		syslog
    470 311	STD		{ int linux_sys_reboot(int magic1, int magic2, \
    471 			    int cmd, void *arg); }
    472 ; XXX XXX XAX need machine dependant sys_clone
    473 312	UNIMPL		{ int linux_sys_clone(int flags, void *stack); }
    474 ; XXX XAX does alpha linux really have a.out exec?
    475 #ifdef EXEC_AOUT
    476 313	STD		{ int linux_sys_uselib(char *path); }
    477 #else
    478 313	UNIMPL		sys_uselib
    479 #endif
    480 314	NOARGS		{ int sys_mlock(const void *addr, size_t len); }
    481 315	NOARGS		{ int sys_munlock(const void *addr, size_t len); }
    482 316	UNIMPL		mlockall
    483 317	UNIMPL		munlockall
    484 318	UNIMPL		sysinfo
    485 319	STD		{ int linux_sys___sysctl(struct linux___sysctl *lsp); }
    486 320	UNIMPL		idle
    487 321	UNIMPL		umount
    488 322	NOARGS		{ int compat_12_sys_swapon(const char *name); }
    489 323	STD		{ int linux_sys_times(struct times *tms); }
    490 324	STD		{ int linux_sys_personality(int per); }
    491 325	STD		{ int linux_sys_setfsuid(uid_t uid); }
    492 326	UNIMPL		setfsgid
    493 327	UNIMPL		ustat
    494 328	STD		{ int linux_sys_statfs(const char *path, \
    495 			    struct linux_statfs *sp); }
    496 329	STD		{ int linux_sys_fstatfs(int fd, \
    497 			    struct linux_statfs *sp); }
    498 330	STD		{ int linux_sys_sched_setparam(pid_t pid, \
    499 			    const struct linux_sched_param *sp); }
    500 331	STD		{ int linux_sys_sched_getparam(pid_t pid, \
    501 			    struct linux_sched_param *sp); }
    502 332	STD		{ int linux_sys_sched_setscheduler(pid_t pid, \
    503 			    int policy, const struct linux_sched_param *sp); }
    504 333	STD		{ int linux_sys_sched_getscheduler(pid_t pid); }
    505 334	STD		{ int linux_sys_sched_yield(void); }
    506 335	STD		{ int linux_sys_sched_get_priority_max(int policy); }
    507 336	STD		{ int linux_sys_sched_get_priority_min(int policy); }
    508 337	UNIMPL		sched_rr_get_interval
    509 338	UNIMPL		afs_syscall
    510 339	STD		{ int linux_sys_uname(struct linux_utsname *up); }
    511 340	NOARGS		{ int sys_nanosleep(const struct timespec *rqtp, \
    512 				struct timespec *rmtp); }
    513 341	STD		{ void *linux_sys_mremap(void *old_address, \
    514 			    size_t old_size, size_t new_size, u_long flags); }
    515 342	UNIMPL		nfsservctl
    516 343	STD		{ int linux_sys_setresuid(uid_t ruid, uid_t euid, \
    517 			    uid_t suid); }
    518 344	STD		{ int linux_sys_getresuid(uid_t *ruid, uid_t *euid, \
    519 			    uid_t *suid); }
    520 345	UNIMPL		pciconfig_read
    521 346	UNIMPL		pciconfig_write
    522 347	UNIMPL		query_module
    523 348	UNIMPL		prctl
    524 349	STD		{ int linux_sys_pread(int fd, char *buf, \
    525 			    size_t nbyte, linux_off_t offset); }
    526 350	STD		{ int linux_sys_pwrite(int fd, char *buf, \
    527 			    size_t nbyte, linux_off_t offset); }
    528 351	STD		{ int linux_sys_rt_sigreturn( \
    529 				struct linux_rt_sigframe *sfp); }
    530 352	STD		{ int linux_sys_rt_sigaction(int signum, \
    531 				const struct linux_sigaction *nsa, \
    532 				struct linux_sigaction *osa, \
    533 				size_t sigsetsize); }
    534 353	STD		{ int linux_sys_rt_sigprocmask(int how, \
    535 			    const linux_sigset_t *set, \
    536 			    linux_sigset_t *oset, \
    537 			    size_t sigsetsize); }
    538 354	STD		{ int linux_sys_rt_sigpending( \
    539 			    linux_sigset_t *set, \
    540 			    size_t sigsetsize); }
    541 355	UNIMPL		rt_sigtimedwait
    542 ; XXX XAX int here?  sigset_t here? 
    543 356	STD		{ int linux_sys_rt_queueinfo(int pid, int signum, \
    544 			    linux_siginfo_t *uinfo); }
    545 357	STD		{ int linux_sys_rt_sigsuspend(linux_sigset_t *unewset, \
    546 			    size_t sigsetsize); }
    547 358	STD		{ int linux_sys_select(int nfds, fd_set *readfds, \
    548 			    fd_set *writefds, fd_set *exceptfds, \
    549 			    struct timeval *timeout); }
    550 359	NOARGS		{ int sys_gettimeofday(struct timeval *tp, \
    551 			    struct timezone *tzp); }
    552 360	NOARGS		{ int sys_settimeofday(const struct timeval *tp, \
    553 			    const struct timezone *tzp); }
    554 361	NOARGS		{ int sys_getitimer(int which, \
    555 			    struct itimerval *itv); }
    556 362	NOARGS		{ int sys_setitimer(int which, \
    557 			    const struct itimerval *itv, \
    558 			    struct itimerval *oitv); }
    559 363	NOARGS		{ int sys_utimes(char *path, \
    560 			    struct timeval *times); }
    561 364	NOARGS		{ int sys_getrusage(int who, struct rusage *rusage); }
    562 365	STD		{ int linux_sys_wait4(int pid, int *status, \
    563 			    int options, struct rusage *rusage); }
    564 366	UNIMPL		adjtimex
    565 367	NOARGS		{ int sys___getcwd(char *bufp, size_t length); }
    566 368	UNIMPL		capget
    567 369	UNIMPL		capset
    568 370	UNIMPL		sendfile
    569