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