selftests: forwarding: lib: Add an autodefer variant of forwarding_enable()

Most forwarding tests invoke forwarding_enable() to enable the router and
forwarding_restore() to restore the original configuration. Add a helper,
adf_forwarding_enable(), which is like forwarding_enable(), but takes care
of scheduling the cleanup automatically.

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

Signed-off-by: Petr Machata <petrm@nvidia.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/78b752c40069cde21c44dcf4c7b966a76a0eef2c.1758821127.git.petrm@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Petr Machata 2025-09-25 19:31:55 +02:00 committed by Jakub Kicinski
parent f53748d56d
commit 040a6cbead
4 changed files with 9 additions and 9 deletions

View File

@ -95,9 +95,7 @@ setup_prepare()
h3=${NETIFS[p6]}
adf_vrf_prepare
forwarding_enable
defer forwarding_restore
adf_forwarding_enable
host_create "$h1" 192.0.2.1/28 2001:db8:1::1/64
host_create "$h2" 192.0.2.2/28 2001:db8:1::2/64

View File

@ -1023,6 +1023,12 @@ forwarding_restore()
sysctl_restore net.ipv4.conf.all.forwarding
}
adf_forwarding_enable()
{
forwarding_enable
defer forwarding_restore
}
declare -A MTU_ORIG
mtu_set()
{

View File

@ -370,9 +370,7 @@ setup_prepare()
h3=${NETIFS[p6]}
adf_vrf_prepare
forwarding_enable
defer forwarding_restore
adf_forwarding_enable
adf_ip_link_add "v1$h2" type veth peer name "v2$h2"
adf_ip_link_add "v1$h3" type veth peer name "v2$h3"

View File

@ -87,9 +87,7 @@ setup_prepare()
rp2=${NETIFS[p4]}
adf_vrf_prepare
forwarding_enable
defer forwarding_restore
adf_forwarding_enable
h1_create
switch_create