Commit | Line | Data |
---|---|---|
325f86ec | 1 | /* System call table for x86-64. */ |
1da177e4 LT |
2 | |
3 | #include <linux/linkage.h> | |
4 | #include <linux/sys.h> | |
5 | #include <linux/cache.h> | |
57a4f91a | 6 | #include <asm/asm-offsets.h> |
1599e8fc | 7 | #include <asm/syscall.h> |
1da177e4 | 8 | |
302f5b26 AL |
9 | #define __SYSCALL_64_QUAL_(sym) sym |
10 | #define __SYSCALL_64_QUAL_ptregs(sym) ptregs_##sym | |
11 | ||
12 | #define __SYSCALL_64(nr, sym, qual) extern asmlinkage long __SYSCALL_64_QUAL_##qual(sym)(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long); | |
303395ac PA |
13 | #include <asm/syscalls_64.h> |
14 | #undef __SYSCALL_64 | |
1da177e4 | 15 | |
302f5b26 | 16 | #define __SYSCALL_64(nr, sym, qual) [nr] = __SYSCALL_64_QUAL_##qual(sym), |
1da177e4 | 17 | |
eb974c62 | 18 | extern long sys_ni_syscall(unsigned long, unsigned long, unsigned long, unsigned long, unsigned long, unsigned long); |
1da177e4 | 19 | |
e0e745e4 | 20 | asmlinkage const sys_call_ptr_t sys_call_table[__NR_syscall_max+1] = { |
325f86ec | 21 | /* |
b7641d2c PA |
22 | * Smells like a compiler bug -- it doesn't work |
23 | * when the & below is removed. | |
24 | */ | |
1da177e4 | 25 | [0 ... __NR_syscall_max] = &sys_ni_syscall, |
303395ac | 26 | #include <asm/syscalls_64.h> |
1da177e4 | 27 | }; |