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 | |
6630f11b | 9 | #define __SYSCALL_COMMON(nr, sym, compat) __SYSCALL_64(nr, sym, compat) |
a06c9bc0 PA |
10 | |
11 | #ifdef CONFIG_X86_X32_ABI | |
12 | # define __SYSCALL_X32(nr, sym, compat) __SYSCALL_64(nr, sym, compat) | |
13 | #else | |
14 | # define __SYSCALL_X32(nr, sym, compat) /* nothing */ | |
15 | #endif | |
6630f11b | 16 | |
303395ac PA |
17 | #define __SYSCALL_64(nr, sym, compat) extern asmlinkage void sym(void) ; |
18 | #include <asm/syscalls_64.h> | |
19 | #undef __SYSCALL_64 | |
1da177e4 | 20 | |
303395ac | 21 | #define __SYSCALL_64(nr, sym, compat) [nr] = sym, |
1da177e4 | 22 | |
1da177e4 LT |
23 | extern void sys_ni_syscall(void); |
24 | ||
e0e745e4 | 25 | asmlinkage const sys_call_ptr_t sys_call_table[__NR_syscall_max+1] = { |
325f86ec | 26 | /* |
b7641d2c PA |
27 | * Smells like a compiler bug -- it doesn't work |
28 | * when the & below is removed. | |
29 | */ | |
1da177e4 | 30 | [0 ... __NR_syscall_max] = &sys_ni_syscall, |
303395ac | 31 | #include <asm/syscalls_64.h> |
1da177e4 | 32 | }; |