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