selftests: Clean forgotten resources as part of cleanup()
authorAmit Cohen <amcohen@nvidia.com>
Tue, 8 Jun 2021 12:44:09 +0000 (15:44 +0300)
committerDavid S. Miller <davem@davemloft.net>
Tue, 8 Jun 2021 21:39:07 +0000 (14:39 -0700)
Several tests do not set some ports down as part of their cleanup(),
resulting in IPv6 link-local addresses and associated routes not being
deleted.

These leaks were found using a BPF tool that monitors ASIC resources.

Solve this by setting the ports down at the end of the tests.

Signed-off-by: Amit Cohen <amcohen@nvidia.com>
Reviewed-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: Ido Schimmel <idosch@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
tools/testing/selftests/drivers/net/mlxsw/devlink_trap_l3_drops.sh
tools/testing/selftests/drivers/net/mlxsw/devlink_trap_l3_exceptions.sh
tools/testing/selftests/drivers/net/mlxsw/qos_dscp_bridge.sh
tools/testing/selftests/net/forwarding/pedit_dsfield.sh
tools/testing/selftests/net/forwarding/pedit_l4port.sh
tools/testing/selftests/net/forwarding/skbedit_priority.sh

index 4029833f7e271e9008bd0d005e17b6d69c8a3de8..160891dcb4bcbba0fb0f5acc901c2e179fb808df 100755 (executable)
@@ -109,6 +109,9 @@ router_destroy()
        __addr_add_del $rp1 del 192.0.2.2/24 2001:db8:1::2/64
 
        tc qdisc del dev $rp2 clsact
+
+       ip link set dev $rp2 down
+       ip link set dev $rp1 down
 }
 
 setup_prepare()
index 42d44e27802cd679a690ecda012329a3c960bc0e..190c1b6b5365a2c64585544a0c43b18c863b5f2c 100755 (executable)
@@ -111,6 +111,9 @@ router_destroy()
        __addr_add_del $rp1 del 192.0.2.2/24 2001:db8:1::2/64
 
        tc qdisc del dev $rp2 clsact
+
+       ip link set dev $rp2 down
+       ip link set dev $rp1 down
 }
 
 setup_prepare()
index 5cbff8038f84cb8e4d4ab3290ac90ebdc762c64b..28a570006d4d9b4c844d1767e7d6b68b9f4328c4 100755 (executable)
@@ -93,7 +93,9 @@ switch_destroy()
        lldptool -T -i $swp1 -V APP -d $(dscp_map 10) >/dev/null
        lldpad_app_wait_del
 
+       ip link set dev $swp2 down
        ip link set dev $swp2 nomaster
+       ip link set dev $swp1 down
        ip link set dev $swp1 nomaster
        ip link del dev br1
 }
index 55eeacf592411bd905411efab7934f3a88b6b4aa..64fbd211d907b071c7e5d1566e51d94ca89f8c99 100755 (executable)
@@ -75,7 +75,9 @@ switch_destroy()
        tc qdisc del dev $swp2 clsact
        tc qdisc del dev $swp1 clsact
 
+       ip link set dev $swp2 down
        ip link set dev $swp2 nomaster
+       ip link set dev $swp1 down
        ip link set dev $swp1 nomaster
        ip link del dev br1
 }
index 5f20d289ee43cf2622defaf744243f4920d9c87e..10e594c551175b5b7ade331b9d5f345bb1b25d08 100755 (executable)
@@ -71,7 +71,9 @@ switch_destroy()
        tc qdisc del dev $swp2 clsact
        tc qdisc del dev $swp1 clsact
 
+       ip link set dev $swp2 down
        ip link set dev $swp2 nomaster
+       ip link set dev $swp1 down
        ip link set dev $swp1 nomaster
        ip link del dev br1
 }
index e3bd8a6bb8b40a1cdad6e4dd3ee588ffe75e3bd9..bde11dc27873c9a0bace7ed6ebb0c8e38b49bf32 100755 (executable)
@@ -72,7 +72,9 @@ switch_destroy()
        tc qdisc del dev $swp2 clsact
        tc qdisc del dev $swp1 clsact
 
+       ip link set dev $swp2 down
        ip link set dev $swp2 nomaster
+       ip link set dev $swp1 down
        ip link set dev $swp1 nomaster
        ip link del dev br1
 }