2 * This file contains the table of syscall-handling functions.
3 * Copyright (C) 1995-1996 Gary Thomas (gdt@linuxppc.org)
5 * Largely rewritten by Cort Dougan (cort@cs.nmt.edu)
8 * Adapted for iSeries by Mike Corrigan (mikejc@us.ibm.com)
9 * PPC64 updates by Dave Engebretsen (engebret@us.ibm.com)
11 * This program is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU General Public License
13 * as published by the Free Software Foundation; either version
14 * 2 of the License, or (at your option) any later version.
17 #include <linux/config.h>
18 #include <asm/ppc_asm.h>
21 #define SYSCALL(func) .llong .sys_##func,.sys_##func
22 #define COMPAT_SYS(func) .llong .sys_##func,.compat_sys_##func
23 #define PPC_SYS(func) .llong .ppc_##func,.ppc_##func
24 #define OLDSYS(func) .llong .sys_ni_syscall,.sys_ni_syscall
25 #define SYS32ONLY(func) .llong .sys_ni_syscall,.compat_sys_##func
26 #define SYSX(f, f3264, f32) .llong .f,.f3264
28 #define SYSCALL(func) .long sys_##func
29 #define COMPAT_SYS(func) .long sys_##func
30 #define PPC_SYS(func) .long ppc_##func
31 #define OLDSYS(func) .long sys_##func
32 #define SYS32ONLY(func) .long sys_##func
33 #define SYSX(f, f3264, f32) .long f32
37 #define sys_sigpending sys_ni_syscall
38 #define sys_old_getrlimit sys_ni_syscall
40 #define ppc_rtas sys_ni_syscall
43 _GLOBAL(sys_call_table)
44 SYSCALL(restart_syscall)
63 SYSX(sys_lseek,ppc32_lseek,sys_lseek)
66 SYSX(sys_ni_syscall,sys_oldumount,sys_oldumount)
103 SYSX(sys_ni_syscall,sys_olduname, sys_olduname)
116 SYS32ONLY(sigsuspend)
117 COMPAT_SYS(sigpending)
118 COMPAT_SYS(sethostname)
119 COMPAT_SYS(setrlimit)
120 COMPAT_SYS(old_getrlimit)
121 COMPAT_SYS(getrusage)
122 COMPAT_SYS(gettimeofday)
123 COMPAT_SYS(settimeofday)
124 COMPAT_SYS(getgroups)
125 COMPAT_SYS(setgroups)
126 SYSX(sys_ni_syscall,sys_ni_syscall,ppc_select)
133 SYSX(sys_ni_syscall,old32_readdir,old_readdir)
140 COMPAT_SYS(getpriority)
141 COMPAT_SYS(setpriority)
146 COMPAT_SYS(socketcall)
148 COMPAT_SYS(setitimer)
149 COMPAT_SYS(getitimer)
153 SYSX(sys_ni_syscall,sys_uname,sys_uname)
165 COMPAT_SYS(setdomainname)
170 SYSX(sys_ni_syscall,compat_sys_sigprocmask,sys_sigprocmask)
173 SYSCALL(delete_module)
180 SYSX(ppc64_personality,ppc64_personality,sys_personality)
186 SYSX(sys_select,ppc32_select,ppc_select)
198 COMPAT_SYS(sched_setparam)
199 COMPAT_SYS(sched_getparam)
200 COMPAT_SYS(sched_setscheduler)
201 COMPAT_SYS(sched_getscheduler)
203 COMPAT_SYS(sched_get_priority_max)
204 COMPAT_SYS(sched_get_priority_min)
205 COMPAT_SYS(sched_rr_get_interval)
206 COMPAT_SYS(nanosleep)
212 COMPAT_SYS(nfsservctl)
216 COMPAT_SYS(rt_sigreturn)
217 COMPAT_SYS(rt_sigaction)
218 COMPAT_SYS(rt_sigprocmask)
219 COMPAT_SYS(rt_sigpending)
220 COMPAT_SYS(rt_sigtimedwait)
221 COMPAT_SYS(rt_sigqueueinfo)
222 COMPAT_SYS(rt_sigsuspend)
229 COMPAT_SYS(sigaltstack)
230 SYSX(sys_sendfile64,compat_sys_sendfile,sys_sendfile)
234 COMPAT_SYS(getrlimit)
235 COMPAT_SYS(readahead)
237 SYS32ONLY(truncate64)
238 SYS32ONLY(ftruncate64)
239 SYSX(sys_ni_syscall,sys_stat64,sys_stat64)
240 SYSX(sys_ni_syscall,sys_lstat64,sys_lstat64)
241 SYSX(sys_ni_syscall,sys_fstat64,sys_fstat64)
242 COMPAT_SYS(pciconfig_read)
243 COMPAT_SYS(pciconfig_write)
244 COMPAT_SYS(pciconfig_iobase)
248 SYSX(sys_ni_syscall,compat_sys_fcntl64,sys_fcntl64)
263 SYSCALL(lremovexattr)
264 SYSCALL(fremovexattr)
266 COMPAT_SYS(sched_setaffinity)
267 COMPAT_SYS(sched_getaffinity)
270 SYS32ONLY(sendfile64)
273 COMPAT_SYS(io_getevents)
274 COMPAT_SYS(io_submit)
276 SYSCALL(set_tid_address)
277 SYSX(sys_fadvise64,ppc32_fadvise64,sys_fadvise64)
279 SYSX(sys_lookup_dcookie,ppc32_lookup_dcookie,sys_lookup_dcookie)
280 SYSCALL(epoll_create)
283 SYSCALL(remap_file_pages)
284 SYSX(sys_timer_create,ppc32_timer_create,sys_timer_create)
285 COMPAT_SYS(timer_settime)
286 COMPAT_SYS(timer_gettime)
287 SYSCALL(timer_getoverrun)
288 SYSCALL(timer_delete)
289 COMPAT_SYS(clock_settime)
290 COMPAT_SYS(clock_gettime)
291 COMPAT_SYS(clock_getres)
292 COMPAT_SYS(clock_nanosleep)
293 COMPAT_SYS(swapcontext)
297 COMPAT_SYS(fstatfs64)
298 SYSX(sys_ni_syscall, ppc_fadvise64_64, ppc_fadvise64_64)
300 OLDSYS(debug_setcontext)
304 COMPAT_SYS(get_mempolicy)
305 COMPAT_SYS(set_mempolicy)
308 COMPAT_SYS(mq_timedsend)
309 COMPAT_SYS(mq_timedreceive)
310 COMPAT_SYS(mq_notify)
311 COMPAT_SYS(mq_getsetattr)
312 COMPAT_SYS(kexec_load)
314 COMPAT_SYS(request_key)
317 COMPAT_SYS(ioprio_set)
318 COMPAT_SYS(ioprio_get)
319 SYSCALL(inotify_init)
320 SYSCALL(inotify_add_watch)
321 SYSCALL(inotify_rm_watch)