Browse Source

selftests: forwarding: mirror_gre_vlan_bridge_1q: Unset rp_filter

The IP addresses of tunnel endpoint at H3 are set at the VLAN device
$h3.555. Therefore when test_gretap_untagged_egress() sets vlan 555 to
egress untagged at $swp3, $h3's rp_filter rejects these packets. The
test then spuriously fails.

Therefore turn off net.ipv4.conf.{all, $h3}.rp_filter.

Fixes: 9c7c8a82442c ("selftests: forwarding: mirror_gre_vlan_bridge_1q: Add more tests")
Signed-off-by: Petr Machata <petrm@mellanox.com>
Reviewed-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Petr Machata 7 years ago
parent
commit
27a2628b3c

+ 9 - 0
tools/testing/selftests/net/forwarding/mirror_gre_vlan_bridge_1q.sh

@@ -39,6 +39,12 @@ setup_prepare()
 	swp3=${NETIFS[p5]}
 	swp3=${NETIFS[p5]}
 	h3=${NETIFS[p6]}
 	h3=${NETIFS[p6]}
 
 
+	# gt4's remote address is at $h3.555, not $h3. Thus the packets arriving
+	# directly to $h3 for test_gretap_untagged_egress() are rejected by
+	# rp_filter and the test spuriously fails.
+	sysctl_set net.ipv4.conf.all.rp_filter 0
+	sysctl_set net.ipv4.conf.$h3.rp_filter 0
+
 	vrf_prepare
 	vrf_prepare
 	mirror_gre_topo_create
 	mirror_gre_topo_create
 
 
@@ -65,6 +71,9 @@ cleanup()
 
 
 	mirror_gre_topo_destroy
 	mirror_gre_topo_destroy
 	vrf_cleanup
 	vrf_cleanup
+
+	sysctl_restore net.ipv4.conf.$h3.rp_filter
+	sysctl_restore net.ipv4.conf.all.rp_filter
 }
 }
 
 
 test_vlan_match()
 test_vlan_match()