Most forwarding tests invoke simple_if_init() to set up a VRF-based "host"
and simple_if_fini() to tear it down again. Add a helper,
adf_simple_if_init(), which is like simple_if_fini(), but takes care of
scheduling the cleanup automatically.

Convert the tests that currently use defer to schedule the cleanup.

Signed-off-by: Petr Machata <[email protected]>
---

Notes:
CC: Andrew Lunn <[email protected]>
CC: Alessandro Zanni <[email protected]>
CC: Hangbin Liu <[email protected]>
CC: David Yang <[email protected]>
CC: Li Shuang <[email protected]>

 .../selftests/drivers/net/mlxsw/devlink_trap_policer.sh  | 6 ++----
 .../selftests/drivers/net/mlxsw/qos_ets_strict.sh        | 9 +++------
 .../selftests/drivers/net/mlxsw/qos_max_descriptors.sh   | 6 ++----
 .../testing/selftests/drivers/net/mlxsw/qos_mc_aware.sh  | 9 +++------
 .../testing/selftests/drivers/net/mlxsw/sch_red_core.sh  | 3 +--
 .../selftests/net/forwarding/bridge_activity_notify.sh   | 6 ++----
 .../selftests/net/forwarding/bridge_fdb_local_vlan_0.sh  | 8 ++------
 tools/testing/selftests/net/forwarding/lib.sh            | 6 ++++++
 tools/testing/selftests/net/forwarding/sch_ets_core.sh   | 6 ++----
 tools/testing/selftests/net/forwarding/sch_red.sh        | 9 +++------
 tools/testing/selftests/net/forwarding/sch_tbf_core.sh   | 3 +--
 .../selftests/net/forwarding/vxlan_bridge_1q_mc_ul.sh    | 6 ++----
 tools/testing/selftests/net/forwarding/vxlan_reserved.sh | 6 ++----
 13 files changed, 31 insertions(+), 52 deletions(-)

diff --git a/tools/testing/selftests/drivers/net/mlxsw/devlink_trap_policer.sh 
b/tools/testing/selftests/drivers/net/mlxsw/devlink_trap_policer.sh
index 6cb5a7a7438b..e212ad8ccef6 100755
--- a/tools/testing/selftests/drivers/net/mlxsw/devlink_trap_policer.sh
+++ b/tools/testing/selftests/drivers/net/mlxsw/devlink_trap_policer.sh
@@ -44,8 +44,7 @@ source $lib_dir/devlink_lib.sh
 
 h1_create()
 {
-       simple_if_init $h1 192.0.2.1/24
-       defer simple_if_fini $h1 192.0.2.1/24
+       adf_simple_if_init $h1 192.0.2.1/24
 
        mtu_set $h1 10000
        defer mtu_restore $h1
@@ -56,8 +55,7 @@ h1_create()
 
 h2_create()
 {
-       simple_if_init $h2 198.51.100.1/24
-       defer simple_if_fini $h2 198.51.100.1/24
+       adf_simple_if_init $h2 198.51.100.1/24
 
        mtu_set $h2 10000
        defer mtu_restore $h2
diff --git a/tools/testing/selftests/drivers/net/mlxsw/qos_ets_strict.sh 
b/tools/testing/selftests/drivers/net/mlxsw/qos_ets_strict.sh
index ed217eb63cc7..9ca340c5f3a6 100755
--- a/tools/testing/selftests/drivers/net/mlxsw/qos_ets_strict.sh
+++ b/tools/testing/selftests/drivers/net/mlxsw/qos_ets_strict.sh
@@ -57,8 +57,7 @@ source qos_lib.sh
 
 h1_create()
 {
-       simple_if_init $h1
-       defer simple_if_fini $h1
+       adf_simple_if_init $h1
 
        mtu_set $h1 10000
        defer mtu_restore $h1
@@ -70,8 +69,7 @@ h1_create()
 
 h2_create()
 {
-       simple_if_init $h2
-       defer simple_if_fini $h2
+       adf_simple_if_init $h2
 
        mtu_set $h2 10000
        defer mtu_restore $h2
@@ -83,8 +81,7 @@ h2_create()
 
 h3_create()
 {
-       simple_if_init $h3
-       defer simple_if_fini $h3
+       adf_simple_if_init $h3
 
        mtu_set $h3 10000
        defer mtu_restore $h3
diff --git a/tools/testing/selftests/drivers/net/mlxsw/qos_max_descriptors.sh 
b/tools/testing/selftests/drivers/net/mlxsw/qos_max_descriptors.sh
index d10df3a19300..a4a25637fe2a 100755
--- a/tools/testing/selftests/drivers/net/mlxsw/qos_max_descriptors.sh
+++ b/tools/testing/selftests/drivers/net/mlxsw/qos_max_descriptors.sh
@@ -68,8 +68,7 @@ mlxsw_only_on_spectrum 2+ || exit
 
 h1_create()
 {
-       simple_if_init $h1
-       defer simple_if_fini $h1
+       adf_simple_if_init $h1
 
        vlan_create $h1 111 v$h1 192.0.2.33/28
        defer vlan_destroy $h1 111
@@ -78,8 +77,7 @@ h1_create()
 
 h2_create()
 {
-       simple_if_init $h2
-       defer simple_if_fini $h2
+       adf_simple_if_init $h2
 
        vlan_create $h2 111 v$h2 192.0.2.34/28
        defer vlan_destroy $h2 111
diff --git a/tools/testing/selftests/drivers/net/mlxsw/qos_mc_aware.sh 
b/tools/testing/selftests/drivers/net/mlxsw/qos_mc_aware.sh
index 6aca01ebb1ee..d8f8ae8533cd 100755
--- a/tools/testing/selftests/drivers/net/mlxsw/qos_mc_aware.sh
+++ b/tools/testing/selftests/drivers/net/mlxsw/qos_mc_aware.sh
@@ -72,8 +72,7 @@ source qos_lib.sh
 
 h1_create()
 {
-       simple_if_init $h1 192.0.2.65/28
-       defer simple_if_fini $h1 192.0.2.65/28
+       adf_simple_if_init $h1 192.0.2.65/28
 
        mtu_set $h1 10000
        defer mtu_restore $h1
@@ -81,8 +80,7 @@ h1_create()
 
 h2_create()
 {
-       simple_if_init $h2
-       defer simple_if_fini $h2
+       adf_simple_if_init $h2
 
        mtu_set $h2 10000
        defer mtu_restore $h2
@@ -94,8 +92,7 @@ h2_create()
 
 h3_create()
 {
-       simple_if_init $h3 192.0.2.66/28
-       defer simple_if_fini $h3 192.0.2.66/28
+       adf_simple_if_init $h3 192.0.2.66/28
 
        mtu_set $h3 10000
        defer mtu_restore $h3
diff --git a/tools/testing/selftests/drivers/net/mlxsw/sch_red_core.sh 
b/tools/testing/selftests/drivers/net/mlxsw/sch_red_core.sh
index a88d61a84b98..47d2ffcf366e 100644
--- a/tools/testing/selftests/drivers/net/mlxsw/sch_red_core.sh
+++ b/tools/testing/selftests/drivers/net/mlxsw/sch_red_core.sh
@@ -100,8 +100,7 @@ host_create()
        local dev=$1; shift
        local host=$1; shift
 
-       simple_if_init $dev
-       defer simple_if_fini $dev
+       adf_simple_if_init $dev
 
        mtu_set $dev 10000
        defer mtu_restore $dev
diff --git a/tools/testing/selftests/net/forwarding/bridge_activity_notify.sh 
b/tools/testing/selftests/net/forwarding/bridge_activity_notify.sh
index afce1c964d5a..522a5b1b046c 100755
--- a/tools/testing/selftests/net/forwarding/bridge_activity_notify.sh
+++ b/tools/testing/selftests/net/forwarding/bridge_activity_notify.sh
@@ -26,14 +26,12 @@ source lib.sh
 
 h1_create()
 {
-       simple_if_init "$h1" 192.0.2.1/28
-       defer simple_if_fini "$h1" 192.0.2.1/28
+       adf_simple_if_init "$h1" 192.0.2.1/28
 }
 
 h2_create()
 {
-       simple_if_init "$h2" 192.0.2.2/28
-       defer simple_if_fini "$h2" 192.0.2.2/28
+       adf_simple_if_init "$h2" 192.0.2.2/28
 }
 
 switch_create()
diff --git a/tools/testing/selftests/net/forwarding/bridge_fdb_local_vlan_0.sh 
b/tools/testing/selftests/net/forwarding/bridge_fdb_local_vlan_0.sh
index 052b2f757ff0..78b6be513a2d 100755
--- a/tools/testing/selftests/net/forwarding/bridge_fdb_local_vlan_0.sh
+++ b/tools/testing/selftests/net/forwarding/bridge_fdb_local_vlan_0.sh
@@ -44,18 +44,14 @@ host_create()
        local ipv4=$1; shift
        local ipv6=$1; shift
 
-       simple_if_init "$h" "$ipv4" "$ipv6"
-       defer simple_if_fini "$h" "$ipv4" "$ipv6"
-
+       adf_simple_if_init "$h" "$ipv4" "$ipv6"
        adf_ip_route_add vrf "v$h" 192.0.2.16/28 nexthop via 192.0.2.3
        adf_ip_route_add vrf "v$h" 2001:db8:2::/64 nexthop via 2001:db8:1::3
 }
 
 h3_create()
 {
-       simple_if_init "$h3" 192.0.2.18/28 2001:db8:2::2/64
-       defer simple_if_fini "$h3" 192.0.2.18/28 2001:db8:2::2/64
-
+       adf_simple_if_init "$h3" 192.0.2.18/28 2001:db8:2::2/64
        adf_ip_route_add vrf "v$h3" 192.0.2.0/28 nexthop via 192.0.2.17
        adf_ip_route_add vrf "v$h3" 2001:db8:1::/64 nexthop via 2001:db8:2::1
 
diff --git a/tools/testing/selftests/net/forwarding/lib.sh 
b/tools/testing/selftests/net/forwarding/lib.sh
index 1370d7a32655..7d506cf81a32 100644
--- a/tools/testing/selftests/net/forwarding/lib.sh
+++ b/tools/testing/selftests/net/forwarding/lib.sh
@@ -717,6 +717,12 @@ simple_if_fini()
        vrf_destroy $vrf_name
 }
 
+adf_simple_if_init()
+{
+       simple_if_init "$@"
+       defer simple_if_fini "$@"
+}
+
 tunnel_create()
 {
        local name=$1; shift
diff --git a/tools/testing/selftests/net/forwarding/sch_ets_core.sh 
b/tools/testing/selftests/net/forwarding/sch_ets_core.sh
index f9d15b2f4615..0453210271dc 100644
--- a/tools/testing/selftests/net/forwarding/sch_ets_core.sh
+++ b/tools/testing/selftests/net/forwarding/sch_ets_core.sh
@@ -165,8 +165,7 @@ h1_create()
 {
        local i;
 
-       simple_if_init $h1
-       defer simple_if_fini $h1
+       adf_simple_if_init $h1
 
        mtu_set $h1 9900
        defer mtu_restore $h1
@@ -182,8 +181,7 @@ h2_create()
 {
        local i
 
-       simple_if_init $h2
-       defer simple_if_fini $h2
+       adf_simple_if_init $h2
 
        mtu_set $h2 9900
        defer mtu_restore $h2
diff --git a/tools/testing/selftests/net/forwarding/sch_red.sh 
b/tools/testing/selftests/net/forwarding/sch_red.sh
index 8f79a86cb15b..f2a3d9254642 100755
--- a/tools/testing/selftests/net/forwarding/sch_red.sh
+++ b/tools/testing/selftests/net/forwarding/sch_red.sh
@@ -52,8 +52,7 @@ PKTSZ=1400
 
 h1_create()
 {
-       simple_if_init $h1 192.0.2.1/28
-       defer simple_if_fini $h1 192.0.2.1/28
+       adf_simple_if_init $h1 192.0.2.1/28
 
        mtu_set $h1 10000
        defer mtu_restore $h1
@@ -65,8 +64,7 @@ h1_create()
 
 h2_create()
 {
-       simple_if_init $h2 192.0.2.2/28
-       defer simple_if_fini $h2 192.0.2.2/28
+       adf_simple_if_init $h2 192.0.2.2/28
 
        mtu_set $h2 10000
        defer mtu_restore $h2
@@ -74,8 +72,7 @@ h2_create()
 
 h3_create()
 {
-       simple_if_init $h3 192.0.2.3/28
-       defer simple_if_fini $h3 192.0.2.3/28
+       adf_simple_if_init $h3 192.0.2.3/28
 
        mtu_set $h3 10000
        defer mtu_restore $h3
diff --git a/tools/testing/selftests/net/forwarding/sch_tbf_core.sh 
b/tools/testing/selftests/net/forwarding/sch_tbf_core.sh
index bce9ab3cb24a..070c17faa9e4 100644
--- a/tools/testing/selftests/net/forwarding/sch_tbf_core.sh
+++ b/tools/testing/selftests/net/forwarding/sch_tbf_core.sh
@@ -59,8 +59,7 @@ host_create()
        local dev=$1; shift
        local host=$1; shift
 
-       simple_if_init $dev
-       defer simple_if_fini $dev
+       adf_simple_if_init $dev
 
        mtu_set $dev 10000
        defer mtu_restore $dev
diff --git a/tools/testing/selftests/net/forwarding/vxlan_bridge_1q_mc_ul.sh 
b/tools/testing/selftests/net/forwarding/vxlan_bridge_1q_mc_ul.sh
index 9beb5d512b8e..9974a93eb850 100755
--- a/tools/testing/selftests/net/forwarding/vxlan_bridge_1q_mc_ul.sh
+++ b/tools/testing/selftests/net/forwarding/vxlan_bridge_1q_mc_ul.sh
@@ -119,8 +119,7 @@ source lib.sh
 
 h1_create()
 {
-       simple_if_init "$h1"
-       defer simple_if_fini "$h1"
+       adf_simple_if_init "$h1"
 
        adf_ip_link_add "$h1.10" master "v$h1" link "$h1" type vlan id 10
        adf_ip_link_set_up "$h1.10"
@@ -311,8 +310,7 @@ ns_init_common()
        adf_bridge_vlan_add vid 20 dev w1
 
        # w2
-       simple_if_init w2
-       defer simple_if_fini w2
+       adf_simple_if_init w2
 
        # w2.10
        adf_ip_link_add w2.10 master vw2 link w2 type vlan id 10
diff --git a/tools/testing/selftests/net/forwarding/vxlan_reserved.sh 
b/tools/testing/selftests/net/forwarding/vxlan_reserved.sh
index c564d7a3af0b..712f3367ee5a 100755
--- a/tools/testing/selftests/net/forwarding/vxlan_reserved.sh
+++ b/tools/testing/selftests/net/forwarding/vxlan_reserved.sh
@@ -47,8 +47,7 @@ source lib.sh
 
 h1_create()
 {
-       simple_if_init $h1 192.0.2.1/28
-       defer simple_if_fini $h1 192.0.2.1/28
+       adf_simple_if_init $h1 192.0.2.1/28
 
        tc qdisc add dev $h1 clsact
        defer tc qdisc del dev $h1 clsact
@@ -76,8 +75,7 @@ switch_create()
 
 vrp2_create()
 {
-       simple_if_init $rp2 192.0.2.18/28
-       defer simple_if_fini $rp2 192.0.2.18/28
+       adf_simple_if_init $rp2 192.0.2.18/28
 }
 
 setup_prepare()
-- 
2.49.0


Reply via email to