aboutsummaryrefslogtreecommitdiff
path: root/arch/sh/mm/fault.c
diff options
context:
space:
mode:
authorPaul Mundt2006-09-27 17:03:56 +0900
committerPaul Mundt2006-09-27 17:03:56 +0900
commit0f08f338083cc1d68788ccbccc44bd0502fc57ae (patch)
tree97c69dbbd63a108a7367644dadedd390a3948f0c /arch/sh/mm/fault.c
parent9e3043c091819729ecf4fc5063d0a2d0954dfd7f (diff)
sh: More cosmetic cleanups and trivial fixes.
Nothing exciting here, just trivial fixes.. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/mm/fault.c')
-rw-r--r--arch/sh/mm/fault.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/arch/sh/mm/fault.c b/arch/sh/mm/fault.c
index dc461d2bc183..c69fd603226a 100644
--- a/arch/sh/mm/fault.c
+++ b/arch/sh/mm/fault.c
@@ -13,6 +13,8 @@
*/
#include <linux/kernel.h>
#include <linux/mm.h>
+#include <linux/hardirq.h>
+#include <linux/kprobes.h>
#include <asm/system.h>
#include <asm/mmu_context.h>
#include <asm/kgdb.h>
@@ -188,15 +190,16 @@ do_sigbus:
/*
* Called with interrupts disabled.
*/
-asmlinkage int __do_page_fault(struct pt_regs *regs, unsigned long writeaccess,
- unsigned long address)
+asmlinkage int __kprobes __do_page_fault(struct pt_regs *regs,
+ unsigned long writeaccess,
+ unsigned long address)
{
pgd_t *pgd;
pud_t *pud;
pmd_t *pmd;
pte_t *pte;
pte_t entry;
- struct mm_struct *mm;
+ struct mm_struct *mm = current->mm;
spinlock_t *ptl;
int ret = 1;
@@ -214,10 +217,10 @@ asmlinkage int __do_page_fault(struct pt_regs *regs, unsigned long writeaccess,
pgd = pgd_offset_k(address);
mm = NULL;
} else {
- if (unlikely(address >= TASK_SIZE || !(mm = current->mm)))
+ if (unlikely(address >= TASK_SIZE || !mm))
return 1;
- pgd = pgd_offset(current->mm, address);
+ pgd = pgd_offset(mm, address);
}
pud = pud_offset(pgd, address);