Home | History | Annotate | Line # | Download | only in alpha
syscalls.master revision 1.65
      1 	$NetBSD: syscalls.master,v 1.65 2009/01/13 21:19:51 pooka 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 
     84 0	NOARGS		{ int linux_sys_nosys(void); } syscall
     85 1	NOARGS		{ int sys_exit(int rval); }
     86 2	NOARGS		{ int sys_fork(void); }
     87 3	NOARGS		{ int sys_read(int fd, void *buf, size_t nbyte); }
     88 4	NOARGS		{ int sys_write(int fd, const void *buf, size_t nbyte); }
     89 5	UNIMPL
     90 6	NOARGS		{ int sys_close(int fd); }
     91 7	NODEF		{ int osf1_sys_wait4(int pid, int *status, \
     92 			    int options, struct osf1_rusage *rusage); }
     93 ;8	ALIAS		osf1_sys_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	NOARGS		{ int 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	NOARGS		{ int sys_chmod(const char *path, int mode); }
    102 16	NOARGS		{ int sys___posix_chown(const char *path, int uid, int gid); }
    103 ;17	ALIAS		osf1_sys_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_with_ppid(void); }
    109 21	NODEF		{ int osf1_sys_mount(int type, const char *path, \
    110 			    int flags, void *data); }
    111 22	UNIMPL		umount
    112 23	NOARGS		{ int sys_setuid(uid_t uid); }
    113 24	NOARGS		{ uid_t sys_getuid_with_euid(void); }
    114 25	UNIMPL
    115 26	STD		{ int linux_sys_ptrace(long request, long pid, \
    116 			  long addr, long data); }
    117 27	UNIMPL
    118 28	UNIMPL
    119 29	UNIMPL
    120 30	UNIMPL
    121 31	UNIMPL
    122 32	UNIMPL
    123 33	NOARGS		{ int sys_access(const char *path, int flags); }
    124 34	UNIMPL
    125 35	UNIMPL
    126 36	NOARGS		{ int sys_sync(void); }
    127 37	STD		{ int linux_sys_kill(int pid, int signum); }
    128 38	UNIMPL
    129 39	NOARGS		{ int sys_setpgid(int pid, int pgid); }
    130 40	UNIMPL
    131 41	NOARGS		{ int sys_dup(int fd); }
    132 42	NOARGS		{ int linux_sys_pipe(void); }
    133 43	NODEF		{ int osf1_sys_set_program_attributes( \
    134 			    void *taddr, unsigned long tsize, \
    135 			    void *daddr, unsigned long dsize); }
    136 44	UNIMPL
    137 45	STD		{ int linux_sys_open(const char *path, int flags, int mode); }
    138 46	UNIMPL
    139 47	NOARGS		{ gid_t sys_getgid_with_egid(void); }
    140 ; ALIAS osf1_sys_sigprocmask(int how, unsigned long mask);
    141 ; XXX <- copied from osf1/syscalls.master
    142 48	NOARGS		{ int compat_13_sys_sigprocmask(int how, \
    143 			    sigset13_t mask); }
    144 49	UNIMPL
    145 50	UNIMPL
    146 51	NOARGS		{ int sys_acct(const char *path); }
    147 52	STD		{ int linux_sys_sigpending(linux_old_sigset_t *set); }
    148 53	UNIMPL
    149 54	STD		{ int linux_sys_ioctl(int fd, u_long com, \
    150 			    void *data); }
    151 55	UNIMPL
    152 56	UNIMPL
    153 57	NOARGS		{ int sys_symlink(const char *path, const char *to); }
    154 58	NOARGS		{ int sys_readlink(const char *name, char *buf, \
    155 			    int count); }
    156 59	NOARGS		{ int sys_execve(const char *path, char **argp, \
    157 			    char **envp); }
    158 60	NOARGS		{ mode_t sys_umask(mode_t newmask); }
    159 61	NOARGS		{ int sys_chroot(const char *path); }
    160 62	UNIMPL
    161 63	NOARGS		{ int sys_getpgrp(void); }
    162 64	NOARGS		{ int compat_43_sys_getpagesize(void); }
    163 65	UNIMPL
    164 66	NOARGS		{ int sys___vfork14(void); }
    165 67	STD		{ int linux_sys_stat(const char *path, \
    166 			    struct linux_stat *sp); }
    167 68	STD		{ int linux_sys_lstat(const char *path, \
    168 			    struct linux_stat *sp); }
    169 69	UNIMPL
    170 70	UNIMPL
    171 ;71	ALIAS		osf1_sys_mmap
    172 71	NOARGS		{ int linux_sys_mmap(unsigned long addr, size_t len, \
    173 			    int prot, int flags, int fd, linux_off_t offset); }
    174 72	UNIMPL
    175 73	NOARGS		{ int sys_munmap(void *addr, size_t len); }
    176 74	STD		{ int linux_sys_mprotect(const void *start, \
    177 			    unsigned long len, int prot); }
    178 75	NOARGS		{ int sys_madvise(void *addr, size_t len, int behav); }
    179 76	UNIMPL		vhangup
    180 77	UNIMPL
    181 78	UNIMPL
    182 79	NOARGS		{ int sys_getgroups(int gidsetsize, gid_t *gidset); }
    183 80	NOARGS		{ int sys_setgroups(int gidsetsize, const gid_t *gidset); }
    184 81	UNIMPL
    185 82	UNIMPL		setpgrp
    186 83	NODEF		{ int osf1_sys_setitimer(u_int which, \
    187 			    struct osf1_itimerval *itv, \
    188 			    struct osf1_itimerval *oitv); }
    189 84	UNIMPL
    190 85	UNIMPL
    191 86	UNIMPL		osf1_sys_getitimer
    192 87	NOARGS		{ int compat_43_sys_gethostname(char *hostname, \
    193 			    u_int len); }
    194 88	NOARGS		{ int compat_43_sys_sethostname(char *hostname, \
    195 			    u_int len); }
    196 89	UNIMPL		getdtablesize
    197 90	NOARGS		{ int sys_dup2(int from, int to); }
    198 91	STD		{ int linux_sys_fstat(int fd, struct linux_stat *sp); }
    199 92	STD		{ int linux_sys_fcntl(int fd, int cmd, void *arg); }
    200 93	NODEF		{ int osf1_sys_select(u_int nd, fd_set *in, \
    201 			    fd_set *ou, fd_set *ex, struct osf1_timeval *tv); }
    202 94	NOARGS		{ int sys_poll(struct pollfd *fds, u_int nfds, \
    203 			    int timeout); }
    204 95	NOARGS		{ int sys_fsync(int fd); }
    205 96	NOARGS		{ int sys_setpriority(int which, int who, int prio); }
    206 97	STD		{ int linux_sys_socket(int domain, int type, \
    207 			    int protocol); }
    208 98	STD		{ int linux_sys_connect(int s, \
    209 			    const struct osockaddr *name, \
    210 			    unsigned int namelen); }
    211 99	STD		{ int linux_sys_accept(int s, \
    212 				struct osockaddr *name, int *anamelen); }
    213 ;100	ALIAS		osf1_sys_getpriority
    214 100	STD		{ int linux_sys_getpriority(int which, int who); }
    215 101	STD		{ int linux_sys_send(int s, void *buf, int len, \
    216 				int flags); }
    217 102	STD		{ int linux_sys_recv(int s, void *buf, int len, \
    218 				int flags); }
    219 103	STD		{ int linux_sys_sigreturn(struct linux_sigframe *sfp); }
    220 104	STD		{ int linux_sys_bind(int s,	     \
    221 				const struct osockaddr *name, \
    222 				unsigned int namelen); }
    223 105	STD		{ int linux_sys_setsockopt(int s, int level, \
    224 				int optname, void *optval, int optlen); }
    225 106	NOARGS		{ int sys_listen(int s, int backlog); }
    226 107	UNIMPL
    227 108	UNIMPL
    228 109	UNIMPL
    229 110	UNIMPL
    230 
    231 111	STD		{ int linux_sys_sigsuspend(void *restart, \
    232 			    int oldmask, int mask); }
    233 ;112	ALIAS		osf1_sys_sigstack
    234 112	NOARGS		{ int compat_43_sys_sigstack(struct sigstack *nss, \
    235 			    struct sigstack *oss); }
    236 113	STD		{ ssize_t linux_sys_recvmsg(int s, struct msghdr *msg, \
    237 				int flags); }
    238 114	STD		{ ssize_t linux_sys_sendmsg(int s, \
    239 				const struct msghdr *msg, int flags); }
    240 115	UNIMPL
    241 116	NODEF		{ int osf1_sys_gettimeofday(struct osf1_timeval *tv, \
    242 			    struct osf1_timezone *tzp); }
    243 117	NODEF		{ int osf1_sys_getrusage(int who, \
    244 			    struct osf1_rusage *rusage); }
    245 118	STD		{ int linux_sys_getsockopt(int s, int level, \
    246 				int optname, void *optval, int *optlen); }
    247 119	UNIMPL
    248 120	NOARGS		{ ssize_t sys_readv(int fd, const struct iovec *iovp, \
    249 				int iovcnt); }
    250 121	NOARGS		{ ssize_t sys_writev(int fd, const struct iovec *iovp, \
    251 				int iovcnt); }
    252 122	NODEF		{ int osf1_sys_settimeofday(struct osf1_timeval *tv, \
    253 			    struct osf1_timezone *tzp); }
    254 123	NOARGS		{ int sys___posix_fchown(int fd, int uid, int gid); }
    255 124	NOARGS		{ int sys_fchmod(int fd, mode_t mode); }
    256 125	STD		{ int linux_sys_recvfrom(int s, void *buf, int len, \
    257 				int flags, struct osockaddr *from, \
    258 				int *fromlenaddr); }
    259 126	NOARGS		{ int sys_setreuid(uid_t ruid, uid_t euid); }
    260 127	NOARGS		{ int sys_setregid(gid_t rgid, gid_t egid); }
    261 128	NOARGS		{ int sys___posix_rename(const char *from, const char *to); }
    262 129	NOARGS		{ int compat_43_sys_truncate(const char *path, \
    263 				long length); }
    264 130	NOARGS		{ int compat_43_sys_ftruncate(int fd, long length); }
    265 131	NOARGS		{ int sys_flock(int fd, int how); }
    266 132	NOARGS		{ int sys_setgid(gid_t gid); }
    267 133	STD		{ int linux_sys_sendto(int s, void *msg, int len, \
    268 				int flags, struct osockaddr *to, int tolen); }
    269 134	NOARGS		{ int sys_shutdown(int s, int how); }
    270 135	STD		{ int linux_sys_socketpair(int domain, int type, \
    271 				int protocol, int *rsv); }
    272 136	NOARGS		{ int sys_mkdir(const char *path, int mode); }
    273 137	NOARGS		{ int sys_rmdir(const char *path); }
    274 138	NODEF		{ int osf1_sys_utimes(const char *path, \
    275 			    const struct osf1_timeval *tptr); }
    276 139	UNIMPL
    277 140	UNIMPL
    278 141	STD		{ int linux_sys_getpeername(int fdes, \
    279 				void *asa, int *alen); }
    280 142	UNIMPL
    281 143	UNIMPL
    282 144	STD		{ int linux_sys_getrlimit(int which, \
    283 			    struct orlimit *rlp); }
    284 145	STD		{ int linux_sys_setrlimit(int which, \
    285 			    const struct orlimit *rlp); }
    286 146	UNIMPL
    287 147	NOARGS		{ int sys_setsid(void); }
    288 148	UNIMPL		quotactl
    289 149	UNIMPL
    290 150	STD		{ int linux_sys_getsockname(int fdec, \
    291 				void *asa, int *alen); }
    292 151	UNIMPL
    293 152	UNIMPL
    294 153	UNIMPL
    295 154	UNIMPL
    296 155	UNIMPL
    297 ;156	ALIAS		osf1_sys_sigaction
    298 156	STD		{ int linux_sys_sigaction(int signum, \
    299 				const struct linux_old_sigaction *nsa, \
    300 				struct linux_old_sigaction *osa); }
    301 157	UNIMPL
    302 158	UNIMPL
    303 ;159	ALIAS		osf1_sys_getdirentries
    304 159	NOARGS		{ int compat_43_sys_getdirentries(int fd, char *buf, \
    305 			    u_int count, long *basep); }
    306 160	NODEF		{ int osf1_sys_statfs(const char *path, \
    307 			    struct osf1_statfs *buf, int len); }
    308 161	NODEF		{ int osf1_sys_fstatfs(int fd, \
    309 			    struct osf1_statfs *buf, int len); }
    310 162	UNIMPL
    311 163	UNIMPL
    312 164	UNIMPL
    313 ;165	ALIAS		osf1_sys_getdomainname
    314 165	NOARGS		{ int compat_09_sys_getdomainname(char *domainname, \
    315 			    int len); }
    316 166	STD		{ int linux_sys_setdomainname(char *domainname, \
    317                             int len); }
    318 167	UNIMPL
    319 168	UNIMPL
    320 169	UNIMPL
    321 170	UNIMPL
    322 171	UNIMPL
    323 172	UNIMPL
    324 173	UNIMPL
    325 174	UNIMPL
    326 175	UNIMPL
    327 176	UNIMPL
    328 177	UNIMPL
    329 178	UNIMPL
    330 179	UNIMPL
    331 180	UNIMPL
    332 181	UNIMPL
    333 182	UNIMPL
    334 183	UNIMPL
    335 184	UNIMPL
    336 185	UNIMPL
    337 186	UNIMPL
    338 187	UNIMPL
    339 188	UNIMPL
    340 189	UNIMPL
    341 190	UNIMPL
    342 ; XXX: Dunno
    343 191	STD		{ int linux_sys_ugetrlimit(int which, \
    344 			    struct rlimit *rlp); }
    345 192	UNIMPL		mmap2
    346 193	UNIMPL
    347 194	UNIMPL
    348 195	UNIMPL
    349 196	UNIMPL
    350 197	UNIMPL
    351 198	UNIMPL
    352 199	UNIMPL		osf1_sys_swapon
    353 #ifdef SYSVMSG
    354 200	NOARGS		{ int linux_sys_msgctl(int msqid, int cmd, \
    355 			    struct linux_msqid_ds *buf); }
    356 201	NOARGS		{ int sys_msgget(key_t key, int msgflg); }
    357 202	NOARGS		{ ssize_t sys_msgrcv(int msqid, void *msgp, \
    358 			    size_t msgsz, long msgtyp, int msgflg); }
    359 203	NOARGS		{ int sys_msgsnd(int msqid, void *msgp, size_t msgsz, \
    360 			    int msgflg); }
    361 #else
    362 200	UNIMPL		msgctl
    363 201	UNIMPL		msgget
    364 202	UNIMPL		msgrcv
    365 203	UNIMPL		msgsnd
    366 #endif
    367 #ifdef SYSVSEM
    368 204	NOARGS		{ int linux_sys_semctl(int semid, int semnum, \
    369 			    int cmd, union linux_semun arg); }
    370 205	NOARGS		{ int sys_semget(key_t key, int nsems, int semflg); }
    371 206	NOARGS		{ int sys_semop(int semid, struct sembuf *sops, \
    372 			    size_t nsops); }
    373 #else
    374 204	UNIMPL		semctl
    375 205	UNIMPL		semget
    376 206	UNIMPL		semop
    377 #endif
    378 ;207	ALIAS		osf1_sys_utsname
    379 207	STD		{ int linux_sys_olduname(struct linux_old_utsname *up); }
    380 208	NOARGS		{ int sys___posix_lchown(const char *path, int uid, int gid); }
    381 #ifdef SYSVSHM
    382 209	NOARGS		{ int linux_sys_shmat(int shmid, void *shmaddr, \
    383 			    int shmflg, u_long *raddr); }
    384 210	NOARGS		{ int linux_sys_shmctl(int shmid, int cmd, \
    385 			    struct linux_shmid_ds *buf); }
    386 211	NOARGS		{ int sys_shmdt(const void *shmaddr); }
    387 212	NOARGS		{ int linux_sys_shmget(key_t key, size_t size, int shmflg); }
    388 #else
    389 209	UNIMPL		shmat
    390 210	UNIMPL		shmctl
    391 211	UNIMPL		shmdt
    392 212	UNIMPL		shmget
    393 #endif
    394 213	UNIMPL
    395 214	UNIMPL
    396 215	UNIMPL
    397 216	UNIMPL
    398 217	NOARGS		{ int sys___msync13(void *addr, size_t len, int flags); }
    399 218	UNIMPL
    400 219	UNIMPL
    401 220	UNIMPL
    402 221	UNIMPL
    403 222	UNIMPL
    404 223	UNIMPL
    405 224	UNIMPL
    406 225	UNIMPL
    407 226	UNIMPL
    408 227	UNIMPL
    409 228	UNIMPL
    410 229	UNIMPL
    411 230	UNIMPL
    412 231	UNIMPL
    413 232	UNIMPL
    414 233	NOARGS		{ pid_t sys_getpgid(pid_t pid); }
    415 234	NOARGS		{ pid_t sys_getsid(pid_t pid); }
    416 235	UNIMPL		sigaltstack
    417 236	UNIMPL
    418 237	UNIMPL
    419 238	UNIMPL
    420 239	UNIMPL
    421 240	UNIMPL
    422 241	NODEF		{ int osf1_sys_sysinfo(int cmd, char buf, long len); }
    423 242	UNIMPL
    424 243	UNIMPL
    425 244	UNIMPL		osf1_sys_proplist_syscall
    426 245	UNIMPL
    427 246	UNIMPL
    428 247	UNIMPL
    429 248	UNIMPL
    430 249	UNIMPL
    431 250	UNIMPL
    432 251	NODEF		{ int osf1_sys_usleep_thread( \
    433 			    struct osf1_timeval *sleep, \
    434 			    struct osf1_timeval *slept); }
    435 252	UNIMPL
    436 253	UNIMPL
    437 254	UNIMPL
    438 255	UNIMPL		sysfs
    439 256	NODEF		{ int osf1_sys_getsysinfo(u_long op, void *buffer, \
    440 			    u_long nbytes, void *arg, u_long flag); }
    441 257	NODEF		{ int osf1_sys_setsysinfo(u_long op, void *buffer, \
    442 			    u_long nbytes, void *arg, u_long flag); }
    443 258	UNIMPL
    444 259	UNIMPL
    445 260	UNIMPL
    446 ; This entry doesn't exist in the Alpha linux syscall table but the function is
    447 ; implemented and used on other ports.
    448 261	STD		{ int linux_sys_fdatasync(int fd); }
    449 262	UNIMPL
    450 263	UNIMPL
    451 264	UNIMPL
    452 265	UNIMPL
    453 266	UNIMPL
    454 267	UNIMPL
    455 268	UNIMPL
    456 269	UNIMPL
    457 270	UNIMPL
    458 271	UNIMPL
    459 272	UNIMPL
    460 273	UNIMPL
    461 274	UNIMPL
    462 275	UNIMPL
    463 276	UNIMPL
    464 277	UNIMPL
    465 278	UNIMPL
    466 279	UNIMPL
    467 280	UNIMPL
    468 281	UNIMPL
    469 282	UNIMPL
    470 283	UNIMPL
    471 284	UNIMPL
    472 285	UNIMPL
    473 286	UNIMPL
    474 287	UNIMPL
    475 288	UNIMPL
    476 289	UNIMPL
    477 290	UNIMPL
    478 291	UNIMPL
    479 292	UNIMPL
    480 293	UNIMPL
    481 294	UNIMPL
    482 295	UNIMPL
    483 296	UNIMPL
    484 297	UNIMPL
    485 298	UNIMPL
    486 299	UNIMPL
    487 300	UNIMPL		bdflush
    488 301	UNIMPL		sethae
    489 302	UNIMPL		mount
    490 303	UNIMPL		old_adjtimex
    491 304	STD		{ int linux_sys_swapoff(const char *path); }
    492 305	STD		{ int linux_sys_getdents(int fd, \
    493 			    struct linux_dirent *dent, unsigned int count); }
    494 306	UNIMPL		alpha_create_module
    495 307	UNIMPL		init_module
    496 308	UNIMPL		delete_module
    497 309	UNIMPL		get_kernel_syms
    498 310	UNIMPL		syslog
    499 311	STD		{ int linux_sys_reboot(int magic1, int magic2, \
    500 			    int cmd, void *arg); }
    501 312	STD		{ int linux_sys_clone(int flags, void *stack); }
    502 #ifdef EXEC_AOUT
    503 313	STD		{ int linux_sys_uselib(const char *path); }
    504 #else
    505 313	UNIMPL		sys_uselib
    506 #endif
    507 314	NOARGS		{ int sys_mlock(const void *addr, size_t len); }
    508 315	NOARGS		{ int sys_munlock(const void *addr, size_t len); }
    509 316	NOARGS		{ int sys_mlockall(int flags); }
    510 317	NOARGS		{ int sys_munlockall(void); }
    511 318	STD		{ int linux_sys_sysinfo(struct linux_sysinfo *arg); }
    512 319	STD		{ int linux_sys___sysctl(struct linux___sysctl *lsp); }
    513 320	UNIMPL		idle
    514 321	UNIMPL		oldumount
    515 322	STD		{ int linux_sys_swapon(const char *name); }
    516 323	STD		{ int linux_sys_times(struct times *tms); }
    517 324	STD		{ int linux_sys_personality(int per); }
    518 325	STD		{ int linux_sys_setfsuid(uid_t uid); }
    519 326	STD		{ int linux_sys_setfsgid(gid_t gid); }
    520 327	UNIMPL		ustat
    521 328	STD		{ int linux_sys_statfs(const char *path, \
    522 			    struct linux_statfs *sp); }
    523 329	STD		{ int linux_sys_fstatfs(int fd, \
    524 			    struct linux_statfs *sp); }
    525 330	STD		{ int linux_sys_sched_setparam(pid_t pid, \
    526 			    const struct linux_sched_param *sp); }
    527 331	STD		{ int linux_sys_sched_getparam(pid_t pid, \
    528 			    struct linux_sched_param *sp); }
    529 332	STD		{ int linux_sys_sched_setscheduler(pid_t pid, \
    530 			    int policy, const struct linux_sched_param *sp); }
    531 333	STD		{ int linux_sys_sched_getscheduler(pid_t pid); }
    532 334	STD		{ int linux_sys_sched_yield(void); }
    533 335	STD		{ int linux_sys_sched_get_priority_max(int policy); }
    534 336	STD		{ int linux_sys_sched_get_priority_min(int policy); }
    535 337	UNIMPL		sched_rr_get_interval
    536 338	UNIMPL		afs_syscall
    537 339	STD		{ int linux_sys_uname(struct linux_utsname *up); }
    538 340	STD		{ int linux_sys_nanosleep( \
    539 			    const struct linux_timespec *rqtp, \
    540 			    struct linux_timespec *rmtp); }
    541 341	STD		{ void *linux_sys_mremap(void *old_address, \
    542 			    size_t old_size, size_t new_size, u_long flags); }
    543 342	UNIMPL		nfsservctl
    544 343	STD		{ int linux_sys_setresuid(uid_t ruid, uid_t euid, \
    545 			    uid_t suid); }
    546 344	STD		{ int linux_sys_getresuid(uid_t *ruid, uid_t *euid, \
    547 			    uid_t *suid); }
    548 345	UNIMPL		pciconfig_read
    549 346	UNIMPL		pciconfig_write
    550 347	UNIMPL		query_module
    551 348	UNIMPL		prctl
    552 349	STD		{ int linux_sys_pread(int fd, char *buf, \
    553 			    size_t nbyte, linux_off_t offset); }
    554 350	STD		{ int linux_sys_pwrite(int fd, char *buf, \
    555 			    size_t nbyte, linux_off_t offset); }
    556 351	STD		{ int linux_sys_rt_sigreturn( \
    557 				struct linux_rt_sigframe *sfp); }
    558 352	STD		{ int linux_sys_rt_sigaction(int signum, \
    559 				const struct linux_sigaction *nsa, \
    560 				struct linux_sigaction *osa, \
    561 				size_t sigsetsize); }
    562 353	STD		{ int linux_sys_rt_sigprocmask(int how, \
    563 			    const linux_sigset_t *set, \
    564 			    linux_sigset_t *oset, \
    565 			    size_t sigsetsize); }
    566 354	STD		{ int linux_sys_rt_sigpending( \
    567 			    linux_sigset_t *set, \
    568 			    size_t sigsetsize); }
    569 355	UNIMPL		rt_sigtimedwait
    570 ; XXX XAX int here?  sigset_t here?
    571 356	STD		{ int linux_sys_rt_queueinfo(int pid, int signum, \
    572 			    linux_siginfo_t *uinfo); }
    573 357	STD		{ int linux_sys_rt_sigsuspend(linux_sigset_t *unewset, \
    574 			    size_t sigsetsize); }
    575 358	STD		{ int linux_sys_select(int nfds, fd_set *readfds, \
    576 			    fd_set *writefds, fd_set *exceptfds, \
    577 			    struct timeval *timeout); }
    578 359	NOARGS		{ int sys_gettimeofday(struct timeval *tp, \
    579 			    struct timezone *tzp); }
    580 360	NOARGS		{ int sys_settimeofday(const struct timeval *tp, \
    581 			    const struct timezone *tzp); }
    582 361	NOARGS		{ int sys_getitimer(int which, \
    583 			    struct itimerval *itv); }
    584 362	NOARGS		{ int sys_setitimer(int which, \
    585 			    const struct itimerval *itv, \
    586 			    struct itimerval *oitv); }
    587 363	NOARGS		{ int sys_utimes(char *path, \
    588 			    struct timeval *times); }
    589 364	NOARGS		{ int sys_getrusage(int who, struct rusage *rusage); }
    590 365	STD		{ int linux_sys_wait4(int pid, int *status, \
    591 			    int options, struct rusage *rusage); }
    592 366	UNIMPL		adjtimex
    593 367	NOARGS		{ int sys___getcwd(char *bufp, size_t length); }
    594 368	UNIMPL		capget
    595 369	UNIMPL		capset
    596 370	UNIMPL		sendfile
    597 371	UNIMPL		setresgid
    598 372	UNIMPL		getresgid
    599 373	UNIMPL		sys_dipc
    600 374	UNIMPL		pivot_root
    601 375	NOARGS		{ int sys_mincore(void *addr, size_t len, char *vec); }
    602 376	UNIMPL		pciconfig_iobase
    603 377	STD		{ int linux_sys_getdents64(int fd, \
    604 			    struct linux_dirent64 *dent, unsigned int count); }
    605 378	UNIMPL		gettid
    606 379	UNIMPL		readahead
    607 380	UNIMPL		/* unused */
    608 381	UNIMPL		tkill
    609 382	STD		{ int linux_sys_setxattr(char *path, char *name, \
    610 			    void *value, size_t size, int flags); }
    611 383	STD		{ int linux_sys_lsetxattr(char *path, char *name, \
    612 			    void *value, size_t size, int flags); }
    613 384	STD		{ int linux_sys_fsetxattr(int fd, char *name, \
    614 			    void *value, size_t size, int flags); }
    615 385	STD		{ ssize_t linux_sys_getxattr(char *path, char *name, \
    616 			    void *value, size_t size); }
    617 386	STD		{ ssize_t linux_sys_lgetxattr(char *path, char *name, \
    618 			    void *value, size_t size); }
    619 387	STD		{ ssize_t linux_sys_fgetxattr(int fd, char *name, \
    620 			    void *value, size_t size); }
    621 388	STD		{ ssize_t linux_sys_listxattr(char *path, char *list, \
    622 			    size_t size); }
    623 389	STD		{ ssize_t linux_sys_llistxattr(char *path, char *list, \
    624 			    size_t size); }
    625 390	STD		{ ssize_t linux_sys_flistxattr(int fd, char *list, \
    626 			    size_t size); }
    627 391	STD		{ int linux_sys_removexattr(char *path, char *name); }
    628 392	STD		{ int linux_sys_lremovexattr(char *path, char *name); }
    629 393	STD		{ int linux_sys_fremovexattr(int fd, char *name); }
    630 394	UNIMPL		futex
    631 395	UNIMPL		sched_setaffinity
    632 396	UNIMPL		sched_getaffinity
    633 397	UNIMPL		tuxcall
    634 398	UNIMPL		io_setup
    635 399	UNIMPL		io_destroy
    636 400	UNIMPL		io_getevents
    637 401	UNIMPL		io_submit
    638 402	UNIMPL		io_cancel
    639 403	UNIMPL		/* unused */
    640 404	UNIMPL		/* unused */
    641 405	STD		{ int linux_sys_exit_group(int error_code); }
    642 406	UNIMPL		lookup_dcookie
    643 407	UNIMPL		sys_epoll_create
    644 408	UNIMPL		sys_epoll_ctl
    645 409	UNIMPL		sys_epoll_wait
    646 410	UNIMPL		remap_file_pages
    647 411	UNIMPL		set_tid_address
    648 412	UNIMPL		restart_syscall
    649 413	UNIMPL		fadvise64
    650 414	UNIMPL		timer_create
    651 415	UNIMPL		timer_settime
    652 416	UNIMPL		timer_gettime
    653 417	UNIMPL		timer_getoverrun
    654 418	UNIMPL		timer_delete
    655 419	STD		{ int linux_sys_clock_settime(clockid_t which, \
    656 			    struct linux_timespec *tp); }
    657 420	STD		{ int linux_sys_clock_gettime(clockid_t which, \
    658 			    struct linux_timespec *tp); }
    659 421	STD		{ int linux_sys_clock_getres(clockid_t which, \
    660 			    struct linux_timespec *tp); }
    661 422	STD		{ int linux_sys_clock_nanosleep(clockid_t which, \
    662 			    int flags, struct linux_timespec *rqtp, \
    663 			    struct linux_timespec *rmtp); }
    664 423	UNIMPL		semtimedop
    665 424	UNIMPL		tgkill
    666 425	UNIMPL		stat64
    667 426	UNIMPL		lstat64
    668 427	UNIMPL		fstat64
    669 428	UNIMPL		vserver
    670 429	UNIMPL		mbind
    671 430	UNIMPL		get_mempolicy
    672 431	UNIMPL		set_mempolicy
    673 432	UNIMPL		mq_open
    674 433	UNIMPL		mq_unlink
    675 434	UNIMPL		mq_timedsend
    676 435	UNIMPL		mq_timedreceive
    677 436	UNIMPL		mq_notify
    678 437	UNIMPL		mq_getsetattr
    679