Messages in this thread | | | From | Masami Hiramatsu <> | Subject | [PATCH v1 tip/master 0/3] kprobes/x86: retpoline: Fix kprobes for retpoline | Date | Thu, 18 Jan 2018 21:00:48 +0900 |
| |
Hi,
This is a series of patches to fix kprobes issues on the kernel with CONFIG_RETPOLINE=y.
- [1/3]: This introduces __x86_indirect_thunk_* boundary symbols so that kprobes easily identify those functions. - [2/3]: Mark __x86_indirect_thunk_* as blacklisted function for kprobes, since it can be called from other blacklisted functions. - [3/3]: Check jmp instructions in the probe target function whether it jumps into the __x86_indirect_thunk_*, because it is equal to an indirect jump instruction.
Side effect: [1/3] will move __x86_indirect_thunk_* functions in kernel text area. Of course those functions were in the .text area, but placed in right after _etext. This just moves it right before the _etext.
Thank you,
---
Masami Hiramatsu (3): retpoline: Introduce start/end markers of indirect thunk kprobes/x86: Blacklist indirect thunk functions for kprobes kprobes/x86: Disable optimizing on the function jumps to indirect thunk
arch/x86/include/asm/nospec-branch.h | 3 +++ arch/x86/kernel/kprobes/opt.c | 23 +++++++++++++++++++++- arch/x86/kernel/vmlinux.lds.S | 35 ++++++++++++++++++++++++++++++++++ arch/x86/lib/retpoline.S | 3 ++- 4 files changed, 62 insertions(+), 2 deletions(-)
-- Masami Hiramatsu (Linaro) <mhiramat@kernel.org>
| |