]> err.no Git - linux-2.6/commitdiff
[PATCH] ARM: Fix ARM fault handler for get_user_pages() fixes.
authorRussell King <rmk@dyn-67.arm.linux.org.uk>
Thu, 4 Aug 2005 13:17:33 +0000 (14:17 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Thu, 4 Aug 2005 13:17:33 +0000 (14:17 +0100)
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>
arch/arm/mm/fault.c

index 65bfe84b6d672e8989f0d8141b5781093147cf74..0b6c4db44e08275e4ef15ab74923a581f48dc645 100644 (file)
@@ -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.