X-Git-Url: https://git.kernel.dk/?a=blobdiff_plain;f=arch%2Farc%2Fmm%2Ffault.c;h=b107e45cce9479b4d51378afd75eb9f17865de3b;hb=d0542c7eacd5b507fa53570b610706df122a2f37;hp=4597b4886eddfbb384bab612d46fc37453a4fb7c;hpb=02c88d142ea6e64b0f81dcf3687a889d8a3556ba;p=linux-2.6-block.git diff --git a/arch/arc/mm/fault.c b/arch/arc/mm/fault.c index 4597b4886edd..b107e45cce94 100644 --- a/arch/arc/mm/fault.c +++ b/arch/arc/mm/fault.c @@ -198,20 +198,6 @@ bad_area: return; } -no_context: - /* Are we prepared to handle this kernel fault? - * - * (The kernel has valid exception-points in the source - * when it accesses user-memory. When it fails in one - * of those points, we find it in a table and do a jump - * to some fixup code that loads an appropriate error - * code) - */ - if (fixup_exception(regs)) - return; - - die("Oops", regs, address); - out_of_memory: up_read(&mm->mmap_sem); @@ -230,4 +216,11 @@ do_sigbus: tsk->thread.fault_address = address; force_sig_fault(SIGBUS, BUS_ADRERR, (void __user *)address, tsk); + return; + +no_context: + if (fixup_exception(regs)) + return; + + die("Oops", regs, address); }