1 $FreeBSD: releng/5.3/sys/amd64/linux32/syscalls.master 133819 2004-08-16 07:55:06Z tjr $
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 type nargs name alt{name,tag,rtyp}/comments
8 ; number system call number, must be in order
9 ; type one of STD, OBSOL, UNIMPL, COMPAT
10 ; name psuedo-prototype of syscall routine
11 ; If one of the following alts is different, then all appear:
12 ; altname name of system call if different
13 ; alttag name of args struct tag if different from [o]`name'"_args"
14 ; altrtyp return type if not int (bogus - syscalls always return int)
15 ; for UNIMPL/OBSOL, name continues with comments
16
17 ; types:
18 ; STD always included
19 ; COMPAT included on COMPAT #ifdef
20 ; LIBCOMPAT included on COMPAT #ifdef, and placed in syscall.h
21 ; OBSOL obsolete, not included in system, only specifies name
22 ; UNIMPL not implemented, placeholder only
23
24 #include "opt_compat.h"
25 #include <sys/param.h>
26 #include <sys/sysent.h>
27 #include <sys/sysproto.h>
28 #include <amd64/linux32/linux.h>
29 #include <amd64/linux32/linux32_proto.h>
30
31 ; #ifdef's, etc. may be included, and are copied to the output files.
32
33 0 UNIMPL setup
34 1 MNOPROTO { void sys_exit(int rval); } exit sys_exit_args void
35 2 MSTD { int linux_fork(void); }
36 3 MNOPROTO { int read(int fd, char *buf, u_int nbyte); }
37 4 MNOPROTO { int write(int fd, char *buf, u_int nbyte); }
38 5 STD { int linux_open(char *path, l_int flags, l_int mode); }
39 6 MNOPROTO { int close(int fd); }
40 7 MSTD { int linux_waitpid(l_pid_t pid, l_int *status, l_int options); }
41 8 STD { int linux_creat(char *path, l_int mode); }
42 9 STD { int linux_link(char *path, char *to); }
43 10 STD { int linux_unlink(char *path); }
44 11 STD { int linux_execve(char *path, char **argp, char **envp); }
45 12 STD { int linux_chdir(char *path); }
46 13 STD { int linux_time(l_time_t *tm); }
47 14 STD { int linux_mknod(char *path, l_int mode, l_dev_t dev); }
48 15 STD { int linux_chmod(char *path, l_mode_t mode); }
49 16 STD { int linux_lchown16(char *path, l_uid16_t uid, \
50 l_gid16_t gid); }
51 17 UNIMPL break
52 18 UNIMPL stat
53 19 STD { int linux_lseek(l_uint fdes, l_off_t off, l_int whence); }
54 20 MSTD { int linux_getpid(void); }
55 21 STD { int linux_mount(char *specialfile, char *dir, \
56 char *filesystemtype, l_ulong rwflag, \
57 void *data); }
58 22 STD { int linux_oldumount(char *path); }
59 23 MSTD { int linux_setuid16(l_uid16_t uid); }
60 24 MSTD { int linux_getuid16(void); }
61 25 STD { int linux_stime(void); }
62 26 MSTD { int linux_ptrace(l_long req, l_long pid, l_long addr, \
63 l_long data); }
64 27 STD { int linux_alarm(l_uint secs); }
65 28 UNIMPL fstat
66 29 MSTD { int linux_pause(void); }
67 30 STD { int linux_utime(char *fname, struct l_utimbuf *times); }
68 31 UNIMPL stty
69 32 UNIMPL gtty
70 33 STD { int linux_access(char *path, l_int flags); }
71 34 MSTD { int linux_nice(l_int inc); }
72 35 UNIMPL ftime
73 36 NOPROTO { int sync(void); }
74 37 MSTD { int linux_kill(l_int pid, l_int signum); }
75 38 STD { int linux_rename(char *from, char *to); }
76 39 STD { int linux_mkdir(char *path, l_int mode); }
77 40 STD { int linux_rmdir(char *path); }
78 41 MNOPROTO { int dup(u_int fd); }
79 42 MSTD { int linux_pipe(l_ulong *pipefds); }
80 43 STD { int linux_times(struct l_times_argv *buf); }
81 44 UNIMPL prof
82 45 STD { int linux_brk(l_ulong dsend); }
83 46 MSTD { int linux_setgid16(l_gid16_t gid); }
84 47 MSTD { int linux_getgid16(void); }
85 48 MSTD { int linux_signal(l_int sig, l_handler_t handler); }
86 49 MSTD { int linux_geteuid16(void); }
87 50 MSTD { int linux_getegid16(void); }
88 51 MNOPROTO { int acct(char *path); }
89 52 STD { int linux_umount(char *path, l_int flags); }
90 53 UNIMPL lock
91 54 STD { int linux_ioctl(l_uint fd, l_uint cmd, uintptr_t arg); }
92 55 STD { int linux_fcntl(l_uint fd, l_uint cmd, uintptr_t arg); }
93 56 UNIMPL mpx
94 57 MNOPROTO { int setpgid(int pid, int pgid); }
95 58 UNIMPL ulimit
96 59 STD { int linux_olduname(void); }
97 60 MNOPROTO { int umask(int newmask); }
98 61 NOPROTO { int chroot(char *path); }
99 62 STD { int linux_ustat(l_dev_t dev, struct l_ustat *ubuf); }
100 63 MNOPROTO { int dup2(u_int from, u_int to); }
101 64 MNOPROTO { int getppid(void); }
102 65 MNOPROTO { int getpgrp(void); }
103 66 MNOPROTO { int setsid(void); }
104 67 MSTD { int linux_sigaction(l_int sig, l_osigaction_t *nsa, \
105 l_osigaction_t *osa); }
106 68 MSTD { int linux_sgetmask(void); }
107 69 MSTD { int linux_ssetmask(l_osigset_t mask); }
108 70 MSTD { int linux_setreuid16(l_uid16_t ruid, l_uid16_t euid); }
109 71 MSTD { int linux_setregid16(l_gid16_t rgid, l_gid16_t egid); }
110 72 MSTD { int linux_sigsuspend(l_int hist0, l_int hist1, \
111 l_osigset_t mask); }
112 73 MSTD { int linux_sigpending(l_osigset_t *mask); }
113 74 MNOPROTO { int osethostname(char *hostname, u_int len); } \
114 osethostname sethostname_args int
115 75 MSTD { int linux_setrlimit(l_uint resource, struct l_rlimit *rlim); }
116 76 MSTD { int linux_old_getrlimit(l_uint resource, \
117 struct l_rlimit *rlim); }
118 77 MSTD { int linux_getrusage(int who, struct l_rusage *rusage); }
119 78 MSTD { int linux_gettimeofday(struct l_timeval *tp, \
120 struct timezone *tzp); }
121 79 MSTD { int linux_settimeofday(struct l_timeval *tp, \
122 struct timezone *tzp); }
123 80 MSTD { int linux_getgroups16(l_uint gidsetsize, l_gid16_t *gidset); }
124 81 MSTD { int linux_setgroups16(l_uint gidsetsize, l_gid16_t *gidset); }
125 82 STD { int linux_old_select(struct l_old_select_argv *ptr); }
126 83 STD { int linux_symlink(char *path, char *to); }
127 84 UNIMPL ostat
128 85 STD { int linux_readlink(char *name, char *buf, l_int count); }
129 86 UNIMPL linux_uselib
130 87 NOPROTO { int swapon(char *name); }
131 88 STD { int linux_reboot(l_int magic1, l_int magic2, l_uint cmd, \
132 void *arg); }
133 89 STD { int linux_readdir(l_uint fd, struct l_dirent *dent, \
134 l_uint count); }
135 90 STD { int linux_mmap(struct l_mmap_argv *ptr); }
136 91 NOPROTO { int munmap(caddr_t addr, int len); }
137 92 STD { int linux_truncate(char *path, l_ulong length); }
138 93 NOPROTO { int oftruncate(int fd, long length); }
139 94 NOPROTO { int fchmod(int fd, int mode); }
140 95 NOPROTO { int fchown(int fd, int uid, int gid); }
141 96 MNOPROTO { int getpriority(int which, int who); }
142 97 MNOPROTO { int setpriority(int which, int who, int prio); }
143 98 UNIMPL profil
144 99 STD { int linux_statfs(char *path, struct l_statfs_buf *buf); }
145 100 STD { int linux_fstatfs(l_uint fd, struct l_statfs_buf *buf); }
146 101 UNIMPL ioperm
147 102 STD { int linux_socketcall(l_int what, l_ulong args); }
148 103 STD { int linux_syslog(l_int type, char *buf, l_int len); }
149 104 STD { int linux_setitimer(l_int which, struct l_itimerval *itv, \
150 struct l_itimerval *oitv); }
151 105 STD { int linux_getitimer(l_int which, struct l_itimerval *itv); }
152 106 STD { int linux_newstat(char *path, struct l_newstat *buf); }
153 107 STD { int linux_newlstat(char *path, struct l_newstat *buf); }
154 108 STD { int linux_newfstat(l_uint fd, struct l_newstat *buf); }
155 109 STD { int linux_uname(void); }
156 110 UNIMPL iopl
157 111 STD { int linux_vhangup(void); }
158 112 UNIMPL idle
159 113 UNIMPL vm86old
160 114 MSTD { int linux_wait4(l_pid_t pid, l_uint *status, \
161 l_int options, struct l_rusage *rusage); }
162 115 STD { int linux_swapoff(void); }
163 116 STD { int linux_sysinfo(struct l_sysinfo *info); }
164 117 STD { int linux_ipc(l_uint what, l_int arg1, l_int arg2, \
165 l_int arg3, void *ptr, l_long arg5); }
166 118 NOPROTO { int fsync(int fd); }
167 119 MSTD { int linux_sigreturn(struct l_sigframe *sfp); }
168 120 MSTD { int linux_clone(l_int flags, void *stack); }
169 121 MNOPROTO { int setdomainname(char *name, int len); }
170 122 STD { int linux_newuname(struct l_new_utsname *buf); }
171 123 UNIMPL modify_ldt
172 124 STD { int linux_adjtimex(void); }
173 125 MSTD { int linux_mprotect(caddr_t addr, int len, int prot); }
174 126 MSTD { int linux_sigprocmask(l_int how, l_osigset_t *mask, \
175 l_osigset_t *omask); }
176 127 STD { int linux_create_module(void); }
177 128 STD { int linux_init_module(void); }
178 129 STD { int linux_delete_module(void); }
179 130 STD { int linux_get_kernel_syms(void); }
180 131 STD { int linux_quotactl(void); }
181 132 NOPROTO { int getpgid(int pid); }
182 133 NOPROTO { int fchdir(int fd); }
183 134 STD { int linux_bdflush(void); }
184 135 STD { int linux_sysfs(l_int option, l_ulong arg1, l_ulong arg2); }
185 136 STD { int linux_personality(l_ulong per); }
186 137 UNIMPL afs_syscall
187 138 STD { int linux_setfsuid16(l_uid16_t uid); }
188 139 STD { int linux_setfsgid16(l_gid16_t gid); }
189 140 STD { int linux_llseek(l_int fd, l_ulong ohigh, l_ulong olow, \
190 l_loff_t *res, l_uint whence); }
191 141 STD { int linux_getdents(l_uint fd, void *dent, l_uint count); }
192 142 STD { int linux_select(l_int nfds, l_fd_set *readfds, \
193 l_fd_set *writefds, l_fd_set *exceptfds, \
194 struct l_timeval *timeout); }
195 143 NOPROTO { int flock(int fd, int how); }
196 144 STD { int linux_msync(l_ulong addr, l_size_t len, l_int fl); }
197 145 STD { int linux_readv(int fd, struct iovec32 *iovp, \
198 u_int iovcnt); }
199 146 STD { int linux_writev(int fd, struct iovec32 *iovp, \
200 u_int iovcnt); }
201 147 MSTD { int linux_getsid(l_pid_t pid); }
202 148 STD { int linux_fdatasync(l_uint fd); }
203 149 STD { int linux_sysctl(struct l___sysctl_args *args); }
204 150 MNOPROTO { int mlock(const void *addr, size_t len); }
205 151 MNOPROTO { int munlock(const void *addr, size_t len); }
206 152 MNOPROTO { int mlockall(int how); }
207 153 MNOPROTO { int munlockall(void); }
208 154 MNOPROTO { int sched_setparam(pid_t pid, \
209 const struct sched_param *param); }
210 155 MNOPROTO { int sched_getparam(pid_t pid, \
211 struct sched_param *param); }
212 156 MSTD { int linux_sched_setscheduler(l_pid_t pid, \
213 l_int policy, struct l_sched_param *param); }
214 157 MSTD { int linux_sched_getscheduler(l_pid_t pid); }
215 158 NOPROTO { int sched_yield(void); }
216 159 MSTD { int linux_sched_get_priority_max(l_int policy); }
217 160 MSTD { int linux_sched_get_priority_min(l_int policy); }
218 161 MSTD { int linux_sched_rr_get_interval(l_pid_t pid, \
219 struct l_timespec *interval); }
220 162 MSTD { int linux_nanosleep(const struct l_timespec *rqtp, \
221 struct l_timespec *rmtp); }
222 163 STD { int linux_mremap(l_ulong addr, l_ulong old_len, \
223 l_ulong new_len, l_ulong flags, \
224 l_ulong new_addr); }
225 164 MSTD { int linux_setresuid16(l_uid16_t ruid, \
226 l_uid16_t euid, l_uid16_t suid); }
227 165 MSTD { int linux_getresuid16(l_uid16_t *ruid, \
228 l_uid16_t *euid, l_uid16_t *suid); }
229 166 UNIMPL vm86
230 167 STD { int linux_query_module(void); }
231 168 NOPROTO { int poll(struct pollfd*, unsigned int nfds, int timeout); }
232 169 STD { int linux_nfsservctl(void); }
233 170 MSTD { int linux_setresgid16(l_gid16_t rgid, \
234 l_gid16_t egid, l_gid16_t sgid); }
235 171 MSTD { int linux_getresgid16(l_gid16_t *rgid, \
236 l_gid16_t *egid, l_gid16_t *sgid); }
237 172 STD { int linux_prctl(void); }
238 173 STD { int linux_rt_sigreturn(struct l_ucontext *ucp); }
239 174 MSTD { int linux_rt_sigaction(l_int sig, \
240 l_sigaction_t *act, l_sigaction_t *oact, \
241 l_size_t sigsetsize); }
242 175 MSTD { int linux_rt_sigprocmask(l_int how, \
243 l_sigset_t *mask, l_sigset_t *omask, \
244 l_size_t sigsetsize); }
245 176 STD { int linux_rt_sigpending(void); }
246 177 STD { int linux_rt_sigtimedwait(void); }
247 178 STD { int linux_rt_sigqueueinfo(void); }
248 179 MSTD { int linux_rt_sigsuspend(l_sigset_t *newset, \
249 l_size_t sigsetsize); }
250 180 STD { int linux_pread(l_uint fd, char *buf, \
251 l_size_t nbyte, l_loff_t offset); }
252 181 STD { int linux_pwrite(l_uint fd, char *buf, \
253 l_size_t nbyte, l_loff_t offset); }
254 182 STD { int linux_chown16(char *path, l_uid16_t uid, l_gid16_t gid); }
255 183 STD { int linux_getcwd(char *buf, l_ulong bufsize); }
256 184 STD { int linux_capget(void); }
257 185 STD { int linux_capset(void); }
258 186 STD { int linux_sigaltstack(l_stack_t *uss, l_stack_t *uoss); }
259 187 STD { int linux_sendfile(void); }
260 188 UNIMPL getpmsg
261 189 UNIMPL putpmsg
262 190 MSTD { int linux_vfork(void); }
263 191 MSTD { int linux_getrlimit(l_uint resource, struct l_rlimit *rlim); }
264 192 STD { int linux_mmap2(l_ulong addr, l_ulong len, \
265 l_ulong prot, l_ulong flags, l_ulong fd, \
266 l_ulong pgoff); }
267 193 STD { int linux_truncate64(char *path, l_loff_t length); }
268 194 STD { int linux_ftruncate64(l_uint fd, l_loff_t length); }
269 195 STD { int linux_stat64(char *filename, \
270 struct l_stat64 *statbuf, l_long flags); }
271 196 STD { int linux_lstat64(char *filename, \
272 struct l_stat64 *statbuf, l_long flags); }
273 197 STD { int linux_fstat64(l_ulong fd, \
274 struct l_stat64 *statbuf, l_long flags); }
275 198 STD { int linux_lchown(char *path, l_uid_t uid, \
276 l_gid_t gid); }
277 199 MSTD { int linux_getuid(void); }
278 200 MSTD { int linux_getgid(void); }
279 201 MNOPROTO { int geteuid(void); }
280 202 MNOPROTO { int getegid(void); }
281 203 MNOPROTO { int setreuid(uid_t ruid, uid_t euid); }
282 204 MNOPROTO { int setregid(gid_t rgid, gid_t egid); }
283 205 MSTD { int linux_getgroups(l_int gidsetsize, l_gid_t *grouplist); }
284 206 MSTD { int linux_setgroups(l_int gidsetsize, l_gid_t *grouplist); }
285 207 NODEF fchown fchown fchown_args int
286 208 MNOPROTO { int setresuid(uid_t ruid, uid_t euid, uid_t suid); }
287 209 MNOPROTO { int getresuid(uid_t *ruid, uid_t *euid, uid_t *suid); }
288 210 MNOPROTO { int setresgid(gid_t rgid, gid_t egid, gid_t sgid); }
289 211 MNOPROTO { int getresgid(gid_t *rgid, gid_t *egid, gid_t *sgid); }
290 212 STD { int linux_chown(char *path, l_uid_t uid, l_gid_t gid); }
291 213 MNOPROTO { int setuid(uid_t uid); }
292 214 MNOPROTO { int setgid(gid_t gid); }
293 215 STD { int linux_setfsuid(l_uid_t uid); }
294 216 STD { int linux_setfsgid(l_gid_t gid); }
295 217 STD { int linux_pivot_root(char *new_root, char *put_old); }
296 218 STD { int linux_mincore(l_ulong start, l_size_t len, u_char *vec); }
297 219 MNOPROTO { int madvise(void *addr, size_t len, int behav); }
298 220 STD { int linux_getdents64(l_uint fd, void *dirent, l_uint count); }
299 221 STD { int linux_fcntl64(l_uint fd, l_uint cmd, uintptr_t arg); }
300 222 UNIMPL
301 223 UNIMPL
302 224 MNOPROTO { int linux_getpid(void); } gettid linux_getpid_args void
303 225 UNIMPL linux_readahead
304 226 STD { int linux_setxattr(void); }
305 227 STD { int linux_lsetxattr(void); }
306 228 STD { int linux_fsetxattr(void); }
307 229 STD { int linux_getxattr(void); }
308 230 STD { int linux_lgetxattr(void); }
309 231 STD { int linux_fgetxattr(void); }
310 232 STD { int linux_listxattr(void); }
311 233 STD { int linux_llistxattr(void); }
312 234 STD { int linux_flistxattr(void); }
313 235 STD { int linux_removexattr(void); }
314 236 STD { int linux_lremovexattr(void); }
315 237 STD { int linux_fremovexattr(void); }
316 238 UNIMPL linux_tkill
317 239 UNIMPL linux_sendfile64
318 240 UNIMPL linux_futex
319 241 UNIMPL linux_sched_setaffinity
320 242 UNIMPL linux_sched_getaffinity
321 243 UNIMPL linux_set_thread_area
322 244 UNIMPL linux_get_thread_area
323 245 UNIMPL linux_io_setup
324 246 UNIMPL linux_io_destroy
325 247 UNIMPL linux_io_getevents
326 248 UNIMPL linux_io_submit
327 249 UNIMPL linux_io_cancel
328 250 STD { int linux_fadvise64(void); }
329 251 UNIMPL
330 252 MNOPROTO { void sys_exit(int rval); } exit_group sys_exit_args void
331 253 UNIMPL linux_lookup_dcookie
332 254 UNIMPL linux_epoll_create
333 255 UNIMPL linux_epoll_ctl
334 256 UNIMPL linux_epoll_wait
335 257 UNIMPL linux_remap_file_pages
336 258 UNIMPL linux_set_tid_address
337 259 UNIMPL linux_timer_create
338 260 UNIMPL linux_timer_settime
339 261 UNIMPL linux_timer_gettime
340 262 UNIMPL linux_timer_getoverrun
341 263 UNIMPL linux_timer_delete
342 264 UNIMPL linux_clock_settime
343 265 UNIMPL linux_clock_gettime
344 266 UNIMPL linux_clock_getres
345 267 UNIMPL linux_clock_nanosleep
Cache object: 346d53d08d4a08fb0d297d2cf4cbc60a
|