diff options
Diffstat (limited to 'arch/x86/mm/fault.c')
-rw-r--r-- | arch/x86/mm/fault.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c index 76dcd9d8e0bc..7dde46d68a25 100644 --- a/arch/x86/mm/fault.c +++ b/arch/x86/mm/fault.c | |||
@@ -18,6 +18,7 @@ | |||
18 | #include <asm/pgalloc.h> /* pgd_*(), ... */ | 18 | #include <asm/pgalloc.h> /* pgd_*(), ... */ |
19 | #include <asm/kmemcheck.h> /* kmemcheck_*(), ... */ | 19 | #include <asm/kmemcheck.h> /* kmemcheck_*(), ... */ |
20 | #include <asm/fixmap.h> /* VSYSCALL_START */ | 20 | #include <asm/fixmap.h> /* VSYSCALL_START */ |
21 | #include <asm/rcu.h> /* exception_enter(), ... */ | ||
21 | 22 | ||
22 | /* | 23 | /* |
23 | * Page fault error code bits: | 24 | * Page fault error code bits: |
@@ -1000,8 +1001,8 @@ static int fault_in_kernel_space(unsigned long address) | |||
1000 | * and the problem, and then passes it off to one of the appropriate | 1001 | * and the problem, and then passes it off to one of the appropriate |
1001 | * routines. | 1002 | * routines. |
1002 | */ | 1003 | */ |
1003 | dotraplinkage void __kprobes | 1004 | static void __kprobes |
1004 | do_page_fault(struct pt_regs *regs, unsigned long error_code) | 1005 | __do_page_fault(struct pt_regs *regs, unsigned long error_code) |
1005 | { | 1006 | { |
1006 | struct vm_area_struct *vma; | 1007 | struct vm_area_struct *vma; |
1007 | struct task_struct *tsk; | 1008 | struct task_struct *tsk; |
@@ -1209,3 +1210,11 @@ good_area: | |||
1209 | 1210 | ||
1210 | up_read(&mm->mmap_sem); | 1211 | up_read(&mm->mmap_sem); |
1211 | } | 1212 | } |
1213 | |||
1214 | dotraplinkage void __kprobes | ||
1215 | do_page_fault(struct pt_regs *regs, unsigned long error_code) | ||
1216 | { | ||
1217 | exception_enter(regs); | ||
1218 | __do_page_fault(regs, error_code); | ||
1219 | exception_exit(regs); | ||
1220 | } | ||