Message ID | 20200915115519.3769807-1-iii@linux.ibm.com |
---|---|
State | Accepted |
Delegated to: | BPF Maintainers |
Headers | show |
Series | [RESEND,bpf-next] samples/bpf: Fix test_map_in_map on s390 | expand |
On Tue, Sep 15, 2020 at 5:42 PM Ilya Leoshkevich <iii@linux.ibm.com> wrote: > > s390 uses socketcall multiplexer instead of individual socket syscalls. > Therefore, "kprobe/" SYSCALL(sys_connect) does not trigger and > test_map_in_map fails. Fix by using "kprobe/__sys_connect" instead. > > Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com> > --- > LGTM. Acked-by: Andrii Nakryiko <andriin@fb.com> > Previous discussion: > https://lore.kernel.org/bpf/20200728120059.132256-3-iii@linux.ibm.com > > samples/bpf/test_map_in_map_kern.c | 7 +++---- > 1 file changed, 3 insertions(+), 4 deletions(-) > [...]
diff --git a/samples/bpf/test_map_in_map_kern.c b/samples/bpf/test_map_in_map_kern.c index 8def45c5b697..b0200c8eac09 100644 --- a/samples/bpf/test_map_in_map_kern.c +++ b/samples/bpf/test_map_in_map_kern.c @@ -103,10 +103,9 @@ static __always_inline int do_inline_hash_lookup(void *inner_map, u32 port) return result ? *result : -ENOENT; } -SEC("kprobe/" SYSCALL(sys_connect)) +SEC("kprobe/__sys_connect") int trace_sys_connect(struct pt_regs *ctx) { - struct pt_regs *real_regs = (struct pt_regs *)PT_REGS_PARM1_CORE(ctx); struct sockaddr_in6 *in6; u16 test_case, port, dst6[8]; int addrlen, ret, inline_ret, ret_key = 0; @@ -114,8 +113,8 @@ int trace_sys_connect(struct pt_regs *ctx) void *outer_map, *inner_map; bool inline_hash = false; - in6 = (struct sockaddr_in6 *)PT_REGS_PARM2_CORE(real_regs); - addrlen = (int)PT_REGS_PARM3_CORE(real_regs); + in6 = (struct sockaddr_in6 *)PT_REGS_PARM2_CORE(ctx); + addrlen = (int)PT_REGS_PARM3_CORE(ctx); if (addrlen != sizeof(*in6)) return 0;
s390 uses socketcall multiplexer instead of individual socket syscalls. Therefore, "kprobe/" SYSCALL(sys_connect) does not trigger and test_map_in_map fails. Fix by using "kprobe/__sys_connect" instead. Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com> --- Previous discussion: https://lore.kernel.org/bpf/20200728120059.132256-3-iii@linux.ibm.com samples/bpf/test_map_in_map_kern.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-)