syscalls.master revision 1.107 1 $NetBSD: syscalls.master,v 1.107 2024/06/29 13:46:09 christos Exp $
2 ;
3 ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93
4
5 ; NetBSD alpha COMPAT_LINUX system call name/number "master" file.
6 ; (See syscalls.conf to see what it is processed into.)
7 ;
8 ; Fields: number type [type-dependent ...]
9 ; number system call number, must be in order
10 ; type one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of
11 ; the compatibility options defined in syscalls.conf.
12 ;
13 ; types:
14 ; STD always included
15 ; OBSOL obsolete, not included in system
16 ; UNIMPL unimplemented, not included in system
17 ; NODEF included, but don't define the syscall number
18 ; NOARGS included, but don't define the syscall args structure
19 ; INDIR included, but don't define the syscall args structure
20 ; and allow it to be "really" varargs.
21 ;
22 ; The compat options are defined in the syscalls.conf file, and the
23 ; compat option name is prefixed to the syscall name. Other than
24 ; that, they're like NODEF (for 'compat' options), or STD (for
25 ; 'libcompat' options).
26 ;
27 ; The type-dependent arguments are as follows:
28 ; For STD, NODEF, NOARGS, and compat syscalls:
29 ; { pseudo-proto } [alias]
30 ; For other syscalls:
31 ; [comment]
32 ;
33 ; #ifdef's, etc. may be included, and are copied to the output files.
34 ; #include's are copied to the syscall names and switch definition files only.
35 ;
36 ; (ERH: 3/18/00)
37 ;
38 ; XXX XAX things to do:
39 ; make sure non-linux_foo() matches real linux syscalls.
40 ; create new linux_foo functions otherwise
41 ; (i.e. reboot, msgrcv? )
42 ; make sure linux_foo() matches expected prototypes in .c files.
43 ; kill not used functions. (ifdef the actual code)
44 ; 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_sched.h>
76 #include <compat/linux/common/linux_sem.h>
77 #include <compat/linux/common/linux_shm.h>
78 #include <compat/linux/common/linux_mmap.h>
79 ;#include <compat/linux/common/linux_machdep.h>
80
81 #include <compat/linux/linux_syscallargs.h>
82 #include <compat/linux/arch/alpha/linux_osf1.h>
83
84 %%
85
86 0 NOARGS { int|linux_sys||nosys(void); } syscall
87 1 STD { int|linux_sys||exit(int rval); }
88 2 NOARGS { int|sys||fork(void); }
89 3 NOARGS { ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
90 4 NOARGS { ssize_t|sys||write(int fd, const void *buf, \
91 size_t nbyte); }
92 5 UNIMPL
93 6 NOARGS { int|sys||close(int fd); }
94 7 STD { int|linux_sys||osf1_wait4(int pid, int *status, \
95 int options, struct osf1_rusage *rusage); }
96 ;8 ALIAS osf1_sys_old_creat, NOT USED
97 8 STD { int|linux_sys||creat(const char *path, linux_umode_t mode); }
98 9 NOARGS { int|sys||link(const char *path, const char *link); }
99 10 STD { int|linux_sys||unlink(const char *path); }
100 11 UNIMPL
101 12 NOARGS { int|sys||chdir(const char *path); }
102 13 NOARGS { int|sys||fchdir(int fd); }
103 14 STD { int|linux_sys||mknod(const char *path, linux_umode_t mode, \
104 unsigned dev); }
105 15 NOARGS { int|sys||chmod(const char *path, int mode); }
106 16 NOARGS { int|sys||__posix_chown(const char *path, uid_t uid, \
107 gid_t gid); }
108 ;17 ALIAS osf1_sys_brk
109 17 STD { int|linux_sys||brk(char *nsize); }
110 18 UNIMPL
111 19 NOARGS { long|compat_43_sys||lseek(int fd, long offset, \
112 int whence); }
113 20 NOARGS { pid_t|sys||getpid_with_ppid(void); }
114 21 STD { int|linux_sys||osf1_mount(int type, const char *path, \
115 int flags, void *data); }
116 22 UNIMPL umount
117 23 NOARGS { int|sys||setuid(uid_t uid); }
118 24 NOARGS { uid_t|sys||getuid_with_euid(void); }
119 25 UNIMPL
120 26 STD { int|linux_sys||ptrace(long request, long pid, \
121 long addr, long data); }
122 27 UNIMPL
123 28 UNIMPL
124 29 UNIMPL
125 30 UNIMPL
126 31 UNIMPL
127 32 UNIMPL
128 33 NOARGS { int|sys||access(const char *path, int flags); }
129 34 UNIMPL
130 35 UNIMPL
131 36 NOARGS { int|sys||sync(void); }
132 37 STD { int|linux_sys||kill(int pid, int signum); }
133 38 UNIMPL
134 39 NOARGS { int|sys||setpgid(int pid, int pgid); }
135 40 UNIMPL
136 41 NOARGS { int|sys||dup(int fd); }
137 42 NOARGS { int|linux_sys||pipe(void); }
138 43 STD { int|linux_sys||osf1_set_program_attributes( \
139 void *taddr, unsigned long tsize, \
140 void *daddr, unsigned long dsize); }
141 44 UNIMPL
142 45 STD { int|linux_sys||open(const char *path, int flags, \
143 linux_umode_t mode); }
144 46 UNIMPL
145 47 NOARGS { gid_t|sys||getgid_with_egid(void); }
146 ; ALIAS osf1_sys_sigprocmask(int how, unsigned long mask);
147 ; XXX <- copied from osf1/syscalls.master
148 48 NOARGS { int|compat_13_sys||sigprocmask(int how, \
149 sigset13_t mask); }
150 49 UNIMPL
151 50 UNIMPL
152 51 NOARGS { int|sys||acct(const char *path); }
153 52 STD { int|linux_sys||sigpending(linux_old_sigset_t *set); }
154 53 UNIMPL
155 54 STD { int|linux_sys||ioctl(int fd, u_long com, \
156 void *data); }
157 55 UNIMPL
158 56 UNIMPL
159 57 NOARGS { int|sys||symlink(const char *path, const char *to); }
160 58 NOARGS { ssize_t|sys||readlink(const char *path, char *buf, \
161 int count); }
162 59 NOARGS { int|sys||execve(const char *path, char **argp, \
163 char **envp); }
164 60 NOARGS { mode_t|sys||umask(mode_t newmask); }
165 61 NOARGS { int|sys||chroot(const char *path); }
166 62 UNIMPL
167 63 NOARGS { int|sys||getpgrp(void); }
168 64 NOARGS { int|compat_43_sys||getpagesize(void); }
169 65 UNIMPL
170 66 NOARGS { int|sys|14|vfork(void); }
171 67 STD { int|linux_sys||stat(const char *path, \
172 struct linux_stat *sp); }
173 68 STD { int|linux_sys||lstat(const char *path, \
174 struct linux_stat *sp); }
175 69 UNIMPL
176 70 UNIMPL
177 ;71 ALIAS osf1_sys_mmap
178 71 NOARGS { int|linux_sys||mmap(unsigned long addr, size_t len, \
179 int prot, int flags, int fd, linux_off_t offset); }
180 72 UNIMPL
181 73 NOARGS { int|sys||munmap(void *addr, size_t len); }
182 74 STD { int|linux_sys||mprotect(const void *start, \
183 unsigned long len, int prot); }
184 75 NOARGS { int|sys||madvise(void *addr, size_t len, int behav); }
185 76 UNIMPL vhangup
186 77 UNIMPL
187 78 UNIMPL
188 79 NOARGS { int|sys||getgroups(int gidsetsize, gid_t *gidset); }
189 80 NOARGS { int|sys||setgroups(int gidsetsize, const gid_t *gidset); }
190 81 UNIMPL
191 82 UNIMPL setpgrp
192 83 STD { int|linux_sys||osf1_setitimer(int which, \
193 struct osf1_itimerval *itv, \
194 struct osf1_itimerval *oitv); }
195 84 UNIMPL
196 85 UNIMPL
197 86 UNIMPL osf1_sys_getitimer
198 87 NOARGS { int|compat_43_sys||gethostname(char *hostname, \
199 u_int len); }
200 88 NOARGS { int|compat_43_sys||sethostname(char *hostname, \
201 u_int len); }
202 89 UNIMPL getdtablesize
203 90 NOARGS { int|sys||dup2(int from, int to); }
204 91 STD { int|linux_sys||fstat(int fd, struct linux_stat *sp); }
205 92 STD { int|linux_sys||fcntl(int fd, int cmd, void *arg); }
206 93 STD { int|linux_sys||osf1_select(u_int nd, fd_set *in, \
207 fd_set *ou, fd_set *ex, struct osf1_timeval *tv); }
208 94 NOARGS { int|sys||poll(struct pollfd *fds, u_int nfds, \
209 int timeout); }
210 95 NOARGS { int|sys||fsync(int fd); }
211 96 NOARGS { int|sys||setpriority(int which, int who, int prio); }
212 97 STD { int|linux_sys||socket(int domain, int type, \
213 int protocol); }
214 98 STD { int|linux_sys||connect(int s, \
215 const struct osockaddr *name, \
216 unsigned int namelen); }
217 99 STD { int|linux_sys||accept(int s, \
218 struct osockaddr *name, int *anamelen); }
219 ;100 ALIAS osf1_sys_getpriority
220 100 STD { int|linux_sys||getpriority(int which, int who); }
221 101 STD { int|linux_sys||send(int s, void *buf, int len, \
222 int flags); }
223 102 STD { int|linux_sys||recv(int s, void *buf, int len, \
224 int flags); }
225 103 STD { int|linux_sys||sigreturn(struct linux_sigframe *sfp); }
226 104 STD { int|linux_sys||bind(int s, \
227 const struct osockaddr *name, \
228 unsigned int namelen); }
229 105 STD { int|linux_sys||setsockopt(int s, int level, \
230 int optname, void *optval, int optlen); }
231 106 NOARGS { int|sys||listen(int s, int backlog); }
232 107 UNIMPL
233 108 UNIMPL
234 109 UNIMPL
235 110 UNIMPL
236
237 111 STD { int|linux_sys||sigsuspend(void *restart, \
238 int oldmask, int mask); }
239 ;112 ALIAS osf1_sys_sigstack
240 112 NOARGS { int|compat_43_sys||sigstack(struct sigstack *nss, \
241 struct sigstack *oss); }
242 113 STD { ssize_t|linux_sys||recvmsg(int s, \
243 struct linux_msghdr *msg, int flags); }
244 114 STD { ssize_t|linux_sys||sendmsg(int s, \
245 const struct linux_msghdr *msg, int flags); }
246 115 UNIMPL
247 116 STD { int|linux_sys||osf1_gettimeofday(struct osf1_timeval *tv, \
248 struct osf1_timezone *tzp); }
249 117 STD { int|linux_sys||osf1_getrusage(int who, \
250 struct osf1_rusage *rusage); }
251 118 STD { int|linux_sys||getsockopt(int s, int level, \
252 int optname, void *optval, int *optlen); }
253 119 UNIMPL
254 120 NOARGS { ssize_t|sys||readv(int fd, const struct iovec *iovp, \
255 int iovcnt); }
256 121 NOARGS { ssize_t|sys||writev(int fd, const struct iovec *iovp, \
257 int iovcnt); }
258 122 STD { int|linux_sys||osf1_settimeofday(struct osf1_timeval *tv, \
259 struct osf1_timezone *tzp); }
260 123 NOARGS { int|sys||__posix_fchown(int fd, uid_t uid, \
261 gid_t gid); }
262 124 NOARGS { int|sys||fchmod(int fd, linux_umode_t mode); }
263 125 STD { int|linux_sys||recvfrom(int s, void *buf, int len, \
264 int flags, struct osockaddr *from, \
265 int *fromlenaddr); }
266 126 NOARGS { int|sys||setreuid(uid_t ruid, uid_t euid); }
267 127 NOARGS { int|sys||setregid(gid_t rgid, gid_t egid); }
268 128 NOARGS { int|sys||__posix_rename(const char *from, const char *to); }
269 129 NOARGS { int|compat_43_sys||truncate(const char *path, \
270 long length); }
271 130 NOARGS { int|compat_43_sys||ftruncate(int fd, long length); }
272 131 NOARGS { int|sys||flock(int fd, int how); }
273 132 NOARGS { int|sys||setgid(gid_t gid); }
274 133 STD { int|linux_sys||sendto(int s, void *msg, int len, \
275 int flags, struct osockaddr *to, int tolen); }
276 134 NOARGS { int|sys||shutdown(int s, int how); }
277 135 STD { int|linux_sys||socketpair(int domain, int type, \
278 int protocol, int *rsv); }
279 136 NOARGS { int|sys||mkdir(const char *path, linux_umode_t mode); }
280 137 NOARGS { int|sys||rmdir(const char *path); }
281 138 STD { int|linux_sys||osf1_utimes(const char *path, \
282 const struct osf1_timeval *tptr); }
283 139 UNIMPL
284 140 UNIMPL
285 141 STD { int|linux_sys||getpeername(int fdes, \
286 void *asa, int *alen); }
287 142 UNIMPL
288 143 UNIMPL
289 144 STD { int|linux_sys||getrlimit(int which, \
290 struct orlimit *rlp); }
291 145 STD { int|linux_sys||setrlimit(int which, \
292 const struct orlimit *rlp); }
293 146 UNIMPL
294 147 NOARGS { int|sys||setsid(void); }
295 148 UNIMPL quotactl
296 149 UNIMPL
297 150 STD { int|linux_sys||getsockname(int fdec, \
298 void *asa, int *alen); }
299 151 UNIMPL
300 152 UNIMPL
301 153 UNIMPL
302 154 UNIMPL
303 155 UNIMPL
304 ;156 ALIAS osf1_sys_sigaction
305 156 STD { int|linux_sys||sigaction(int signum, \
306 const struct linux_old_sigaction *nsa, \
307 struct linux_old_sigaction *osa); }
308 157 UNIMPL
309 158 UNIMPL
310 ;159 ALIAS osf1_sys_getdirentries
311 159 NOARGS { int|compat_43_sys||getdirentries(int fd, char *buf, \
312 u_int count, long *basep); }
313 160 STD { int|linux_sys||osf1_statfs(const char *path, \
314 struct osf1_statfs *buf, int len); }
315 161 STD { int|linux_sys||osf1_fstatfs(int fd, \
316 struct osf1_statfs *buf, int len); }
317 162 UNIMPL
318 163 UNIMPL
319 164 UNIMPL
320 ;165 ALIAS osf1_sys_getdomainname
321 165 NOARGS { int|compat_09_sys||getdomainname(char *domainname, \
322 int len); }
323 166 STD { int|linux_sys||setdomainname(char *domainname, \
324 int len); }
325 167 UNIMPL
326 168 UNIMPL
327 169 UNIMPL
328 170 UNIMPL
329 171 UNIMPL
330 172 UNIMPL
331 173 UNIMPL
332 174 UNIMPL
333 175 UNIMPL
334 176 UNIMPL
335 177 UNIMPL
336 178 UNIMPL
337 179 UNIMPL
338 180 UNIMPL
339 181 UNIMPL
340 182 UNIMPL
341 183 UNIMPL
342 184 UNIMPL
343 185 UNIMPL
344 186 UNIMPL
345 187 UNIMPL
346 188 UNIMPL
347 189 UNIMPL
348 190 UNIMPL
349 ; XXX: Dunno
350 191 STD { int|linux_sys||ugetrlimit(int which, \
351 struct rlimit *rlp); }
352 192 UNIMPL mmap2
353 193 UNIMPL
354 194 UNIMPL
355 195 UNIMPL
356 196 UNIMPL
357 197 UNIMPL
358 198 UNIMPL
359 199 UNIMPL osf1_sys_swapon
360 #ifdef SYSVMSG
361 200 NOARGS { int|linux_sys||msgctl(int msqid, int cmd, \
362 struct linux_msqid_ds *buf); }
363 201 NOARGS { int|sys||msgget(key_t key, int msgflg); }
364 202 NOARGS { ssize_t|sys||msgrcv(int msqid, void *msgp, \
365 size_t msgsz, long msgtyp, int msgflg); }
366 203 NOARGS { int|sys||msgsnd(int msqid, void *msgp, size_t msgsz, \
367 int msgflg); }
368 #else
369 200 UNIMPL msgctl
370 201 UNIMPL msgget
371 202 UNIMPL msgrcv
372 203 UNIMPL msgsnd
373 #endif
374 #ifdef SYSVSEM
375 204 NOARGS { int|linux_sys||semctl(int semid, int semnum, \
376 int cmd, union linux_semun arg); }
377 205 NOARGS { int|sys||semget(key_t key, int nsems, int semflg); }
378 206 NOARGS { int|sys||semop(int semid, struct sembuf *sops, \
379 size_t nsops); }
380 #else
381 204 UNIMPL semctl
382 205 UNIMPL semget
383 206 UNIMPL semop
384 #endif
385 ;207 ALIAS osf1_sys_utsname
386 207 STD { int|linux_sys||olduname(struct linux_old_utsname *up); }
387 208 NOARGS { int|sys||__posix_lchown(const char *path, uid_t uid, \
388 gid_t gid); }
389 #ifdef SYSVSHM
390 209 NOARGS { int|linux_sys||shmat(int shmid, void *shmaddr, \
391 int shmflg, u_long *raddr); }
392 210 NOARGS { int|linux_sys||shmctl(int shmid, int cmd, \
393 struct linux_shmid_ds *buf); }
394 211 NOARGS { int|sys||shmdt(const void *shmaddr); }
395 212 NOARGS { int|linux_sys||shmget(key_t key, size_t size, int shmflg); }
396 #else
397 209 UNIMPL shmat
398 210 UNIMPL shmctl
399 211 UNIMPL shmdt
400 212 UNIMPL shmget
401 #endif
402 213 UNIMPL
403 214 UNIMPL
404 215 UNIMPL
405 216 UNIMPL
406 217 NOARGS { int|sys|13|msync(void *addr, size_t len, int flags); }
407 218 UNIMPL
408 219 UNIMPL
409 220 UNIMPL
410 221 UNIMPL
411 222 UNIMPL
412 223 UNIMPL
413 224 UNIMPL
414 225 UNIMPL
415 226 UNIMPL
416 227 UNIMPL
417 228 UNIMPL
418 229 UNIMPL
419 230 UNIMPL
420 231 UNIMPL
421 232 UNIMPL
422 233 NOARGS { pid_t|sys||getpgid(pid_t pid); }
423 234 NOARGS { pid_t|sys||getsid(pid_t pid); }
424 235 UNIMPL sigaltstack
425 236 UNIMPL
426 237 UNIMPL
427 238 UNIMPL
428 239 UNIMPL
429 240 UNIMPL
430 241 STD { int|linux_sys||osf1_sysinfo(int cmd, char *buf, long len); }
431 242 UNIMPL
432 243 UNIMPL
433 244 UNIMPL osf1_sys_proplist_syscall
434 245 UNIMPL
435 246 UNIMPL
436 247 UNIMPL
437 248 UNIMPL
438 249 UNIMPL
439 250 UNIMPL
440 251 STD { int|linux_sys||osf1_usleep_thread( \
441 struct osf1_timeval *sleep, \
442 struct osf1_timeval *slept); }
443 252 UNIMPL
444 253 UNIMPL
445 254 UNIMPL
446 255 UNIMPL sysfs
447 256 STD { int|linux_sys||osf1_getsysinfo(u_long op, void *buffer, \
448 u_long nbytes, void *arg, u_long flag); }
449 257 STD { int|linux_sys||osf1_setsysinfo(u_long op, void *buffer, \
450 u_long nbytes, void *arg, u_long flag); }
451 258 UNIMPL
452 259 UNIMPL
453 260 UNIMPL
454 ; This entry doesn't exist in the Alpha linux syscall table but the function is
455 ; implemented and used on other ports.
456 261 STD { int|linux_sys||fdatasync(int fd); }
457 262 UNIMPL
458 263 UNIMPL
459 264 UNIMPL
460 265 UNIMPL
461 266 UNIMPL
462 267 UNIMPL
463 268 UNIMPL
464 269 UNIMPL
465 270 UNIMPL
466 271 UNIMPL
467 272 UNIMPL
468 273 UNIMPL
469 274 UNIMPL
470 275 UNIMPL
471 276 UNIMPL
472 277 UNIMPL
473 278 UNIMPL
474 279 UNIMPL
475 280 UNIMPL
476 281 UNIMPL
477 282 UNIMPL
478 283 UNIMPL
479 284 UNIMPL
480 285 UNIMPL
481 286 UNIMPL
482 287 UNIMPL
483 288 UNIMPL
484 289 UNIMPL
485 290 UNIMPL
486 291 UNIMPL
487 292 UNIMPL
488 293 UNIMPL
489 294 UNIMPL
490 295 UNIMPL
491 296 UNIMPL
492 297 UNIMPL
493 298 UNIMPL
494 299 UNIMPL
495 300 UNIMPL bdflush
496 301 UNIMPL sethae
497 302 UNIMPL mount
498 303 UNIMPL old_adjtimex
499 304 STD { int|linux_sys||swapoff(const char *path); }
500 305 STD { int|linux_sys||getdents(int fd, \
501 struct linux_dirent *dent, unsigned int count); }
502 306 UNIMPL alpha_create_module
503 307 UNIMPL init_module
504 308 UNIMPL delete_module
505 309 UNIMPL get_kernel_syms
506 310 UNIMPL syslog
507 311 STD { int|linux_sys||reboot(int magic1, int magic2, \
508 int cmd, void *arg); }
509 312 STD { int|linux_sys||clone(int flags, void *stack, \
510 void *parent_tidptr, void *child_tidptr, void *tls); }
511 #ifdef EXEC_AOUT
512 313 STD { int|linux_sys||uselib(const char *path); }
513 #else
514 313 UNIMPL sys_uselib
515 #endif
516 314 NOARGS { int|sys||mlock(const void *addr, size_t len); }
517 315 NOARGS { int|sys||munlock(const void *addr, size_t len); }
518 316 NOARGS { int|sys||mlockall(int flags); }
519 317 NOARGS { int|sys||munlockall(void); }
520 318 STD { int|linux_sys||sysinfo(struct linux_sysinfo *arg); }
521 319 STD { int|linux_sys||__sysctl(struct linux___sysctl *lsp); }
522 320 UNIMPL idle
523 321 UNIMPL oldumount
524 322 STD { int|linux_sys||swapon(const char *name); }
525 323 STD { int|linux_sys||times(struct times *tms); }
526 324 STD { int|linux_sys||personality(unsigned long per); }
527 325 STD { int|linux_sys||setfsuid(uid_t uid); }
528 326 STD { int|linux_sys||setfsgid(gid_t gid); }
529 327 UNIMPL ustat
530 328 STD { int|linux_sys||statfs(const char *path, \
531 struct linux_statfs *sp); }
532 329 STD { int|linux_sys||fstatfs(int fd, \
533 struct linux_statfs *sp); }
534 330 STD { int|linux_sys||sched_setparam(pid_t pid, \
535 const struct linux_sched_param *sp); }
536 331 STD { int|linux_sys||sched_getparam(pid_t pid, \
537 struct linux_sched_param *sp); }
538 332 STD { int|linux_sys||sched_setscheduler(pid_t pid, \
539 int policy, const struct linux_sched_param *sp); }
540 333 STD { int|linux_sys||sched_getscheduler(pid_t pid); }
541 334 STD { int|linux_sys||sched_yield(void); }
542 335 STD { int|linux_sys||sched_get_priority_max(int policy); }
543 336 STD { int|linux_sys||sched_get_priority_min(int policy); }
544 337 UNIMPL sched_rr_get_interval
545 338 UNIMPL afs_syscall
546 339 STD { int|linux_sys||uname(struct linux_utsname *up); }
547 340 STD { int|linux_sys||nanosleep( \
548 const struct linux_timespec *rqtp, \
549 struct linux_timespec *rmtp); }
550 341 STD { void *|linux_sys||mremap(void *old_address, \
551 size_t old_size, size_t new_size, u_long flags); }
552 342 UNIMPL nfsservctl
553 343 STD { int|linux_sys||setresuid(uid_t ruid, uid_t euid, \
554 uid_t suid); }
555 344 STD { int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \
556 uid_t *suid); }
557 345 UNIMPL pciconfig_read
558 346 UNIMPL pciconfig_write
559 347 UNIMPL query_module
560 348 UNIMPL prctl
561 349 STD { int|linux_sys||pread(int fd, char *buf, \
562 size_t nbyte, off_t offset); }
563 350 STD { int|linux_sys||pwrite(int fd, char *buf, \
564 size_t nbyte, off_t offset); }
565 351 STD { int|linux_sys||rt_sigreturn( \
566 struct linux_rt_sigframe *sfp); }
567 352 STD { int|linux_sys||rt_sigaction(int signum, \
568 const struct linux_sigaction *nsa, \
569 struct linux_sigaction *osa, \
570 size_t sigsetsize); }
571 353 STD { int|linux_sys||rt_sigprocmask(int how, \
572 const linux_sigset_t *set, \
573 linux_sigset_t *oset, \
574 size_t sigsetsize); }
575 354 STD { int|linux_sys||rt_sigpending( \
576 linux_sigset_t *set, \
577 size_t sigsetsize); }
578 355 STD { int|linux_sys||rt_sigtimedwait( \
579 const linux_sigset_t *set, \
580 linux_siginfo_t *info, \
581 const struct linux_timespec *timeout); }
582 356 STD { int|linux_sys||rt_queueinfo(int pid, int signum, \
583 linux_siginfo_t *uinfo); }
584 357 STD { int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \
585 size_t sigsetsize); }
586 358 STD { int|linux_sys||select(int nfds, fd_set *readfds, \
587 fd_set *writefds, fd_set *exceptfds, \
588 struct timeval50 *timeout); }
589 359 STD { int|linux_sys||gettimeofday(struct timeval50 *tp, \
590 struct timezone *tzp); }
591 360 STD { int|linux_sys||settimeofday(struct timeval50 *tp, \
592 struct timezone *tzp); }
593 361 NOARGS { int|compat_50_sys||getitimer(int which, \
594 struct itimerval50 *itv); }
595 362 NOARGS { int|compat_50_sys||setitimer(int which, \
596 const struct itimerval50 *itv, \
597 struct itimerval50 *oitv); }
598 363 NOARGS { int|compat_50_sys||utimes(const char *path, \
599 const struct timeval50 *tptr); }
600 364 NOARGS { int|compat_50_sys||getrusage(int who, \
601 struct rusage50 *rusage); }
602 365 STD { int|linux_sys||wait4(int pid, int *status, \
603 int options, struct rusage50 *rusage); }
604 366 UNIMPL adjtimex
605 367 NOARGS { int|sys||__getcwd(char *bufp, size_t length); }
606 368 UNIMPL capget
607 369 UNIMPL capset
608 370 UNIMPL sendfile
609 371 UNIMPL setresgid
610 372 UNIMPL getresgid
611 373 UNIMPL sys_dipc
612 374 UNIMPL pivot_root
613 375 NOARGS { int|sys||mincore(void *addr, size_t len, char *vec); }
614 376 UNIMPL pciconfig_iobase
615 377 STD { int|linux_sys||getdents64(int fd, \
616 struct linux_dirent64 *dent, unsigned int count); }
617 378 NOARGS { pid_t|linux_sys||gettid(void); }
618 379 STD { ssize_t|linux_sys||readahead(int fd, off_t offset, \
619 size_t count); }
620 380 UNIMPL /* unused */
621 381 STD { int|linux_sys||tkill(int tid, int sig); }
622 382 STD { int|linux_sys||setxattr(char *path, char *name, \
623 void *value, size_t size, int flags); }
624 383 STD { int|linux_sys||lsetxattr(char *path, char *name, \
625 void *value, size_t size, int flags); }
626 384 STD { int|linux_sys||fsetxattr(int fd, char *name, \
627 void *value, size_t size, int flags); }
628 385 STD { ssize_t|linux_sys||getxattr(char *path, char *name, \
629 void *value, size_t size); }
630 386 STD { ssize_t|linux_sys||lgetxattr(char *path, char *name, \
631 void *value, size_t size); }
632 387 STD { ssize_t|linux_sys||fgetxattr(int fd, char *name, \
633 void *value, size_t size); }
634 388 STD { ssize_t|linux_sys||listxattr(char *path, char *list, \
635 size_t size); }
636 389 STD { ssize_t|linux_sys||llistxattr(char *path, char *list, \
637 size_t size); }
638 390 STD { ssize_t|linux_sys||flistxattr(int fd, char *list, \
639 size_t size); }
640 391 STD { int|linux_sys||removexattr(char *path, char *name); }
641 392 STD { int|linux_sys||lremovexattr(char *path, char *name); }
642 393 STD { int|linux_sys||fremovexattr(int fd, char *name); }
643 394 STD { int|linux_sys||futex(int *uaddr, int op, int val, \
644 const struct linux_timespec *timeout, int *uaddr2, \
645 int val3); }
646 395 STD { int|linux_sys||sched_setaffinity(pid_t pid, \
647 unsigned int len, unsigned long *mask); }
648 396 STD { int|linux_sys||sched_getaffinity(pid_t pid, \
649 unsigned int len, unsigned long *mask); }
650 397 UNIMPL tuxcall
651 398 UNIMPL io_setup
652 399 UNIMPL io_destroy
653 400 UNIMPL io_getevents
654 401 UNIMPL io_submit
655 402 UNIMPL io_cancel
656 403 UNIMPL /* unused */
657 404 UNIMPL /* unused */
658 405 STD { int|linux_sys||exit_group(int error_code); }
659 406 UNIMPL lookup_dcookie
660 407 STD { int|linux_sys||epoll_create(int size); }
661 408 STD { int|linux_sys||epoll_ctl(int epfd, int op, int fd, \
662 struct linux_epoll_event *event); }
663 409 STD { int|linux_sys||epoll_wait(int epfd, \
664 struct linux_epoll_event *events, int maxevents, \
665 int timeout); }
666 410 UNIMPL remap_file_pages
667 411 STD { int|linux_sys||set_tid_address(int *tid); }
668 412 UNIMPL restart_syscall
669 413 STD { int|linux_sys||fadvise64(int fd, off_t offset, \
670 size_t len, int advice); }
671 414 STD { int|linux_sys||timer_create(clockid_t clockid, \
672 struct linux_sigevent *evp, timer_t *timerid); }
673 415 STD { int|linux_sys||timer_settime(timer_t timerid, \
674 int flags, const struct linux_itimerspec *tim, \
675 struct linux_itimerspec *otim); }
676 416 STD { int|linux_sys||timer_gettime(timer_t timerid, \
677 struct linux_itimerspec *tim); }
678 417 NOARGS { int|sys||timer_getoverrun(timer_t timerid); }
679 418 NOARGS { int|sys||timer_delete(timer_t timerid); }
680 419 STD { int|linux_sys||clock_settime(clockid_t which, \
681 struct linux_timespec *tp); }
682 420 STD { int|linux_sys||clock_gettime(clockid_t which, \
683 struct linux_timespec *tp); }
684 421 STD { int|linux_sys||clock_getres(clockid_t which, \
685 struct linux_timespec *tp); }
686 422 STD { int|linux_sys||clock_nanosleep(clockid_t which, \
687 int flags, struct linux_timespec *rqtp, \
688 struct linux_timespec *rmtp); }
689 423 UNIMPL semtimedop
690 424 STD { int|linux_sys||tgkill(int tgid, int tid, int sig); }
691 425 STD { int|linux_sys||stat64(const char *path, \
692 struct linux_stat64 *sp); }
693 426 STD { int|linux_sys||lstat64(const char *path, \
694 struct linux_stat64 *sp); }
695 427 STD { int|linux_sys||fstat64(int fd, \
696 struct linux_stat64 *sp); }
697 428 UNIMPL vserver
698 429 UNIMPL mbind
699 430 UNIMPL get_mempolicy
700 431 UNIMPL set_mempolicy
701 432 UNIMPL mq_open
702 433 UNIMPL mq_unlink
703 434 UNIMPL mq_timedsend
704 435 UNIMPL mq_timedreceive
705 436 UNIMPL mq_notify
706 437 UNIMPL mq_getsetattr
707 438 STD { int|linux_sys||waitid(int idtype, id_t id, \
708 linux_siginfo_t *infop, int options, \
709 struct rusage50 *rusage); }
710 439 UNIMPL add_key
711 440 UNIMPL request_key
712 441 UNIMPL keyctl
713 442 UNIMPL ioprio_set
714 443 UNIMPL ioprio_get
715 444 STD { int|linux_sys||inotify_init(void); }
716 445 STD { int|linux_sys||inotify_add_watch(int fd, \
717 const char *pathname, uint32_t mask); }
718 446 STD { int|linux_sys||inotify_rm_watch(int fd, int wd); }
719 447 UNIMPL fdatasync
720 448 UNIMPL kexec_load
721 449 UNIMPL migrate_pages
722 450 STD { int|linux_sys||openat(int fd, const char *path, \
723 int flags, ... linux_umode_t mode); }
724 451 NOARGS { int|sys||mkdirat(int fd, const char *path, \
725 linux_umode_t mode); }
726 452 STD { int|linux_sys||mknodat(int fd, const char *path, \
727 linux_umode_t mode, unsigned dev); }
728 453 STD { int|linux_sys||fchownat(int fd, const char *path, \
729 uid_t owner, gid_t group, int flag); }
730 454 UNIMPL futimesat
731 455 STD { int|linux_sys||fstatat64(int fd, const char *path, \
732 struct linux_stat64 *sp, int flag); }
733 456 STD { int|linux_sys||unlinkat(int fd, const char *path, \
734 int flag); }
735 457 NOARGS { int|sys||renameat(int fromfd, const char *from, \
736 int tofd, const char *to); }
737 458 STD { int|linux_sys||linkat(int fd1, const char *name1, \
738 int fd2, const char *name2, int flags); }
739 459 NOARGS { int|sys||symlinkat(const char *path1, int fd, \
740 const char *path2); }
741 460 NOARGS { ssize_t|sys||readlinkat(int fd, const char *path, \
742 char *buf, size_t bufsize); }
743 461 STD { int|linux_sys||fchmodat(int fd, const char *path, \
744 linux_umode_t mode); }
745 462 STD { int|linux_sys||faccessat(int fd, const char *path, \
746 int amode); }
747 463 STD { int|linux_sys||pselect6(int nfds, fd_set *readfds, \
748 fd_set *writefds, fd_set *exceptfds, \
749 struct linux_timespec *timeout, \
750 linux_sized_sigset_t *ss); }
751 464 STD { int|linux_sys||ppoll(struct pollfd *fds, u_int nfds, \
752 struct linux_timespec *timeout, \
753 linux_sigset_t *sigset); }
754 465 UNIMPL unshare
755 ;
756 ; The NetBSD native robust list calls have different
757 ; argument names / types, but they are ABI-compatible
758 ; with Linux.
759 ;
760 466 NOARGS { int|sys||__futex_set_robust_list(void *head, \
761 size_t len); }
762 467 NOARGS { int|sys||__futex_get_robust_list(lwpid_t lwpid, \
763 void **headp, size_t *lenp); }
764 468 UNIMPL splice
765 469 UNIMPL sync_file_range
766 470 UNIMPL tee
767 471 UNIMPL vmsplice
768 472 UNIMPL move_pages
769 473 STD { int|linux_sys||getcpu(unsigned int *cpu, \
770 unsigned int *node, \
771 struct linux_getcpu_cache *tcache); }
772 474 STD { int|linux_sys||epoll_pwait(int epfd, \
773 struct linux_epoll_event *events, int maxevents, \
774 int timeout, const linux_sigset_t *sigmask); }
775 475 STD { int|linux_sys||utimensat(int fd, const char *path, \
776 struct linux_timespec *times, int flag); }
777 476 UNIMPL signalfd
778 477 UNIMPL timerfd
779 478 STD { int|linux_sys||eventfd(unsigned int initval); }
780 479 STD { int|linux_sys||recvmmsg(int s, \
781 struct linux_mmsghdr *msgvec, unsigned int vlen, \
782 unsigned int flags, struct timespec *timeout); }
783 480 STD { int|linux_sys||fallocate(int fd, int mode, \
784 off_t offset, off_t len); }
785 481 STD { int|linux_sys||timerfd_create(clockid_t clock_id, \
786 int flags); }
787 482 STD { int|linux_sys||timerfd_settime(int fd, int flags, \
788 const struct linux_itimerspec *tim, \
789 struct linux_itimerspec *otim); }
790 483 STD { int|linux_sys||timerfd_gettime(int fd, \
791 struct linux_itimerspec *tim); }
792 484 UNIMPL signalfd4
793 485 STD { int|linux_sys||eventfd2(unsigned int initval, \
794 int flags); }
795 486 STD { int|linux_sys||epoll_create1(int flags); }
796 487 STD { int|linux_sys||dup3(int from, int to, int flags); }
797 488 STD { int|linux_sys||pipe2(int *pfds, int flags); }
798 489 STD { int|linux_sys||inotify_init1(int flags); }
799 490 STD { int|linux_sys||preadv(int fd, \
800 const struct iovec *iovp, int iovcnt, \
801 unsigned long off_lo, unsigned long off_hi); }
802 491 STD { int|linux_sys||pwritev(int fd, \
803 const struct iovcnt *iovp, int iovcnt, \
804 unsigned long off_lo, unsigned long off_hi); }
805 492 UNIMPL rt_tgsigqueueinfo
806 493 UNIMPL perf_counter_open
807 494 UNIMPL fanotify_init
808 495 UNIMPL fanotify_mark
809 496 STD { int|linux_sys||prlimit64(pid_t pid, int which, \
810 struct rlimit *new_rlp, struct rlimit *old_rlp); }
811 497 UNIMPL name_to_handle_at
812 498 UNIMPL open_by_handle_at
813 499 UNIMPL clock_adjtime
814 500 UNIMPL syncfs
815 501 UNIMPL setns
816 502 STD { int|linux_sys||accept4(int s, \
817 struct osockaddr *name, \
818 int *anamelen, int flags); }
819 503 STD { int|linux_sys||sendmmsg(int s, \
820 struct linux_mmsghdr *msgvec, unsigned int vlen, \
821 unsigned int flags); }
822 504 UNIMPL process_vm_readv
823 505 UNIMPL process_vm_writev
824 506 UNIMPL kcmp
825 507 UNIMPL finit_module
826 508 UNIMPL sched_setattr
827 509 UNIMPL sched_getattr
828 510 UNIMPL renameat2
829 511 UNIMPL
830 512 UNIMPL
831 513 UNIMPL
832 514 UNIMPL
833 515 UNIMPL
834 516 UNIMPL
835 517 UNIMPL
836 518 UNIMPL
837 519 UNIMPL
838 520 UNIMPL
839 521 UNIMPL
840 522 STD { int|linux_sys||statx(int fd, const char *path, \
841 int flag, unsigned int mask, \
842 struct linux_statx *sp); }
843 523 UNIMPL
844 524 UNIMPL
845 525 UNIMPL
846 526 UNIMPL
847 527 UNIMPL
848 528 UNIMPL
849 529 UNIMPL
850 530 UNIMPL
851 531 UNIMPL
852 532 UNIMPL
853 533 UNIMPL
854 534 UNIMPL
855 535 UNIMPL
856 536 UNIMPL
857 537 UNIMPL
858 538 UNIMPL
859 539 UNIMPL
860 540 UNIMPL
861 541 UNIMPL
862 542 UNIMPL
863 543 UNIMPL
864 544 UNIMPL
865 545 UNIMPL
866 546 STD { int|linux_sys||close_range(unsigned int first, \
867 unsigned int last, unsigned int flags); }
868 547 UNIMPL
869 548 UNIMPL
870 549 STD { int|linux_sys||faccessat2(int fd, const char *path, \
871 int amode, int flags); }
872 550 UNIMPL
873 551 STD { int|linux_sys||epoll_pwait2(int epfd, \
874 struct linux_epoll_event *events, int maxevents, \
875 const struct linux_timespec *timeout, \
876 const linux_sigset_t *sigmask); }
877