selftests: mlxsw: extack: Test bridge creation with VXLAN
authorIdo Schimmel <idosch@mellanox.com>
Mon, 17 Feb 2020 14:29:37 +0000 (16:29 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 17 Feb 2020 22:42:53 +0000 (14:42 -0800)
Test that creation of a bridge (both VLAN-aware and VLAN-unaware) fails
with an extack when a VXLAN device with an unsupported configuration is
already enslaved to it.

Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Acked-by: Jiri Pirko <jiri@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
tools/testing/selftests/drivers/net/mlxsw/extack.sh

index d9e0262..d4e8e33 100755 (executable)
@@ -8,6 +8,7 @@ lib_dir=$(dirname $0)/../../../net/forwarding
 ALL_TESTS="
        netdev_pre_up_test
        vxlan_vlan_add_test
+       vxlan_bridge_create_test
 "
 NUM_NETIFS=2
 source $lib_dir/lib.sh
@@ -105,6 +106,37 @@ vxlan_vlan_add_test()
        ip link del dev br1
 }
 
+vxlan_bridge_create_test()
+{
+       RET=0
+
+       # Unsupported configuration: mlxsw demands VXLAN with "noudpcsum".
+       ip link add name vx1 up type vxlan id 1000 \
+               local 192.0.2.17 remote 192.0.2.18 \
+               dstport 4789 tos inherit ttl 100
+
+       # Test with VLAN-aware bridge.
+       ip link add name br1 up type bridge vlan_filtering 1 mcast_snooping 0
+
+       ip link set dev vx1 master br1
+
+       ip link set dev $swp1 master br1 2>&1 > /dev/null \
+               | grep -q mlxsw_spectrum
+       check_err $?
+
+       # Test with VLAN-unaware bridge.
+       ip link set dev br1 type bridge vlan_filtering 0
+
+       ip link set dev $swp1 master br1 2>&1 > /dev/null \
+               | grep -q mlxsw_spectrum
+       check_err $?
+
+       log_test "extack - bridge creation with VXLAN"
+
+       ip link del dev br1
+       ip link del dev vx1
+}
+
 trap cleanup EXIT
 
 setup_prepare