Commit 8cad339d authored by Petr Machata's avatar Petr Machata Committed by David S. Miller

selftests: mlxsw: resource_scale: Allow skipping a test

The scale tests are currently testing two things: that some number of
instances of a given resource can actually be created; and that when an
attempt is made to create more than the supported amount, the failures are
noted and handled gracefully.

Sometimes the scale test depends on more than one resource. In particular,
a following patch will add a RIF counter scale test, which depends on the
number of RIF counters that can be bound, and also on the number of RIFs
that can be created.

When the test is limited by the auxiliary resource and not by the primary
one, there's no point trying to run the overflow test, because it would be
testing exhaustion of the wrong resource.

To support this use case, when the $test_get_target yields 0, skip the test
instead.
Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
Reviewed-by: default avatarAmit Cohen <amcohen@nvidia.com>
Signed-off-by: default avatarIdo Schimmel <idosch@nvidia.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 3128b9f5
...@@ -36,6 +36,11 @@ for current_test in ${TESTS:-$ALL_TESTS}; do ...@@ -36,6 +36,11 @@ for current_test in ${TESTS:-$ALL_TESTS}; do
for should_fail in 0 1; do for should_fail in 0 1; do
RET=0 RET=0
target=$(${current_test}_get_target "$should_fail") target=$(${current_test}_get_target "$should_fail")
if ((target == 0)); then
log_test_skip "'$current_test' should_fail=$should_fail test"
continue
fi
${current_test}_setup_prepare ${current_test}_setup_prepare
setup_wait $num_netifs setup_wait $num_netifs
# Update target in case occupancy of a certain resource changed # Update target in case occupancy of a certain resource changed
......
...@@ -41,6 +41,10 @@ for current_test in ${TESTS:-$ALL_TESTS}; do ...@@ -41,6 +41,10 @@ for current_test in ${TESTS:-$ALL_TESTS}; do
for should_fail in 0 1; do for should_fail in 0 1; do
RET=0 RET=0
target=$(${current_test}_get_target "$should_fail") 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 ${current_test}_setup_prepare
setup_wait $num_netifs setup_wait $num_netifs
# Update target in case occupancy of a certain resource # Update target in case occupancy of a certain resource
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment