1 /*
2  * Copyright (C) 2000 Jeff Dike (jdike@karaya.com)
3  * Licensed under the GPL
4  */
5 
6 typedef long syscall_handler_t(unsigned long arg1, unsigned long arg2,
7 			       unsigned long arg3, unsigned long arg4,
8 			       unsigned long arg5, unsigned long arg6);
9 
10 #define EXECUTE_SYSCALL(syscall, regs) \
11         (*sys_call_table[syscall])(UM_SYSCALL_ARG1(&regs), \
12 			           UM_SYSCALL_ARG2(&regs), \
13 				   UM_SYSCALL_ARG3(&regs), \
14 				   UM_SYSCALL_ARG4(&regs), \
15 				   UM_SYSCALL_ARG5(&regs), \
16 				   UM_SYSCALL_ARG6(&regs))
17 
18 extern syscall_handler_t sys_mincore;
19 extern syscall_handler_t sys_madvise;
20 
21 /* old_mmap needs the correct prototype since syscall_kern.c includes
22  * this file.
23  */
24 int old_mmap(unsigned long addr, unsigned long len,
25 	     unsigned long prot, unsigned long flags,
26 	     unsigned long fd, unsigned long offset);
27 
28 #define ARCH_SYSCALLS \
29 	[ __NR_modify_ldt ] = sys_ni_syscall, \
30 	[ __NR_pciconfig_read ] = sys_ni_syscall, \
31 	[ __NR_pciconfig_write ] = sys_ni_syscall, \
32 	[ __NR_pciconfig_iobase ] = sys_ni_syscall, \
33 	[ __NR_pivot_root ] = sys_ni_syscall, \
34 	[ __NR_multiplexer ] = sys_ni_syscall, \
35 	[ __NR_mmap ] = old_mmap, \
36 	[ __NR_madvise ] = sys_madvise, \
37 	[ __NR_mincore ] = sys_mincore, \
38 	[ __NR_iopl ] = (syscall_handler_t *) sys_ni_syscall, \
39 	[ __NR_utimes ] = (syscall_handler_t *) sys_utimes, \
40 	[ __NR_fadvise64 ] = (syscall_handler_t *) sys_fadvise64,
41 
42 #define LAST_ARCH_SYSCALL __NR_fadvise64
43 
44