From: Saket Kumar Bhaskar <skb99@linux.ibm.com>
To: Venkat Rao Bagalkote <venkat88@linux.ibm.com>
Cc: bpf@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
linux-kselftest@vger.kernel.org, linux-kernel@vger.kernel.org,
hbathini@linux.ibm.com, sachinpb@linux.ibm.com,
andrii@kernel.org, eddyz87@gmail.com, mykolal@fb.com,
ast@kernel.org, daniel@iogearbox.net, martin.lau@linux.dev,
song@kernel.org, yonghong.song@linux.dev,
john.fastabend@gmail.com, kpsingh@kernel.org, sdf@fomichev.me,
haoluo@google.com, jolsa@kernel.org, christophe.leroy@csgroup.eu,
naveen@kernel.org, maddy@linux.ibm.com, mpe@ellerman.id.au,
npiggin@gmail.com, memxor@gmail.com, iii@linux.ibm.com,
shuah@kernel.org
Subject: Re: [bpf-next 0/6] bpf,powerpc: Add support for bpf arena and arena atomics
Date: Thu, 7 Aug 2025 18:47:16 +0530 [thread overview]
Message-ID: <aJSnXO62QRglnNsw@linux.ibm.com> (raw)
In-Reply-To: <e918bef7-5f9b-4591-b671-fe3c0f681862@linux.ibm.com>
On Tue, Aug 05, 2025 at 05:37:00PM +0530, Venkat Rao Bagalkote wrote:
>
> On 05/08/25 11:57 am, Saket Kumar Bhaskar wrote:
> > This patch series introduces support for the PROBE_MEM32,
> > bpf_addr_space_cast and PROBE_ATOMIC instructions in the powerpc BPF JIT,
> > facilitating the implementation of BPF arena and arena atomics.
> >
> > The last patch in the series has fix for arena spinlock selftest
> > failure.
> >
> > This series is rebased on top of:
> > https://lore.kernel.org/bpf/20250717202935.29018-2-puranjay@kernel.org/
> >
> > All selftests related to bpf_arena, bpf_arena_atomic(except
> > load_acquire/store_release) enablement are passing:
>
>
> Hello Saket,
>
>
> I see couple of selftests are failing on my set up.
>
> >
> > # ./test_progs -t arena_list
> > #5/1 arena_list/arena_list_1:OK
> > #5/2 arena_list/arena_list_1000:OK
> > #5 arena_list:OK
> > Summary: 1/2 PASSED, 0 SKIPPED, 0 FAILED
> >
> > # ./test_progs -t arena_htab
> > #4/1 arena_htab/arena_htab_llvm:OK
> > #4/2 arena_htab/arena_htab_asm:OK
> > #4 arena_htab:OK
> > Summary: 1/2 PASSED, 0 SKIPPED, 0 FAILED
> >
> > # ./test_progs -t verifier_arena
> > #464/1 verifier_arena/basic_alloc1:OK
> > #464/2 verifier_arena/basic_alloc2:OK
> > #464/3 verifier_arena/basic_alloc3:OK
> > #464/4 verifier_arena/iter_maps1:OK
> > #464/5 verifier_arena/iter_maps2:OK
> > #464/6 verifier_arena/iter_maps3:OK
> > #464 verifier_arena:OK
> > #465/1 verifier_arena_large/big_alloc1:OK
> > #465/2 verifier_arena_large/big_alloc2:OK
> > #465 verifier_arena_large:OK
> > Summary: 2/8 PASSED, 0 SKIPPED, 0 FAILED
>
>
> All error logs:
> tester_init:PASS:tester_log_buf 0 nsec
> process_subtest:PASS:obj_open_mem 0 nsec
> process_subtest:PASS:specs_alloc 0 nsec
> run_subtest:PASS:obj_open_mem 0 nsec
> run_subtest:PASS:unexpected_load_failure 0 nsec
> do_prog_test_run:PASS:bpf_prog_test_run 0 nsec
> run_subtest:FAIL:1103 Unexpected retval: 4 != 0
> #513/7 verifier_arena/reserve_invalid_region:FAIL
> #513 verifier_arena:FAIL
> Summary: 1/14 PASSED, 0 SKIPPED, 1 FAILED
>
>
Hi Venkat,
It is known failure. This selftest was added recently. We are working on it to
fix this. Will post the fix for this selftest separately.
> >
> > # ./test_progs -t arena_atomics
> > #3/1 arena_atomics/add:OK
> > #3/2 arena_atomics/sub:OK
> > #3/3 arena_atomics/and:OK
> > #3/4 arena_atomics/or:OK
> > #3/5 arena_atomics/xor:OK
> > #3/6 arena_atomics/cmpxchg:OK
> > #3/7 arena_atomics/xchg:OK
> > #3/8 arena_atomics/uaf:OK
> > #3/9 arena_atomics/load_acquire:SKIP
> > #3/10 arena_atomics/store_release:SKIP
> > #3 arena_atomics:OK (SKIP: 2/10)
> > Summary: 1/8 PASSED, 2 SKIPPED, 0 FAILED
> >
> > All selftests related to arena_spin_lock are passing:
> >
> > # ./test_progs -t arena_spin_lock
> > #6/1 arena_spin_lock/arena_spin_lock_1:OK
> > #6/2 arena_spin_lock/arena_spin_lock_1000:OK
> > #6/3 arena_spin_lock/arena_spin_lock_50000:OK
> > #6 arena_spin_lock:OK
> > Summary: 1/3 PASSED, 0 SKIPPED, 0 FAILED
> test_arena_spin_lock_size:FAIL:check counter value unexpected check counter
> value: actual 15999 != expected 16000
> #6/1 arena_spin_lock/arena_spin_lock_1:FAIL
> #6 arena_spin_lock:FAIL
> Summary: 0/2 PASSED, 0 SKIPPED, 1 FAILED
This too, with llvm-19 the failure is known to us, where llvm doesn't have support for
may_goto insn https://github.com/llvm/llvm-project/commit/0e0bfacff71859d1f9212205f8f873d47029d3fb.
Though, there is else condition which is envoked incase llvm doesn't have support for may_goto insn,
which we are looking into.
Since llvm-20 has support for may_goto, we are not seeing this failure there(the selftest passes).
So we are planning to fix this in separate patch for llvm-19 for now.
Regards,
Saket
> > Saket Kumar Bhaskar (6):
> > bpf,powerpc: Introduce bpf_jit_emit_probe_mem_store() to emit store
> > instructions
> > bpf,powerpc: Implement PROBE_MEM32 pseudo instructions
> > bpf,powerpc: Implement bpf_addr_space_cast instruction
> > bpf,powerpc: Introduce bpf_jit_emit_atomic_ops() to emit atomic
> > instructions
> > bpf,powerpc: Implement PROBE_ATOMIC instructions
> > selftests/bpf: Fix arena_spin_lock selftest failure
> >
> > arch/powerpc/net/bpf_jit.h | 6 +-
> > arch/powerpc/net/bpf_jit_comp.c | 32 +-
> > arch/powerpc/net/bpf_jit_comp32.c | 2 +-
> > arch/powerpc/net/bpf_jit_comp64.c | 378 +++++++++++++-----
> > .../bpf/prog_tests/arena_spin_lock.c | 23 +-
> > .../selftests/bpf/progs/arena_spin_lock.c | 8 +-
> > .../selftests/bpf/progs/bpf_arena_spin_lock.h | 4 +-
> > 7 files changed, 348 insertions(+), 105 deletions(-)
> >
> > base-commit: ea2aecdf7a954a8c0015e185cc870c4191d1d93f
>
>
> Regards,
>
> Venkat.
>
prev parent reply other threads:[~2025-08-07 13:18 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-05 6:27 [bpf-next 0/6] bpf,powerpc: Add support for bpf arena and arena atomics Saket Kumar Bhaskar
2025-08-05 6:27 ` [bpf-next 1/6] bpf,powerpc: Introduce bpf_jit_emit_probe_mem_store() to emit store instructions Saket Kumar Bhaskar
2025-08-05 7:34 ` Christophe Leroy
2025-08-05 11:59 ` Venkat Rao Bagalkote
2025-08-06 6:59 ` Christophe Leroy
2025-08-07 10:29 ` Saket Kumar Bhaskar
2025-08-05 6:27 ` [bpf-next 2/6] bpf,powerpc: Implement PROBE_MEM32 pseudo instructions Saket Kumar Bhaskar
2025-08-05 7:41 ` Christophe Leroy
2025-08-07 13:25 ` Saket Kumar Bhaskar
2025-08-14 8:54 ` Hari Bathini
2025-08-05 6:27 ` [bpf-next 3/6] bpf,powerpc: Implement bpf_addr_space_cast instruction Saket Kumar Bhaskar
2025-08-05 7:29 ` Christophe Leroy
2025-08-07 10:24 ` Saket Kumar Bhaskar
2025-08-05 6:27 ` [bpf-next 4/6] bpf,powerpc: Introduce bpf_jit_emit_atomic_ops() to emit atomic instructions Saket Kumar Bhaskar
2025-08-05 6:27 ` [bpf-next 5/6] bpf,powerpc: Implement PROBE_ATOMIC instructions Saket Kumar Bhaskar
2025-08-05 6:27 ` [bpf-next 6/6] selftests/bpf: Fix arena_spin_lock selftest failure Saket Kumar Bhaskar
2025-08-07 22:21 ` Alexei Starovoitov
2025-08-08 15:28 ` Saket Kumar Bhaskar
2025-08-08 16:27 ` Alexei Starovoitov
2025-08-05 7:45 ` [bpf-next 0/6] bpf,powerpc: Add support for bpf arena and arena atomics Christophe Leroy
2025-08-07 10:26 ` Saket Kumar Bhaskar
2025-08-05 12:07 ` Venkat Rao Bagalkote
2025-08-07 13:17 ` Saket Kumar Bhaskar [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=aJSnXO62QRglnNsw@linux.ibm.com \
--to=skb99@linux.ibm.com \
--cc=andrii@kernel.org \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=christophe.leroy@csgroup.eu \
--cc=daniel@iogearbox.net \
--cc=eddyz87@gmail.com \
--cc=haoluo@google.com \
--cc=hbathini@linux.ibm.com \
--cc=iii@linux.ibm.com \
--cc=john.fastabend@gmail.com \
--cc=jolsa@kernel.org \
--cc=kpsingh@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=maddy@linux.ibm.com \
--cc=martin.lau@linux.dev \
--cc=memxor@gmail.com \
--cc=mpe@ellerman.id.au \
--cc=mykolal@fb.com \
--cc=naveen@kernel.org \
--cc=npiggin@gmail.com \
--cc=sachinpb@linux.ibm.com \
--cc=sdf@fomichev.me \
--cc=shuah@kernel.org \
--cc=song@kernel.org \
--cc=venkat88@linux.ibm.com \
--cc=yonghong.song@linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.