]> git.baikalelectronics.ru Git - kernel.git/commit
libbpf: Fix accessing the first syscall argument on s390
authorIlya Leoshkevich <iii@linux.ibm.com>
Wed, 9 Feb 2022 02:17:45 +0000 (03:17 +0100)
committerAndrii Nakryiko <andrii@kernel.org>
Wed, 9 Feb 2022 05:37:50 +0000 (21:37 -0800)
commit4197103cf01200eed873bb8632ea0aa8b0c41c2d
tree8a0c033171027bd17fd306411b10c34cac437b4b
parentc1c934eec3c7257b983ad56816626db1290ef277
libbpf: Fix accessing the first syscall argument on s390

On s390, the first syscall argument should be accessed via orig_gpr2
(see arch/s390/include/asm/syscall.h). Currently gpr[2] is used
instead, leading to bpf_syscall_macro test failure.

orig_gpr2 cannot be added to user_pt_regs, since its layout is a part
of the ABI. Therefore provide access to it only through
PT_REGS_PARM1_CORE_SYSCALL() by using a struct pt_regs flavor.

Reported-by: Andrii Nakryiko <andrii@kernel.org>
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20220209021745.2215452-11-iii@linux.ibm.com
tools/lib/bpf/bpf_tracing.h