selftests/bpf: add BPF object fixup step to veristat
authorAndrii Nakryiko <andrii@kernel.org>
Wed, 5 Oct 2022 16:14:50 +0000 (09:14 -0700)
committerAlexei Starovoitov <ast@kernel.org>
Wed, 5 Oct 2022 23:55:12 +0000 (16:55 -0700)
commit60df8c4d32d47fa5e91d02811dadcb97a0bd097e
tree25bf70ab4c8cfa7ccb1eaae254bedfe488ce68b0
parent6df2eb45e378f38ca42776276e7bb5b5078c12cf
selftests/bpf: add BPF object fixup step to veristat

Add a step to attempt to "fix up" BPF object file to make it possible to
successfully load it. E.g., set non-zero size for BPF maps that expect
max_entries set, but BPF object file itself doesn't have declarative
max_entries values specified.

Another issue was with automatic map pinning. Pinning has no effect on
BPF verification process itself but can interfere when validating
multiple related programs and object files, so veristat disabled all the
pinning explicitly.

In the future more such fix up heuristics could be added to accommodate
common patterns encountered in practice.

Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/r/20221005161450.1064469-3-andrii@kernel.org
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
tools/testing/selftests/bpf/veristat.c