selftests: forwarding: lib: Extract trap_{, un}install()
A mirror-to-vlan test that's coming next needs to install the trap
unconditionally. Therefore extract from slow_path_trap_{,un}install()
a more generic functions trap_install() and trap_uninstall(), and covert
the former two to conditional wrappers around these.
Signed-off-by: Petr Machata <petrm@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
diff --git a/tools/testing/selftests/net/forwarding/lib.sh b/tools/testing/selftests/net/forwarding/lib.sh
index 63641ad..89ba4cd 100644
--- a/tools/testing/selftests/net/forwarding/lib.sh
+++ b/tools/testing/selftests/net/forwarding/lib.sh
@@ -448,26 +448,35 @@
return 0
}
-slow_path_trap_install()
+trap_install()
{
local dev=$1; shift
local direction=$1; shift
+ # For slow-path testing, we need to install a trap to get to
+ # slow path the packets that would otherwise be switched in HW.
+ tc filter add dev $dev $direction pref 1 flower skip_sw action trap
+}
+
+trap_uninstall()
+{
+ local dev=$1; shift
+ local direction=$1; shift
+
+ tc filter del dev $dev $direction pref 1 flower skip_sw
+}
+
+slow_path_trap_install()
+{
if [ "${tcflags/skip_hw}" != "$tcflags" ]; then
- # For slow-path testing, we need to install a trap to get to
- # slow path the packets that would otherwise be switched in HW.
- tc filter add dev $dev $direction pref 1 \
- flower skip_sw action trap
+ trap_install "$@"
fi
}
slow_path_trap_uninstall()
{
- local dev=$1; shift
- local direction=$1; shift
-
if [ "${tcflags/skip_hw}" != "$tcflags" ]; then
- tc filter del dev $dev $direction pref 1 flower skip_sw
+ trap_uninstall "$@"
fi
}