mirror of
https://github.com/torvalds/linux.git
synced 2026-06-01 02:53:36 +02:00
arm64: stacktrace: Check kretprobe_find_ret_addr() return value
If kretprobe_find_ret_addr() fails to find the original return address, it returns 0. Check for this case so that a reliable stacktrace won't silently ignore it. Signed-off-by: Mark Rutland <mark.rutland@arm.com> Cc: Andrea della Porta <andrea.porta@suse.com> Cc: Breno Leitao <leitao@debian.org> Cc: Josh Poimboeuf <jpoimboe@kernel.org> Cc: Miroslav Benes <mbenes@suse.cz> Cc: Petr Mladek <pmladek@suse.com> Cc: Song Liu <song@kernel.org> Cc: Will Deacon <will@kernel.org> Reviewed-and-tested-by: Song Liu <song@kernel.org> Link: https://lore.kernel.org/r/20250521111000.2237470-2-mark.rutland@arm.com Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
This commit is contained in:
parent
91b89a6344
commit
beecfd6a88
|
|
@ -152,6 +152,8 @@ kunwind_recover_return_address(struct kunwind_state *state)
|
|||
orig_pc = kretprobe_find_ret_addr(state->task,
|
||||
(void *)state->common.fp,
|
||||
&state->kr_cur);
|
||||
if (!orig_pc)
|
||||
return -EINVAL;
|
||||
state->common.pc = orig_pc;
|
||||
state->flags.kretprobe = 1;
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user