diff options
author | Masami Hiramatsu <mhiramat@kernel.org> | 2018-05-13 05:04:10 +0100 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2018-05-26 08:48:57 +0200 |
commit | 51425b7554a92040e8dc9fe42b2694a6df2125c0 (patch) | |
tree | d44876803c9cbb12547dee3ab962a700b1ca2710 | |
parent | 0ec84ae5aba19bf79653371f0bd45c12631b49b6 (diff) | |
download | linux-stable-51425b7554a92040e8dc9fe42b2694a6df2125c0.tar.gz linux-stable-51425b7554a92040e8dc9fe42b2694a6df2125c0.tar.bz2 linux-stable-51425b7554a92040e8dc9fe42b2694a6df2125c0.zip |
ARM: 8770/1: kprobes: Prohibit probing on optimized_callback
commit 70948c05fdde0aac32f9667856a88725c192fa40 upstream.
Prohibit probing on optimized_callback() because
it is called from kprobes itself. If we put a kprobes
on it, that will cause a recursive call loop.
Mark it NOKPROBE_SYMBOL.
Fixes: 0dc016dbd820 ("ARM: kprobes: enable OPTPROBES for ARM 32")
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
Cc: stable@vger.kernel.org
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | arch/arm/probes/kprobes/opt-arm.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm/probes/kprobes/opt-arm.c b/arch/arm/probes/kprobes/opt-arm.c index ddc5a82eb10d..b2aa9b32bff2 100644 --- a/arch/arm/probes/kprobes/opt-arm.c +++ b/arch/arm/probes/kprobes/opt-arm.c @@ -192,6 +192,7 @@ optimized_callback(struct optimized_kprobe *op, struct pt_regs *regs) local_irq_restore(flags); } +NOKPROBE_SYMBOL(optimized_callback) int arch_prepare_optimized_kprobe(struct optimized_kprobe *op, struct kprobe *orig) { |