MIPS: Fix ISA I FP sigcontext access violation handling
authorMaciej W. Rozycki <macro@imgtec.com>
Mon, 31 Oct 2016 16:25:44 +0000 (16:25 +0000)
committerRalf Baechle <ralf@linux-mips.org>
Fri, 4 Nov 2016 00:38:41 +0000 (01:38 +0100)
Complement commit 0ae8dceaebe3 ("Merge with 2.3.10.") and use the local
`fault' handler to recover from FP sigcontext access violation faults,
like corresponding code does in r4k_fpu.S.  The `bad_stack' handler is
in syscall.c and is not suitable here as we want to propagate the error
condition up through the caller rather than killing the thread outright.

Signed-off-by: Maciej W. Rozycki <macro@imgtec.com>
Cc: linux-mips@linux-mips.org
Cc: linux-kernel@vger.kernel.org
Patchwork: https://patchwork.linux-mips.org/patch/14474/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
arch/mips/kernel/r2300_fpu.S

index b4ac6374a38f28e182b2558934ff979b88b33bb2..c4c8c1b65be98354ce6dae506c94891c1ad3142c 100644 (file)
@@ -21,7 +21,7 @@
 #define EX(a,b)                                                        \
 9:     a,##b;                                                  \
        .section __ex_table,"a";                                \
-       PTR     9b,bad_stack;                                   \
+       PTR     9b,fault;                                       \
        .previous
 
        .set    noreorder