syscalls.master revision 1.95 1 $NetBSD: syscalls.master,v 1.95 2020/04/26 18:53:32 thorpej 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 UNIMPL readahead
432 241 UNIMPL io_setup
433 242 UNIMPL io_destroy
434 243 UNIMPL io_getevents
435 244 UNIMPL io_submit
436 245 UNIMPL io_cancel
437 246 STD { int|linux_sys||fadvise64(int fd, off_t offset, \
438 size_t len, int advice); }
439 247 UNIMPL exit_group
440 248 UNIMPL lookup_dcookie
441 249 UNIMPL epoll_create
442 250 UNIMPL epoll_ctl
443 251 UNIMPL epoll_wait
444 252 UNIMPL remap_file_pages
445 253 STD { int|linux_sys||set_tid_address(int *tid); }
446 254 UNIMPL timer_create
447 255 UNIMPL timer_settime
448 256 UNIMPL timer_gettime
449 257 UNIMPL timer_getoverrun
450 258 UNIMPL timer_ delete
451 259 STD { int|linux_sys||clock_settime(clockid_t which, \
452 struct linux_timespec *tp); }
453 260 STD { int|linux_sys||clock_gettime(clockid_t which, \
454 struct linux_timespec *tp); }
455 261 STD { int|linux_sys||clock_getres(clockid_t which, \
456 struct linux_timespec *tp); }
457 262 STD { int|linux_sys||clock_nanosleep(clockid_t which, \
458 int flags, struct linux_timespec *rqtp, \
459 struct linux_timespec *rmtp); }
460 263 STD { int|linux_sys||statfs64(const char *path, \
461 size_t sz, struct linux_statfs64 *sp); }
462 264 STD { int|linux_sys||fstatfs64(int fd, \
463 size_t sz, struct linux_statfs64 *sp); }
464 265 STD { int|linux_sys||tgkill(int tgid, int tid, int sig); }
465 266 NOARGS { int|compat_50_sys||utimes(const char *path, \
466 const struct timeval50 *tptr); }
467 267 STD { int|linux_sys||fadvise64_64(int fd, off_t offset, \
468 off_t len, int advice); }
469 268 UNIMPL mbind
470 269 UNIMPL get_mempolicy
471 270 UNIMPL set_mempolicy
472 271 UNIMPL mq_open
473 272 UNIMPL mq_unlink
474 273 UNIMPL mq_timedsend
475 274 UNIMPL mq_timedreceive
476 275 UNIMPL mq_notify
477 276 UNIMPL mq_getsetattr
478 277 UNIMPL waitid
479 278 UNIMPL vserver
480 279 UNIMPL add_key
481 280 UNIMPL request_key
482 281 UNIMPL keyctl
483 282 UNIMPL ioprio_set
484 283 UNIMPL ioprio_get
485 284 UNIMPL inotify_init
486 285 UNIMPL inotify_add_watch
487 286 UNIMPL inotify_rm_watch
488 287 UNIMPL migrate_pages
489 288 STD { int|linux_sys||openat(int fd, const char *path, \
490 int flags, ... linux_umode_t mode); }
491 289 NOARGS { int|sys||mkdirat(int fd, const char *path, \
492 linux_umode_t mode); }
493 290 STD { int|linux_sys||mknodat(int fd, const char *path, \
494 linux_umode_t mode, unsigned dev); }
495 291 STD { int|linux_sys||fchownat(int fd, const char *path, \
496 uid_t owner, gid_t group, int flag); }
497 292 UNIMPL futimesat
498 293 STD { int|linux_sys||fstatat64(int fd, const char *path, \
499 struct linux_stat64 *sp, int flag); }
500 294 STD { int|linux_sys||unlinkat(int fd, const char *path, \
501 int flag); }
502 295 NOARGS { int|sys||renameat(int fromfd, const char *from, \
503 int tofd, const char *to); }
504 296 STD { int|linux_sys||linkat(int fd1, const char *name1, \
505 int fd2, const char *name2, int flags); }
506 297 NOARGS { int|sys||symlinkat(const char *path1, int fd, \
507 const char *path2); }
508 298 NOARGS { ssize_t|sys||readlinkat(int fd, const char *path, \
509 char *buf, size_t bufsize); }
510 299 STD { int|linux_sys||fchmodat(int fd, const char *path, \
511 linux_umode_t mode); }
512 300 STD { int|linux_sys||faccessat(int fd, const char *path, \
513 int amode); }
514 301 STD { int|linux_sys||pselect6(int nfds, fd_set *readfds, \
515 fd_set *writefds, fd_set *exceptfds, \
516 struct linux_timespec *timeout, \
517 linux_sized_sigset_t *ss); }
518 302 STD { int|linux_sys||ppoll(struct pollfd *fds, u_int nfds, \
519 struct linux_timespec *timeout, \
520 linux_sigset_t *sigset); }
521 303 UNIMPL unshare
522 ;
523 ; The NetBSD native robust list calls have different
524 ; argument names / types, but they are ABI-compatible
525 ; with Linux.
526 ;
527 304 NOARGS { int|sys||__futex_set_robust_list(void *head, \
528 size_t len); }
529 305 NOARGS { int|sys||__futex_get_robust_list(lwpid_t lwpid, \
530 void **headp, size_t *lenp); }
531 306 UNIMPL splice
532 307 UNIMPL sync_file_range
533 308 UNIMPL tee
534 309 UNIMPL vmsplice
535 310 UNIMPL move_pages
536 311 STD { int|linux_sys||sched_setaffinity(pid_t pid, \
537 unsigned int len, unsigned long *mask); }
538 312 STD { int|linux_sys||sched_getaffinity(pid_t pid, \
539 unsigned int len, unsigned long *mask); }
540 313 UNIMPL kexec_load
541 314 UNIMPL getcpu
542 315 UNIMPL epoll_wait
543 316 STD { int|linux_sys||utimensat(int fd, const char *path, \
544 struct linux_timespec *times, int flag); }
545 317 UNIMPL signalfd
546 318 UNIMPL timerfd_create
547 319 UNIMPL eventfd
548 320 STD { int|linux_sys||fallocate(int fd, int mode, \
549 off_t offset, off_t len); }
550 321 UNIMPL timerfd_settime
551 322 UNIMPL timerfd_gettime
552 323 UNIMPL signalfd4
553 324 UNIMPL eventfd2
554 325 UNIMPL epoll_create1
555 326 STD { int|linux_sys||dup3(int from, int to, int flags); }
556 327 STD { int|linux_sys||pipe2(int *pfds, int flags); }
557 328 UNIMPL inotify_init1
558 329 UNIMPL preadv
559 330 UNIMPL pwritev
560 331 UNIMPL rt_tgsigqueueinfo
561 332 UNIMPL perf_counter_open
562 333 UNIMPL set_thread_area
563 334 UNIMPL get_thread_area
564 335 UNIMPL atomic_cmpxchg_32
565 336 UNIMPL atomic_barrier
566 337 UNIMPL fanotify_init
567 338 UNIMPL fanotify_mark
568 339 UNIMPL prlimit64
569 340 UNIMPL name_to_handle_at
570 341 UNIMPL open_by_handle_at
571 342 UNIMPL clock_adjtime
572 343 UNIMPL syncfs
573 344 UNIMPL setns
574 345 UNIMPL process_vm_readv
575 346 UNIMPL process_vm_writev
576 347 UNIMPL kcmp
577 348 UNIMPL finit_module
578 349 UNIMPL sched_setattr
579 350 UNIMPL sched_getattr
580 351 UNIMPL renameat2
581 352 UNIMPL getrandom
582 353 UNIMPL memfd_create
583 354 UNIMPL bpf
584 355 UNIMPL execveat
585 356 UNIMPL socket
586 357 UNIMPL socketpair
587 358 UNIMPL bind
588 359 UNIMPL connect
589 360 UNIMPL listen
590 361 STD { int|linux_sys||accept4(int s, \
591 struct osockaddr *name, \
592 int *anamelen, int flags); }
593 362 UNIMPL getsockopt
594 363 UNIMPL setsockopt
595 364 UNIMPL getsockname
596 365 UNIMPL getpeername
597 366 UNIMPL sendto
598 367 UNIMPL sendmsg
599 368 UNIMPL recvfrom
600 369 UNIMPL recvmsg
601 370 UNIMPL shutdown
602 371 STD { int|linux_sys||recvmmsg(int s, \
603 struct linux_mmsghdr *msgvec, unsigned int vlen, \
604 unsigned int flags, struct timespec *timeout); }
605 372 STD { int|linux_sys||sendmmsg(int s, \
606 struct linux_mmsghdr *msgvec, unsigned int vlen, \
607 unsigned int flags); }
608 373 UNIMPL userfaultfd
609 374 UNIMPL membarrier
610 375 UNIMPL mlock2
611 376 UNIMPL copy_file_range
612 377 UNIMPL preadv2
613 378 UNIMPL pwritev2
614