diff options
Diffstat (limited to 'arch/arm26/mm')
-rw-r--r-- | arch/arm26/mm/fault.c | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/arch/arm26/mm/fault.c b/arch/arm26/mm/fault.c index dacca8bb7744..bd6f2db608b7 100644 --- a/arch/arm26/mm/fault.c +++ b/arch/arm26/mm/fault.c | |||
@@ -176,12 +176,12 @@ survive: | |||
176 | * Handle the "normal" cases first - successful and sigbus | 176 | * Handle the "normal" cases first - successful and sigbus |
177 | */ | 177 | */ |
178 | switch (fault) { | 178 | switch (fault) { |
179 | case 2: | 179 | case VM_FAULT_MAJOR: |
180 | tsk->maj_flt++; | 180 | tsk->maj_flt++; |
181 | return fault; | 181 | return fault; |
182 | case 1: | 182 | case VM_FAULT_MINOR: |
183 | tsk->min_flt++; | 183 | tsk->min_flt++; |
184 | case 0: | 184 | case VM_FAULT_SIGBUS: |
185 | return fault; | 185 | return fault; |
186 | } | 186 | } |
187 | 187 | ||
@@ -226,14 +226,11 @@ int do_page_fault(unsigned long addr, unsigned int fsr, struct pt_regs *regs) | |||
226 | /* | 226 | /* |
227 | * Handle the "normal" case first | 227 | * Handle the "normal" case first |
228 | */ | 228 | */ |
229 | if (fault > 0) | 229 | switch (fault) { |
230 | case VM_FAULT_MINOR: | ||
231 | case VM_FAULT_MAJOR: | ||
230 | return 0; | 232 | return 0; |
231 | 233 | case VM_FAULT_SIGBUS: | |
232 | /* | ||
233 | * We had some memory, but were unable to | ||
234 | * successfully fix up this page fault. | ||
235 | */ | ||
236 | if (fault == 0){ | ||
237 | goto do_sigbus; | 234 | goto do_sigbus; |
238 | } | 235 | } |
239 | 236 | ||