selftests: forwarding: Change inappropriate log_test_skip() calls

The SKIP return should be used for cases where tooling of the machine under
test is lacking. For cases where HW is lacking, the appropriate outcome is
XFAIL.

This is the case with ethtool_rmon and mlxsw_lib. For these, introduce a
new helper, log_test_xfail().

Do the same for router_mpath_nh_lib. Note that it will be fixed using a
more reusable way in a following patch.

For the two resource_scale selftests, the log should simply not be written,
because there is no problem.

Cc: Tobias Waldekranz <tobias@waldekranz.com>
Signed-off-by: Petr Machata <petrm@nvidia.com>
Link: https://lore.kernel.org/r/3d668d8fb6fa0d9eeb47ce6d9e54114348c7c179.1711464583.git.petrm@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Petr Machata 2024-03-26 17:54:34 +01:00 committed by Jakub Kicinski
parent 0c499a3517
commit 677f394956
6 changed files with 13 additions and 6 deletions

View File

@ -79,7 +79,7 @@ rmon_histogram()
for if in $iface $neigh; do
if ! ensure_mtu $if ${bucket[0]}; then
log_test_skip "$if does not support the required MTU for $step"
log_test_xfail "$if does not support the required MTU for $step"
return
fi
done
@ -94,7 +94,7 @@ rmon_histogram()
jq -r ".[0].rmon[\"${set}-pktsNtoM\"][]|[.low, .high]|@tsv" 2>/dev/null)
if [ $nbuckets -eq 0 ]; then
log_test_skip "$iface does not support $set histogram counters"
log_test_xfail "$iface does not support $set histogram counters"
return
fi
}

View File

@ -42,7 +42,7 @@ __mlxsw_only_on_spectrum()
local src=$1; shift
if ! mlxsw_on_spectrum "$rev"; then
log_test_skip $src:$caller "(Spectrum-$rev only)"
log_test_xfail $src:$caller "(Spectrum-$rev only)"
return 1
fi
}

View File

@ -47,7 +47,6 @@ for current_test in ${TESTS:-$ALL_TESTS}; do
RET=0
target=$(${current_test}_get_target "$should_fail")
if ((target == 0)); then
log_test_skip "'$current_test' should_fail=$should_fail test"
continue
fi

View File

@ -52,7 +52,6 @@ for current_test in ${TESTS:-$ALL_TESTS}; do
RET=0
target=$(${current_test}_get_target "$should_fail")
if ((target == 0)); then
log_test_skip "'$current_test' [$profile] should_fail=$should_fail test"
continue
fi
${current_test}_setup_prepare

View File

@ -467,6 +467,15 @@ log_test_skip()
return 0
}
log_test_xfail()
{
local test_name=$1
local opt_str=$2
printf "TEST: %-60s [XFAIL]\n" "$test_name $opt_str"
return 0
}
log_info()
{
local msg=$1

View File

@ -69,7 +69,7 @@ nh_stats_test_dispatch_swhw()
nh_stats_do_test "HW $what" "$nh1_id" "$nh2_id" "$group_id" \
nh_stats_get_hw "${mz[@]}"
elif [[ $kind == veth ]]; then
log_test_skip "HW stats not offloaded on veth topology"
log_test_xfail "HW stats not offloaded on veth topology"
fi
}