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