From: Harvey Harrison Date: Wed, 30 Jan 2008 12:31:42 +0000 (+0100) Subject: x86: use helper in fault_64.c X-Git-Tag: v2.6.25-rc1~1143^2~527 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=85f2adf16955460c98131360f3d76aeb51aba073;p=linux-2.6 x86: use helper in fault_64.c Use the fixup_exception() helper in fault_64.c Signed-off-by: Harvey Harrison Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner --- diff --git a/arch/x86/mm/fault_64.c b/arch/x86/mm/fault_64.c index 121c7bda62..3a94941578 100644 --- a/arch/x86/mm/fault_64.c +++ b/arch/x86/mm/fault_64.c @@ -298,7 +298,6 @@ asmlinkage void __kprobes do_page_fault(struct pt_regs *regs, struct mm_struct *mm; struct vm_area_struct * vma; unsigned long address; - const struct exception_table_entry *fixup; int write, fault; unsigned long flags; siginfo_t info; @@ -508,9 +507,7 @@ bad_area_nosemaphore: no_context: /* Are we prepared to handle this kernel fault? */ - fixup = search_exception_tables(regs->ip); - if (fixup) { - regs->ip = fixup->fixup; + if (fixup_exception(regs)) { return; } diff --git a/include/asm-x86/uaccess_64.h b/include/asm-x86/uaccess_64.h index f4ce8768ad..31d7947027 100644 --- a/include/asm-x86/uaccess_64.h +++ b/include/asm-x86/uaccess_64.h @@ -65,6 +65,8 @@ struct exception_table_entry unsigned long insn, fixup; }; +extern int fixup_exception(struct pt_regs *regs); + #define ARCH_HAS_SEARCH_EXTABLE /*