BPF Archive on lore.kernel.org
 help / color / Atom feed
* [PATCH bpf v2] libbpf: Fix register in PT_REGS MIPS macros
@ 2020-07-31 11:13 Jerry Crunchtime
  2020-07-31 15:27 ` Daniel Borkmann
  0 siblings, 1 reply; 2+ messages in thread
From: Jerry Crunchtime @ 2020-07-31 11:13 UTC (permalink / raw)
  To: bpf, daniel

v1 -> v2: Also fixed missed PT_REGS_RC_CORE macro

Hi.

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>
---
  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 58eceb884..eebf020cb 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.17.1

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [PATCH bpf v2] libbpf: Fix register in PT_REGS MIPS macros
  2020-07-31 11:13 [PATCH bpf v2] libbpf: Fix register in PT_REGS MIPS macros Jerry Crunchtime
@ 2020-07-31 15:27 ` Daniel Borkmann
  0 siblings, 0 replies; 2+ messages in thread
From: Daniel Borkmann @ 2020-07-31 15:27 UTC (permalink / raw)
  To: Jerry Crunchtime, bpf

On 7/31/20 1:13 PM, Jerry Crunchtime wrote:
> v1 -> v2: Also fixed missed PT_REGS_RC_CORE macro
> 
> Hi.
> 
> 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>

Patch was whitespace damaged, but fixed it up manually this
time & applied, thanks!

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, back to index

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-31 11:13 [PATCH bpf v2] libbpf: Fix register in PT_REGS MIPS macros Jerry Crunchtime
2020-07-31 15:27 ` Daniel Borkmann

BPF Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/bpf/0 bpf/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 bpf bpf/ https://lore.kernel.org/bpf \
		bpf@vger.kernel.org
	public-inbox-index bpf

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.bpf


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git