OSDN Git Service

selftests: mlxsw: Add a test for invalid locked bridge port configurations
authorIdo Schimmel <idosch@nvidia.com>
Tue, 8 Nov 2022 10:47:21 +0000 (11:47 +0100)
committerJakub Kicinski <kuba@kernel.org>
Thu, 10 Nov 2022 03:06:16 +0000 (19:06 -0800)
Test that locked bridge port configurations that are not supported by
mlxsw are rejected.

Signed-off-by: Ido Schimmel <idosch@nvidia.com>
Reviewed-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: Petr Machata <petrm@nvidia.com>
Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/testing/selftests/drivers/net/mlxsw/rtnetlink.sh

index 04f03ae..5e89657 100755 (executable)
@@ -34,6 +34,7 @@ ALL_TESTS="
        nexthop_obj_bucket_offload_test
        nexthop_obj_blackhole_offload_test
        nexthop_obj_route_offload_test
+       bridge_locked_port_test
        devlink_reload_test
 "
 NUM_NETIFS=2
@@ -917,6 +918,36 @@ nexthop_obj_route_offload_test()
        simple_if_fini $swp1 192.0.2.1/24 2001:db8:1::1/64
 }
 
+bridge_locked_port_test()
+{
+       RET=0
+
+       ip link add name br1 up type bridge vlan_filtering 0
+
+       ip link add link $swp1 name $swp1.10 type vlan id 10
+       ip link set dev $swp1.10 master br1
+
+       bridge link set dev $swp1.10 locked on
+       check_fail $? "managed to set locked flag on a VLAN upper"
+
+       ip link set dev $swp1.10 nomaster
+       ip link set dev $swp1 master br1
+
+       bridge link set dev $swp1 locked on
+       check_fail $? "managed to set locked flag on a bridge port that has a VLAN upper"
+
+       ip link del dev $swp1.10
+       bridge link set dev $swp1 locked on
+
+       ip link add link $swp1 name $swp1.10 type vlan id 10
+       check_fail $? "managed to configure a VLAN upper on a locked port"
+
+       log_test "bridge locked port"
+
+       ip link del dev $swp1.10 &> /dev/null
+       ip link del dev br1
+}
+
 devlink_reload_test()
 {
        # Test that after executing all the above configuration tests, a