selftests: forwarding: sch_tbf_*: Add a pre-run hook
authorPetr Machata <petrm@nvidia.com>
Tue, 18 Apr 2023 11:14:56 +0000 (14:14 +0300)
committerJakub Kicinski <kuba@kernel.org>
Fri, 21 Apr 2023 03:03:21 +0000 (20:03 -0700)
commit54e906f1639e195bcb52725aab6814e2af922540
tree39731bd81bad76f36f0b7cb23c465f175f5e2f50
parent35b288d6e3d467f6f7bf466fee6184b275999f14
selftests: forwarding: sch_tbf_*: Add a pre-run hook

The driver-specific wrappers of these selftests invoke bail_on_lldpad to
make sure that LLDPAD doesn't trample the configuration. The function
bail_on_lldpad is going to move to lib.sh in the next patch. With that, it
won't be visible for the wrappers before sourcing the framework script. And
after sourcing it, it is too late: the selftest will have run by then.

One option might be to source NUM_NETIFS=0 lib.sh from the wrapper, but
even if that worked (it might, it might not), that seems cumbersome. lib.sh
is doing fair amount of stuff, and even if it works today, it does not look
particularly solid as a solution.

Instead, introduce a hook, sch_tbf_pre_hook(), that when available, gets
invoked. Move the bail to the hook.

Signed-off-by: Petr Machata <petrm@nvidia.com>
Reviewed-by: Danielle Ratson <danieller@nvidia.com>
Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/testing/selftests/drivers/net/mlxsw/sch_tbf_ets.sh
tools/testing/selftests/drivers/net/mlxsw/sch_tbf_prio.sh
tools/testing/selftests/drivers/net/mlxsw/sch_tbf_root.sh
tools/testing/selftests/net/forwarding/sch_tbf_etsprio.sh
tools/testing/selftests/net/forwarding/sch_tbf_root.sh