summaryrefslogtreecommitdiffstats
path: root/arch/x86/lib/thunk_32.S
diff options
context:
space:
mode:
authorMasami Hiramatsu <masami.hiramatsu.pt@hitachi.com>2014-04-17 17:17:26 +0900
committerIngo Molnar <mingo@kernel.org>2014-04-24 10:02:58 +0200
commit98def1dedd00f42ded8423c418c971751f46aad2 (patch)
tree33852494b1b3f98dcf26e30a9cc8a4cb8949ac44 /arch/x86/lib/thunk_32.S
parent8027197220e02d5cebbbfdff36c2827661fbc692 (diff)
downloadblackbird-op-linux-98def1dedd00f42ded8423c418c971751f46aad2.tar.gz
blackbird-op-linux-98def1dedd00f42ded8423c418c971751f46aad2.zip
kprobes, x86: Prohibit probing on thunk functions and restore
thunk/restore functions are also used for tracing irqoff etc. and those are involved in kprobe's exception handling. Prohibit probing on them to avoid kernel crash. Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com> Reviewed-by: Steven Rostedt <rostedt@goodmis.org> Link: http://lkml.kernel.org/r/20140417081726.26341.3872.stgit@ltc230.yrl.intra.hitachi.co.jp Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'arch/x86/lib/thunk_32.S')
-rw-r--r--arch/x86/lib/thunk_32.S3
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86/lib/thunk_32.S b/arch/x86/lib/thunk_32.S
index 2930ae05d773..28f85c916712 100644
--- a/arch/x86/lib/thunk_32.S
+++ b/arch/x86/lib/thunk_32.S
@@ -4,8 +4,8 @@
* (inspired by Andi Kleen's thunk_64.S)
* Subject to the GNU public license, v.2. No warranty of any kind.
*/
-
#include <linux/linkage.h>
+ #include <asm/asm.h>
#ifdef CONFIG_TRACE_IRQFLAGS
/* put return address in eax (arg1) */
@@ -22,6 +22,7 @@
popl %ecx
popl %eax
ret
+ _ASM_NOKPROBE(\name)
.endm
thunk_ra trace_hardirqs_on_thunk,trace_hardirqs_on_caller
OpenPOWER on IntegriCloud