Commit 6b45432d authored by Petr Machata's avatar Petr Machata Committed by David S. Miller

selftests: forwarding: Test mirroring to deleted device

Tests that the mirroring code catches up with deletion of a mirrored-to
device.
Signed-off-by: default avatarPetr Machata <petrm@mellanox.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent d624613e
......@@ -12,6 +12,7 @@ ALL_TESTS="
test_tun_up
test_egress_up
test_remote_ip
test_tun_del
"
NUM_NETIFS=6
......@@ -159,6 +160,35 @@ test_span_gre_remote_ip()
log_test "$what: remote address change ($tcflags)"
}
test_span_gre_tun_del()
{
local tundev=$1; shift
local type=$1; shift
local flags=$1; shift
local local_ip=$1; shift
local remote_ip=$1; shift
local what=$1; shift
RET=0
mirror_install $swp1 ingress $tundev "matchall $tcflags"
quick_test_span_gre_dir $tundev ingress
ip link del dev $tundev
fail_test_span_gre_dir $tundev ingress
tunnel_create $tundev $type $local_ip $remote_ip \
ttl 100 tos inherit $flags
# Recreating the tunnel doesn't reestablish mirroring, so reinstall it
# and verify it works for the follow-up tests.
mirror_uninstall $swp1 ingress
mirror_install $swp1 ingress $tundev "matchall $tcflags"
quick_test_span_gre_dir $tundev ingress
mirror_uninstall $swp1 ingress
log_test "$what: tunnel deleted ($tcflags)"
}
test_ttl()
{
test_span_gre_ttl gt4 gretap ip "mirror to gretap"
......@@ -183,6 +213,14 @@ test_remote_ip()
test_span_gre_remote_ip gt6 ip6gretap 2001:db8:2::2 2001:db8:2::4 "mirror to ip6gretap"
}
test_tun_del()
{
test_span_gre_tun_del gt4 gretap "" \
192.0.2.129 192.0.2.130 "mirror to gretap"
test_span_gre_tun_del gt6 ip6gretap allow-localremote \
2001:db8:2::1 2001:db8:2::2 "mirror to ip6gretap"
}
test_all()
{
slow_path_trap_install $swp1 ingress
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment