On 27/02/26 8:58 pm, Venkat wrote:

On 27 Feb 2026, at 7:13 AM, [email protected] wrote:

From: Abhishek Dubey <[email protected]>

The first 2 patch enable support for instruction array. Now, the
instruction offset map maintain the mapping:
original inst -> xlated inst -> jited inst

The last two patch enable support for indirect jump. Any eligile
register can store jump target address for control flow to jump.

The features will be enabled on ppc32 in a separate series.

The patch series is rebased over:
https://lore.kernel.org/bpf/[email protected]

All selftest related to instruction array and indirect jump
are passing.

./test_progs-cpuv4 -n 20
#21/1Â Â Â  bpf_insn_array/one2one:OK
#21/2Â Â Â  bpf_insn_array/simple:OK
#21/3Â Â Â  bpf_insn_array/deletions:OK
#21/4Â Â Â  bpf_insn_array/deletions-with-functions:OK
#21/5Â Â Â  bpf_insn_array/blindness:OK
#21/6Â Â Â  bpf_insn_array/incorrect-index:OK
#21/7Â Â Â  bpf_insn_array/load-unfrozen-map:OK
#21/8Â Â Â  bpf_insn_array/no-map-reuse:OK
#21/9Â Â Â  bpf_insn_array/bpf-side-ops:OK
#21Â Â Â Â Â  bpf_insn_array:OK
Summary: 1/9 PASSED, 0 SKIPPED, 0 FAILED

./test_progs-cpuv4 -n 21
#20/1Â Â Â  bpf_gotox/one-switch:OK
#20/2Â Â Â  bpf_gotox/one-switch-non-zero-sec-offset:OK
#20/3Â Â Â  bpf_gotox/two-switches:OK
#20/4Â Â Â  bpf_gotox/big-jump-table:OK
#20/5Â Â Â  bpf_gotox/static-global:OK
#20/6Â Â Â  bpf_gotox/nonstatic-global:OK
#20/7Â Â Â  bpf_gotox/other-sec:OK
#20/8Â Â Â  bpf_gotox/static-global-other-sec:OK
#20/9Â Â Â  bpf_gotox/nonstatic-global-other-sec:OK
#20/10Â Â  bpf_gotox/one-jump-two-maps:OK
#20/11Â Â  bpf_gotox/one-map-two-jumps:OK
#20Â Â Â Â Â  bpf_gotox:OK
Summary: 1/11 PASSED, 0 SKIPPED, 0 FAILED

v1->v2:
Handle image offset for ABIv1

[v1]: https://lore.kernel.org/bpf/[email protected]

Abhishek Dubey (4):
powerpc64/bpf: Add support for instruction array
selftest/bpf: Enable instruction array test for powerpc64
powerpc64/bpf: Add support for indirect jump
selftest/bpf: Enable gotox tests for powerpc64

arch/powerpc/net/bpf_jit_comp.c                        | 10 ++++++++++
arch/powerpc/net/bpf_jit_comp64.c                      |  8 ++++++++
.../testing/selftests/bpf/prog_tests/bpf_insn_array.c  |  2 +-
tools/testing/selftests/bpf/progs/verifier_gotox.c     |  4 ++--
4 files changed, 21 insertions(+), 3 deletions(-)

--
2.52.0


Please ignore my last results. Refer the below.


# ./test_progs-cpuv4 -n 21
#21/1    bpf_insn_array/one2one:OK
#21/2    bpf_insn_array/simple:OK
#21/3    bpf_insn_array/deletions:OK
#21/4    bpf_insn_array/deletions-with-functions:OK
#21/5    bpf_insn_array/blindness:OK
#21/6    bpf_insn_array/incorrect-index:OK
#21/7    bpf_insn_array/load-unfrozen-map:OK
#21/8    bpf_insn_array/no-map-reuse:OK
#21/9    bpf_insn_array/bpf-side-ops:OK
#21      bpf_insn_array:OK
Summary: 1/9 PASSED, 0 SKIPPED, 0 FAILED


# ./test_progs-cpuv4 -n 20
#20/1    bpf_gotox/one-switch:OK
#20/2    bpf_gotox/one-switch-non-zero-sec-offset:OK
#20/3    bpf_gotox/two-switches:OK
#20/4    bpf_gotox/big-jump-table:OK
#20/5    bpf_gotox/static-global:OK
#20/6    bpf_gotox/nonstatic-global:OK
#20/7    bpf_gotox/other-sec:OK
#20/8    bpf_gotox/static-global-other-sec:OK
#20/9    bpf_gotox/nonstatic-global-other-sec:OK
#20/10   bpf_gotox/one-jump-two-maps:OK
#20/11   bpf_gotox/one-map-two-jumps:OK
#20/12   bpf_gotox/check-ldimm64-off:OK
#20/13   bpf_gotox/check-ldimm64-off-gotox:OK
#20      bpf_gotox:OK
Summary: 1/13 PASSED, 0 SKIPPED, 0 FAILED


Tested-by: Venkat Rao Bagalkote <[email protected]>


Regards,

Venkat.


Tested-by: Venkat Rao Bagalkote <[email protected]>

Tested this series and below are the results.

./test_progs-cpuv4 -n 21
#21/1    bpf_insn_array/one2one:OK
#21/2    bpf_insn_array/simple:OK
#21/3    bpf_insn_array/deletions:OK
#21/4    bpf_insn_array/deletions-with-functions:OK
#21/5    bpf_insn_array/blindness:OK
#21/6    bpf_insn_array/incorrect-index:OK
#21/7    bpf_insn_array/load-unfrozen-map:OK
#21/8    bpf_insn_array/no-map-reuse:OK
#21/9    bpf_insn_array/bpf-side-ops:OK
#21      bpf_insn_array:OK
Summary: 1/9 PASSED, 0 SKIPPED, 0 FAILED


./test_progs-cpuv4 -n 20
#20/1    bpf_gotox/one-switch:SKIP
#20/2    bpf_gotox/one-switch-non-zero-sec-offset:SKIP
#20/3    bpf_gotox/two-switches:SKIP
#20/4    bpf_gotox/big-jump-table:SKIP
#20/5    bpf_gotox/static-global:SKIP
#20/6    bpf_gotox/nonstatic-global:SKIP
#20/7    bpf_gotox/other-sec:SKIP
#20/8    bpf_gotox/static-global-other-sec:SKIP
#20/9    bpf_gotox/nonstatic-global-other-sec:SKIP
#20/10   bpf_gotox/one-jump-two-maps:SKIP
#20/11   bpf_gotox/one-map-two-jumps:SKIP
#20/12   bpf_gotox/check-ldimm64-off:SKIP
#20/13   bpf_gotox/check-ldimm64-off-gotox:SKIP
#20      bpf_gotox:SKIP
Summary: 1/0 PASSED, 13 SKIPPED, 0 FAILED

Regards,
Venkat.



Reply via email to