summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRussell King <rmk@dyn-67.arm.linux.org.uk>2005-08-04 14:17:33 +0100
committerRussell King <rmk+kernel@arm.linux.org.uk>2005-08-04 14:17:33 +0100
commitff2afb9df607dfcaacdaf67ea84b773c6fb08f4c (patch)
tree8163106927016a97d336a2116518effabab6c0e3
parentd95a1b4818f2fe38a3cfc9a7d5817dc9a1a69329 (diff)
downloadlinux-3.10-ff2afb9df607dfcaacdaf67ea84b773c6fb08f4c.tar.gz
linux-3.10-ff2afb9df607dfcaacdaf67ea84b773c6fb08f4c.tar.bz2
linux-3.10-ff2afb9df607dfcaacdaf67ea84b773c6fb08f4c.zip
[PATCH] ARM: Fix ARM fault handler for get_user_pages() fixes.
The ARM fault handler is optimised to make the fast path, err, fast. The renumbering of the VM_FAULT_* codes broke this because numbers were used instead of the definitions. Fix this. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
-rw-r--r--arch/arm/mm/fault.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/arch/arm/mm/fault.c b/arch/arm/mm/fault.c
index 65bfe84b6d6..0b6c4db44e0 100644
--- a/arch/arm/mm/fault.c
+++ b/arch/arm/mm/fault.c
@@ -238,9 +238,9 @@ do_page_fault(unsigned long addr, unsigned int fsr, struct pt_regs *regs)
up_read(&mm->mmap_sem);
/*
- * Handle the "normal" case first
+ * Handle the "normal" case first - VM_FAULT_MAJOR / VM_FAULT_MINOR
*/
- if (fault > 0)
+ if (fault >= VM_FAULT_MINOR)
return 0;
/*
@@ -261,7 +261,7 @@ do_page_fault(unsigned long addr, unsigned int fsr, struct pt_regs *regs)
do_exit(SIGKILL);
return 0;
- case 0:
+ case VM_FAULT_SIGBUS:
/*
* We had some memory, but were unable to
* successfully fix up this page fault.