diff options
author | Chris Metcalf <cmetcalf@ezchip.com> | 2015-12-24 01:13:04 +0300 |
---|---|---|
committer | Chris Metcalf <cmetcalf@ezchip.com> | 2016-01-18 22:49:30 +0300 |
commit | 1bb50cad45f4a3fb9a339006d76efc50f70eed5b (patch) | |
tree | 91e00be5d5852acdb7c5c9ba9707b9f7926e6bc6 /arch/tile/kernel/single_step.c | |
parent | 9ce815ed50bbc518526106071f395deacaf94ad7 (diff) | |
download | linux-1bb50cad45f4a3fb9a339006d76efc50f70eed5b.tar.xz |
arch/tile: move user_exit() to early kernel entry sequence
This ensures that we always notify context tracking that we
have exited from user space no matter how we enter the kernel.
It is similar to how arm64 handles context tracking, for example.
This allows the removal of all the exception_enter() calls that
were added in commit 49e4e15619cd ("tile: support CONTEXT_TRACKING and
thus NOHZ_FULL").
Signed-off-by: Chris Metcalf <cmetcalf@ezchip.com>
Diffstat (limited to 'arch/tile/kernel/single_step.c')
-rw-r--r-- | arch/tile/kernel/single_step.c | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/arch/tile/kernel/single_step.c b/arch/tile/kernel/single_step.c index 53f7b9def07b..862973074bf9 100644 --- a/arch/tile/kernel/single_step.c +++ b/arch/tile/kernel/single_step.c @@ -23,7 +23,6 @@ #include <linux/types.h> #include <linux/err.h> #include <linux/prctl.h> -#include <linux/context_tracking.h> #include <asm/cacheflush.h> #include <asm/traps.h> #include <asm/uaccess.h> @@ -739,7 +738,6 @@ static DEFINE_PER_CPU(unsigned long, ss_saved_pc); void gx_singlestep_handle(struct pt_regs *regs, int fault_num) { - enum ctx_state prev_state = exception_enter(); unsigned long *ss_pc = this_cpu_ptr(&ss_saved_pc); struct thread_info *info = (void *)current_thread_info(); int is_single_step = test_ti_thread_flag(info, TIF_SINGLESTEP); @@ -756,7 +754,6 @@ void gx_singlestep_handle(struct pt_regs *regs, int fault_num) __insn_mtspr(SPR_SINGLE_STEP_CONTROL_K, control); send_sigtrap(current, regs); } - exception_exit(prev_state); } |