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