Update, for linux_sys_readlink() removal.
[netbsd-mini2440.git] / sys / compat / linux32 / arch / amd64 / syscalls.master
blob87593922700eb0fe167a9b191048b26be9399e80
1         $NetBSD: syscalls.master,v 1.19 2007/11/07 00:24:30 njoly Exp $
3 ; NetBSD i386 COMPAT_LINUX32 system call name/number "master" file.
4 ; (See syscalls.conf to see what it is processed into.)
6 ; Fields: number type [type-dependent ...]
7 ;       number  system call number, must be in order
8 ;       type    one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of
9 ;               the compatibility options defined in syscalls.conf.
11 ; types:
12 ;       STD     always included
13 ;       OBSOL   obsolete, not included in system
14 ;       UNIMPL  unimplemented, not included in system
15 ;       NODEF   included, but don't define the syscall number
17 ;       INDIR   included, but don't define the syscall args structure
18 ;               and allow it to be "really" varargs.
20 ; The compat options are defined in the syscalls.conf file, and the
21 ; compat option name is prefixed to the syscall name.  Other than
22 ; that, they're like NODEF (for 'compat' options), or STD (for
23 ; 'libcompat' options).
25 ; The type-dependent arguments are as follows:
26 ; For STD, NODEF, NOARGS, and compat syscalls:
27 ;       { pseudo-proto } [alias]
28 ; For other syscalls:
29 ;       [comment]
31 ; #ifdef's, etc. may be included, and are copied to the output files.
32 ; #include's are copied to the syscall names and switch definition files only.
34 #if defined(_KERNEL_OPT)
35 #include "opt_compat_43.h"
36 #endif
38 #include <sys/param.h>
39 #include <sys/poll.h>
40 #include <sys/systm.h>
41 #include <sys/signal.h>
42 #include <sys/mount.h>
43 #include <sys/syscallargs.h>
45 #include <machine/netbsd32_machdep.h>
47 #include <compat/netbsd32/netbsd32.h>
48 #include <compat/netbsd32/netbsd32_syscallargs.h>
50 #include <compat/linux32/common/linux32_types.h>
51 #include <compat/linux32/common/linux32_signal.h>
52 #include <compat/linux32/arch/amd64/linux32_missing.h>
53 #include <compat/linux32/linux32_syscallargs.h>
55 #include <compat/linux/common/linux_types.h>
56 #include <compat/linux/common/linux_mmap.h>
57 #include <compat/linux/common/linux_signal.h>
58 #include <compat/linux/common/linux_siginfo.h>
59 #include <compat/linux/common/linux_machdep.h>
61 #include <compat/linux/linux_syscallargs.h>
65 0       NOARGS  { int linux_sys_nosys(void); } syscall
66 1       NOARGS  { int netbsd32_exit(int rval); }
67 2       NOARGS  { int sys_fork(void); }
68 3       NOARGS  { netbsd32_ssize_t netbsd32_read(int fd, \
69                     netbsd32_voidp buf, netbsd32_size_t nbyte); }
70 4       NOARGS  { netbsd32_ssize_t netbsd32_write(int fd, \
71                     const netbsd32_voidp buf, netbsd32_size_t nbyte); }
72 5       STD     { int linux32_sys_open(const netbsd32_charp path, int flags, \
73                     int mode); }
74 6       NOARGS  { int netbsd32_close(int fd); }
75 7       STD     { int linux32_sys_waitpid(int pid, netbsd32_intp status, \
76                     int options);}
77 8       STD     { int linux32_sys_creat(const netbsd32_charp path, int mode); }
78 9       NOARGS  { int netbsd32_link(const netbsd32_charp path, \
79                     const netbsd32_charp link); }
80 10      STD     { int linux32_sys_unlink(const netbsd32_charp path); }
81 11      NOARGS  { int netbsd32_execve(const netbsd32_charp path, \
82                     netbsd32_charpp argp, netbsd32_charpp envp); }
83 12      NOARGS  { int netbsd32_chdir(const netbsd32_charp path); }
84 13      STD     { int linux32_sys_time(linux32_timep_t t); }
85 14      STD     { int linux32_sys_mknod(const netbsd32_charp path, \
86                     int mode, int dev); }
87 15      NOARGS  { int netbsd32_chmod(const netbsd32_charp path, int mode); }
88 16      STD     { int linux32_sys_lchown16(const netbsd32_charp path, \
89                     int uid, int gid); }
90 17      STD     { int linux32_sys_break(netbsd32_charp nsize); }
91 18      OBSOL   ostat
92 19      NOARGS  { netbsd32_long compat_43_netbsd32_olseek(int fd, \
93                     netbsd32_long offset, int chence); }
94 20      STD     { pid_t linux_sys_getpid(void); }
95 21      UNIMPL  mount
96 22      UNIMPL  umount
97 23      NOARGS  linux_setuid16 { int netbsd32_setuid(uid_t uid); }
98 24      NOARGS  linux_getuid16 { uid_t sys_getuid(void); }
99 25      STD     { int linux32_sys_stime(linux32_timep_t t); }
100 26      UNIMPL  ptrace
101 27      STD     { int linux32_sys_alarm(unsigned int secs); }
102 28      OBSOL   ofstat
103 29      NOARGS  { int linux_sys_pause(void); }
104 30      STD     { int linux32_sys_utime(const netbsd32_charp path, \
105                     linux32_utimbufp_t times); }
106 31      OBSOL   stty
107 32      OBSOL   gtty
108 33      NOARGS  { int netbsd32_access(const netbsd32_charp path, \
109                     int flags); }
110 34      STD     { int linux32_sys_nice(int incr); }
111 35      OBSOL   ftime
112 36      NOARGS  { int sys_sync(void); }
113 37      STD     { int linux32_sys_kill(int pid, int signum); }
114 38      STD     { int linux32_sys_rename(const netbsd32_charp from, \
115                     const netbsd32_charp to); }
116 39      NOARGS  { int netbsd32_mkdir(const netbsd32_charp path, int mode); }
117 40      NOARGS  { int netbsd32_rmdir(const netbsd32_charp path); }
118 41      NOARGS  { int netbsd32_dup(u_int fd); }
119 42      STD     { int linux32_sys_pipe(netbsd32_intp fd); }
120 43      STD     { int linux32_sys_times(linux32_tmsp_t tms); }
121 44      OBSOL   prof
122 45      STD     { int linux32_sys_brk(netbsd32_charp nsize); }
123 46      NOARGS  linux_setgid16 { int netbsd32_setgid(gid_t gid); }
124 47      NOARGS  linux_getgid16 { gid_t sys_getgid(void); }
125 48      STD     { int linux32_sys_signal(int signum, \
126                     linux32_handler_t handler); }
127 49      NOARGS  linux_geteuid16 { uid_t sys_geteuid(void); }
128 50      NOARGS  linux_getegid16 { gid_t sys_getegid(void); }
129 51      NOARGS  { int netbsd32_acct(netbsd32_charp path); }
130 52      OBSOL   phys
131 53      OBSOL   lock
132 54      STD     { int linux32_sys_ioctl(int fd, netbsd32_u_long com, \
133                     netbsd32_charp data); }
134 55      STD     { int linux32_sys_fcntl(int fd, \
135                     int cmd, netbsd32_voidp arg); }
136 56      OBSOL   mpx
137 57      NOARGS  { int netbsd32_setpgid(int pid, int pgid); }
138 58      OBSOL   ulimit
139 59      STD     { int linux32_sys_oldolduname( \
140                     linux32_oldold_utsnamep_t up); }
141 60      NOARGS  { int netbsd32_umask(int newmask); }
142 61      NOARGS  { int netbsd32_chroot(netbsd32_charp path); }
143 62      UNIMPL  ustat
144 63      NOARGS  { int netbsd32_dup2(u_int from, u_int to); }
145 64      STD     { pid_t linux_sys_getppid(void); }
146 65      NOARGS  { int sys_getpgrp(void); }
147 66      NOARGS  { int sys_setsid(void); }
148 67      UNIMPL  sigaction
149 68      UNIMPL  siggetmask
150 69      UNIMPL  sigsetmask
151 70      STD     { int linux32_sys_setreuid16(int ruid, int euid); }
152 71      STD     { int linux32_sys_setregid16(int rgid, int egid); }
153 72      UNIMPL  sigsuspend
154 73      UNIMPL  sigpending
155 74      NOARGS  { int compat_43_netbsd32_osethostname(netbsd32_charp hostname, \
156                     u_int len); }
157 75      STD     { int linux32_sys_setrlimit(u_int which, \
158                     netbsd32_orlimitp_t rlp); }
159 76      STD     { int linux32_sys_getrlimit(u_int which, \
160                     netbsd32_orlimitp_t rlp); }
161 77      NOARGS  { int netbsd32_getrusage(int who, \
162                     netbsd32_rusagep_t rusage); }
163 78      STD     { int linux32_sys_gettimeofday(netbsd32_timevalp_t tp, \
164                     netbsd32_timezonep_t tzp); }
165 79      STD     { int linux32_sys_settimeofday(netbsd32_timevalp_t tp, \
166                     netbsd32_timezonep_t tzp); }
167 80      STD     { int linux32_sys_getgroups16(int gidsetsize, \
168                     linux32_gidp_t gidset); }
169 81      STD     { int linux32_sys_setgroups16(int gidsetsize, \
170                     linux32_gidp_t gidset); }
171 82      STD     { int linux32_sys_oldselect(linux32_oldselectp_t lsp); }
172 83      NOARGS  { int netbsd32_symlink(netbsd32_charp path, \
173                     const netbsd32_charp link); }
174 84      NOARGS  { int compat_43_netbsd32_lstat43(const netbsd32_charp \
175                     path, netbsd32_stat43p_t ub); }
176 85      NOARGS  { int netbsd32_readlink(const netbsd32_charp name, \
177                     netbsd32_charp buf, int count); }
178 86      UNIMPL  uselib
179 87      STD     { int linux32_sys_swapon(netbsd32_charp name); }
180 88      STD     { int linux32_sys_reboot(int magic1, int magic2, int cmd, \
181                     netbsd32_voidp arg); }
182 89      UNIMPL  readdir
183 90      STD     { int linux32_sys_old_mmap(linux32_oldmmapp lmp); }
184 91      NOARGS  { int netbsd32_munmap(netbsd32_caddr_t addr, int len); }
185 92      STD     { int linux32_sys_truncate(const netbsd32_charp path, \
186                     netbsd32_long length); }
187 93      NOARGS  { int compat_43_netbsd32_oftruncate(int fd, \
188                     netbsd32_long length); }
189 94      NOARGS  { int netbsd32_fchmod(int fd, int mode); }
190 95      STD     { int linux32_sys_fchown16(int fd, int uid, int gid); }
191 96      STD     { int linux32_sys_getpriority(int which, int who); }
192 97      STD     { int linux32_sys_setpriority(int which, int who, int prio); }
193 98      UNIMPL  profil
194 99      STD     { int linux32_sys_statfs(const netbsd32_charp path, \
195                     linux32_statfsp sp); }
196 100     UNIMPL  fstatfs
197 101     UNIMPL  ioperm
198 102     STD     { int linux32_sys_socketcall(int what, netbsd32_voidp args); }
199 103     UNIMPL  syslog
200 104     NOARGS  { int netbsd32_setitimer(u_int which, \
201                     netbsd32_itimervalp_t itv, netbsd32_itimervalp_t oitv); }
202 105     NOARGS  { int netbsd32_getitimer(u_int which, \
203                     netbsd32_itimervalp_t itv); }
204 106     UNIMPL  stat
205 107     UNIMPL  lstat
206 108     UNIMPL  fstat
207 109     UNIMPL  olduname
208 110     UNIMPL  iopl
209 111     UNIMPL  vhangup
210 112     UNIMPL  idle
211 113     UNIMPL  vm86old
212 114     STD     { int linux32_sys_wait4(int pid, netbsd32_intp status, \
213                     int options, netbsd32_rusagep_t rusage); }
214 115     STD     { int linux32_sys_swapoff(const netbsd32_charp path); }
215 116     STD     { int linux32_sys_sysinfo(linux32_sysinfop_t arg); }
216 117     UNIMPL  ipc
217 118     NOARGS  { int netbsd32_fsync(int fd); }
218 119     STD     { int linux32_sys_sigreturn(linux32_sigcontextp_t scp); }
219 120     STD     { int linux32_sys_clone(int flags, netbsd32_voidp stack); }
220 121     UNIMPL  setdomainname
221 122     STD     { int linux32_sys_uname(linux32_utsnamep up); }
222 123     UNIMPL  modify_ldt
223 124     UNIMPL  adjtimex
224 125     STD     { int linux32_sys_mprotect(netbsd32_voidp addr, \
225                     netbsd32_size_t len, int prot); } 
226 126     UNIMPL  sigprocmask
227 127     UNIMPL  create_module
228 128     UNIMPL  init_module
229 129     UNIMPL  delete_module
230 130     UNIMPL  get_kernel_syms
231 131     UNIMPL  quotactl
232 132     UNIMPL  getpgid
233 133     NOARGS  { int netbsd32_fchdir(int fd); }
234 134     UNIMPL  bdflush
235 135     UNIMPL  sysfs
236 136     UNIMPL  personality
237 137     UNIMPL  afs_syscall
238 138     NOARGS  setfsuid16 { int linux32_sys_setfsuid(uid_t uid); }
239 139     NOARGS  getfsuid16 { int linux_sys_getfsuid(void); }
240 140     STD     { int linux32_sys_llseek(int fd, u_int32_t ohigh, \
241                     u_int32_t olow, netbsd32_caddr_t res, int whence); }
242 141     STD     { int linux32_sys_getdents(int fd, \
243                     linux32_direntp_t dent, unsigned int count); }
244 142     STD     { int linux32_sys_select(int nfds, \
245                     netbsd32_fd_setp_t readfds, \
246                     netbsd32_fd_setp_t writefds, \
247                     netbsd32_fd_setp_t exceptfds, \
248                     netbsd32_timevalp_t timeout); }
249 143     NOARGS  { int netbsd32_flock(int fd, int how); } 
250 144     UNIMPL  msync
251 145     NOARGS  { int netbsd32_readv(int fd, \
252                     const netbsd32_iovecp_t iovp, u_int iovcnt); }
253 146     NOARGS  { netbsd32_ssize_t netbsd32_writev(int fd, \
254                     const netbsd32_iovecp_t iovp, int iovcnt); }
255 147     NOARGS  { pid_t netbsd32_getsid(pid_t pid); }
256 148     STD     { int linux32_sys_fdatasync(int fd); }
257 149     STD     { int linux32_sys___sysctl(linux32___sysctlp_t lsp); }
258 150     UNIMPL  mlock
259 151     UNIMPL  munlock
260 152     NOARGS  { int netbsd32_mlockall(int flags); }
261 153     NOARGS  { int sys_munlockall(void); }
262 154     UNIMPL  sched_setparam
263 155     STD     { int linux32_sys_sched_getparam(pid_t pid, \
264                     linux32_sched_paramp_t sp); }
265 156     STD     { int linux32_sys_sched_setscheduler(pid_t pid, \
266                     int policy, const linux32_sched_paramp_t sp); }
267 157     STD     { int linux32_sys_sched_getscheduler(pid_t pid); }
268 158     NOARGS  { int linux_sys_sched_yield(void); }
269 159     UNIMPL  sched_get_priority_max
270 160     UNIMPL  sched_get_priority_min
271 161     UNIMPL  sched_rr_get_interval
272 162     NOARGS  { int netbsd32_nanosleep(const \
273                     netbsd32_timespecp_t rqtp \
274                     netbsd32_timespecp_t rmtp); }
275 163     STD     { int linux32_sys_mremap(netbsd32_voidp old_address, \
276                     netbsd32_size_t old_size , netbsd32_size_t new_size, \
277                     netbsd32_u_long flags); }
278 164     STD     { int linux32_sys_setresuid16(uid_t ruid, uid_t euid, \
279                     uid_t suid); }
280 165     UNIMPL  getresuid16
281 166     UNIMPL  vm86
282 167     UNIMPL  query_module
283 168     NOARGS  { int netbsd32_poll(netbsd32_pollfdp_t fds, u_int nfds, \
284                    int timeout); }
285 169     UNIMPL  nfsservctl
286 170     STD     { int linux32_sys_setresgid16(gid_t rgid, gid_t egid, \
287                     gid_t sgid); }
288 171     UNIMPL  int
289 172     UNIMPL  prctl
290 173     STD     { int linux32_sys_rt_sigreturn(linux32_ucontextp_t ucp); }
291 174     STD     { int linux32_sys_rt_sigaction(int signum, \
292                     const linux32_sigactionp_t nsa, \
293                     linux32_sigactionp_t osa, \
294                     netbsd32_size_t sigsetsize); }
295 175     STD     { int linux32_sys_rt_sigprocmask(int how, \
296                      const linux32_sigsetp_t set, \
297                      linux32_sigsetp_t oset, \
298                      netbsd32_size_t sigsetsize); }
299 176     UNIMPL  rt_sigpending
300 177     UNIMPL  rt_sigtimedwait
301 178     UNIMPL  rt_queueinfo
302 179     STD     { int linux32_sys_rt_sigsuspend(linux32_sigsetp_t unewset, \
303                     netbsd32_size_t sigsetsize); }
304 180     UNIMPL  pread
305 181     UNIMPL  pwrite
306 182     STD     { int linux32_sys_chown16(const netbsd32_charp path, \
307                     int uid, int gid); }
308 183     NOARGS  { int netbsd32___getcwd(netbsd32_charp bufp, \
309                     netbsd32_size_t length); } 
310 184     UNIMPL  capget
311 185     UNIMPL  capset
312 186     UNIMPL  sigaltstack
313 187     UNIMPL  sendfile
314 188     UNIMPL  getpmsg
315 189     UNIMPL  putpmsg
316 190     NOARGS  { int sys___vfork14(void); }
317 191     STD     { int linux32_sys_ugetrlimit(int which, \
318                     netbsd32_orlimitp_t rlp); }
319 192     STD     { linux32_off_t linux32_sys_mmap2(netbsd32_u_long addr, \
320                     netbsd32_size_t len, int prot, int flags, int fd, \
321                     linux32_off_t offset); }
322 193     UNIMPL  truncate64
323 194     UNIMPL  ftruncate64
324 195     STD     { int linux32_sys_stat64(const netbsd32_charp path, \
325                     linux32_stat64p sp); }
326 196     STD     { int linux32_sys_lstat64(const netbsd32_charp path, \
327                     linux32_stat64p sp); }
328 197     STD     { int linux32_sys_fstat64(int fd, \
329                     linux32_stat64p sp); }
330 198     NOARGS  { int netbsd32___posix_lchown(const netbsd32_charp path, \
331                     int uid, int gid); }
332 199     NOARGS  { uid_t sys_getuid(void); }
333 200     NOARGS  { gid_t sys_getgid(void); }
334 201     NOARGS  { uid_t sys_geteuid(void); }
335 202     NOARGS  { gid_t sys_getegid(void); }
336 203     NOARGS  { int netbsd32_setreuid(uid_t ruid, uid_t euid); }
337 204     NOARGS  { int netbsd32_setregid(gid_t rgid, gid_t egid); }
338 205     NOARGS  { int netbsd32_getgroups(int gidsetsize, \
339                     netbsd32_gid_tp gidset); }
340 206     NOARGS  { int netbsd32_setgroups(int gidsetsize, \
341                     netbsd32_gid_tp gidset); }
342 207     NOARGS  { int netbsd32___posix_fchown(int fd, uid_t uid, gid_t gid); }
343 208     STD     { int linux32_sys_setresuid(uid_t ruid, uid_t euid, \
344                     uid_t suid); }
345 209     UNIMPL  getresuid
346 210     STD     { int linux32_sys_setresgid(gid_t rgid, gid_t egid, \
347                     gid_t sgid); }
348 211     UNIMPL  getresgid
349 212     NOARGS  { int netbsd32___posix_chown(const netbsd32_charp path, \
350                     int uid, int gid); }
351 213     NOARGS  { int netbsd32_setuid(uid_t uid); }
352 214     NOARGS  { int netbsd32_setgid(gid_t gid); }
353 215     STD     { int linux32_sys_setfsuid(uid_t uid); }
354 216     NOARGS  { int linux_sys_getfsuid(void); }
355 217     UNIMPL  pivot_root
356 218     UNIMPL  mincore
357 219     NOARGS  { int netbsd32_madvise(netbsd32_voidp addr, \
358                     netbsd32_size_t len, int behav); }
359 220     STD     { int linux32_sys_getdents64(int fd, \
360                     linux32_dirent64p_t dent, unsigned int count); }
361 221     STD     { int linux32_sys_fcntl64(int fd, \
362                     int cmd, netbsd32_voidp arg); }
363 222     UNIMPL  /*      unused  */
364 223     UNIMPL  /*      unused  */
365 224     STD     { pid_t linux_sys_gettid(void); }
366 225     UNIMPL  readahead
367 226     UNIMPL  setxattr
368 227     UNIMPL  lsetxattr
369 228     UNIMPL  fsetxattr
370 229     UNIMPL  getxattr
371 230     UNIMPL  lgetxattr
372 231     UNIMPL  fgetxattr
373 232     UNIMPL  listxattr
374 233     UNIMPL  llistxattr
375 234     UNIMPL  flistxattr
376 235     UNIMPL  removexattr
377 236     UNIMPL  lremovexattr
378 237     UNIMPL  fremovexattr
379 238     UNIMPL  tkill
380 239     UNIMPL  sendfile64
381 240     UNIMPL  futex
382 241     UNIMPL  sched_setaffinity
383 242     UNIMPL  sched_getaffinity
384 243     UNIMPL  set_thread_area
385 244     UNIMPL  get_thread_area
386 245     UNIMPL  io_setup
387 246     UNIMPL  io_destroy
388 247     UNIMPL  io_getevents
389 248     UNIMPL  io_submit
390 249     UNIMPL  io_cancel
391 250     UNIMPL  fadvise64
392 251     UNIMPL  /*      unused  */
393 252     STD     { int linux32_sys_exit_group(int error_code); }
394 253     UNIMPL  lookup_dcookie
395 254     UNIMPL  epoll_create
396 255     UNIMPL  epoll_ctl
397 256     UNIMPL  epoll_wait
398 257     UNIMPL  remap_file_pages
399 258     UNIMPL  set_tid_address
400 259     UNIMPL  timer_create
401 260     UNIMPL  timer_settime
402 261     UNIMPL  timer_gettime
403 262     UNIMPL  timer_getoverrun
404 263     UNIMPL  timer_delete
405 264     UNIMPL  clock_settime
406 265     UNIMPL  clock_gettime
407 266     UNIMPL  clock_getres
408 267     UNIMPL  clock_nanosleep
409 268     UNIMPL  statfs64
410 269     UNIMPL  fstatfs64
411 270     UNIMPL  tgkill
412 271     UNIMPL  utimes
413 272     UNIMPL  fadvise64_64
414 273     UNIMPL  vserver
415 274     UNIMPL  mbind
416 275     UNIMPL  get_mempolicy
417 276     UNIMPL  set_mempolicy
418 277     UNIMPL  mq_open
419 278     UNIMPL  mq_unlink
420 279     UNIMPL  mq_timedsend
421 280     UNIMPL  mq_timedreceive
422 281     UNIMPL  mq_notify
423 282     UNIMPL  mq_getsetattr
424 283     UNIMPL  kexec_load