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