OSDN Git Service

selftests/bpf: Stop using bpf_program__load
authorDave Marchevsky <davemarchevsky@fb.com>
Fri, 17 Sep 2021 18:29:04 +0000 (11:29 -0700)
committerAlexei Starovoitov <ast@kernel.org>
Fri, 17 Sep 2021 21:02:05 +0000 (14:02 -0700)
commit84b4c52960bdccd86d6c3c42a730fd8d0ab75427
treec27527eb0fc8c2131dc23b80e382c5b34d492f55
parent335ff4990cf3bfa42d8846f9b3d8c09456f51801
selftests/bpf: Stop using bpf_program__load

bpf_program__load is not supposed to be used directly. Replace it with
bpf_object__ APIs for the reference_tracking prog_test, which is the
last offender in bpf selftests.

Some additional complexity is added for this test, namely the use of one
bpf_object to iterate through progs, while a second bpf_object is
created and opened/closed to test actual loading of progs. This is
because the test was doing bpf_program__load then __unload to test
loading of individual progs and same semantics with
bpf_object__load/__unload result in failure to load an __unload-ed obj.

Signed-off-by: Dave Marchevsky <davemarchevsky@fb.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20210917182911.2426606-3-davemarchevsky@fb.com
tools/testing/selftests/bpf/prog_tests/reference_tracking.c