]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - sys/amd64/linux/syscalls.master
MFV r344878:
[FreeBSD/FreeBSD.git] / sys / amd64 / linux / syscalls.master
1  $FreeBSD$
2
3 ;       @(#)syscalls.master     8.1 (Berkeley) 7/19/93
4 ; System call name/number master file (or rather, slave, from LINUX).
5 ; Processed to create linux_sysent.c, linux_proto.h and linux_syscall.h.
6
7 ; Columns: number audit type nargs name alt{name,tag,rtyp}/comments
8 ;       number  system call number, must be in order
9 ;       audit   the audit event associated with the system call
10 ;               A value of AUE_NULL means no auditing, but it also means that
11 ;               there is no audit event for the call at this time. For the
12 ;               case where the event exists, but we don't want auditing, the
13 ;               event should be #defined to AUE_NULL in audit_kevents.h.
14 ;       type    one of STD, NOPROTO, UNIMPL
15 ;       name    pseudo-prototype of syscall routine
16 ;               If one of the following alts is different, then all appear:
17 ;       altname name of system call if different
18 ;       alttag  name of args struct tag if different from [o]`name'"_args"
19 ;       altrtyp return type if not int (bogus - syscalls always return int)
20 ;               for UNIMPL, name continues with comments
21
22 ; types:
23 ;       STD     always included
24 ;       UNIMPL  not implemented, placeholder only
25 ;       NOPROTO same as STD except do not create structure or
26 ;               function prototype in sys/sysproto.h.  Does add a
27 ;               definition to syscall.h besides adding a sysent.
28
29 #include <sys/param.h>
30 #include <sys/sysent.h>
31 #include <sys/sysproto.h>
32 #include <compat/linux/linux_sysproto.h>
33 #include <amd64/linux/linux.h>
34 #include <amd64/linux/linux_proto.h>
35
36 ; Isn't pretty, but there seems to be no other way to trap nosys
37 #define nosys   linux_nosys
38
39 ; #ifdef's, etc. may be included, and are copied to the output files.
40
41 0       AUE_NULL        NOPROTO { int read(int fd, char *buf, \
42                                     u_int nbyte); }
43 1       AUE_NULL        NOPROTO { int write(int fd, char *buf, \
44                                     u_int nbyte); }
45 2       AUE_OPEN_RWTC   STD     { int linux_open(char *path, l_int flags, \
46                                     l_int mode); }
47 3       AUE_CLOSE       NOPROTO { int close(int fd); }
48 4       AUE_STAT        STD     { int linux_newstat(char *path, \
49                                     struct l_newstat *buf); }
50 5       AUE_FSTAT       STD     { int linux_newfstat(l_uint fd, \
51                                     struct l_newstat *buf); }
52 6       AUE_LSTAT       STD     { int linux_newlstat(char *path, \
53                                     struct l_newstat *buf); }
54 7       AUE_POLL        NOPROTO { int poll(struct pollfd *fds, u_int nfds, \
55                                     int timeout); }
56 8       AUE_LSEEK       STD     { int linux_lseek(l_uint fdes, l_off_t off, \
57                                     l_int whence); }
58 9       AUE_MMAP        STD     { int linux_mmap2(l_ulong addr, l_ulong len, \
59                                     l_ulong prot, l_ulong flags, l_ulong fd, \
60                                     l_ulong pgoff); }
61 10      AUE_MPROTECT    STD     { int linux_mprotect(caddr_t addr, l_int len, \
62                                     l_int prot); }
63 11      AUE_MUNMAP      NOPROTO { int munmap(caddr_t addr, int len); }
64 12      AUE_NULL        STD     { int linux_brk(l_ulong dsend); }
65 13      AUE_NULL        STD     { int linux_rt_sigaction(l_int sig, \
66                                     l_sigaction_t *act, l_sigaction_t *oact, \
67                                     l_size_t sigsetsize); }
68 14      AUE_NULL        STD     { int linux_rt_sigprocmask(l_int how, \
69                                     l_sigset_t *mask, l_sigset_t *omask, \
70                                     l_size_t sigsetsize); }
71 15      AUE_NULL        STD     { int linux_rt_sigreturn( \
72                                     struct l_ucontext *ucp); }
73 16      AUE_IOCTL       STD     { int linux_ioctl(l_uint fd, l_uint cmd, \
74                                     uintptr_t arg); }
75 17      AUE_PREAD       STD     { int linux_pread(l_uint fd, char *buf, \
76                                     l_size_t nbyte, l_loff_t offset); }
77 18      AUE_PWRITE      STD     { int linux_pwrite(l_uint fd, char *buf, \
78                                     l_size_t nbyte, l_loff_t offset); }
79 19      AUE_READV       NOPROTO { int readv(int fd, struct iovec *iovp, \
80                                     u_int iovcnt); }
81 20      AUE_WRITEV      NOPROTO { int writev(int fd, struct iovec *iovp, \
82                                     u_int iovcnt); }
83 21      AUE_ACCESS      STD     { int linux_access(char *path, l_int amode); }
84 22      AUE_PIPE        STD     { int linux_pipe(l_ulong *pipefds); }
85 23      AUE_SELECT      STD     { int linux_select(l_int nfds, \
86                                     l_fd_set *readfds, l_fd_set *writefds, \
87                                     l_fd_set *exceptfds, \
88                                     struct l_timeval *timeout); }
89 24      AUE_NULL        NOPROTO { int sched_yield(void); }
90 25      AUE_NULL        STD     { int linux_mremap(l_ulong addr, \
91                                     l_ulong old_len, l_ulong new_len, \
92                                     l_ulong flags, l_ulong new_addr); }
93 26      AUE_MSYNC       STD     { int linux_msync(l_ulong addr, \
94                                     l_size_t len, l_int fl); }
95 27      AUE_MINCORE     STD     { int linux_mincore(l_ulong start, \
96                                     l_size_t len, u_char *vec); }
97 28      AUE_MADVISE     NOPROTO { int madvise(void *addr, size_t len, \
98                                     int behav); }
99 29      AUE_NULL        STD     { int linux_shmget(l_key_t key, l_size_t size, \
100                                     l_int shmflg); }
101 30      AUE_NULL        STD     { int linux_shmat(l_int shmid, char *shmaddr, \
102                                     l_int shmflg); }
103 31      AUE_NULL        STD     { int linux_shmctl(l_int shmid, l_int cmd, \
104                                     struct l_shmid_ds *buf); }
105 32      AUE_DUP         NOPROTO { int dup(u_int fd); }
106 33      AUE_DUP2        NOPROTO { int dup2(u_int from, u_int to); }
107 34      AUE_NULL        STD     { int linux_pause(void); }
108 35      AUE_NULL        STD     { int linux_nanosleep( \
109                                     const struct l_timespec *rqtp, \
110                                     struct l_timespec *rmtp); }
111 36      AUE_GETITIMER   STD     { int linux_getitimer(l_int which, \
112                                     struct l_itimerval *itv); }
113 37      AUE_NULL        STD     { int linux_alarm(l_uint secs); }
114 38      AUE_SETITIMER   STD     { int linux_setitimer(l_int which, \
115                                     struct l_itimerval *itv, \
116                                     struct l_itimerval *oitv); }
117 39      AUE_GETPID      STD     { int linux_getpid(void); }
118 40      AUE_SENDFILE    STD     { int linux_sendfile(l_int out, l_int in, \
119                                     l_long *offset, l_size_t count); }
120 41      AUE_SOCKET      STD     { int linux_socket(l_int domain, l_int type, \
121                                     l_int protocol); }
122 42      AUE_CONNECT     STD     { int linux_connect(l_int s, l_uintptr_t name, \
123                                     l_int namelen); }
124 43      AUE_ACCEPT      STD     { int linux_accept(l_int s, l_uintptr_t addr, \
125                                     l_uintptr_t namelen); }
126 44      AUE_SENDTO      STD     { int linux_sendto(l_int s, l_uintptr_t msg, \
127                                     l_int len, l_int flags, l_uintptr_t to, \
128                                     l_int tolen); }
129 45      AUE_RECVFROM    STD     { int linux_recvfrom(l_int s, l_uintptr_t buf, \
130                                     l_size_t len, l_int flags, l_uintptr_t from, \
131                                     l_uintptr_t fromlen); }
132 46      AUE_SENDMSG     STD     { int linux_sendmsg(l_int s, l_uintptr_t msg, \
133                                     l_int flags); }
134 47      AUE_RECVMSG     STD     { int linux_recvmsg(l_int s, l_uintptr_t msg, \
135                                     l_int flags); }
136 48      AUE_NULL        STD     { int linux_shutdown(l_int s, l_int how); }
137 49      AUE_BIND        STD     { int linux_bind(l_int s, l_uintptr_t name, \
138                                     l_int namelen); }
139 50      AUE_LISTEN      STD     { int linux_listen(l_int s, l_int backlog); }
140 51      AUE_GETSOCKNAME STD     { int linux_getsockname(l_int s, \
141                                     l_uintptr_t addr, l_uintptr_t namelen); }
142 52      AUE_GETPEERNAME STD     { int linux_getpeername(l_int s, \
143                                     l_uintptr_t addr, l_uintptr_t namelen); }
144 53      AUE_SOCKETPAIR  STD     { int linux_socketpair(l_int domain, \
145                                     l_int type, l_int protocol, l_uintptr_t rsv); }
146 54      AUE_SETSOCKOPT  STD     { int linux_setsockopt(l_int s, l_int level, \
147                                     l_int optname, l_uintptr_t optval, \
148                                     l_int optlen); }
149 55      AUE_GETSOCKOPT  STD     { int linux_getsockopt(l_int s, l_int level, \
150                                     l_int optname, l_uintptr_t optval, \
151                                     l_uintptr_t optlen); }
152 56      AUE_RFORK       STD     { int linux_clone(l_int flags, void *stack, \
153                                     void *parent_tidptr, void *child_tidptr, void *tls); }
154 57      AUE_FORK        STD     { int linux_fork(void); }
155 58      AUE_VFORK       STD     { int linux_vfork(void); }
156 59      AUE_EXECVE      STD     { int linux_execve(char *path, char **argp, \
157                                     char **envp); }
158 60      AUE_EXIT        STD     { void linux_exit(l_int rval); }
159 61      AUE_WAIT4       STD     { int linux_wait4(l_pid_t pid, \
160                                     l_int *status, l_int options, \
161                                     struct rusage *rusage); }
162 62      AUE_KILL        STD     { int linux_kill(l_int pid, l_int signum); }
163 63      AUE_NULL        STD     { int linux_newuname( \
164                                     struct l_new_utsname *buf); }
165 64      AUE_NULL        STD     { int linux_semget(l_key_t key, \
166                                     l_int nsems, l_int semflg); }
167 65      AUE_NULL        STD     { int linux_semop(l_int semid, \
168                                     struct l_sembuf *tsops, l_uint nsops); }
169 66      AUE_NULL        STD     { int linux_semctl(l_int semid, \
170                                     l_int semnum, l_int cmd, union l_semun arg); }
171 67      AUE_NULL        STD     { int linux_shmdt(char *shmaddr); }
172 68      AUE_NULL        STD     { int linux_msgget(l_key_t key, l_int msgflg); }
173 69      AUE_NULL        STD     { int linux_msgsnd(l_int msqid, \
174                                     struct l_msgbuf *msgp, l_size_t msgsz, \
175                                     l_int msgflg); }
176 70      AUE_NULL        STD     { int linux_msgrcv(l_int msqid, \
177                                     struct l_msgbuf *msgp, l_size_t msgsz, \
178                                     l_long msgtyp, l_int msgflg); }
179 71      AUE_NULL        STD     { int linux_msgctl(l_int msqid, l_int cmd, \
180                                     struct l_msqid_ds *buf); }
181 72      AUE_FCNTL       STD     { int linux_fcntl(l_uint fd, l_uint cmd, \
182                                     l_ulong arg); }
183 73      AUE_FLOCK       NOPROTO { int flock(int fd, int how); }
184 74      AUE_FSYNC       NOPROTO { int fsync(int fd); }
185 75      AUE_NULL        STD     { int linux_fdatasync(l_uint fd); }
186 76      AUE_TRUNCATE    STD     { int linux_truncate(char *path, \
187                                     l_ulong length); }
188 77      AUE_FTRUNCATE   STD     { int linux_ftruncate(l_int fd, l_long length); }
189 78      AUE_GETDIRENTRIES       STD { int linux_getdents(l_uint fd, void *dent, \
190                                     l_uint count); }
191 79      AUE_GETCWD      STD     { int linux_getcwd(char *buf, \
192                                     l_ulong bufsize); }
193 80      AUE_CHDIR       STD     { int linux_chdir(char *path); }
194 81      AUE_FCHDIR      NOPROTO { int fchdir(int fd); }
195 82      AUE_RENAME      STD     { int linux_rename(char *from, char *to); }
196 83      AUE_MKDIR       STD     { int linux_mkdir(char *path, l_int mode); }
197 84      AUE_RMDIR       STD     { int linux_rmdir(char *path); }
198 85      AUE_CREAT       STD     { int linux_creat(char *path, \
199                                     l_int mode); }
200 86      AUE_LINK        STD     { int linux_link(char *path, char *to); }
201 87      AUE_UNLINK      STD     { int linux_unlink(char *path); }
202 88      AUE_SYMLINK     STD     { int linux_symlink(char *path, char *to); }
203 89      AUE_READLINK    STD     { int linux_readlink(char *name, char *buf, \
204                                     l_int count); }
205 90      AUE_CHMOD       STD     { int linux_chmod(char *path, \
206                                     l_mode_t mode); }
207 91      AUE_FCHMOD      NOPROTO { int fchmod(int fd, int mode); }
208 92      AUE_LCHOWN      STD     { int linux_chown(char *path, \
209                                     l_uid_t uid, l_gid_t gid); }
210 93      AUE_FCHOWN      NOPROTO { int fchown(int fd, int uid, int gid); }
211 94      AUE_LCHOWN      STD     { int linux_lchown(char *path, l_uid_t uid, \
212                                     l_gid_t gid); }
213 95      AUE_UMASK       NOPROTO { int umask(int newmask); }
214 96      AUE_NULL        NOPROTO { int gettimeofday(struct l_timeval *tp, \
215                                     struct timezone *tzp); }
216 97      AUE_GETRLIMIT   STD     { int linux_getrlimit(l_uint resource, \
217                                     struct l_rlimit *rlim); }
218 98      AUE_GETRUSAGE   NOPROTO { int getrusage(int who, struct rusage *rusage); }
219 99      AUE_NULL        STD     { int linux_sysinfo(struct l_sysinfo *info); }
220 100     AUE_NULL        STD     { int linux_times(struct l_times_argv *buf); }
221 101     AUE_PTRACE      STD     { int linux_ptrace(l_long req, l_long pid, \
222                                     l_ulong addr, l_ulong data); }
223 102     AUE_GETUID      STD     { int linux_getuid(void); }
224 103     AUE_NULL        STD     { int linux_syslog(l_int type, char *buf, \
225                                     l_int len); }
226 104     AUE_GETGID      STD     { int linux_getgid(void); }
227 105     AUE_SETUID      NOPROTO { int setuid(uid_t uid); }
228 106     AUE_SETGID      NOPROTO { int setgid(gid_t gid); }
229 107     AUE_GETEUID     NOPROTO { int geteuid(void); }
230 108     AUE_GETEGID     NOPROTO { int getegid(void); }
231 109     AUE_SETPGRP     NOPROTO { int setpgid(int pid, int pgid); }
232 110     AUE_GETPPID     STD     { int linux_getppid(void); }
233 111     AUE_GETPGRP     NOPROTO { int getpgrp(void); }
234 112     AUE_SETSID      NOPROTO { int setsid(void); }
235 113     AUE_SETREUID    NOPROTO { int setreuid(uid_t ruid, uid_t euid); }
236 114     AUE_SETREGID    NOPROTO { int setregid(gid_t rgid, gid_t egid); }
237 115     AUE_GETGROUPS   STD     { int linux_getgroups(l_int gidsetsize, \
238                                     l_gid_t *grouplist); }
239 116     AUE_SETGROUPS   STD     { int linux_setgroups(l_int gidsetsize, \
240                                     l_gid_t *grouplist); }
241 117     AUE_SETRESUID   NOPROTO { int setresuid(uid_t ruid, uid_t euid, \
242                                     uid_t suid); }
243 118     AUE_GETRESUID   NOPROTO { int getresuid(uid_t *ruid, uid_t *euid, \
244                                     uid_t *suid); }
245 119     AUE_SETRESGID   NOPROTO { int setresgid(gid_t rgid, gid_t egid, \
246                                     gid_t sgid); }
247 120     AUE_GETRESGID   NOPROTO { int getresgid(gid_t *rgid, gid_t *egid, \
248                                     gid_t *sgid); }
249 121     AUE_GETPGID     NOPROTO { int getpgid(int pid); }
250 122     AUE_SETFSUID    STD     { int linux_setfsuid(l_uid_t uid); }
251 123     AUE_SETFSGID    STD     { int linux_setfsgid(l_gid_t gid); }
252 124     AUE_GETSID      STD     { int linux_getsid(l_pid_t pid); }
253 125     AUE_CAPGET      STD     { int linux_capget(struct l_user_cap_header *hdrp, \
254                                     struct l_user_cap_data *datap); }
255 126     AUE_CAPSET      STD     { int linux_capset(struct l_user_cap_header *hdrp, \
256                                     struct l_user_cap_data *datap); }
257 127     AUE_NULL        STD     { int linux_rt_sigpending(l_sigset_t *set, \
258                                     l_size_t sigsetsize); }
259 128     AUE_NULL        STD     { int linux_rt_sigtimedwait(l_sigset_t *mask, \
260                                     l_siginfo_t *ptr, \
261                                     struct l_timeval *timeout, \
262                                     l_size_t sigsetsize); }
263 129     AUE_NULL        STD     { int linux_rt_sigqueueinfo(l_pid_t pid, l_int sig, \
264                                     l_siginfo_t *info); }
265 130     AUE_NULL        STD     { int linux_rt_sigsuspend( \
266                                     l_sigset_t *newset, \
267                                     l_size_t sigsetsize); }
268 131     AUE_NULL        STD     { int linux_sigaltstack(l_stack_t *uss, \
269                                     l_stack_t *uoss); }
270 132     AUE_UTIME       STD     { int linux_utime(char *fname, \
271                                     struct l_utimbuf *times); }
272 133     AUE_MKNOD       STD     { int linux_mknod(char *path, l_int mode, \
273                                     l_dev_t dev); }
274 134     AUE_USELIB      UNIMPL  uselib
275 135     AUE_PERSONALITY STD     { int linux_personality(l_uint per); }
276 136     AUE_NULL        STD     { int linux_ustat(l_dev_t dev, \
277                                     struct l_ustat *ubuf); }
278 137     AUE_STATFS      STD     { int linux_statfs(char *path, \
279                                     struct l_statfs_buf *buf); }
280 138     AUE_FSTATFS     STD     { int linux_fstatfs(l_uint fd, \
281                                     struct l_statfs_buf *buf); }
282 139     AUE_NULL        STD     { int linux_sysfs(l_int option, \
283                                     l_ulong arg1, l_ulong arg2); }
284 140     AUE_GETPRIORITY STD     { int linux_getpriority(l_int which, l_int who); }
285 141     AUE_SETPRIORITY NOPROTO { int setpriority(int which, int who, \
286                                     int prio); }
287 142     AUE_SCHED_SETPARAM      STD     { int linux_sched_setparam(l_pid_t pid, \
288                                     struct sched_param *param); }
289 143     AUE_SCHED_GETPARAM      STD     { int linux_sched_getparam(l_pid_t pid, \
290                                     struct sched_param *param); }
291 144     AUE_SCHED_SETSCHEDULER  STD { int linux_sched_setscheduler( \
292                                     l_pid_t pid, l_int policy, \
293                                     struct sched_param *param); }
294 145     AUE_SCHED_GETSCHEDULER  STD { int linux_sched_getscheduler( \
295                                     l_pid_t pid); }
296 146     AUE_SCHED_GET_PRIORITY_MAX      STD { int linux_sched_get_priority_max( \
297                                     l_int policy); }
298 147     AUE_SCHED_GET_PRIORITY_MIN      STD { int linux_sched_get_priority_min( \
299                                     l_int policy); }
300 148     AUE_SCHED_RR_GET_INTERVAL       STD { int linux_sched_rr_get_interval(l_pid_t pid, \
301                                     struct l_timespec *interval); }
302 149     AUE_MLOCK       NOPROTO { int mlock(const void *addr, size_t len); }
303 150     AUE_MUNLOCK     NOPROTO { int munlock(const void *addr, size_t len); }
304 151     AUE_MLOCKALL    NOPROTO { int mlockall(int how); }
305 152     AUE_MUNLOCKALL  NOPROTO { int munlockall(void); }
306 153     AUE_NULL        STD     { int linux_vhangup(void); }
307 154     AUE_NULL        UNIMPL  modify_ldt
308 155     AUE_PIVOT_ROOT  STD     { int linux_pivot_root(void); }
309 156     AUE_SYSCTL      STD     { int linux_sysctl( \
310                                     struct l___sysctl_args *args); }
311 157     AUE_PRCTL       STD     { int linux_prctl(l_int option, l_uintptr_t arg2, \
312                                     l_uintptr_t arg3, l_uintptr_t arg4, \
313                                     l_uintptr_t arg5); }
314 158     AUE_PRCTL       STD     { int linux_arch_prctl(l_int code, l_ulong addr); }
315 159     AUE_ADJTIME     STD     { int linux_adjtimex(void); }
316 160     AUE_SETRLIMIT   STD     { int linux_setrlimit(l_uint resource, \
317                                     struct l_rlimit *rlim); }
318 161     AUE_CHROOT      NOPROTO { int chroot(char *path); }
319 162     AUE_SYNC        NOPROTO { int sync(void); }
320 163     AUE_ACCT        NOPROTO { int acct(char *path); }
321 164     AUE_SETTIMEOFDAY        NOPROTO { int settimeofday(struct l_timeval *tv, struct timezone *tzp); }
322 165     AUE_MOUNT       STD     { int linux_mount(char *specialfile, \
323                                     char *dir, char *filesystemtype, \
324                                     l_ulong rwflag, void *data); }
325 166     AUE_UMOUNT      STD     { int linux_umount(char *path, l_int flags); }
326 167     AUE_SWAPON      NOPROTO { int swapon(char *name); }
327 168     AUE_SWAPOFF     STD     { int linux_swapoff(void); }
328 169     AUE_REBOOT      STD     { int linux_reboot(l_int magic1, \
329                                     l_int magic2, l_uint cmd, void *arg); }
330 170     AUE_SYSCTL      STD     { int linux_sethostname(char *hostname, \
331                                     l_uint len); }
332 171     AUE_SYSCTL      STD     { int linux_setdomainname(char *name, \
333                                     l_int len); }
334 172     AUE_NULL        STD     { int linux_iopl(l_uint level); }
335 173     AUE_NULL        UNIMPL  ioperm
336 174     AUE_NULL        UNIMPL  create_module
337 175     AUE_NULL        STD     { int linux_init_module(void); }
338 176     AUE_NULL        STD     { int linux_delete_module(void); }
339 177     AUE_NULL        UNIMPL  get_kernel_syms
340 178     AUE_NULL        UNIMPL  query_module
341 179     AUE_QUOTACTL    STD     { int linux_quotactl(void); }
342 180     AUE_NULL        UNIMPL  nfsservctl
343 181     AUE_GETPMSG     UNIMPL  getpmsg
344 182     AUE_PUTPMSG     UNIMPL  putpmsg
345 183     AUE_NULL        UNIMPL  afs_syscall
346 184     AUE_NULL        UNIMPL  tuxcall
347 185     AUE_NULL        UNIMPL  security
348 186     AUE_NULL        STD     { int linux_gettid(void); }
349 187     AUE_NULL        UNIMPL  linux_readahead
350 188     AUE_NULL        STD     { int linux_setxattr(void); }
351 189     AUE_NULL        STD     { int linux_lsetxattr(void); }
352 190     AUE_NULL        STD     { int linux_fsetxattr(void); }
353 191     AUE_NULL        STD     { int linux_getxattr(void); }
354 192     AUE_NULL        STD     { int linux_lgetxattr(void); }
355 193     AUE_NULL        STD     { int linux_fgetxattr(void); }
356 194     AUE_NULL        STD     { int linux_listxattr(void); }
357 195     AUE_NULL        STD     { int linux_llistxattr(void); }
358 196     AUE_NULL        STD     { int linux_flistxattr(void); }
359 197     AUE_NULL        STD     { int linux_removexattr(void); }
360 198     AUE_NULL        STD     { int linux_lremovexattr(void); }
361 199     AUE_NULL        STD     { int linux_fremovexattr(void); }
362 200     AUE_NULL        STD     { int linux_tkill(l_int tid, l_int sig); }
363 201     AUE_NULL        STD     { int linux_time(l_time_t *tm); }
364 202     AUE_NULL        STD     { int linux_sys_futex(void *uaddr, l_int op, l_int val, \
365                                     struct l_timespec *timeout, void *uaddr2, l_int val3); }
366 203     AUE_NULL        STD     { int linux_sched_setaffinity(l_pid_t pid, l_uint len, \
367                                     l_ulong *user_mask_ptr); }
368 204     AUE_NULL        STD     { int linux_sched_getaffinity(l_pid_t pid, l_uint len, \
369                                     l_ulong *user_mask_ptr); }
370 205     AUE_NULL        UNIMPL  set_thread_area
371 206     AUE_NULL        UNIMPL  linux_io_setup
372 207     AUE_NULL        UNIMPL  linux_io_destroy
373 208     AUE_NULL        UNIMPL  linux_io_getevents
374 209     AUE_NULL        UNIMPL  linux_io_submit
375 210     AUE_NULL        UNIMPL  linux_io_cancel
376 211     AUE_NULL        UNIMPL  get_thread_area
377 212     AUE_NULL        STD     { int linux_lookup_dcookie(void); }
378 213     AUE_NULL        STD     { int linux_epoll_create(l_int size); }
379 214     AUE_NULL        UNIMPL  epoll_ctl_old
380 215     AUE_NULL        UNIMPL  epoll_wait_old
381 216     AUE_NULL        STD     { int linux_remap_file_pages(void); }
382 217     AUE_GETDIRENTRIES       STD { int linux_getdents64(l_uint fd, \
383                                     void *dirent, l_uint count); }
384 218     AUE_NULL        STD     { int linux_set_tid_address(l_int *tidptr); }
385 219     AUE_NULL        UNIMPL  restart_syscall
386 220     AUE_NULL        STD     { int linux_semtimedop(void); }
387 221     AUE_NULL        STD     { int linux_fadvise64(l_int fd, l_loff_t offset, \
388                                     l_size_t len, l_int advice); }
389 222     AUE_NULL        STD     { int linux_timer_create(clockid_t clock_id, \
390                                     struct sigevent *evp, l_timer_t *timerid); }
391 223     AUE_NULL        STD     { int linux_timer_settime(l_timer_t timerid, l_int flags, \
392                                     const struct itimerspec *new, struct itimerspec *old); }
393 224     AUE_NULL        STD     { int linux_timer_gettime(l_timer_t timerid, struct itimerspec *setting); }
394 225     AUE_NULL        STD     { int linux_timer_getoverrun(l_timer_t timerid); }
395 226     AUE_NULL        STD     { int linux_timer_delete(l_timer_t timerid); }
396 227     AUE_CLOCK_SETTIME       STD     { int linux_clock_settime(clockid_t which, struct l_timespec *tp); }
397 228     AUE_NULL        STD     { int linux_clock_gettime(clockid_t which, struct l_timespec *tp); }
398 229     AUE_NULL        STD     { int linux_clock_getres(clockid_t which, struct l_timespec *tp); }
399 230     AUE_NULL        STD     { int linux_clock_nanosleep(clockid_t which, int flags, \
400                                     struct l_timespec *rqtp, struct l_timespec *rmtp); }
401 231     AUE_EXIT        STD     { int linux_exit_group(l_int error_code); }
402 232     AUE_NULL        STD     { int linux_epoll_wait(l_int epfd, struct epoll_event *events, \
403                                         l_int maxevents, l_int timeout); }
404 233     AUE_NULL        STD     { int linux_epoll_ctl(l_int epfd, l_int op, l_int fd, \
405                                         struct epoll_event *event); }
406 234     AUE_NULL        STD     { int linux_tgkill(l_int tgid, l_int pid, l_int sig); }
407 235     AUE_UTIMES      STD     { int linux_utimes(char *fname, \
408                                     struct l_timeval *tptr); }
409 236     AUE_NULL        UNIMPL  vserver
410 237     AUE_NULL        STD     { int linux_mbind(void); }
411 238     AUE_NULL        STD     { int linux_set_mempolicy(void); }
412 239     AUE_NULL        STD     { int linux_get_mempolicy(void); }
413 240     AUE_NULL        STD     { int linux_mq_open(void); }
414 241     AUE_NULL        STD     { int linux_mq_unlink(void); }
415 242     AUE_NULL        STD     { int linux_mq_timedsend(void); }
416 243     AUE_NULL        STD     { int linux_mq_timedreceive(void); }
417 244     AUE_NULL        STD     { int linux_mq_notify(void); }
418 245     AUE_NULL        STD     { int linux_mq_getsetattr(void); }
419 246     AUE_NULL        STD     { int linux_kexec_load(void); }
420 247     AUE_WAIT6       STD     { int linux_waitid(l_int idtype, l_pid_t id, \
421                                     l_siginfo_t *info, l_int options, \
422                                     struct rusage *rusage); }
423 248     AUE_NULL        STD     { int linux_add_key(void); }
424 249     AUE_NULL        STD     { int linux_request_key(void); }
425 250     AUE_NULL        STD     { int linux_keyctl(void); }
426 251     AUE_NULL        STD     { int linux_ioprio_set(void); }
427 252     AUE_NULL        STD     { int linux_ioprio_get(void); }
428 253     AUE_NULL        STD     { int linux_inotify_init(void); }
429 254     AUE_NULL        STD     { int linux_inotify_add_watch(void); }
430 255     AUE_NULL        STD     { int linux_inotify_rm_watch(void); }
431 256     AUE_NULL        STD     { int linux_migrate_pages(void); }
432 257     AUE_OPEN_RWTC   STD     { int linux_openat(l_int dfd, const char *filename, \
433                                     l_int flags, l_int mode); }
434 258     AUE_MKDIRAT     STD     { int linux_mkdirat(l_int dfd, const char *pathname, \
435                                     l_int mode); }
436 259     AUE_MKNODAT     STD     { int linux_mknodat(l_int dfd, const char *filename, \
437                                     l_int mode, l_uint dev); }
438 260     AUE_FCHOWNAT    STD     { int linux_fchownat(l_int dfd, const char *filename, \
439                                     l_uid_t uid, l_gid_t gid, l_int flag); }
440 261     AUE_FUTIMESAT   STD     { int linux_futimesat(l_int dfd, char *filename, \
441                                     struct l_timeval *utimes); }
442 262     AUE_FSTATAT     STD     { int linux_newfstatat(l_int dfd, char *pathname, \
443                                     struct l_stat64 *statbuf, l_int flag); }
444 263     AUE_UNLINKAT    STD     { int linux_unlinkat(l_int dfd, const char *pathname, \
445                                     l_int flag); }
446 264     AUE_RENAMEAT    STD     { int linux_renameat(l_int olddfd, const char *oldname, \
447                                     l_int newdfd, const char *newname); }
448 265     AUE_LINKAT      STD     { int linux_linkat(l_int olddfd, const char *oldname, \
449                                     l_int newdfd, const char *newname, l_int flag); }
450 266     AUE_SYMLINKAT   STD     { int linux_symlinkat(const char *oldname, l_int newdfd, \
451                                     const char *newname); }
452 267     AUE_READLINKAT  STD     { int linux_readlinkat(l_int dfd, const char *path, \
453                                     char *buf, l_int bufsiz); }
454 268     AUE_FCHMODAT    STD     { int linux_fchmodat(l_int dfd, const char *filename, \
455                                     l_mode_t mode); }
456 269     AUE_FACCESSAT   STD     { int linux_faccessat(l_int dfd, const char *filename, \
457                                     l_int amode); }
458 270     AUE_SELECT      STD     { int linux_pselect6(l_int nfds,                        \
459                                     l_fd_set *readfds, l_fd_set *writefds, l_fd_set *exceptfds, \
460                                     struct l_timespec *tsp, l_uintptr_t *sig); }
461 271     AUE_POLL        STD     { int linux_ppoll(struct pollfd *fds, uint32_t nfds,    \
462                                     struct l_timespec *tsp, l_sigset_t *sset, l_size_t ssize); }
463 272     AUE_NULL        STD     { int linux_unshare(void); }
464 273     AUE_NULL        STD     { int linux_set_robust_list(struct linux_robust_list_head *head, \
465                                     l_size_t len); }
466 274     AUE_NULL        STD     { int linux_get_robust_list(l_int pid, \
467                                     struct linux_robust_list_head **head, l_size_t *len); }
468 275     AUE_NULL        STD     { int linux_splice(void); }
469 276     AUE_NULL        STD     { int linux_tee(void); }
470 277     AUE_NULL        STD     { int linux_sync_file_range(void); }
471 278     AUE_NULL        STD     { int linux_vmsplice(void); }
472 279     AUE_NULL        STD     { int linux_move_pages(void); }
473 280     AUE_FUTIMESAT   STD     { int linux_utimensat(l_int dfd, const char *pathname, \
474                                     const struct l_timespec *times, l_int flags); }
475 281     AUE_NULL        STD     { int linux_epoll_pwait(l_int epfd, struct epoll_event *events, \
476                                     l_int maxevents, l_int timeout, l_sigset_t *mask, \
477                                     l_size_t sigsetsize); }
478 282     AUE_NULL        STD     { int linux_signalfd(void); }
479 283     AUE_NULL        STD     { int linux_timerfd_create(l_int clockid, l_int flags); }
480 284     AUE_NULL        STD     { int linux_eventfd(l_uint initval); }
481 285     AUE_NULL        STD     { int linux_fallocate(l_int fd, l_int mode, \
482                                     l_loff_t offset, l_loff_t len); }
483 286     AUE_NULL        STD     { int linux_timerfd_settime(l_int fd, l_int flags,      \
484                                     const struct l_itimerspec *new_value,               \
485                                     struct l_itimerspec *old_value); }
486 287     AUE_NULL        STD     { int linux_timerfd_gettime(l_int fd,   \
487                                     struct l_itimerspec *old_value); }
488 288     AUE_ACCEPT      STD     { int linux_accept4(l_int s, l_uintptr_t addr, \
489                                     l_uintptr_t namelen, int flags); }
490 ; Linux 2.6.27:
491 289     AUE_NULL        STD     { int linux_signalfd4(void); }
492 290     AUE_NULL        STD     { int linux_eventfd2(l_uint initval, l_int flags); }
493 291     AUE_NULL        STD     { int linux_epoll_create1(l_int flags); }
494 292     AUE_NULL        STD     { int linux_dup3(l_int oldfd,           \
495                                     l_int newfd, l_int flags); }
496 293     AUE_NULL        STD     { int linux_pipe2(l_int *pipefds, l_int flags); }
497 294     AUE_NULL        STD     { int linux_inotify_init1(l_int flags); }
498 ; Linux 2.6.30:
499 295     AUE_NULL        STD     { int linux_preadv(l_ulong fd,                  \
500                                     struct iovec *vec, l_ulong vlen,            \
501                                     l_ulong pos_l, l_ulong pos_h); }
502 296     AUE_NULL        STD     { int linux_pwritev(l_ulong fd,                 \
503                                     struct iovec *vec, l_ulong vlen,            \
504                                     l_ulong pos_l, l_ulong pos_h); }
505 ; Linux 2.6.31:
506 297     AUE_NULL        STD     { int linux_rt_tgsigqueueinfo(l_pid_t tgid,     \
507                                     l_pid_t tid, l_int sig, l_siginfo_t *uinfo); }
508 298     AUE_NULL        STD     { int linux_perf_event_open(void); }
509 ; Linux 2.6.33:
510 299     AUE_NULL        STD     { int linux_recvmmsg(l_int s,                   \
511                                     struct l_mmsghdr *msg, l_uint vlen,         \
512                                     l_uint flags, struct l_timespec *timeout); }
513 ; Linux 2.6.37:
514 300     AUE_NULL        STD     { int linux_fanotify_init(void); }
515 301     AUE_NULL        STD     { int linux_fanotify_mark(void); }
516 ; Linux 2.6.36:
517 302     AUE_NULL        STD     { int linux_prlimit64(l_pid_t pid, l_uint resource, \
518                                     struct rlimit *new, struct rlimit *old); }
519 ; Linux 2.6.39 (glibc 2.14):
520 303     AUE_NULL        STD     { int linux_name_to_handle_at(void); }
521 304     AUE_NULL        STD     { int linux_open_by_handle_at(void); }
522 305     AUE_NULL        STD     { int linux_clock_adjtime(void); }
523 306     AUE_SYNC        STD     { int linux_syncfs(l_int fd); }
524 ; Linux 3.0 (glibc 2.14):
525 307     AUE_NULL        STD     { int linux_sendmmsg(l_int s,                   \
526                                     struct l_mmsghdr *msg, l_uint vlen,         \
527                                     l_uint flags); }
528 308     AUE_NULL        STD     { int linux_setns(l_int fd, l_int nstype); }
529 ; Linux 2.6.19 (no glibc wrapper):
530 309     AUE_NULL        STD     { int linux_getcpu(l_uint *cpu, l_uint *node,   \
531                                     void *cache); }
532 ; Linux 3.2 (glibc 2.15):
533 310     AUE_NULL        STD     { int linux_process_vm_readv(l_pid_t pid,       \
534                                     const struct iovec *lvec, l_ulong liovcnt,  \
535                                     const struct iovec *rvec, l_ulong riovcnt,  \
536                                     l_ulong flags); }
537 311     AUE_NULL        STD     { int linux_process_vm_writev(l_pid_t pid,      \
538                                     const struct iovec *lvec, l_ulong liovcnt,  \
539                                     const struct iovec *rvec, l_ulong riovcnt,  \
540                                     l_ulong flags); }
541 ; Linux 3.5 (no glibc wrapper):
542 312     AUE_NULL        STD     { int linux_kcmp(l_pid_t pid1, l_pid_t pid2,    \
543                                     l_int type, l_ulong idx1, l_ulong idx); }
544 ; Linux 3.8 (no glibc wrapper):
545 313     AUE_NULL        STD     { int linux_finit_module(l_int fd,              \
546                                     const char *uargs, l_int flags); }
547 ; Linux 3.14:
548 314     AUE_NULL        STD     { int linux_sched_setattr(l_pid_t pid,          \
549                                     void *attr, l_uint flags); }
550 315     AUE_NULL        STD     { int linux_sched_getattr(l_pid_t pid,          \
551                                     void *attr, l_uint size, l_uint flags); }
552 ; Linux 3.15:
553 316     AUE_NULL        STD     { int linux_renameat2(l_int oldfd,              \
554                                     const char *oldname, l_int newfd,           \
555                                     const char *newname, unsigned int flags); }
556 ; Linux 3.17:
557 317     AUE_NULL        STD     { int linux_seccomp(l_uint op, l_uint flags,    \
558                                     const char *uargs); }
559 318     AUE_NULL        STD     { int linux_getrandom(char *buf,                \
560                                     l_size_t count, l_uint flags); }
561 319     AUE_NULL        STD     { int linux_memfd_create(const char *uname_ptr, \
562                                     l_uint flags); }
563 320     AUE_NULL        STD     { int linux_kexec_file_load(l_int kernel_fd,    \
564                                     l_int initrd_fd, l_ulong cmdline_len,       \
565                                     const char *cmdline_ptr, l_ulong flags); }
566 ; Linux 3.18:
567 321     AUE_NULL        STD     { int linux_bpf(l_int cmd, void *attr,          \
568                                     l_uint size); }
569 ; Linux 3.19:
570 322     AUE_NULL        STD     { int linux_execveat(l_int dfd,                 \
571                                     const char *filename, const char **argv,    \
572                                     const char **envp, l_int flags); }
573 ; Linux 4.2:
574 323     AUE_NULL        STD     { int linux_userfaultfd(l_int flags); }
575 ; Linux 4.3:
576 324     AUE_NULL        STD     { int linux_membarrier(l_int cmd, l_int flags); }
577 ; Linux 4.4:
578 325     AUE_NULL        STD     { int linux_mlock2(l_ulong start, l_size_t len, \
579                                     l_int flags); }
580 ; Linux 4.5:
581 326     AUE_NULL        STD     { int linux_copy_file_range(l_int fd_in,        \
582                                     l_loff_t *off_in, l_int fd_out,             \
583                                     l_loff_t *off_out, l_size_t len,            \
584                                     l_uint flags); }
585 ; Linux 4.6:
586 327     AUE_NULL        STD     { int linux_preadv2(l_ulong fd,                 \
587                                     const struct iovec *vec, l_ulong vlen,      \
588                                     l_ulong pos_l, l_ulong pos_h, l_int flags); }
589 328     AUE_NULL        STD     { int linux_pwritev2(l_ulong fd,                \
590                                     const struct iovec *vec, l_ulong vlen,      \
591                                     l_ulong pos_l, l_ulong pos_h, l_int flags); }
592 ; Linux 4.8:
593 329     AUE_NULL        STD     { int linux_pkey_mprotect(l_ulong start,        \
594                                     l_size_t len, l_ulong prot, l_int pkey); }
595 330     AUE_NULL        STD     { int linux_pkey_alloc(l_ulong flags,           \
596                                     l_ulong init_val); }
597 331     AUE_NULL        STD     { int linux_pkey_free(l_int pkey); }
598
599 ; please, keep this line at the end.
600 332     AUE_NULL        UNIMPL  nosys
601 ; vim: syntax=off