Tests interrupted part-way through leave behind a running mausezahn. Use
defer to schedule a traffic stop after traffic is started.

Signed-off-by: Petr Machata <pe...@nvidia.com>
---
 tools/testing/selftests/net/forwarding/sch_tbf_core.sh | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tools/testing/selftests/net/forwarding/sch_tbf_core.sh 
b/tools/testing/selftests/net/forwarding/sch_tbf_core.sh
index 9cd884d4a5de..5d58c04e055c 100644
--- a/tools/testing/selftests/net/forwarding/sch_tbf_core.sh
+++ b/tools/testing/selftests/net/forwarding/sch_tbf_core.sh
@@ -213,12 +213,12 @@ do_tbf_test()
        local mbit=$1; shift
 
        start_traffic $h1.$vlan $(ipaddr 1 $vlan) $(ipaddr 2 $vlan) $h2_mac
+       defer stop_traffic
        sleep 5 # Wait for the burst to dwindle
 
        local t2=$(busywait_for_counter 1000 +1 tbf_get_counter $vlan)
        sleep 10
        local t3=$(tbf_get_counter $vlan)
-       stop_traffic
 
        RET=0
 
@@ -231,3 +231,4 @@ do_tbf_test()
 
        log_test "TC $((vlan - 10)): TBF rate ${mbit}Mbit"
 }
+defer_scoped_fn do_tbf_test
-- 
2.45.0


Reply via email to