summaryrefslogtreecommitdiffstats
path: root/arch/mips/kernel/cpu-bugs64.c
diff options
context:
space:
mode:
authorRalf Baechle2013-05-29 01:07:19 +0200
committerRalf Baechle2013-06-10 18:02:30 +0200
commitc3fc5cd5c5a5f4738776a965a020a32c1a37c8fd (patch)
tree59c7114e5c9e682b0b6ec647cabfa4d942ee1377 /arch/mips/kernel/cpu-bugs64.c
parentMIPS: Cleanup flags in syscall flags handlers. (diff)
downloadkernel-qcow2-linux-c3fc5cd5c5a5f4738776a965a020a32c1a37c8fd.tar.gz
kernel-qcow2-linux-c3fc5cd5c5a5f4738776a965a020a32c1a37c8fd.tar.xz
kernel-qcow2-linux-c3fc5cd5c5a5f4738776a965a020a32c1a37c8fd.zip
MIPS: Implement HAVE_CONTEXT_TRACKING.
This enables support for CONFIG_NO_HZ_FULL. Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/kernel/cpu-bugs64.c')
-rw-r--r--arch/mips/kernel/cpu-bugs64.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/mips/kernel/cpu-bugs64.c b/arch/mips/kernel/cpu-bugs64.c
index de3c25ffd9f9..0c61df281ce6 100644
--- a/arch/mips/kernel/cpu-bugs64.c
+++ b/arch/mips/kernel/cpu-bugs64.c
@@ -6,6 +6,7 @@
* as published by the Free Software Foundation; either version
* 2 of the License, or (at your option) any later version.
*/
+#include <linux/context_tracking.h>
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/ptrace.h>
@@ -171,8 +172,12 @@ static volatile int daddi_ov __cpuinitdata;
asmlinkage void __init do_daddi_ov(struct pt_regs *regs)
{
+ enum ctx_state prev_state;
+
+ prev_state = exception_enter();
daddi_ov = 1;
regs->cp0_epc += 4;
+ exception_exit(prev_state);
}
static inline void check_daddi(void)