diff options
author | Oleg Nesterov <oleg@redhat.com> | 2012-09-14 19:05:46 +0200 |
---|---|---|
committer | Oleg Nesterov <oleg@redhat.com> | 2012-09-29 21:21:53 +0200 |
commit | db023ea595015058270be6a62fe60a7b6b5c50d7 (patch) | |
tree | 44e26d8b5bb73d5847150af9d5c9a3fa25bf3573 | |
parent | 1b08e907211cdc744f54871736005d9f3e7f182c (diff) | |
download | op-kernel-dev-db023ea595015058270be6a62fe60a7b6b5c50d7.zip op-kernel-dev-db023ea595015058270be6a62fe60a7b6b5c50d7.tar.gz |
uprobes: Move clear_thread_flag(TIF_UPROBE) to uprobe_notify_resume()
Move clear_thread_flag(TIF_UPROBE) from do_notify_resume() to
uprobe_notify_resume() for !CONFIG_UPROBES case.
Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Acked-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
-rw-r--r-- | arch/x86/kernel/signal.c | 4 | ||||
-rw-r--r-- | kernel/events/uprobes.c | 2 |
2 files changed, 3 insertions, 3 deletions
diff --git a/arch/x86/kernel/signal.c b/arch/x86/kernel/signal.c index b280908..0041e5a 100644 --- a/arch/x86/kernel/signal.c +++ b/arch/x86/kernel/signal.c @@ -785,10 +785,8 @@ do_notify_resume(struct pt_regs *regs, void *unused, __u32 thread_info_flags) mce_notify_process(); #endif /* CONFIG_X86_64 && CONFIG_X86_MCE */ - if (thread_info_flags & _TIF_UPROBE) { - clear_thread_flag(TIF_UPROBE); + if (thread_info_flags & _TIF_UPROBE) uprobe_notify_resume(regs); - } /* deal with pending signal delivery */ if (thread_info_flags & _TIF_SIGPENDING) diff --git a/kernel/events/uprobes.c b/kernel/events/uprobes.c index d3f5381..198d732 100644 --- a/kernel/events/uprobes.c +++ b/kernel/events/uprobes.c @@ -1558,6 +1558,8 @@ void uprobe_notify_resume(struct pt_regs *regs) { struct uprobe_task *utask; + clear_thread_flag(TIF_UPROBE); + utask = current->utask; if (utask && utask->active_uprobe) handle_singlestep(utask, regs); |