syscalls.master revision 1.104 1 $NetBSD: syscalls.master,v 1.104 2023/08/19 17:49:49 christos Exp $
2
3 ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93
4
5 ; NetBSD m68k 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 #if defined(_KERNEL_OPT)
37 #include "opt_compat_netbsd.h"
38 #include "opt_compat_43.h"
39 #endif
40
41 #include <sys/param.h>
42 #include <sys/poll.h>
43 #include <sys/systm.h>
44 #include <sys/signal.h>
45 #include <sys/mount.h>
46 #include <sys/sched.h>
47 #include <sys/syscallargs.h>
48
49 #include <compat/linux/common/linux_types.h>
50 #include <compat/linux/common/linux_signal.h>
51 #include <compat/linux/common/linux_siginfo.h>
52 #include <compat/linux/common/linux_machdep.h>
53 #include <compat/linux/common/linux_mmap.h>
54
55 #include <compat/linux/linux_syscallargs.h>
56
57 %%
58
59 0 NOARGS { int|linux_sys||nosys(void); } syscall
60 1 STD { int|linux_sys||exit(int rval); }
61 2 NOARGS { int|sys||fork(void); }
62 3 NOARGS { ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
63 4 NOARGS { ssize_t|sys||write(int fd, const void *buf, \
64 size_t nbyte); }
65 5 STD { int|linux_sys||open(const char *path, int flags, \
66 linux_umode_t mode); }
67 6 NOARGS { int|sys||close(int fd); }
68 7 STD { int|linux_sys||waitpid(int pid, int *status, \
69 int options);}
70 8 STD { int|linux_sys||creat(const char *path, linux_umode_t mode); }
71 9 NOARGS { int|sys||link(const char *path, const char *link); }
72 10 STD { int|linux_sys||unlink(const char *path); }
73 11 NOARGS { int|sys||execve(const char *path, char **argp, \
74 char **envp); }
75 12 NOARGS { int|sys||chdir(const char *path); }
76 13 STD { int|linux_sys||time(linux_time_t *t); }
77 14 STD { int|linux_sys||mknod(const char *path, linux_umode_t mode, \
78 unsigned dev); }
79 15 NOARGS { int|sys||chmod(const char *path, int mode); }
80 ;16 lchown on i386; chown on m68k.
81 16 STD { int|linux_sys||chown16(const char *path, \
82 linux_uid16_t uid, linux_gid16_t gid); }
83 17 OBSOL break
84 18 OBSOL ostat
85 #if !defined(_KERNEL) || defined(COMPAT_43)
86 19 NOARGS { long|compat_43_sys||lseek(int fd, long offset, \
87 int whence); }
88 #else
89 19 UNIMPL compat_43_sys_lseek
90 #endif
91 20 NOARGS { pid_t|sys||getpid(void); }
92 21 UNIMPL mount
93 22 OBSOL umount
94 23 NOARGS linux_setuid16 { int|sys||setuid(uid_t uid); }
95 24 NOARGS linux_getuid16 { uid_t|sys||getuid(void); }
96 25 STD { int|linux_sys||stime(linux_time_t *t); }
97 26 STD { int|linux_sys||ptrace(int request, int pid, \
98 int addr, int data); }
99 27 STD { int|linux_sys||alarm(unsigned int secs); }
100 28 OBSOL ofstat
101 29 STD { int|linux_sys||pause(void); }
102 30 STD { int|linux_sys||utime(const char *path, \
103 struct linux_utimbuf *times); }
104 31 OBSOL stty
105 32 OBSOL gtty
106 33 NOARGS { int|sys||access(const char *path, int flags); }
107 34 STD { int|linux_sys||nice(int incr); }
108 35 OBSOL ftime
109 36 NOARGS { int|sys||sync(void); }
110 37 STD { int|linux_sys||kill(int pid, int signum); }
111 38 NOARGS { int|sys||__posix_rename(const char *from, \
112 const char *to); }
113 39 NOARGS { int|sys||mkdir(const char *path, linux_umode_t mode); }
114 40 NOARGS { int|sys||rmdir(const char *path); }
115 41 NOARGS { int|sys||dup(int fd); }
116 42 STD { int|linux_sys||pipe(int *pfds); }
117 43 STD { int|linux_sys||times(struct times *tms); }
118 44 OBSOL prof
119 45 STD { int|linux_sys||brk(char *nsize); }
120 46 NOARGS linux_setgid16 { int|sys||setgid(gid_t gid); }
121 47 NOARGS linux_getgid16 { gid_t|sys||getgid(void); }
122 48 STD { int|linux_sys||signal(int signum, \
123 linux_handler_t handler); }
124 49 NOARGS linux_geteuid16 { uid_t|sys||geteuid(void); }
125 50 NOARGS linux_getegid16 { gid_t|sys||getegid(void); }
126 51 NOARGS { int|sys||acct(char *path); }
127 52 UNIMPL umount
128 53 OBSOL lock
129 54 STD { int|linux_sys||ioctl(int fd, u_long com, \
130 void *data); }
131 55 STD { int|linux_sys||fcntl(int fd, int cmd, void *arg); }
132 56 OBSOL mpx
133 57 NOARGS { int|sys||setpgid(int pid, int pgid); }
134 58 OBSOL ulimit
135 59 UNIMPL oldolduname
136 60 NOARGS { int|sys||umask(int newmask); }
137 61 NOARGS { int|sys||chroot(char *path); }
138 62 UNIMPL ustat
139 63 NOARGS { int|sys||dup2(int from, int to); }
140 64 NOARGS { pid_t|sys||getppid(void); }
141 65 NOARGS { int|sys||getpgrp(void); }
142 66 NOARGS { int|sys||setsid(void); }
143 67 STD { int|linux_sys||sigaction(int signum, \
144 const struct linux_old_sigaction *nsa, \
145 struct linux_old_sigaction *osa); }
146 68 STD { int|linux_sys||siggetmask(void); }
147 69 STD { int|linux_sys||sigsetmask(linux_old_sigset_t mask); }
148 70 STD { int|linux_sys||setreuid16(linux_uid16_t ruid, \
149 linux_uid16_t euid); }
150 71 STD { int|linux_sys||setregid16(linux_gid16_t rgid, \
151 linux_gid16_t egid); }
152 72 STD { int|linux_sys||sigsuspend(void *restart, \
153 int oldmask, int mask); }
154 73 STD { int|linux_sys||sigpending(linux_old_sigset_t *set); }
155 #if !defined(_KERNEL) || defined(COMPAT_43)
156 74 NOARGS { int|compat_43_sys||sethostname(char *hostname, \
157 u_int len);}
158 #else
159 74 UNIMPL compat_43_sys_sethostname
160 #endif
161 75 STD { int|linux_sys||setrlimit(u_int which, \
162 struct orlimit *rlp); }
163 76 STD { int|linux_sys||getrlimit(u_int which, \
164 struct orlimit *rlp); }
165 77 NOARGS { int|compat_50_sys||getrusage(int who, \
166 struct rusage50 *rusage); }
167 78 STD { int|linux_sys||gettimeofday(struct timeval50 *tp, \
168 struct timezone *tzp); }
169 79 STD { int|linux_sys||settimeofday(struct timeval50 *tp, \
170 struct timezone *tzp); }
171 80 STD { int|linux_sys||getgroups16(int gidsetsize, \
172 linux_gid16_t *gidset); }
173 81 STD { int|linux_sys||setgroups16(int gidsetsize, \
174 linux_gid16_t *gidset); }
175 82 STD { int|linux_sys||oldselect(struct linux_oldselect *lsp); }
176 83 NOARGS { int|sys||symlink(const char *path, const char *to); }
177 #if !defined(_KERNEL) || defined(COMPAT_43)
178 84 NOARGS { int|compat_43_sys||lstat(const char *path, \
179 struct stat43 *up); } oolstat
180 #else
181 84 UNIMPL compat_43_sys_lstat
182 #endif
183 85 NOARGS { ssize_t|sys||readlink(const char *path, char *buf, \
184 int count); }
185 #ifdef EXEC_AOUT
186 86 STD { int|linux_sys||uselib(const char *path); }
187 #else
188 86 UNIMPL sys_uselib
189 #endif
190 87 STD { int|linux_sys||swapon(char *name); }
191 88 STD { int|linux_sys||reboot(int magic1, int magic2, \
192 int cmd, void *arg); }
193 89 STD { int|linux_sys||readdir(int fd, void *dent, \
194 unsigned int count); }
195 90 STD { int|linux_sys||old_mmap(struct linux_oldmmap *lmp); }
196 91 NOARGS { int|sys||munmap(void *addr, size_t len); }
197 92 NOARGS { int|compat_43_sys||truncate(const char *path, \
198 long length); }
199 #if !defined(_KERNEL) || defined(COMPAT_43)
200 93 NOARGS { int|compat_43_sys||ftruncate(int fd, long length); }
201 #else
202 93 UNIMPL compat_43_sys_ftruncate
203 #endif
204 94 NOARGS { int|sys||fchmod(int fd, linux_umode_t mode); }
205 95 STD { int|linux_sys||fchown16(int fd, linux_uid16_t uid, \
206 linux_gid16_t gid); }
207 96 STD { int|linux_sys||getpriority(int which, int who); }
208 97 NOARGS { int|sys||setpriority(int which, int who, int prio); }
209 98 NOARGS { int|sys||profil(void *samples, u_int size, \
210 u_int offset, u_int scale); }
211 99 STD { int|linux_sys||statfs(const char *path, \
212 struct linux_statfs *sp); }
213 100 STD { int|linux_sys||fstatfs(int fd, \
214 struct linux_statfs *sp); }
215 101 UNIMPL ioperm
216 102 STD { int|linux_sys||socketcall(int what, void *args); }
217 103 UNIMPL syslog
218 104 NOARGS { int|compat_50_sys||setitimer(int which, \
219 struct itimerval50 *itv, \
220 struct itimerval50 *oitv); }
221 105 NOARGS { int|compat_50_sys||getitimer(int which, \
222 struct itimerval50 *itv); }
223 106 STD { int|linux_sys||stat(const char *path, \
224 struct linux_stat *sp); }
225 107 STD { int|linux_sys||lstat(const char *path, \
226 struct linux_stat *sp); }
227 108 STD { int|linux_sys||fstat(int fd, struct linux_stat *sp); }
228 109 UNIMPL olduname
229 110 UNIMPL iopl
230 111 UNIMPL vhangup
231 112 UNIMPL idle
232 113 UNIMPL vm86old
233 114 STD { int|linux_sys||wait4(int pid, int *status, \
234 int options, struct rusage50 *rusage); }
235 115 STD { int|linux_sys||swapoff(const char *path); }
236 116 STD { int|linux_sys||sysinfo(struct linux_sysinfo *arg); }
237 117 STD { int|linux_sys||ipc(int what, int a1, int a2, int a3, \
238 void *ptr); }
239 118 NOARGS { int|sys||fsync(int fd); }
240 119 STD { int|linux_sys||sigreturn(void); }
241 120 STD { int|linux_sys||clone(int flags, void *stack, \
242 void *parent_tidptr, void *tls, void *child_tidptr); }
243 121 STD { int|linux_sys||setdomainname(char *domainname, \
244 int len); }
245 122 STD { int|linux_sys||uname(struct linux_utsname *up); }
246 123 STD { int|linux_sys||cacheflush(unsigned long addr, \
247 int scope, int cache, unsigned long len); }
248 124 UNIMPL adjtimex
249 125 STD { int|linux_sys||mprotect(const void *start, \
250 unsigned long len, int prot); }
251 126 STD { int|linux_sys||sigprocmask(int how, \
252 const linux_old_sigset_t *set, \
253 linux_old_sigset_t *oset); }
254 127 UNIMPL create_module
255 128 UNIMPL init_module
256 129 UNIMPL delete_module
257 130 UNIMPL get_kernel_syms
258 131 UNIMPL quotactl
259 132 NOARGS { pid_t|sys||getpgid(pid_t pid); }
260 133 NOARGS { int|sys||fchdir(int fd); }
261 134 UNIMPL bdflush
262 135 UNIMPL sysfs
263 136 STD { int|linux_sys||personality(unsigned long per); }
264 137 UNIMPL afs_syscall
265 138 NOARGS linux_setfsuid16 { int|linux_sys||setfsuid(uid_t uid); }
266 139 NOARGS linux_setfsgid16 { int|linux_sys||setfsgid(gid_t gid); }
267 140 STD { int|linux_sys||llseek(int fd, u_int32_t ohigh, \
268 u_int32_t olow, void *res, int whence); }
269 141 STD { int|linux_sys||getdents(int fd, \
270 struct linux_dirent *dent, unsigned int count); }
271 142 STD { int|linux_sys||select(int nfds, fd_set *readfds, \
272 fd_set *writefds, fd_set *exceptfds, \
273 struct timeval50 *timeout); }
274 143 NOARGS { int|sys||flock(int fd, int how); }
275 144 NOARGS { int|sys|13|msync(void *addr, size_t len, int flags); }
276 145 NOARGS { ssize_t|sys||readv(int fd, \
277 const struct iovec *iovp, int iovcnt); }
278 146 NOARGS { ssize_t|sys||writev(int fd, \
279 const struct iovec *iovp, int iovcnt); }
280 147 NOARGS { pid_t|sys||getsid(pid_t pid); }
281 148 STD { int|linux_sys||fdatasync(int fd); }
282 149 STD { int|linux_sys||__sysctl(struct linux___sysctl *lsp); }
283 150 NOARGS { int|sys||mlock(void *addr, size_t len); }
284 151 NOARGS { int|sys||munlock(void *addr, size_t len); }
285 152 NOARGS { int|sys||mlockall(int flags); }
286 153 NOARGS { int|sys||munlockall(void); }
287 154 STD { int|linux_sys||sched_setparam(pid_t pid, \
288 const struct linux_sched_param *sp); }
289 155 STD { int|linux_sys||sched_getparam(pid_t pid, \
290 struct linux_sched_param *sp); }
291 156 STD { int|linux_sys||sched_setscheduler(pid_t pid, \
292 int policy, const struct linux_sched_param *sp); }
293 157 STD { int|linux_sys||sched_getscheduler(pid_t pid); }
294 158 STD { int|linux_sys||sched_yield(void); }
295 159 STD { int|linux_sys||sched_get_priority_max(int policy); }
296 160 STD { int|linux_sys||sched_get_priority_min(int policy); }
297 161 UNIMPL sched_rr_get_interval
298 162 STD { int|linux_sys||nanosleep( \
299 const struct linux_timespec *rqtp, \
300 struct linux_timespec *rmtp); }
301 163 STD { void *|linux_sys||mremap(void *old_address, \
302 size_t old_size, size_t new_size, u_long flags); }
303 164 STD { int|linux_sys||setresuid16(linux_uid16_t ruid, \
304 linux_uid16_t euid, linux_uid16_t suid); }
305 165 STD { int|linux_sys||getresuid16(linux_uid16_t *ruid, \
306 linux_uid16_t *euid, linux_uid16_t *suid); }
307 166 UNIMPL vm86
308 167 UNIMPL query_module
309 168 NOARGS { int|sys||poll(struct pollfd *fds, u_int nfds, \
310 int timeout); }
311 169 UNIMPL nfsservctl
312 170 STD { int|linux_sys||setresgid16(linux_gid16_t rgid, \
313 linux_gid16_t egid, linux_gid16_t sgid); }
314 171 STD { int|linux_sys||getresgid16(linux_gid16_t *rgid, \
315 linux_gid16_t *egid, linux_gid16_t *sgid); }
316 172 UNIMPL prctl
317 173 STD { int|linux_sys||rt_sigreturn(void); }
318 174 STD { int|linux_sys||rt_sigaction(int signum, \
319 const struct linux_sigaction *nsa, \
320 struct linux_sigaction *osa, \
321 size_t sigsetsize); }
322 175 STD { int|linux_sys||rt_sigprocmask(int how, \
323 const linux_sigset_t *set, \
324 linux_sigset_t *oset, \
325 size_t sigsetsize); }
326 176 STD { int|linux_sys||rt_sigpending( \
327 linux_sigset_t *set, \
328 size_t sigsetsize); }
329 177 STD { int|linux_sys||rt_sigtimedwait( \
330 const linux_sigset_t *set, \
331 linux_siginfo_t *info, \
332 const struct linux_timespec *timeout); }
333 178 STD { int|linux_sys||rt_queueinfo(int pid, int signum, \
334 linux_siginfo_t *uinfo); }
335 179 STD { int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \
336 size_t sigsetsize); }
337 180 STD { int|linux_sys||pread(int fd, char *buf, \
338 size_t nbyte, off_t offset); }
339 181 STD { int|linux_sys||pwrite(int fd, char *buf, \
340 size_t nbyte, off_t offset); }
341 ;182 chown on i386; lchown on m68k.
342 182 STD { int|linux_sys||lchown16(const char *path, \
343 linux_uid16_t uid, linux_gid16_t gid); }
344 183 NOARGS { int|sys||__getcwd(char *bufp, size_t length); }
345 184 UNIMPL capget
346 185 UNIMPL capset
347 186 STD { int|linux_sys||sigaltstack( \
348 const struct linux_sigaltstack *ss, \
349 struct linux_sigaltstack *oss); }
350 187 UNIMPL sendfile
351 188 UNIMPL getpmsg
352 189 UNIMPL putpmsg
353 190 NOARGS { int|sys|14|vfork(void); }
354 191 STD { int|linux_sys||ugetrlimit(int which, \
355 struct orlimit *rlp); }
356 #define linux_sys_mmap2_args linux_sys_mmap_args
357 192 NOARGS { linux_off_t|linux_sys||mmap2(unsigned long addr, \
358 size_t len, int prot, int flags, int fd, \
359 linux_off_t offset); }
360 193 STD { int|linux_sys||truncate64(const char *path, \
361 off_t length); }
362 194 STD { int|linux_sys||ftruncate64(unsigned int fd, \
363 off_t length); }
364 195 STD { int|linux_sys||stat64(const char *path, \
365 struct linux_stat64 *sp); }
366 196 STD { int|linux_sys||lstat64(const char *path, \
367 struct linux_stat64 *sp); }
368 197 STD { int|linux_sys||fstat64(int fd, \
369 struct linux_stat64 *sp); }
370 198 NOARGS { int|sys||__posix_chown(const char *path, uid_t uid, \
371 gid_t gid); }
372 199 NOARGS { uid_t|sys||getuid(void); }
373 200 NOARGS { gid_t|sys||getgid(void); }
374 201 NOARGS { uid_t|sys||geteuid(void); }
375 202 NOARGS { gid_t|sys||getegid(void); }
376 203 NOARGS { int|sys||setreuid(uid_t ruid, uid_t euid); }
377 204 NOARGS { int|sys||setregid(gid_t rgid, gid_t egid); }
378 205 NOARGS { int|sys||getgroups(int gidsetsize, gid_t *gidset); }
379 206 NOARGS { int|sys||setgroups(int gidsetsize, gid_t *gidset); }
380 207 NOARGS { int|sys||__posix_fchown(int fd, uid_t uid, \
381 gid_t gid); }
382 208 STD { int|linux_sys||setresuid(uid_t ruid, uid_t euid, \
383 uid_t suid); }
384 209 STD { int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \
385 uid_t *suid); }
386 210 STD { int|linux_sys||setresgid(gid_t rgid, gid_t egid, \
387 gid_t sgid); }
388 211 STD { int|linux_sys||getresgid(gid_t *rgid, gid_t *egid, \
389 gid_t *sgid); }
390 212 NOARGS { int|sys||__posix_lchown(const char *path, uid_t uid, \
391 gid_t gid); }
392 213 NOARGS { int|sys||setuid(uid_t uid); }
393 214 NOARGS { int|sys||setgid(gid_t gid); }
394 215 STD { int|linux_sys||setfsuid(uid_t uid); }
395 216 STD { int|linux_sys||setfsgid(gid_t gid); }
396 217 UNIMPL /* unused */
397 218 UNIMPL /* unused */
398 219 UNIMPL /* unused */
399 220 STD { int|linux_sys||getdents64(int fd, \
400 struct linux_dirent64 *dent, unsigned int count); }
401 221 NOARGS { pid_t|linux_sys||gettid(void); }
402 222 STD { int|linux_sys||tkill(int tid, int sig); }
403 223 STD { int|linux_sys||setxattr(char *path, char *name, \
404 void *value, size_t size, int flags); }
405 224 STD { int|linux_sys||lsetxattr(char *path, char *name, \
406 void *value, size_t size, int flags); }
407 225 STD { int|linux_sys||fsetxattr(int fd, char *name, \
408 void *value, size_t size, int flags); }
409 226 STD { ssize_t|linux_sys||getxattr(char *path, char *name, \
410 void *value, size_t size); }
411 227 STD { ssize_t|linux_sys||lgetxattr(char *path, char *name, \
412 void *value, size_t size); }
413 228 STD { ssize_t|linux_sys||fgetxattr(int fd, char *name, \
414 void *value, size_t size); }
415 229 STD { ssize_t|linux_sys||listxattr(char *path, char *list, \
416 size_t size); }
417 230 STD { ssize_t|linux_sys||llistxattr(char *path, char *list, \
418 size_t size); }
419 231 STD { ssize_t|linux_sys||flistxattr(int fd, char *list, \
420 size_t size); }
421 232 STD { int|linux_sys||removexattr(char *path, char *name); }
422 233 STD { int|linux_sys||lremovexattr(char *path, char *name); }
423 234 STD { int|linux_sys||fremovexattr(int fd, char *name); }
424 235 STD { int|linux_sys||futex(int *uaddr, int op, int val, \
425 const struct linux_timespec *timeout, int *uaddr2, \
426 int val3); }
427 236 UNIMPL sendfile64
428 237 NOARGS { int|sys||mincore(void *addr, size_t len, char *vec); }
429 238 NOARGS { int|sys||madvise(void *addr, size_t len, int behav); }
430 239 STD { int|linux_sys||fcntl64(int fd, int cmd, void *arg); }
431 240 STD { ssize_t|linux_sys||readahead(int fd, off_t offset, \
432 size_t count); }
433 241 UNIMPL io_setup
434 242 UNIMPL io_destroy
435 243 UNIMPL io_getevents
436 244 UNIMPL io_submit
437 245 UNIMPL io_cancel
438 246 STD { int|linux_sys||fadvise64(int fd, off_t offset, \
439 size_t len, int advice); }
440 247 UNIMPL exit_group
441 248 UNIMPL lookup_dcookie
442 249 STD { int|linux_sys||epoll_create(int size); }
443 250 STD { int|linux_sys||epoll_ctl(int epfd, int op, int fd, \
444 struct linux_epoll_event *event); }
445 251 STD { int|linux_sys||epoll_wait(int epfd, \
446 struct linux_epoll_event *events, int maxevents, \
447 int timeout); }
448 252 UNIMPL remap_file_pages
449 253 STD { int|linux_sys||set_tid_address(int *tid); }
450 254 STD { int|linux_sys||timer_create(clockid_t clockid, \
451 struct linux_sigevent *evp, timer_t *timerid); }
452 255 STD { int|linux_sys||timer_settime(timer_t timerid, \
453 int flags, const struct linux_itimerspec *tim, \
454 struct linux_itimerspec *otim); }
455 256 STD { int|linux_sys||timer_gettime(timer_t timerid, \
456 struct linux_itimerspec *tim); }
457 257 NOARGS { int|sys||timer_getoverrun(timer_t timerid); }
458 258 NOARGS { int|sys||timer_delete(timer_t timerid); }
459 259 STD { int|linux_sys||clock_settime(clockid_t which, \
460 struct linux_timespec *tp); }
461 260 STD { int|linux_sys||clock_gettime(clockid_t which, \
462 struct linux_timespec *tp); }
463 261 STD { int|linux_sys||clock_getres(clockid_t which, \
464 struct linux_timespec *tp); }
465 262 STD { int|linux_sys||clock_nanosleep(clockid_t which, \
466 int flags, struct linux_timespec *rqtp, \
467 struct linux_timespec *rmtp); }
468 263 STD { int|linux_sys||statfs64(const char *path, \
469 size_t sz, struct linux_statfs64 *sp); }
470 264 STD { int|linux_sys||fstatfs64(int fd, \
471 size_t sz, struct linux_statfs64 *sp); }
472 265 STD { int|linux_sys||tgkill(int tgid, int tid, int sig); }
473 266 NOARGS { int|compat_50_sys||utimes(const char *path, \
474 const struct timeval50 *tptr); }
475 267 STD { int|linux_sys||fadvise64_64(int fd, off_t offset, \
476 off_t len, int advice); }
477 268 UNIMPL mbind
478 269 UNIMPL get_mempolicy
479 270 UNIMPL set_mempolicy
480 271 UNIMPL mq_open
481 272 UNIMPL mq_unlink
482 273 UNIMPL mq_timedsend
483 274 UNIMPL mq_timedreceive
484 275 UNIMPL mq_notify
485 276 UNIMPL mq_getsetattr
486 277 UNIMPL waitid
487 278 UNIMPL vserver
488 279 UNIMPL add_key
489 280 UNIMPL request_key
490 281 UNIMPL keyctl
491 282 UNIMPL ioprio_set
492 283 UNIMPL ioprio_get
493 284 STD { int|linux_sys||inotify_init(void); }
494 285 STD { int|linux_sys||inotify_add_watch(int fd, \
495 const char *pathname, uint32_t mask); }
496 286 STD { int|linux_sys||inotify_rm_watch(int fd, int wd); }
497 287 UNIMPL migrate_pages
498 288 STD { int|linux_sys||openat(int fd, const char *path, \
499 int flags, ... linux_umode_t mode); }
500 289 NOARGS { int|sys||mkdirat(int fd, const char *path, \
501 linux_umode_t mode); }
502 290 STD { int|linux_sys||mknodat(int fd, const char *path, \
503 linux_umode_t mode, unsigned dev); }
504 291 STD { int|linux_sys||fchownat(int fd, const char *path, \
505 uid_t owner, gid_t group, int flag); }
506 292 UNIMPL futimesat
507 293 STD { int|linux_sys||fstatat64(int fd, const char *path, \
508 struct linux_stat64 *sp, int flag); }
509 294 STD { int|linux_sys||unlinkat(int fd, const char *path, \
510 int flag); }
511 295 NOARGS { int|sys||renameat(int fromfd, const char *from, \
512 int tofd, const char *to); }
513 296 STD { int|linux_sys||linkat(int fd1, const char *name1, \
514 int fd2, const char *name2, int flags); }
515 297 NOARGS { int|sys||symlinkat(const char *path1, int fd, \
516 const char *path2); }
517 298 NOARGS { ssize_t|sys||readlinkat(int fd, const char *path, \
518 char *buf, size_t bufsize); }
519 299 STD { int|linux_sys||fchmodat(int fd, const char *path, \
520 linux_umode_t mode); }
521 300 STD { int|linux_sys||faccessat(int fd, const char *path, \
522 int amode); }
523 301 STD { int|linux_sys||pselect6(int nfds, fd_set *readfds, \
524 fd_set *writefds, fd_set *exceptfds, \
525 struct linux_timespec *timeout, \
526 linux_sized_sigset_t *ss); }
527 302 STD { int|linux_sys||ppoll(struct pollfd *fds, u_int nfds, \
528 struct linux_timespec *timeout, \
529 linux_sigset_t *sigset); }
530 303 UNIMPL unshare
531 ;
532 ; The NetBSD native robust list calls have different
533 ; argument names / types, but they are ABI-compatible
534 ; with Linux.
535 ;
536 304 NOARGS { int|sys||__futex_set_robust_list(void *head, \
537 size_t len); }
538 305 NOARGS { int|sys||__futex_get_robust_list(lwpid_t lwpid, \
539 void **headp, size_t *lenp); }
540 306 UNIMPL splice
541 307 UNIMPL sync_file_range
542 308 UNIMPL tee
543 309 UNIMPL vmsplice
544 310 UNIMPL move_pages
545 311 STD { int|linux_sys||sched_setaffinity(pid_t pid, \
546 unsigned int len, unsigned long *mask); }
547 312 STD { int|linux_sys||sched_getaffinity(pid_t pid, \
548 unsigned int len, unsigned long *mask); }
549 313 UNIMPL kexec_load
550 314 UNIMPL getcpu
551 315 STD { int|linux_sys||epoll_pwait(int epfd, \
552 struct linux_epoll_event *events, int maxevents, \
553 int timeout, const linux_sigset_t *sigmask); }
554 316 STD { int|linux_sys||utimensat(int fd, const char *path, \
555 struct linux_timespec *times, int flag); }
556 317 UNIMPL signalfd
557 318 STD { int|linux_sys||timerfd_create(clockid_t clock_id, \
558 int flags); }
559 319 STD { int|linux_sys||eventfd(unsigned int initval); }
560 320 STD { int|linux_sys||fallocate(int fd, int mode, \
561 off_t offset, off_t len); }
562 321 STD { int|linux_sys||timerfd_settime(int fd, int flags, \
563 const struct linux_itimerspec *tim, \
564 struct linux_itimerspec *otim); }
565 322 STD { int|linux_sys||timerfd_gettime(int fd, \
566 struct linux_itimerspec *tim); }
567 323 UNIMPL signalfd4
568 324 STD { int|linux_sys||eventfd2(unsigned int initval, \
569 int flags); }
570 325 STD { int|linux_sys||epoll_create1(int flags); }
571 326 STD { int|linux_sys||dup3(int from, int to, int flags); }
572 327 STD { int|linux_sys||pipe2(int *pfds, int flags); }
573 328 STD { int|linux_sys||inotify_init1(int flags); }
574 329 STD { int|linux_sys||preadv(int fd, \
575 const struct iovec *iovp, int iovcnt, \
576 unsigned long off_lo, unsigned long off_hi); }
577 330 STD { int|linux_sys||pwritev(int fd, \
578 const struct iovcnt *iovp, int iovcnt, \
579 unsigned long off_lo, unsigned long off_hi); }
580 331 UNIMPL rt_tgsigqueueinfo
581 332 UNIMPL perf_counter_open
582 333 UNIMPL set_thread_area
583 334 UNIMPL get_thread_area
584 335 UNIMPL atomic_cmpxchg_32
585 336 UNIMPL atomic_barrier
586 337 UNIMPL fanotify_init
587 338 UNIMPL fanotify_mark
588 339 STD { int|linux_sys||prlimit64(pid_t pid, int which, \
589 struct rlimit *new_rlp, struct rlimit *old_rlp); }
590 340 UNIMPL name_to_handle_at
591 341 UNIMPL open_by_handle_at
592 342 UNIMPL clock_adjtime
593 343 UNIMPL syncfs
594 344 UNIMPL setns
595 345 UNIMPL process_vm_readv
596 346 UNIMPL process_vm_writev
597 347 UNIMPL kcmp
598 348 UNIMPL finit_module
599 349 UNIMPL sched_setattr
600 350 UNIMPL sched_getattr
601 351 UNIMPL renameat2
602 352 NOARGS { ssize_t|sys||getrandom(void *buf, size_t buflen, \
603 unsigned int flags); }
604 353 UNIMPL memfd_create
605 354 UNIMPL bpf
606 355 UNIMPL execveat
607 356 UNIMPL socket
608 357 UNIMPL socketpair
609 358 UNIMPL bind
610 359 UNIMPL connect
611 360 UNIMPL listen
612 361 STD { int|linux_sys||accept4(int s, \
613 struct osockaddr *name, \
614 int *anamelen, int flags); }
615 362 UNIMPL getsockopt
616 363 UNIMPL setsockopt
617 364 UNIMPL getsockname
618 365 UNIMPL getpeername
619 366 UNIMPL sendto
620 367 UNIMPL sendmsg
621 368 UNIMPL recvfrom
622 369 UNIMPL recvmsg
623 370 UNIMPL shutdown
624 371 STD { int|linux_sys||recvmmsg(int s, \
625 struct linux_mmsghdr *msgvec, unsigned int vlen, \
626 unsigned int flags, struct timespec *timeout); }
627 372 STD { int|linux_sys||sendmmsg(int s, \
628 struct linux_mmsghdr *msgvec, unsigned int vlen, \
629 unsigned int flags); }
630 373 UNIMPL userfaultfd
631 374 UNIMPL membarrier
632 375 UNIMPL mlock2
633 376 UNIMPL copy_file_range
634 377 UNIMPL preadv2
635 378 UNIMPL pwritev2
636 379 STD { int|linux_sys||statx(int fd, const char *path, \
637 int flag, unsigned int mask, \
638 struct linux_statx *sp); }
639 380 UNIMPL
640 381 UNIMPL
641 382 UNIMPL
642 383 UNIMPL
643 384 UNIMPL
644 385 UNIMPL
645 386 UNIMPL
646 387 UNIMPL
647 388 UNIMPL
648 389 UNIMPL
649 390 UNIMPL
650 391 UNIMPL
651 392 UNIMPL
652 393 UNIMPL
653 394 UNIMPL
654 395 UNIMPL
655 396 UNIMPL
656 397 UNIMPL
657 398 UNIMPL
658 399 UNIMPL
659 400 UNIMPL
660 401 UNIMPL
661 402 UNIMPL
662 403 UNIMPL
663 404 UNIMPL
664 405 UNIMPL
665 406 UNIMPL
666 407 UNIMPL
667 408 UNIMPL
668 409 UNIMPL
669 410 UNIMPL
670 411 UNIMPL
671 412 UNIMPL
672 413 UNIMPL
673 414 UNIMPL
674 415 UNIMPL
675 416 UNIMPL
676 417 UNIMPL
677 418 UNIMPL
678 419 UNIMPL
679 420 UNIMPL
680 421 UNIMPL
681 422 UNIMPL
682 423 UNIMPL
683 424 UNIMPL
684 425 UNIMPL
685 426 UNIMPL
686 427 UNIMPL
687 428 UNIMPL
688 429 UNIMPL
689 430 UNIMPL
690 431 UNIMPL
691 432 UNIMPL
692 433 UNIMPL
693 434 UNIMPL
694 435 UNIMPL
695 436 STD { int|linux_sys||close_range(unsigned int first, \
696 unsigned int last, unsigned int flags); }
697 437 UNIMPL
698 438 UNIMPL
699 439 UNIMPL
700 440 UNIMPL
701 441 STD { int|linux_sys||epoll_pwait2(int epfd, \
702 struct linux_epoll_event *events, int maxevents, \
703 const struct linux_timespec *timeout, \
704 const linux_sigset_t *sigmask); }
705