diff options
Diffstat (limited to 'arch/x86/kernel/syscall_64.c')
-rw-r--r-- | arch/x86/kernel/syscall_64.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/arch/x86/kernel/syscall_64.c b/arch/x86/kernel/syscall_64.c index 9d498c2f8eea..170d43c17487 100644 --- a/arch/x86/kernel/syscall_64.c +++ b/arch/x86/kernel/syscall_64.c | |||
@@ -1,4 +1,4 @@ | |||
1 | /* System call table for x86-64. */ | 1 | /* System call table for x86-64. */ |
2 | 2 | ||
3 | #include <linux/linkage.h> | 3 | #include <linux/linkage.h> |
4 | #include <linux/sys.h> | 4 | #include <linux/sys.h> |
@@ -7,20 +7,23 @@ | |||
7 | 7 | ||
8 | #define __NO_STUBS | 8 | #define __NO_STUBS |
9 | 9 | ||
10 | #define __SYSCALL(nr, sym) extern asmlinkage void sym(void) ; | 10 | #define __SYSCALL(nr, sym) extern asmlinkage void sym(void) ; |
11 | #undef _ASM_X86_64_UNISTD_H_ | 11 | #undef _ASM_X86_64_UNISTD_H_ |
12 | #include <asm/unistd_64.h> | 12 | #include <asm/unistd_64.h> |
13 | 13 | ||
14 | #undef __SYSCALL | 14 | #undef __SYSCALL |
15 | #define __SYSCALL(nr, sym) [ nr ] = sym, | 15 | #define __SYSCALL(nr, sym) [nr] = sym, |
16 | #undef _ASM_X86_64_UNISTD_H_ | 16 | #undef _ASM_X86_64_UNISTD_H_ |
17 | 17 | ||
18 | typedef void (*sys_call_ptr_t)(void); | 18 | typedef void (*sys_call_ptr_t)(void); |
19 | 19 | ||
20 | extern void sys_ni_syscall(void); | 20 | extern void sys_ni_syscall(void); |
21 | 21 | ||
22 | const sys_call_ptr_t sys_call_table[__NR_syscall_max+1] = { | 22 | const sys_call_ptr_t sys_call_table[__NR_syscall_max+1] = { |
23 | /* Smells like a like a compiler bug -- it doesn't work when the & below is removed. */ | 23 | /* |
24 | *Smells like a like a compiler bug -- it doesn't work | ||
25 | *when the & below is removed. | ||
26 | */ | ||
24 | [0 ... __NR_syscall_max] = &sys_ni_syscall, | 27 | [0 ... __NR_syscall_max] = &sys_ni_syscall, |
25 | #include <asm/unistd_64.h> | 28 | #include <asm/unistd_64.h> |
26 | }; | 29 | }; |