diff options
author | Masami Hiramatsu <mhiramat@kernel.org> | 2021-09-14 23:42:22 +0900 |
---|---|---|
committer | Steven Rostedt (VMware) <rostedt@goodmis.org> | 2021-09-30 21:24:07 -0400 |
commit | 1f36839308cf8d7d9d35586029f8ae4322e18ef5 (patch) | |
tree | f28e70d7617147faaad89155589872b72d0f7bbe /kernel/trace/trace_functions_graph.c | |
parent | df91c5bccb0c2cb868b54bd68a6ddf1fcbede6b1 (diff) | |
download | linux-1f36839308cf8d7d9d35586029f8ae4322e18ef5.tar.gz linux-1f36839308cf8d7d9d35586029f8ae4322e18ef5.tar.bz2 linux-1f36839308cf8d7d9d35586029f8ae4322e18ef5.zip |
x86/kprobes: Push a fake return address at kretprobe_trampoline
Change __kretprobe_trampoline() to push the address of the
__kretprobe_trampoline() as a fake return address at the bottom
of the stack frame. This fake return address will be replaced
with the correct return address in the trampoline_handler().
With this change, the ORC unwinder can check whether the return
address is modified by kretprobes or not.
Link: https://lkml.kernel.org/r/163163054185.489837.14338744048957727386.stgit@devnote2
Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org>
Suggested-by: Josh Poimboeuf <jpoimboe@redhat.com>
Tested-by: Andrii Nakryiko <andrii@kernel.org>
Acked-by: Josh Poimboeuf <jpoimboe@redhat.com>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Diffstat (limited to 'kernel/trace/trace_functions_graph.c')
0 files changed, 0 insertions, 0 deletions