| From 215887476bc922dac4e950f05bdc68416d112632 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Fri, 31 Jul 2020 17:08:01 +0200 |
| Subject: libbpf: Fix register in PT_REGS MIPS macros |
| |
| From: Jerry Crunchtime <jerry.c.t@web.de> |
| |
| [ Upstream commit 1acf8f90ea7ee59006d0474275922145ac291331 ] |
| |
| The o32, n32 and n64 calling conventions require the return |
| value to be stored in $v0 which maps to $2 register, i.e., |
| the register 2. |
| |
| Fixes: c1932cd ("bpf: Add MIPS support to samples/bpf.") |
| Signed-off-by: Jerry Crunchtime <jerry.c.t@web.de> |
| Signed-off-by: Daniel Borkmann <daniel@iogearbox.net> |
| Acked-by: Andrii Nakryiko <andriin@fb.com> |
| Link: https://lore.kernel.org/bpf/43707d31-0210-e8f0-9226-1af140907641@web.de |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| tools/lib/bpf/bpf_tracing.h | 4 ++-- |
| 1 file changed, 2 insertions(+), 2 deletions(-) |
| |
| diff --git a/tools/lib/bpf/bpf_tracing.h b/tools/lib/bpf/bpf_tracing.h |
| index 48a9c7c69ef1f..e6ec7cb4aa4aa 100644 |
| --- a/tools/lib/bpf/bpf_tracing.h |
| +++ b/tools/lib/bpf/bpf_tracing.h |
| @@ -215,7 +215,7 @@ struct pt_regs; |
| #define PT_REGS_PARM5(x) ((x)->regs[8]) |
| #define PT_REGS_RET(x) ((x)->regs[31]) |
| #define PT_REGS_FP(x) ((x)->regs[30]) /* Works only with CONFIG_FRAME_POINTER */ |
| -#define PT_REGS_RC(x) ((x)->regs[1]) |
| +#define PT_REGS_RC(x) ((x)->regs[2]) |
| #define PT_REGS_SP(x) ((x)->regs[29]) |
| #define PT_REGS_IP(x) ((x)->cp0_epc) |
| |
| @@ -226,7 +226,7 @@ struct pt_regs; |
| #define PT_REGS_PARM5_CORE(x) BPF_CORE_READ((x), regs[8]) |
| #define PT_REGS_RET_CORE(x) BPF_CORE_READ((x), regs[31]) |
| #define PT_REGS_FP_CORE(x) BPF_CORE_READ((x), regs[30]) |
| -#define PT_REGS_RC_CORE(x) BPF_CORE_READ((x), regs[1]) |
| +#define PT_REGS_RC_CORE(x) BPF_CORE_READ((x), regs[2]) |
| #define PT_REGS_SP_CORE(x) BPF_CORE_READ((x), regs[29]) |
| #define PT_REGS_IP_CORE(x) BPF_CORE_READ((x), cp0_epc) |
| |
| -- |
| 2.25.1 |
| |