Instead of inlining equivalents, use lib.sh-provided primitives. Use defer to manage vx lifetime.
This will make it easier to extend the test in the next patch.
Signed-off-by: Petr Machata petrm@nvidia.com Reviewed-by: Ido Schimmel idosch@nvidia.com Reviewed-by: Nikolay Aleksandrov razor@blackwall.org ---
Notes: CC: Simon Horman horms@kernel.org CC: Shuah Khan shuah@kernel.org CC: linux-kselftest@vger.kernel.org
.../net/test_vxlan_fdb_changelink.sh | 39 ++++++++++++------- 1 file changed, 24 insertions(+), 15 deletions(-)
diff --git a/tools/testing/selftests/net/test_vxlan_fdb_changelink.sh b/tools/testing/selftests/net/test_vxlan_fdb_changelink.sh index 2d442cdab11e..6f2bca4b346c 100755 --- a/tools/testing/selftests/net/test_vxlan_fdb_changelink.sh +++ b/tools/testing/selftests/net/test_vxlan_fdb_changelink.sh @@ -1,29 +1,38 @@ #!/bin/bash # SPDX-License-Identifier: GPL-2.0
-# Check FDB default-remote handling across "ip link set". +ALL_TESTS=" + test_set_remote +" +source lib.sh
check_remotes() { local what=$1; shift local N=$(bridge fdb sh dev vx | grep 00:00:00:00:00:00 | wc -l)
- echo -ne "expected two remotes after $what\t" - if [[ $N != 2 ]]; then - echo "[FAIL]" - EXIT_STATUS=1 - else - echo "[ OK ]" - fi + ((N == 2)) + check_err $? "expected 2 remotes after $what, got $N" }
-ip link add name vx up type vxlan id 2000 dstport 4789 -bridge fdb ap dev vx 00:00:00:00:00:00 dst 192.0.2.20 self permanent -bridge fdb ap dev vx 00:00:00:00:00:00 dst 192.0.2.30 self permanent -check_remotes "fdb append" +# Check FDB default-remote handling across "ip link set". +test_set_remote() +{ + RET=0
-ip link set dev vx type vxlan remote 192.0.2.30 -check_remotes "link set" + ip_link_add vx up type vxlan id 2000 dstport 4789 + bridge fdb ap dev vx 00:00:00:00:00:00 dst 192.0.2.20 self permanent + bridge fdb ap dev vx 00:00:00:00:00:00 dst 192.0.2.30 self permanent + check_remotes "fdb append" + + ip link set dev vx type vxlan remote 192.0.2.30 + check_remotes "link set" + + log_test 'FDB default-remote handling across "ip link set"' +} + +trap defer_scopes_cleanup EXIT + +tests_run
-ip link del dev vx exit $EXIT_STATUS
linux-kselftest-mirror@lists.linaro.org