]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
libbpf: Fix powerpc's stack register definition in bpf_tracing.h
authorAndrii Nakryiko <andrii@kernel.org>
Mon, 20 Oct 2025 20:36:43 +0000 (13:36 -0700)
committerAlexei Starovoitov <ast@kernel.org>
Thu, 23 Oct 2025 18:25:16 +0000 (11:25 -0700)
retsnoop's build on powerpc (ppc64le) architecture ([0]) failed due to
wrong definition of PT_REGS_SP() macro. Looking at powerpc's
implementation of stack unwinding in perf_callchain_user_64() clearly
shows that stack pointer register is gpr[1].

Fix libbpf's definition of __PT_SP_REG for powerpc to fix all this.

  [0] https://kojipkgs.fedoraproject.org/work/tasks/1544/137921544/build.log

Fixes: 138d6153a139 ("samples/bpf: Enable powerpc support")
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Reviewed-by: Naveen N Rao (AMD) <naveen@kernel.org>
Link: https://lore.kernel.org/r/20251020203643.989467-1-andrii@kernel.org
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
tools/lib/bpf/bpf_tracing.h

index a8f6cd4841b031c799389572d7b6034d5ba4784f..dbe32a5d02cd7564fb0b9fbb19a4094e951d6d82 100644 (file)
@@ -311,7 +311,7 @@ struct pt_regs___arm64 {
 #define __PT_RET_REG regs[31]
 #define __PT_FP_REG __unsupported__
 #define __PT_RC_REG gpr[3]
-#define __PT_SP_REG sp
+#define __PT_SP_REG gpr[1]
 #define __PT_IP_REG nip
 
 #elif defined(bpf_target_sparc)