Re: [PATCHv3 0/4] x86/fgraph,bpf: Fix ORC stack unwind from return probe

Alexei Starovoitov
2025-11-05T02:20:54Z

On Tue, Nov 4, 2025 at 1:54 PM Jiri Olsa <jolsa@kernel.org> wrote:
>
> hi,
> sending fix for ORC stack unwind issue reported in here [1], where
> the ORC unwinder won't go pass the return_to_handler function and
> we get no stacktrace.
>
> Sending fix for that together with unrelated stacktrace fix (patch 1),
> so the attached test can work properly.
>
> It's based on:
> https://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace.git
> probes/for-next
>
> v1: https://lore.kernel.org/bpf/20251027131354.1984006-1-jolsa@kernel.org/
> v2: https://lore.kernel.org/bpf/20251103220924.36371-3-jolsa@kernel.org/
>
> v3 changes:
> - fix assert condition in test
>
> thanks,
> jirka
>
>
> [1] https://lore.kernel.org/bpf/aObSyt3qOnS_BMcy@krava/
> ---
> Jiri Olsa (4):
> Revert "perf/x86: Always store regs->ip in perf_callchain_kernel()"
> x86/fgraph,bpf: Fix stack ORC unwind from kprobe_multi return probe
> selftests/bpf: Add stacktrace ips test for kprobe_multi/kretprobe_multi
> selftests/bpf: Add stacktrace ips test for raw_tp
>
> arch/x86/events/core.c | 10 +++----
> arch/x86/include/asm/ftrace.h | 5 ++++
> arch/x86/kernel/ftrace_64.S | 8 +++++-
> include/linux/ftrace.h | 10 ++++++-
> tools/testing/selftests/bpf/prog_tests/stacktrace_ips.c | 150 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
> tools/testing/selftests/bpf/progs/stacktrace_ips.c | 49 +++++++++++++++++++++++++++++++
> tools/testing/selftests/bpf/test_kmods/bpf_testmod.c | 26 +++++++++++++++++
> 7 files changed, 251 insertions(+), 7 deletions(-)
> create mode 100644 tools/testing/selftests/bpf/prog_tests/stacktrace_ips.c
> create mode 100644 tools/testing/selftests/bpf/progs/stacktrace_ips.c

Steven, Peter,

How should we route this?

If you take it into your tree, please send it to Linus right away,
so we can pull it into bpf/bpf-next trees.
The conflicts in selftests/bpf in the last merge window
were annoying. I don't want to see a repeat.