Skip to content

Commit cf97916

Browse files
fomichevMartin KaFai Lau
authored andcommitted
selftests/bpf: update test_offload to use new orphaned property
- filter orphaned programs by default - when trying to query orphaned program, don't expect bpftool failure Cc: [email protected] Signed-off-by: Stanislav Fomichev <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Martin KaFai Lau <[email protected]>
1 parent 876843c commit cf97916

File tree

1 file changed

+6
-9
lines changed

1 file changed

+6
-9
lines changed

tools/testing/selftests/bpf/test_offload.py

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -169,12 +169,14 @@ def bpftool(args, JSON=True, ns="", fail=True, include_stderr=False):
169169
return tool("bpftool", args, {"json":"-p"}, JSON=JSON, ns=ns,
170170
fail=fail, include_stderr=include_stderr)
171171

172-
def bpftool_prog_list(expected=None, ns=""):
172+
def bpftool_prog_list(expected=None, ns="", exclude_orphaned=True):
173173
_, progs = bpftool("prog show", JSON=True, ns=ns, fail=True)
174174
# Remove the base progs
175175
for p in base_progs:
176176
if p in progs:
177177
progs.remove(p)
178+
if exclude_orphaned:
179+
progs = [ p for p in progs if not p['orphaned'] ]
178180
if expected is not None:
179181
if len(progs) != expected:
180182
fail(True, "%d BPF programs loaded, expected %d" %
@@ -612,11 +614,9 @@ def pin_map(file_name, idx=0, expected=1):
612614

613615
def check_dev_info_removed(prog_file=None, map_file=None):
614616
bpftool_prog_list(expected=0)
617+
bpftool_prog_list(expected=1, exclude_orphaned=False)
615618
ret, err = bpftool("prog show pin %s" % (prog_file), fail=False)
616-
fail(ret == 0, "Showing prog with removed device did not fail")
617-
fail(err["error"].find("No such device") == -1,
618-
"Showing prog with removed device expected ENODEV, error is %s" %
619-
(err["error"]))
619+
fail(ret != 0, "failed to show prog with removed device")
620620

621621
bpftool_map_list(expected=0)
622622
ret, err = bpftool("map show pin %s" % (map_file), fail=False)
@@ -1395,10 +1395,7 @@ def test_multi_prog(simdev, sim, obj, modename, modeid):
13951395

13961396
start_test("Test multi-dev ASIC cross-dev destruction - orphaned...")
13971397
ret, out = bpftool("prog show %s" % (progB), fail=False)
1398-
fail(ret == 0, "got information about orphaned program")
1399-
fail("error" not in out, "no error reported for get info on orphaned")
1400-
fail(out["error"] != "can't get prog info: No such device",
1401-
"wrong error for get info on orphaned")
1398+
fail(ret != 0, "couldn't get information about orphaned program")
14021399

14031400
print("%s: OK" % (os.path.basename(__file__)))
14041401

0 commit comments

Comments
 (0)