freebsd-dev/sys/arm/linux/syscalls.master
Ed Maste fc7510aef7 linuxulator: implement sendfile
Submitted by:	Bora Özarslan <borako.ozarslan@gmail.com>
Submitted by:	Yang Wang <2333@outlook.jp>
Reviewed by:	markj
Sponsored by:	The FreeBSD Foundation
Differential Revision:	https://reviews.freebsd.org/D19917
2020-02-05 16:53:02 +00:00

1929 lines
33 KiB
Plaintext

$FreeBSD$
; Linux ABI system call name/number map, based on Linux file
; arch/arm/kernel/calls.S
#include <sys/param.h>
#include <sys/sysent.h>
#include <sys/sysproto.h>
#include <compat/linux/linux_sysproto.h>
#include <arm/linux/linux.h>
#include <arm/linux/linux_proto.h>
; Isn't pretty, but there seems to be no other way to trap nosys
#define nosys linux_nosys
0 AUE_NULL UNIMPL setup
1 AUE_EXIT STD {
void linux_exit(
int rval
);
}
2 AUE_FORK STD {
int linux_fork(void);
}
3 AUE_NULL NOPROTO {
int read(
int fd,
char *buf,
u_int nbyte
);
}
4 AUE_NULL NOPROTO {
int write(
int fd,
char *buf,
u_int nbyte
);
}
5 AUE_OPEN_RWTC STD {
int linux_open(
char *path,
l_int flags,
l_int mode
);
}
6 AUE_CLOSE NOPROTO {
int close(
int fd);
}
7 AUE_NULL UNIMPL ; was linux_waitpid
8 AUE_CREAT STD {
int linux_creat(
char *path,
l_int mode
);
}
9 AUE_LINK STD {
int linux_link(
char *path,
char *to
);
}
10 AUE_UNLINK STD {
int linux_unlink(
char *path
);
}
11 AUE_EXECVE STD {
int linux_execve(
char *path,
char **argp,
char **envp
);
}
12 AUE_CHDIR STD {
int linux_chdir(
char *path
);
}
13 AUE_NULL UNIMPL ; was OBSOLETE(linux_time)
14 AUE_MKNOD STD {
int linux_mknod(
char *path,
l_int mode,
l_dev_t dev
);
}
15 AUE_CHMOD STD {
int linux_chmod(
char *path,
l_mode_t mode
);
}
16 AUE_LCHOWN STD {
int linux_lchown16(
char *path,
l_uid16_t uid,
l_gid16_t gid);
}
17 AUE_NULL UNIMPL ; was linux_break
18 AUE_NULL UNIMPL ; was linux_stat
19 AUE_LSEEK STD {
int linux_lseek(
l_uint fdes,
l_off_t off,
l_int whence
);
}
20 AUE_GETPID STD {
int linux_getpid(void);
}
21 AUE_MOUNT STD {
int linux_mount(
char *specialfile,
char *dir,
char *filesystemtype,
l_ulong rwflag,
void *data
);
}
22 AUE_NULL UNIMPL ; was OBSOLETE(linux_oldumount)
23 AUE_SETUID STD {
int linux_setuid16(
l_uid16_t uid);
}
24 AUE_GETUID STD {
int linux_getuid16(void);
}
25 AUE_NULL UNIMPL ; was OBSOLETE(linux_stime)
26 AUE_PTRACE UNIMPL ptrace
27 AUE_NULL UNIMPL ; was OBSOLETE(linux_alarm)
28 AUE_NULL UNIMPL ; was linux_fstat
29 AUE_NULL STD {
int linux_pause(void);
}
30 AUE_NULL UNIMPL ; was OBSOLETE(linux_utime)
31 AUE_NULL UNIMPL ; was linux_stty
32 AUE_NULL UNIMPL ; was linux_getty
33 AUE_ACCESS STD {
int linux_access(
char *path,
l_int amode
);
}
34 AUE_NICE STD {
int linux_nice(
l_int inc
);
}
35 AUE_NULL UNIMPL ; was linux_ftime
36 AUE_SYNC NOPROTO {
int sync(void);
}
37 AUE_KILL STD {
int linux_kill(
l_int pid,
l_int signum
);
}
38 AUE_RENAME STD {
int linux_rename(
char *from,
char *to
);
}
39 AUE_MKDIR STD {
int linux_mkdir(
char *path,
l_int mode
);
}
40 AUE_RMDIR STD {
int linux_rmdir(
char *path
);
}
41 AUE_DUP NOPROTO {
int dup(
u_int fd);
}
42 AUE_PIPE STD {
int linux_pipe(
l_int *pipefds
);
}
43 AUE_NULL STD {
int linux_times(
struct l_times_argv *buf
);
}
44 AUE_NULL UNIMPL ; was linux_prof
45 AUE_NULL STD {
int linux_brk(
l_ulong dsend);
}
46 AUE_SETGID STD {
int linux_setgid16(
l_gid16_t gid);
}
47 AUE_GETGID STD {
int linux_getgid16(void);
}
48 AUE_NULL UNIMPL ; was linux_signal
49 AUE_GETEUID STD {
int linux_geteuid16(void);
}
50 AUE_GETEGID STD {
int linux_getegid16(void);
}
51 AUE_ACCT NOPROTO {
int acct(
char *path
);
}
52 AUE_UMOUNT STD {
int linux_umount(
char *path,
l_int flags
);
}
53 AUE_NULL UNIMPL ; was linux_lock
54 AUE_IOCTL STD {
int linux_ioctl(
l_uint fd,
l_uint cmd,
l_ulong arg
);
}
55 AUE_FCNTL STD {
int linux_fcntl(
l_uint fd,
l_uint cmd,
l_ulong arg
);
}
56 AUE_NULL UNIMPL ; was linux_mpx
57 AUE_SETPGRP NOPROTO {
int setpgid(
int pid,
int pgid);
}
58 AUE_NULL UNIMPL ; was linux_ulimit
59 AUE_NULL UNIMPL ; was linux_olduname
60 AUE_UMASK NOPROTO {
int umask(
int newmask
);
}
61 AUE_CHROOT NOPROTO {
int chroot(
char *path
);
}
62 AUE_NULL STD {
int linux_ustat(
l_dev_t dev,
struct l_ustat *ubuf
);
}
63 AUE_DUP2 NOPROTO {
int dup2(
u_int from,
u_int to
);
}
64 AUE_GETPPID STD {
int linux_getppid(void);
}
65 AUE_GETPGRP NOPROTO {
int getpgrp(void);
}
66 AUE_SETSID NOPROTO {
int setsid(void);
}
67 AUE_NULL STD {
int linux_sigaction(
l_int sig,
l_osigaction_t *nsa,
l_osigaction_t *osa
);
}
68 AUE_NULL UNIMPL ; was linux_sgetmask
69 AUE_NULL UNIMPL ; was linux_ssetmask
70 AUE_SETREUID STD {
int linux_setreuid16(
l_uid16_t ruid,
l_uid16_t euid);
}
71 AUE_SETREGID STD {
int linux_setregid16(
l_gid16_t rgid,
l_gid16_t egid);
}
72 AUE_NULL STD {
int linux_sigsuspend(
l_int hist0,
l_int hist1,
l_osigset_t mask
);
}
73 AUE_NULL STD {
int linux_sigpending(
l_osigset_t *mask
);
}
74 AUE_SYSCTL STD {
int linux_sethostname(
char *hostname,
u_int len
);
}
75 AUE_SETRLIMIT STD {
int linux_setrlimit(
l_uint resource,
struct l_rlimit *rlim
);
}
76 AUE_NULL UNIMPL ; was OBSOLETE(linux_old_getrlimit)
77 AUE_GETRUSAGE NOPROTO {
int getrusage(
int who,
struct rusage *rusage
);
}
78 AUE_GETTIMEOFDAY STD {
int linux_gettimeofday(
struct timeval32 *tp,
struct timezone *tzp
);
}
79 AUE_SETTIMEOFDAY STD {
int linux_settimeofday(
struct timeval32 *tp,
struct timezone *tzp
);
}
80 AUE_GETGROUPS STD {
int linux_getgroups16(
l_uint gidsetsize,
l_gid16_t *gidset
);
}
81 AUE_SETGROUPS STD {
int linux_setgroups16(
l_uint gidsetsize,
l_gid16_t *gidset
);
}
82 AUE_NULL UNIMPL ; was OBSOLETE(linux_old_select)
83 AUE_SYMLINK STD {
int linux_symlink(
char *path,
char *to
);
}
84 AUE_NULL UNIMPL ; was linux_lstat
85 AUE_READLINK STD {
int linux_readlink(
char *name,
char *buf,
l_int count
);
}
86 AUE_NULL UNIMPL uselib
87 AUE_SWAPON NOPROTO {
int swapon(
char *name
);
}
88 AUE_REBOOT STD {
int linux_reboot(
l_int magic1,
l_int magic2,
l_uint cmd,
void *arg
);
}
89 AUE_NULL UNIMPL ; was OBSOLETE(linux_old_readdir)
90 AUE_NULL UNIMPL ; was OBSOLETE(linux_old_mmap)
91 AUE_MUNMAP NOPROTO {
int munmap(
caddr_t addr,
int len
);
}
92 AUE_TRUNCATE STD {
int linux_truncate(
char *path,
l_ulong length
);
}
93 AUE_FTRUNCATE STD {
int linux_ftruncate(
int fd,
long length
);
}
94 AUE_FCHMOD NOPROTO {
int fchmod(
int fd,
int mode
);
}
95 AUE_FCHOWN NOPROTO {
int fchown(
int fd,
int uid,
int gid);
}
96 AUE_GETPRIORITY STD {
int linux_getpriority(
int which,
int who
);
}
97 AUE_SETPRIORITY NOPROTO {
int setpriority(
int which,
int who,
int prio
);
}
98 AUE_NULL UNIMPL ; was linux_profil
99 AUE_STATFS STD {
int linux_statfs(
char *path,
struct l_statfs_buf *buf
);
}
100 AUE_FSTATFS STD {
int linux_fstatfs(
l_uint fd,
struct l_statfs_buf *buf
);
}
101 AUE_NULL UNIMPL ; was ioperm
102 AUE_NULL UNIMPL ; was OBSOLETE(linux_socketcall)
103 AUE_NULL STD {
int linux_syslog(
l_int type,
char *buf,
l_int len
);
}
104 AUE_SETITIMER STD {
int linux_setitimer(
l_int which,
struct l_itimerval *itv,
struct l_itimerval *oitv
);
}
105 AUE_GETITIMER STD {
int linux_getitimer(
l_int which,
struct l_itimerval *itv
);
}
106 AUE_STAT STD {
int linux_newstat(
char *path,
struct l_newstat *buf
);
}
107 AUE_LSTAT STD {
int linux_newlstat(
char *path,
struct l_newstat *buf
);
}
108 AUE_FSTAT STD {
int linux_newfstat(
l_uint fd,
struct l_newstat *buf
);
}
109 AUE_NULL UNIMPL ; was linux_uname
110 AUE_NULL UNIMPL ; was linux_iopl
111 AUE_NULL STD {
int linux_vhangup(void);
}
112 AUE_NULL UNIMPL ;
113 AUE_NULL UNIMPL ; was OBSOLETE(linux_syscall)
114 AUE_WAIT4 STD {
int linux_wait4(
l_pid_t pid,
l_int *status,
l_int options,
void *rusage
);
}
115 AUE_SWAPOFF STD {
int linux_swapoff(void);
}
116 AUE_NULL STD {
int linux_sysinfo(
struct l_sysinfo *info
);
}
117 AUE_NULL UNIMPL ; was OBSOLETE(linux_ipc)
118 AUE_FSYNC NOPROTO {
int fsync(
int fd);
}
119 AUE_SIGRETURN STD {
int linux_sigreturn(
struct l_sigframe *sfp
);
}
120 AUE_RFORK STD {
int linux_clone(
l_int flags,
void *stack,
void *parent_tidptr,
void *tls,
void * child_tidptr
);
}
121 AUE_SYSCTL STD {
int linux_setdomainname(
char *name,
int len
);
}
122 AUE_NULL STD {
int linux_newuname(
struct l_new_utsname *buf
);
}
123 AUE_NULL UNIMPL ; was linux_modify_ldt
124 AUE_ADJTIME STD {
int linux_adjtimex(void);
}
125 AUE_MPROTECT STD {
int linux_mprotect(
caddr_t addr,
int len,
int prot
);
}
126 AUE_SIGPROCMASK STD {
int linux_sigprocmask(
l_int how,
l_osigset_t *mask,
l_osigset_t *omask
);
}
127 AUE_NULL UNIMPL ; was linux_create_module
128 AUE_NULL STD {
int linux_init_module(void);
}
129 AUE_NULL STD {
int linux_delete_module(void);
}
130 AUE_NULL UNIMPL ; was linux_get_kernel_syms
131 AUE_QUOTACTL STD {
int linux_quotactl(void);
}
132 AUE_GETPGID NOPROTO {
int getpgid(
int pid);
}
133 AUE_FCHDIR NOPROTO {
int fchdir(
int fd);
}
134 AUE_BDFLUSH STD {
int linux_bdflush(void);
}
135 AUE_NULL STD {
int linux_sysfs(
l_int option,
l_ulong arg1,
l_ulong arg2
);
}
136 AUE_PERSONALITY STD {
int linux_personality(
l_ulong per
);
}
137 AUE_NULL UNIMPL ; was afs_syscall
138 AUE_SETFSUID STD {
int linux_setfsuid16(
l_uid16_t uid);
}
139 AUE_SETFSGID STD {
int linux_setfsgid16(
l_gid16_t gid);
}
140 AUE_LSEEK STD {
int linux_llseek(
l_int fd,
l_ulong ohigh,
l_ulong olow,
l_loff_t *res,
l_uint whence
);
}
141 AUE_GETDIRENTRIES STD {
int linux_getdents(
l_uint fd,
void *dent,
l_uint count
);
}
; 142: newselect
142 AUE_SELECT STD {
int linux_select(
l_int nfds,
l_fd_set *readfds,
l_fd_set *writefds,
l_fd_set *exceptfds,
struct l_timeval *timeout
);
}
143 AUE_FLOCK NOPROTO {
int flock(
int fd,
int how
);
}
144 AUE_MSYNC STD {
int linux_msync(
l_ulong addr,
l_size_t len,
l_int fl
);
}
145 AUE_READV NOPROTO {
int readv(
int fd,
struct iovec *iovp,
u_int iovcnt
);
}
146 AUE_WRITEV NOPROTO {
int writev(
int fd,
struct iovec *iovp,
u_int iovcnt
);
}
147 AUE_GETSID STD {
int linux_getsid(
l_pid_t pid);
}
148 AUE_NULL STD {
int linux_fdatasync(
l_uint fd);
}
149 AUE_SYSCTL STD {
int linux_sysctl(
struct l___sysctl_args *args
);
}
150 AUE_MLOCK NOPROTO {
int mlock(
const void *addr,
size_t len
);
}
151 AUE_MUNLOCK NOPROTO {
int munlock(
const void *addr,
size_t len
);
}
152 AUE_MLOCKALL NOPROTO {
int mlockall(
int how
);
}
153 AUE_MUNLOCKALL NOPROTO {
int munlockall(void);
}
154 AUE_SCHED_SETPARAM STD {
int linux_sched_setparam(
l_pid_t pid,
struct sched_param *param
);
}
155 AUE_SCHED_GETPARAM STD {
int linux_sched_getparam(
l_pid_t pid,
struct sched_param *param
);
}
156 AUE_SCHED_SETSCHEDULER STD {
int linux_sched_setscheduler(
l_pid_t pid,
l_int policy,
struct sched_param *param
);
}
157 AUE_SCHED_GETSCHEDULER STD {
int linux_sched_getscheduler(
l_pid_t pid);
}
158 AUE_NULL NOPROTO {
int sched_yield(void);
}
159 AUE_SCHED_GET_PRIORITY_MAX STD {
int linux_sched_get_priority_max(
l_int policy
);
}
160 AUE_SCHED_GET_PRIORITY_MIN STD {
int linux_sched_get_priority_min(
l_int policy
);
}
161 AUE_SCHED_RR_GET_INTERVAL STD {
int linux_sched_rr_get_interval(
l_pid_t pid,
struct l_timespec *interval
);
}
162 AUE_NULL STD {
int linux_nanosleep(
const struct l_timespec *rqtp,
struct l_timespec *rmtp
);
}
163 AUE_NULL STD {
int linux_mremap(
l_ulong addr,
l_ulong old_len,
l_ulong new_len,
l_ulong flags,
l_ulong new_addr
);
}
164 AUE_SETRESUID STD {
int linux_setresuid16(
l_uid16_t ruid,
l_uid16_t euid,
l_uid16_t suid);
}
165 AUE_GETRESUID STD {
int linux_getresuid16(
l_uid16_t *ruid,
l_uid16_t *euid,
l_uid16_t *suid);
}
166 AUE_NULL UNIMPL ; was linux_vm86
167 AUE_NULL UNIMPL ; was linux_query_module
168 AUE_POLL NOPROTO {
int poll(
struct pollfd* fds,
unsigned int nfds,
long timeout
);
}
169 AUE_NULL UNIMPL ; was linux_nfsservctl
170 AUE_SETRESGID STD {
int linux_setresgid16(
l_gid16_t rgid,
l_gid16_t egid,
l_gid16_t sgid);
}
171 AUE_GETRESGID STD {
int linux_getresgid16(
l_gid16_t *rgid,
l_gid16_t *egid,
l_gid16_t *sgid);
}
172 AUE_PRCTL STD {
int linux_prctl(
l_int option,
l_int arg2,
l_int arg3,
l_int arg4,
l_int arg5
);
}
173 AUE_NULL STD {
int linux_rt_sigreturn(
struct l_ucontext *ucp
);
}
174 AUE_NULL STD {
int linux_rt_sigaction(
l_int sig,
l_sigaction_t *act,
l_sigaction_t *oact,
l_size_t sigsetsize
);
}
175 AUE_NULL STD {
int linux_rt_sigprocmask(
l_int how,
l_sigset_t *mask,
l_sigset_t *omask,
l_size_t sigsetsize
);
}
176 AUE_NULL STD {
int linux_rt_sigpending(
l_sigset_t *set,
l_size_t sigsetsize
);
}
177 AUE_NULL STD {
int linux_rt_sigtimedwait(
l_sigset_t *mask,
l_siginfo_t *ptr,
struct l_timeval *timeout,
l_size_t sigsetsize
);
}
178 AUE_NULL STD {
int linux_rt_sigqueueinfo(
l_pid_t pid,
l_int sig,
l_siginfo_t *info
);
}
179 AUE_NULL STD {
int linux_rt_sigsuspend(
l_sigset_t *newset,
l_size_t sigsetsize
);
}
180 AUE_PREAD STD {
int linux_pread(
l_uint fd,
char *buf,
l_size_t nbyte,
l_loff_t offset
);
}
181 AUE_PWRITE STD {
int linux_pwrite(
l_uint fd,
char *buf,
l_size_t nbyte,
l_loff_t offset
);
}
182 AUE_CHOWN STD {
int linux_chown16(
char *path,
l_uid16_t uid,
l_gid16_t gid);
}
183 AUE_GETCWD STD {
int linux_getcwd(
char *buf,
l_ulong bufsize
);
}
184 AUE_CAPGET STD {
int linux_capget(
struct l_user_cap_header *hdrp,
struct l_user_cap_data *datap
);
}
185 AUE_CAPSET STD {
int linux_capset(
struct l_user_cap_header *hdrp,
struct l_user_cap_data *datap
);
}
186 AUE_NULL STD {
int linux_sigaltstack(
l_stack_t *uss,
l_stack_t *uoss
);
}
187 AUE_SENDFILE STD {
int linux_sendfile(
l_int out,
l_int in,
l_long *offset,
l_size_t count
);
}
188 AUE_NULL UNIMPL ; was getpmsg
189 AUE_NULL UNIMPL ; was putpmsg
190 AUE_VFORK STD {
int linux_vfork(void);
}
; 191: ugetrlimit
191 AUE_GETRLIMIT STD {
int linux_getrlimit(
l_uint resource,
struct l_rlimit *rlim
);
}
192 AUE_MMAP STD {
int linux_mmap2(
l_ulong addr,
l_ulong len,
l_ulong prot,
l_ulong flags,
l_ulong fd,
l_ulong pgoff
);
}
193 AUE_TRUNCATE STD {
int linux_truncate64(
char *path,
l_loff_t length
);
}
194 AUE_FTRUNCATE STD {
int linux_ftruncate64(
l_uint fd,
l_loff_t length
);
}
195 AUE_STAT STD {
int linux_stat64(
const char *filename,
struct l_stat64 *statbuf
);
}
196 AUE_LSTAT STD {
int linux_lstat64(
const char *filename,
struct l_stat64 *statbuf
);
}
197 AUE_FSTAT STD {
int linux_fstat64(
l_int fd,
struct l_stat64 *statbuf
);
}
198 AUE_LCHOWN STD {
int linux_lchown(
char *path,
l_uid_t uid,
l_gid_t gid);
}
199 AUE_GETUID STD {
int linux_getuid(void);
}
200 AUE_GETGID STD {
int linux_getgid(void);
}
201 AUE_GETEUID NOPROTO {
int geteuid(void);
}
202 AUE_GETEGID NOPROTO {
int getegid(void);
}
203 AUE_SETREUID NOPROTO {
int setreuid(
uid_t ruid,
uid_t euid);
}
204 AUE_SETREGID NOPROTO {
int setregid(
gid_t rgid,
gid_t egid);
}
205 AUE_GETGROUPS STD {
int linux_getgroups(
l_int gidsetsize,
l_gid_t *grouplist
);
}
206 AUE_SETGROUPS STD {
int linux_setgroups(
l_int gidsetsize,
l_gid_t *grouplist
);
}
207 AUE_FCHOWN NODEF fchown fchown fchown_args int
208 AUE_SETRESUID NOPROTO {
int setresuid(
uid_t ruid,
uid_t euid,
uid_t suid);
}
209 AUE_GETRESUID NOPROTO {
int getresuid(
uid_t *ruid,
uid_t *euid,
uid_t *suid);
}
210 AUE_SETRESGID NOPROTO {
int setresgid(
gid_t rgid,
gid_t egid,
gid_t sgid);
}
211 AUE_GETRESGID NOPROTO {
int getresgid(
gid_t *rgid,
gid_t *egid,
gid_t *sgid);
}
212 AUE_CHOWN STD {
int linux_chown(
char *path,
l_uid_t uid,
l_gid_t gid);
}
213 AUE_SETUID NOPROTO {
int setuid(
uid_t uid);
}
214 AUE_SETGID NOPROTO {
int setgid(
gid_t gid);
}
215 AUE_SETFSUID STD {
int linux_setfsuid(
l_uid_t uid);
}
216 AUE_SETFSGID STD {
int linux_setfsgid(
l_gid_t gid);
}
217 AUE_GETDIRENTRIES STD {
int linux_getdents64(
l_uint fd,
void *dirent,
l_uint count
);
}
218 AUE_PIVOT_ROOT STD {
int linux_pivot_root(
char *new_root,
char *put_old);
}
219 AUE_MINCORE STD {
int linux_mincore(
l_ulong start,
l_size_t len,
u_char *vec
);
}
220 AUE_MADVISE NOPROTO {
int madvise(void *addr,
size_t len,
int behav
);
}
221 AUE_FCNTL STD {
int linux_fcntl64(
l_uint fd,
l_uint cmd,
l_ulong arg
);
}
222 AUE_NULL UNIMPL
223 AUE_NULL UNIMPL
224 AUE_NULL STD {
long linux_gettid(void);
}
225 AUE_NULL UNIMPL linux_readahead
226 AUE_NULL STD {
int linux_setxattr(void);
}
227 AUE_NULL STD {
int linux_lsetxattr(void);
}
228 AUE_NULL STD {
int linux_fsetxattr(void);
}
229 AUE_NULL STD {
int linux_getxattr(void);
}
230 AUE_NULL STD {
int linux_lgetxattr(void);
}
231 AUE_NULL STD {
int linux_fgetxattr(void);
}
232 AUE_NULL STD {
int linux_listxattr(void);
}
233 AUE_NULL STD {
int linux_llistxattr(void);
}
234 AUE_NULL STD {
int linux_flistxattr(void);
}
235 AUE_NULL STD {
int linux_removexattr(void);
}
236 AUE_NULL STD {
int linux_lremovexattr(void);
}
237 AUE_NULL STD {
int linux_fremovexattr(void);
}
238 AUE_NULL STD {
int linux_tkill(
int tid,
int sig
);
}
239 AUE_SENDFILE STD {
int linux_sendfile64(
l_int out,
l_int in,
l_loff_t *offset,
l_size_t count
);
}
240 AUE_NULL STD {
int linux_sys_futex(void *uaddr,
int op,
uint32_t val,
struct l_timespec *timeout,
uint32_t *uaddr2,
uint32_t val3
);
}
241 AUE_NULL STD {
int linux_sched_setaffinity(
l_pid_t pid,
l_uint len,
l_ulong *user_mask_ptr
);
}
242 AUE_NULL STD {
int linux_sched_getaffinity(
l_pid_t pid,
l_uint len,
l_ulong *user_mask_ptr
);
}
243 AUE_NULL UNIMPL linux_io_setup
244 AUE_NULL UNIMPL linux_io_destroy
245 AUE_NULL UNIMPL linux_io_getevents
246 AUE_NULL UNIMPL linux_io_submit
247 AUE_NULL UNIMPL linux_io_cancel
248 AUE_EXIT STD {
int linux_exit_group(
int error_code
);
}
249 AUE_NULL STD {
int linux_lookup_dcookie(void);
}
250 AUE_NULL STD {
int linux_epoll_create(
l_int size
);
}
251 AUE_NULL STD {
int linux_epoll_ctl(
l_int epfd,
l_int op,
l_int fd,
struct epoll_event *event
);
}
252 AUE_NULL STD {
int linux_epoll_wait(
l_int epfd,
struct epoll_event *events,
l_int maxevents,
l_int timeout
);
}
253 AUE_NULL STD {
int linux_remap_file_pages(void);
}
254 AUE_NULL UNIMPL ; was set_thread_area
255 AUE_NULL UNIMPL ; was get_thread_area
256 AUE_NULL STD {
int linux_set_tid_address(
int *tidptr
);
}
257 AUE_NULL STD {
int linux_timer_create(
clockid_t clock_id,
struct sigevent *evp,
l_timer_t *timerid);
}
258 AUE_NULL STD {
int linux_timer_settime(
l_timer_t timerid,
l_int flags,
const struct itimerspec *new,
struct itimerspec *old);
}
259 AUE_NULL STD {
int linux_timer_gettime(
l_timer_t timerid,
struct itimerspec *setting
);
}
260 AUE_NULL STD {
int linux_timer_getoverrun(
l_timer_t timerid);
}
261 AUE_NULL STD {
int linux_timer_delete(
l_timer_t timerid);
}
262 AUE_CLOCK_SETTIME STD {
int linux_clock_settime(
clockid_t which,
struct l_timespec *tp
);
}
263 AUE_NULL STD {
int linux_clock_gettime(
clockid_t which,
struct l_timespec *tp
);
}
264 AUE_NULL STD {
int linux_clock_getres(
clockid_t which,
struct l_timespec *tp
);
}
265 AUE_NULL STD {
int linux_clock_nanosleep(
clockid_t which,
int flags,
struct l_timespec *rqtp,
struct l_timespec *rmtp
);
}
266 AUE_STATFS STD {
int linux_statfs64(
char *path,
size_t bufsize,
struct l_statfs64_buf *buf
);
}
267 AUE_FSTATFS STD {
int linux_fstatfs64(
l_uint fd,
size_t bufsize,
struct l_statfs64_buf *buf
);
}
268 AUE_NULL STD {
int linux_tgkill(
int tgid,
int pid,
int sig
);
}
269 AUE_UTIMES STD {
int linux_utimes(
char *fname,
struct l_timeval *tptr
);
}
270 AUE_NULL STD {
int linux_fadvise64_64(
int fd,
l_loff_t offset,
l_loff_t len,
int advice
);
}
271 AUE_NULL UNIMPL pciconfig_iobase
272 AUE_NULL UNIMPL pciconfig_read
273 AUE_NULL UNIMPL pciconfig_write
; linux 2.6.6:
274 AUE_NULL STD {
int linux_mq_open(
const char *name,
int oflag,
mode_t mode,
struct mq_attr *attr
);
}
275 AUE_NULL STD {
int linux_mq_unlink(
const char *name
);
}
276 AUE_NULL STD {
int linux_mq_timedsend(
l_mqd_t mqd,
const char *msg_ptr,
size_t msg_len,
unsigned int msg_prio,
const struct l_timespec *abs_timeout
);
}
277 AUE_NULL STD {
int linux_mq_timedreceive(
l_mqd_t mqd,
char *msg_ptr,
size_t msg_len,
unsigned int msg_prio,
const struct l_timespec *abs_timeout
);
}
278 AUE_NULL STD {
int linux_mq_notify(
l_mqd_t mqd,
const struct l_timespec *abs_timeout
);
}
279 AUE_NULL STD {
int linux_mq_getsetattr(
l_mqd_t mqd,
const struct mq_attr *attr,
struct mq_attr *oattr
);
}
280 AUE_WAIT6 STD {
int linux_waitid(
int idtype,
l_pid_t id,
l_siginfo_t *info,
int options,
void *rusage
);
}
281 AUE_SOCKET STD {
int linux_socket(
l_int domain,
l_int type,
l_int protocol
);
}
282 AUE_BIND STD {
int linux_bind(
l_int s,
l_uintptr_t name,
l_int namelen
);
}
283 AUE_CONNECT STD {
int linux_connect(
l_int s,
l_uintptr_t name,
l_int namelen
);
}
284 AUE_LISTEN STD {
int linux_listen(
l_int s,
l_int backlog
);
}
285 AUE_ACCEPT STD {
int linux_accept(
l_int s,
l_uintptr_t addr,
l_uintptr_t namelen
);
}
286 AUE_GETSOCKNAME STD {
int linux_getsockname(
l_int s,
l_uintptr_t addr,
l_uintptr_t namelen
);
}
287 AUE_GETPEERNAME STD {
int linux_getpeername(
l_int s,
l_uintptr_t addr,
l_uintptr_t namelen
);
}
288 AUE_SOCKETPAIR STD {
int linux_socketpair(
l_int domain,
l_int type,
l_int protocol,
l_uintptr_t rsv
);
}
289 AUE_SEND STD {
int linux_send(
int s,
l_uintptr_t msg,
int len,
int flags
);
}
290 AUE_SENDTO STD {
int linux_sendto(
l_int s,
l_uintptr_t msg,
l_int len,
l_int flags,
l_uintptr_t to,
l_int tolen
);
}
291 AUE_RECV STD {
int linux_recv(
int s,
l_uintptr_t msg,
int len,
int flags
);
}
292 AUE_RECVFROM STD {
int linux_recvfrom(
l_int s,
l_uintptr_t buf,
l_size_t len,
l_int flags,
l_uintptr_t from,
l_uintptr_t fromlen
);
}
293 AUE_NULL STD {
int linux_shutdown(
l_int s,
l_int how
);
}
294 AUE_SETSOCKOPT STD {
int linux_setsockopt(
l_int s,
l_int level,
l_int optname,
l_uintptr_t optval,
l_int optlen
);
}
295 AUE_GETSOCKOPT STD {
int linux_getsockopt(
l_int s,
l_int level,
l_int optname,
l_uintptr_t optval,
l_uintptr_t optlen
);
}
296 AUE_SENDMSG STD {
int linux_sendmsg(
l_int s,
l_uintptr_t msg,
l_int flags
);
}
297 AUE_RECVMSG STD {
int linux_recvmsg(
l_int s,
l_uintptr_t msg,
l_int flags
);
}
298 AUE_NULL STD {
int linux_semop(
l_int semid,
struct l_sembuf *tsops,
l_uint nsops
);
}
299 AUE_NULL STD {
int linux_semget(l_key_t key,
l_int nsems,
l_int semflg
);
}
300 AUE_NULL STD {
int linux_semctl(
l_int semid,
l_int semnum,
l_int cmd,
union l_semun arg
);
}
301 AUE_NULL STD {
int linux_msgsnd(
l_int msqid,
struct l_msgbuf *msgp,
l_size_t msgsz,
l_int msgflg
);
}
302 AUE_NULL STD {
int linux_msgrcv(
l_int msqid,
struct l_msgbuf *msgp,
l_size_t msgsz,
l_long msgtyp,
l_int msgflg
);
}
303 AUE_NULL STD {
int linux_msgget(
l_key_t key,
l_int msgflg
);
}
304 AUE_NULL STD {
int linux_msgctl(
l_int msqid,
l_int cmd,
struct l_msqid_ds *buf
);
}
305 AUE_NULL STD {
int linux_shmat(
l_int shmid,
char *shmaddr,
l_int shmflg
);
}
306 AUE_NULL STD {
int linux_shmdt(
char *shmaddr
);
}
307 AUE_NULL STD {
int linux_shmget(
l_key_t key,
l_size_t size,
l_int shmflg
);
}
308 AUE_NULL STD {
int linux_shmctl(
l_int shmid,
l_int cmd,
struct l_shmid_ds *buf
);
}
; linux 2.6.11:
309 AUE_NULL STD {
int linux_add_key(void);
}
310 AUE_NULL STD {
int linux_request_key(void);
}
311 AUE_NULL STD {
int linux_keyctl(void);
}
312 AUE_NULL UNIMPL semtimedop
313 AUE_NULL UNIMPL ; was vserver
; linux 2.6.13:
314 AUE_NULL STD {
int linux_ioprio_set(void);
}
315 AUE_NULL STD {
int linux_ioprio_get(void);
}
316 AUE_NULL STD {
int linux_inotify_init(void);
}
317 AUE_NULL STD {
int linux_inotify_add_watch(void);
}
318 AUE_NULL STD {
int linux_inotify_rm_watch(void);
}
319 AUE_NULL STD {
int linux_mbind(void);
}
320 AUE_NULL STD {
int linux_get_mempolicy(void);
}
321 AUE_NULL STD {
int linux_set_mempolicy(void);
}
; linux 2.6.16:
322 AUE_OPEN_RWTC STD {
int linux_openat(
l_int dfd,
const char *filename,
l_int flags,
l_int mode
);
}
323 AUE_MKDIRAT STD {
int linux_mkdirat(
l_int dfd,
const char *pathname,
l_int mode
);
}
324 AUE_MKNODAT STD {
int linux_mknodat(
l_int dfd,
const char *filename,
l_int mode,
l_uint dev
);
}
325 AUE_FCHOWNAT STD {
int linux_fchownat(
l_int dfd,
const char *filename,
l_uid16_t uid,
l_gid16_t gid,
l_int flag
);
}
326 AUE_FUTIMESAT STD {
int linux_futimesat(
l_int dfd,
char *filename,
struct l_timeval *utimes
);
}
327 AUE_FSTATAT STD {
int linux_fstatat64(
l_int dfd,
char *pathname,
struct l_stat64 *statbuf,
l_int flag
);
}
328 AUE_UNLINKAT STD {
int linux_unlinkat(
l_int dfd,
const char *pathname,
l_int flag
);
}
329 AUE_RENAMEAT STD {
int linux_renameat(
l_int olddfd,
const char *oldname,
l_int newdfd,
const char *newname
);
}
330 AUE_LINKAT STD {
int linux_linkat(
l_int olddfd,
const char *oldname,
l_int newdfd,
const char *newname,
l_int flag
);
}
331 AUE_SYMLINKAT STD {
int linux_symlinkat(
const char *oldname,
l_int newdfd,
const char *newname
);
}
332 AUE_READLINKAT STD {
int linux_readlinkat(
l_int dfd,
const char *path,
char *buf,
l_int bufsiz
);
}
333 AUE_FCHMODAT STD {
int linux_fchmodat(
l_int dfd,
const char *filename,
l_mode_t mode
);
}
334 AUE_FACCESSAT STD {
int linux_faccessat(
l_int dfd,
const char *filename,
l_int amode
);
}
335 AUE_SELECT STD {
int linux_pselect6(
l_int nfds,
l_fd_set *readfds,
l_fd_set *writefds,
l_fd_set *exceptfds,
struct l_timespec *tsp,
l_uintptr_t *sig
);
}
336 AUE_POLL STD {
int linux_ppoll(
struct pollfd *fds,
uint32_t nfds,
struct l_timespec *tsp,
l_sigset_t *sset,
l_size_t ssize
);
}
337 AUE_NULL STD {
int linux_unshare(void);
}
; linux 2.6.17:
338 AUE_NULL STD {
int linux_set_robust_list(
struct linux_robust_list_head *head,
l_size_t len
);
}
339 AUE_NULL STD {
int linux_get_robust_list(
l_int pid,
struct linux_robust_list_head **head,
l_size_t *len
);
}
340 AUE_NULL STD {
int linux_splice(void);
}
341 AUE_NULL STD {
int linux_sync_file_range(
l_int fd,
l_loff_t offset,
l_loff_t nbytes,
unsigned int flags
);
}
342 AUE_NULL STD {
int linux_tee(void);
}
343 AUE_NULL STD {
int linux_vmsplice(void);
}
; linux 2.6.18:
344 AUE_NULL STD {
int linux_move_pages(void);
}
; linux 2.6.19:
345 AUE_NULL STD {
int linux_getcpu(
l_uint *cpu,
l_uint *node,
void *cache
);
}
346 AUE_NULL STD {
int linux_epoll_pwait(
l_int epfd,
struct epoll_event *events,
l_int maxevents,
l_int timeout,
l_sigset_t *mask
);
}
; linux 2.6.22:
347 AUE_NULL STD {
int linux_kexec_load(void);
}
348 AUE_FUTIMESAT STD {
int linux_utimensat(
l_int dfd,
const char *pathname,
const struct l_timespec *times,
l_int flags
);
}
349 AUE_NULL STD {
int linux_signalfd(void);
}
350 AUE_NULL STD {
int linux_timerfd_create(void);
}
351 AUE_NULL STD {
int linux_eventfd(
l_uint initval
);
}
; linux 2.6.23:
352 AUE_NULL STD {
int linux_fallocate(
l_int fd,
l_int mode,
l_loff_t offset,
l_loff_t len
);
}
; linux 2.6.25:
353 AUE_NULL STD {
int linux_timerfd_settime(void);
}
354 AUE_NULL STD {
int linux_timerfd_gettime(void);
}
; linux 2.6.27:
355 AUE_NULL STD {
int linux_signalfd4(void);
}
356 AUE_NULL STD {
int linux_eventfd2(
l_uint initval,
l_int flags
);
}
357 AUE_NULL STD {
int linux_epoll_create1(
l_int flags
);
}
358 AUE_NULL STD {
int linux_dup3(
l_int oldfd,
l_int newfd,
l_int flags
);
}
359 AUE_NULL STD {
int linux_pipe2(
l_int *pipefds,
l_int flags
);
}
360 AUE_NULL STD {
int linux_inotify_init1(void);
}
; linux 2.6.30:
361 AUE_NULL STD {
int linux_preadv(void);
}
362 AUE_NULL STD {
int linux_pwritev(void);
}
; linux 2.6.31:
363 AUE_NULL STD {
int linux_rt_tsigqueueinfo(void);
}
364 AUE_NULL STD {
int linux_perf_event_open(void);
}
; linux 2.6.33:
365 AUE_NULL STD {
int linux_recvmmsg(
l_int s,
struct l_mmsghdr *msg,
l_uint vlen,
l_uint flags,
struct l_timespec *timeout
);
}
366 AUE_ACCEPT STD {
int linux_accept4(
l_int s,
l_uintptr_t addr,
l_uintptr_t namelen,
int flags
);
}
367 AUE_NULL STD {
int linux_fanotify_init(void);
}
368 AUE_NULL STD {
int linux_fanotify_mark(void);
}
; linux 2.6.36:
369 AUE_NULL STD {
int linux_prlimit64(
l_pid_t pid,
l_uint resource,
struct rlimit *new,
struct rlimit *old);
}
; later:
370 AUE_NULL STD {
int linux_name_to_handle_at(void);
}
371 AUE_NULL STD {
int linux_open_by_handle_at(void);
}
372 AUE_NULL STD {
int linux_clock_adjtime(void);
}
373 AUE_SYNC STD {
int linux_syncfs(
l_int fd);
}
374 AUE_NULL STD {
int linux_sendmmsg(
l_int s,
struct l_mmsghdr *msg,
l_uint vlen,
l_uint flags
);
}
375 AUE_NULL STD {
int linux_setns(void);
}
376 AUE_NULL STD {
int linux_process_vm_readv(void);
}
377 AUE_NULL STD {
int linux_process_vm_writev(void);
}
378 AUE_NULL UNIMPL kcmp
379 AUE_NULL UNIMPL finit_module
380 AUE_NULL UNIMPL sys_sched_setattr
381 AUE_NULL UNIMPL sys_sched_getattr
382 AUE_NULL UNIMPL sys_renameat2
383 AUE_NULL UNIMPL sys_seccomp
384 AUE_NULL UNIMPL sys_getrandom
385 AUE_NULL UNIMPL sys_memfd_create
386 AUE_NULL UNIMPL sys_bpf
387 AUE_NULL UNIMPL sys_execveat
388 AUE_NULL UNIMPL sys_userfaultfd
389 AUE_NULL UNIMPL sys_membarrier
390 AUE_NULL UNIMPL sys_mlock2
391 AUE_NULL UNIMPL sys_copy_file_range
392 AUE_NULL UNIMPL sys_preadv2
393 AUE_NULL UNIMPL sys_pwritev2
394 AUE_NULL UNIMPL
395 AUE_NULL UNIMPL
396 AUE_NULL UNIMPL
397 AUE_NULL UNIMPL
398 AUE_NULL UNIMPL
399 AUE_NULL UNIMPL
; ARM specific
; Effective number here is 0x000f0000
; but we must not breaks syscall numbering
400 AUE_NULL UNIMPL unimpl400
401 AUE_NULL UNIMPL breakpoint
402 AUE_NULL UNIMPL cacheflush
403 AUE_NULL UNIMPL usr26
404 AUE_NULL UNIMPL usr32
405 AUE_NULL STD {
int linux_set_tls(
void* tls
);
}
; please, keep this line at the end.
406 AUE_NULL UNIMPL nosys