xref: /netbsd-src/sys/compat/linux/arch/m68k/linux_sysent.c (revision 4472dbe5e3bd91ef2540bada7a7ca7384627ff9b)
1 /*	$NetBSD: linux_sysent.c,v 1.14 2000/03/18 22:16:57 erh Exp $	*/
2 
3 /*
4  * System call switch table.
5  *
6  * DO NOT EDIT-- this file is automatically generated.
7  * created from	NetBSD: syscalls.master,v 1.13 2000/02/03 10:03:00 abs Exp
8  */
9 
10 #include "opt_compat_netbsd.h"
11 #include "opt_compat_43.h"
12 #include <sys/param.h>
13 #include <sys/poll.h>
14 #include <sys/systm.h>
15 #include <sys/signal.h>
16 #include <sys/mount.h>
17 #include <sys/syscallargs.h>
18 #include <compat/linux/common/linux_types.h>
19 #include <compat/linux/common/linux_signal.h>
20 #include <compat/linux/common/linux_siginfo.h>
21 #include <compat/linux/common/linux_machdep.h>
22 #include <compat/linux/linux_syscallargs.h>
23 
24 #define	s(type)	sizeof(type)
25 
26 struct sysent linux_sysent[] = {
27 	{ 0, 0,
28 	    sys_nosys },			/* 0 = syscall */
29 	{ 1, s(struct sys_exit_args),
30 	    sys_exit },				/* 1 = exit */
31 	{ 0, 0,
32 	    sys_fork },				/* 2 = fork */
33 	{ 3, s(struct sys_read_args),
34 	    sys_read },				/* 3 = read */
35 	{ 3, s(struct sys_write_args),
36 	    sys_write },			/* 4 = write */
37 	{ 3, s(struct linux_sys_open_args),
38 	    linux_sys_open },			/* 5 = open */
39 	{ 1, s(struct sys_close_args),
40 	    sys_close },			/* 6 = close */
41 	{ 3, s(struct linux_sys_waitpid_args),
42 	    linux_sys_waitpid },		/* 7 = waitpid */
43 	{ 2, s(struct linux_sys_creat_args),
44 	    linux_sys_creat },			/* 8 = creat */
45 	{ 2, s(struct sys_link_args),
46 	    sys_link },				/* 9 = link */
47 	{ 1, s(struct linux_sys_unlink_args),
48 	    linux_sys_unlink },			/* 10 = unlink */
49 	{ 3, s(struct linux_sys_execve_args),
50 	    linux_sys_execve },			/* 11 = execve */
51 	{ 1, s(struct linux_sys_chdir_args),
52 	    linux_sys_chdir },			/* 12 = chdir */
53 	{ 1, s(struct linux_sys_time_args),
54 	    linux_sys_time },			/* 13 = time */
55 	{ 3, s(struct linux_sys_mknod_args),
56 	    linux_sys_mknod },			/* 14 = mknod */
57 	{ 2, s(struct linux_sys_chmod_args),
58 	    linux_sys_chmod },			/* 15 = chmod */
59 	{ 3, s(struct linux_sys_chown_args),
60 	    linux_sys_chown },			/* 16 = chown */
61 	{ 0, 0,
62 	    sys_nosys },			/* 17 = obsolete break */
63 	{ 0, 0,
64 	    sys_nosys },			/* 18 = obsolete ostat */
65 #if !defined(_KERNEL) || defined(COMPAT_43)
66 	{ 3, s(struct compat_43_sys_lseek_args),
67 	    compat_43_sys_lseek },		/* 19 = lseek */
68 #else
69 	{ 0, 0,
70 	    sys_nosys },			/* 19 = unimplemented compat_43_sys_lseek */
71 #endif
72 	{ 0, 0,
73 	    sys_getpid },			/* 20 = getpid */
74 	{ 0, 0,
75 	    sys_nosys },			/* 21 = unimplemented mount */
76 	{ 0, 0,
77 	    sys_nosys },			/* 22 = obsolete umount */
78 	{ 1, s(struct sys_setuid_args),
79 	    sys_setuid },			/* 23 = setuid */
80 	{ 0, 0,
81 	    sys_getuid },			/* 24 = getuid */
82 	{ 1, s(struct linux_sys_stime_args),
83 	    linux_sys_stime },			/* 25 = stime */
84 	{ 4, s(struct linux_sys_ptrace_args),
85 	    linux_sys_ptrace },			/* 26 = ptrace */
86 	{ 1, s(struct linux_sys_alarm_args),
87 	    linux_sys_alarm },			/* 27 = alarm */
88 	{ 0, 0,
89 	    sys_nosys },			/* 28 = obsolete ofstat */
90 	{ 0, 0,
91 	    linux_sys_pause },			/* 29 = pause */
92 	{ 2, s(struct linux_sys_utime_args),
93 	    linux_sys_utime },			/* 30 = utime */
94 	{ 0, 0,
95 	    sys_nosys },			/* 31 = obsolete stty */
96 	{ 0, 0,
97 	    sys_nosys },			/* 32 = obsolete gtty */
98 	{ 2, s(struct linux_sys_access_args),
99 	    linux_sys_access },			/* 33 = access */
100 	{ 1, s(struct linux_sys_nice_args),
101 	    linux_sys_nice },			/* 34 = nice */
102 	{ 0, 0,
103 	    sys_nosys },			/* 35 = obsolete ftime */
104 	{ 0, 0,
105 	    sys_sync },				/* 36 = sync */
106 	{ 2, s(struct linux_sys_kill_args),
107 	    linux_sys_kill },			/* 37 = kill */
108 	{ 2, s(struct linux_sys_rename_args),
109 	    linux_sys_rename },			/* 38 = rename */
110 	{ 2, s(struct linux_sys_mkdir_args),
111 	    linux_sys_mkdir },			/* 39 = mkdir */
112 	{ 1, s(struct linux_sys_rmdir_args),
113 	    linux_sys_rmdir },			/* 40 = rmdir */
114 	{ 1, s(struct sys_dup_args),
115 	    sys_dup },				/* 41 = dup */
116 	{ 1, s(struct linux_sys_pipe_args),
117 	    linux_sys_pipe },			/* 42 = pipe */
118 	{ 1, s(struct linux_sys_times_args),
119 	    linux_sys_times },			/* 43 = times */
120 	{ 0, 0,
121 	    sys_nosys },			/* 44 = obsolete prof */
122 	{ 1, s(struct linux_sys_brk_args),
123 	    linux_sys_brk },			/* 45 = brk */
124 	{ 1, s(struct sys_setgid_args),
125 	    sys_setgid },			/* 46 = setgid */
126 	{ 0, 0,
127 	    sys_getgid },			/* 47 = getgid */
128 	{ 2, s(struct linux_sys_signal_args),
129 	    linux_sys_signal },			/* 48 = signal */
130 	{ 0, 0,
131 	    sys_geteuid },			/* 49 = geteuid */
132 	{ 0, 0,
133 	    sys_getegid },			/* 50 = getegid */
134 	{ 1, s(struct sys_acct_args),
135 	    sys_acct },				/* 51 = acct */
136 	{ 0, 0,
137 	    sys_nosys },			/* 52 = unimplemented umount */
138 	{ 0, 0,
139 	    sys_nosys },			/* 53 = obsolete lock */
140 	{ 3, s(struct linux_sys_ioctl_args),
141 	    linux_sys_ioctl },			/* 54 = ioctl */
142 	{ 3, s(struct linux_sys_fcntl_args),
143 	    linux_sys_fcntl },			/* 55 = fcntl */
144 	{ 0, 0,
145 	    sys_nosys },			/* 56 = obsolete mpx */
146 	{ 2, s(struct sys_setpgid_args),
147 	    sys_setpgid },			/* 57 = setpgid */
148 	{ 0, 0,
149 	    sys_nosys },			/* 58 = obsolete ulimit */
150 	{ 0, 0,
151 	    sys_nosys },			/* 59 = unimplemented oldolduname */
152 	{ 1, s(struct sys_umask_args),
153 	    sys_umask },			/* 60 = umask */
154 	{ 1, s(struct sys_chroot_args),
155 	    sys_chroot },			/* 61 = chroot */
156 	{ 0, 0,
157 	    sys_nosys },			/* 62 = unimplemented ustat */
158 	{ 2, s(struct sys_dup2_args),
159 	    sys_dup2 },				/* 63 = dup2 */
160 	{ 0, 0,
161 	    sys_getppid },			/* 64 = getppid */
162 	{ 0, 0,
163 	    sys_getpgrp },			/* 65 = getpgrp */
164 	{ 0, 0,
165 	    sys_setsid },			/* 66 = setsid */
166 	{ 3, s(struct linux_sys_sigaction_args),
167 	    linux_sys_sigaction },		/* 67 = sigaction */
168 	{ 0, 0,
169 	    linux_sys_siggetmask },		/* 68 = siggetmask */
170 	{ 1, s(struct linux_sys_sigsetmask_args),
171 	    linux_sys_sigsetmask },		/* 69 = sigsetmask */
172 	{ 2, s(struct linux_sys_setreuid_args),
173 	    linux_sys_setreuid },		/* 70 = setreuid */
174 	{ 2, s(struct linux_sys_setregid_args),
175 	    linux_sys_setregid },		/* 71 = setregid */
176 	{ 3, s(struct linux_sys_sigsuspend_args),
177 	    linux_sys_sigsuspend },		/* 72 = sigsuspend */
178 	{ 1, s(struct linux_sys_sigpending_args),
179 	    linux_sys_sigpending },		/* 73 = sigpending */
180 #if !defined(_KERNEL) || defined(COMPAT_43)
181 	{ 2, s(struct compat_43_sys_sethostname_args),
182 	    compat_43_sys_sethostname },	/* 74 = sethostname */
183 	{ 2, s(struct compat_43_sys_setrlimit_args),
184 	    compat_43_sys_setrlimit },		/* 75 = setrlimit */
185 	{ 2, s(struct compat_43_sys_getrlimit_args),
186 	    compat_43_sys_getrlimit },		/* 76 = getrlimit */
187 #else
188 	{ 0, 0,
189 	    sys_nosys },			/* 74 = unimplemented compat_43_sys_sethostname */
190 	{ 0, 0,
191 	    sys_nosys },			/* 75 = unimplemented compat_43_sys_setrlimit */
192 	{ 0, 0,
193 	    sys_nosys },			/* 76 = unimplemented compat_43_sys_getrlimit */
194 #endif
195 	{ 2, s(struct sys_getrusage_args),
196 	    sys_getrusage },			/* 77 = getrusage */
197 	{ 2, s(struct sys_gettimeofday_args),
198 	    sys_gettimeofday },			/* 78 = gettimeofday */
199 	{ 2, s(struct sys_settimeofday_args),
200 	    sys_settimeofday },			/* 79 = settimeofday */
201 	{ 2, s(struct sys_getgroups_args),
202 	    sys_getgroups },			/* 80 = getgroups */
203 	{ 2, s(struct sys_setgroups_args),
204 	    sys_setgroups },			/* 81 = setgroups */
205 	{ 1, s(struct linux_sys_oldselect_args),
206 	    linux_sys_oldselect },		/* 82 = oldselect */
207 	{ 2, s(struct linux_sys_symlink_args),
208 	    linux_sys_symlink },		/* 83 = symlink */
209 #if !defined(_KERNEL) || defined(COMPAT_43)
210 	{ 2, s(struct compat_43_sys_lstat_args),
211 	    compat_43_sys_lstat },		/* 84 = oolstat */
212 #else
213 	{ 0, 0,
214 	    sys_nosys },			/* 84 = unimplemented compat_43_sys_lstat */
215 #endif
216 	{ 3, s(struct linux_sys_readlink_args),
217 	    linux_sys_readlink },		/* 85 = readlink */
218 	{ 1, s(struct linux_sys_uselib_args),
219 	    linux_sys_uselib },			/* 86 = uselib */
220 #if !defined(_KERNEL) || defined(COMPAT_12)
221 	{ 1, s(struct compat_12_sys_swapon_args),
222 	    compat_12_sys_swapon },		/* 87 = swapon */
223 #else
224 	{ 0, 0,
225 	    sys_nosys },			/* 87 = unimplemented compat_12_sys_swapon */
226 #endif
227 	{ 4, s(struct linux_sys_reboot_args),
228 	    linux_sys_reboot },			/* 88 = reboot */
229 	{ 3, s(struct linux_sys_readdir_args),
230 	    linux_sys_readdir },		/* 89 = readdir */
231 	{ 1, s(struct linux_sys_old_mmap_args),
232 	    linux_sys_old_mmap },		/* 90 = old_mmap */
233 	{ 2, s(struct sys_munmap_args),
234 	    sys_munmap },			/* 91 = munmap */
235 	{ 2, s(struct linux_sys_truncate_args),
236 	    linux_sys_truncate },		/* 92 = truncate */
237 #if !defined(_KERNEL) || defined(COMPAT_43)
238 	{ 2, s(struct compat_43_sys_ftruncate_args),
239 	    compat_43_sys_ftruncate },		/* 93 = ftruncate */
240 #else
241 	{ 0, 0,
242 	    sys_nosys },			/* 93 = unimplemented compat_43_sys_ftruncate */
243 #endif
244 	{ 2, s(struct sys_fchmod_args),
245 	    sys_fchmod },			/* 94 = fchmod */
246 	{ 3, s(struct linux_sys_fchown_args),
247 	    linux_sys_fchown },			/* 95 = fchown */
248 	{ 2, s(struct sys_getpriority_args),
249 	    sys_getpriority },			/* 96 = getpriority */
250 	{ 3, s(struct sys_setpriority_args),
251 	    sys_setpriority },			/* 97 = setpriority */
252 	{ 4, s(struct sys_profil_args),
253 	    sys_profil },			/* 98 = profil */
254 	{ 2, s(struct linux_sys_statfs_args),
255 	    linux_sys_statfs },			/* 99 = statfs */
256 	{ 2, s(struct linux_sys_fstatfs_args),
257 	    linux_sys_fstatfs },		/* 100 = fstatfs */
258 	{ 0, 0,
259 	    sys_nosys },			/* 101 = unimplemented ioperm */
260 	{ 2, s(struct linux_sys_socketcall_args),
261 	    linux_sys_socketcall },		/* 102 = socketcall */
262 	{ 0, 0,
263 	    sys_nosys },			/* 103 = unimplemented syslog */
264 	{ 3, s(struct sys_setitimer_args),
265 	    sys_setitimer },			/* 104 = setitimer */
266 	{ 2, s(struct sys_getitimer_args),
267 	    sys_getitimer },			/* 105 = getitimer */
268 	{ 2, s(struct linux_sys_stat_args),
269 	    linux_sys_stat },			/* 106 = stat */
270 	{ 2, s(struct linux_sys_lstat_args),
271 	    linux_sys_lstat },			/* 107 = lstat */
272 	{ 2, s(struct linux_sys_fstat_args),
273 	    linux_sys_fstat },			/* 108 = fstat */
274 	{ 0, 0,
275 	    sys_nosys },			/* 109 = unimplemented olduname */
276 	{ 0, 0,
277 	    sys_nosys },			/* 110 = unimplemented iopl */
278 	{ 0, 0,
279 	    sys_nosys },			/* 111 = unimplemented vhangup */
280 	{ 0, 0,
281 	    sys_nosys },			/* 112 = unimplemented idle */
282 	{ 0, 0,
283 	    sys_nosys },			/* 113 = unimplemented vm86old */
284 	{ 4, s(struct linux_sys_wait4_args),
285 	    linux_sys_wait4 },			/* 114 = wait4 */
286 	{ 0, 0,
287 	    sys_nosys },			/* 115 = unimplemented swapoff */
288 	{ 0, 0,
289 	    sys_nosys },			/* 116 = unimplemented sysinfo */
290 	{ 5, s(struct linux_sys_ipc_args),
291 	    linux_sys_ipc },			/* 117 = ipc */
292 	{ 1, s(struct sys_fsync_args),
293 	    sys_fsync },			/* 118 = fsync */
294 	{ 0, 0,
295 	    linux_sys_sigreturn },		/* 119 = sigreturn */
296 	{ 2, s(struct linux_sys_clone_args),
297 	    linux_sys_clone },			/* 120 = clone */
298 #if !defined(_KERNEL) || defined(COMPAT_09)
299 	{ 2, s(struct compat_09_sys_setdomainname_args),
300 	    compat_09_sys_setdomainname },	/* 121 = setdomainname */
301 #else
302 	{ 0, 0,
303 	    sys_nosys },			/* 121 = unimplemented compat_09_sys_setdomainname */
304 #endif
305 	{ 1, s(struct linux_sys_uname_args),
306 	    linux_sys_uname },			/* 122 = uname */
307 	{ 4, s(struct linux_sys_cacheflush_args),
308 	    linux_sys_cacheflush },		/* 123 = cacheflush */
309 	{ 0, 0,
310 	    sys_nosys },			/* 124 = unimplemented adjtimex */
311 	{ 3, s(struct sys_mprotect_args),
312 	    sys_mprotect },			/* 125 = mprotect */
313 	{ 3, s(struct linux_sys_sigprocmask_args),
314 	    linux_sys_sigprocmask },		/* 126 = sigprocmask */
315 	{ 0, 0,
316 	    sys_nosys },			/* 127 = unimplemented create_module */
317 	{ 0, 0,
318 	    sys_nosys },			/* 128 = unimplemented init_module */
319 	{ 0, 0,
320 	    sys_nosys },			/* 129 = unimplemented delete_module */
321 	{ 0, 0,
322 	    sys_nosys },			/* 130 = unimplemented get_kernel_syms */
323 	{ 0, 0,
324 	    sys_nosys },			/* 131 = unimplemented quotactl */
325 	{ 1, s(struct linux_sys_getpgid_args),
326 	    linux_sys_getpgid },		/* 132 = getpgid */
327 	{ 1, s(struct sys_fchdir_args),
328 	    sys_fchdir },			/* 133 = fchdir */
329 	{ 0, 0,
330 	    sys_nosys },			/* 134 = unimplemented bdflush */
331 	{ 0, 0,
332 	    sys_nosys },			/* 135 = unimplemented sysfs */
333 	{ 1, s(struct linux_sys_personality_args),
334 	    linux_sys_personality },		/* 136 = personality */
335 	{ 0, 0,
336 	    sys_nosys },			/* 137 = unimplemented afs_syscall */
337 	{ 1, s(struct linux_sys_setfsuid_args),
338 	    linux_sys_setfsuid },		/* 138 = setfsuid */
339 	{ 0, 0,
340 	    linux_sys_getfsuid },		/* 139 = getfsuid */
341 	{ 5, s(struct linux_sys_llseek_args),
342 	    linux_sys_llseek },			/* 140 = llseek */
343 	{ 3, s(struct linux_sys_getdents_args),
344 	    linux_sys_getdents },		/* 141 = getdents */
345 	{ 5, s(struct linux_sys_select_args),
346 	    linux_sys_select },			/* 142 = select */
347 	{ 2, s(struct sys_flock_args),
348 	    sys_flock },			/* 143 = flock */
349 	{ 3, s(struct linux_sys_msync_args),
350 	    linux_sys_msync },			/* 144 = msync */
351 	{ 3, s(struct sys_readv_args),
352 	    sys_readv },			/* 145 = readv */
353 	{ 3, s(struct sys_writev_args),
354 	    sys_writev },			/* 146 = writev */
355 	{ 1, s(struct sys_getsid_args),
356 	    sys_getsid },			/* 147 = getsid */
357 	{ 1, s(struct linux_sys_fdatasync_args),
358 	    linux_sys_fdatasync },		/* 148 = fdatasync */
359 	{ 1, s(struct linux_sys___sysctl_args),
360 	    linux_sys___sysctl },		/* 149 = __sysctl */
361 	{ 2, s(struct sys_mlock_args),
362 	    sys_mlock },			/* 150 = mlock */
363 	{ 2, s(struct sys_munlock_args),
364 	    sys_munlock },			/* 151 = munlock */
365 	{ 0, 0,
366 	    sys_nosys },			/* 152 = unimplemented mlockall */
367 	{ 0, 0,
368 	    sys_nosys },			/* 153 = unimplemented munlockall */
369 	{ 2, s(struct linux_sys_sched_setparam_args),
370 	    linux_sys_sched_setparam },		/* 154 = sched_setparam */
371 	{ 2, s(struct linux_sys_sched_getparam_args),
372 	    linux_sys_sched_getparam },		/* 155 = sched_getparam */
373 	{ 3, s(struct linux_sys_sched_setscheduler_args),
374 	    linux_sys_sched_setscheduler },	/* 156 = sched_setscheduler */
375 	{ 1, s(struct linux_sys_sched_getscheduler_args),
376 	    linux_sys_sched_getscheduler },	/* 157 = sched_getscheduler */
377 	{ 0, 0,
378 	    linux_sys_sched_yield },		/* 158 = sched_yield */
379 	{ 1, s(struct linux_sys_sched_get_priority_max_args),
380 	    linux_sys_sched_get_priority_max },	/* 159 = sched_get_priority_max */
381 	{ 1, s(struct linux_sys_sched_get_priority_min_args),
382 	    linux_sys_sched_get_priority_min },	/* 160 = sched_get_priority_min */
383 	{ 0, 0,
384 	    sys_nosys },			/* 161 = unimplemented sched_rr_get_interval */
385 	{ 2, s(struct sys_nanosleep_args),
386 	    sys_nanosleep },			/* 162 = nanosleep */
387 	{ 4, s(struct linux_sys_mremap_args),
388 	    linux_sys_mremap },			/* 163 = mremap */
389 	{ 3, s(struct linux_sys_setresuid_args),
390 	    linux_sys_setresuid },		/* 164 = setresuid */
391 	{ 3, s(struct linux_sys_getresuid_args),
392 	    linux_sys_getresuid },		/* 165 = getresuid */
393 	{ 0, 0,
394 	    sys_nosys },			/* 166 = unimplemented vm86 */
395 	{ 0, 0,
396 	    sys_nosys },			/* 167 = unimplemented query_module */
397 	{ 3, s(struct sys_poll_args),
398 	    sys_poll },				/* 168 = poll */
399 	{ 0, 0,
400 	    sys_nosys },			/* 169 = unimplemented nfsservctl */
401 	{ 3, s(struct linux_sys_setresgid_args),
402 	    linux_sys_setresgid },		/* 170 = setresgid */
403 	{ 3, s(struct linux_sys_getresgid_args),
404 	    linux_sys_getresgid },		/* 171 = getresgid */
405 	{ 0, 0,
406 	    sys_nosys },			/* 172 = unimplemented prctl */
407 	{ 0, 0,
408 	    linux_sys_rt_sigreturn },		/* 173 = rt_sigreturn */
409 	{ 4, s(struct linux_sys_rt_sigaction_args),
410 	    linux_sys_rt_sigaction },		/* 174 = rt_sigaction */
411 	{ 4, s(struct linux_sys_rt_sigprocmask_args),
412 	    linux_sys_rt_sigprocmask },		/* 175 = rt_sigprocmask */
413 	{ 2, s(struct linux_sys_rt_sigpending_args),
414 	    linux_sys_rt_sigpending },		/* 176 = rt_sigpending */
415 	{ 0, 0,
416 	    sys_nosys },			/* 177 = unimplemented rt_sigtimedwait */
417 	{ 3, s(struct linux_sys_rt_queueinfo_args),
418 	    linux_sys_rt_queueinfo },		/* 178 = rt_queueinfo */
419 	{ 2, s(struct linux_sys_rt_sigsuspend_args),
420 	    linux_sys_rt_sigsuspend },		/* 179 = rt_sigsuspend */
421 	{ 4, s(struct linux_sys_pread_args),
422 	    linux_sys_pread },			/* 180 = pread */
423 	{ 4, s(struct linux_sys_pwrite_args),
424 	    linux_sys_pwrite },			/* 181 = pwrite */
425 	{ 3, s(struct linux_sys_lchown_args),
426 	    linux_sys_lchown },			/* 182 = lchown */
427 	{ 2, s(struct sys___getcwd_args),
428 	    sys___getcwd },			/* 183 = __getcwd */
429 	{ 0, 0,
430 	    sys_nosys },			/* 184 = unimplemented capget */
431 	{ 0, 0,
432 	    sys_nosys },			/* 185 = unimplemented capset */
433 	{ 0, 0,
434 	    sys_nosys },			/* 186 = unimplemented sigaltstack */
435 	{ 0, 0,
436 	    sys_nosys },			/* 187 = unimplemented sendfile */
437 	{ 0, 0,
438 	    sys_nosys },			/* 188 = unimplemented getpmsg */
439 	{ 0, 0,
440 	    sys_nosys },			/* 189 = unimplemented putpmsg */
441 	{ 0, 0,
442 	    sys___vfork14 },			/* 190 = __vfork14 */
443 };
444 
445