Message ID | 20241210233541.1401837-1-vladimir.oltean@nxp.com (mailing list archive) |
---|---|
State | Accepted |
Commit | a3b16198d3df38aa2fc6de167b919ecb3fae74a6 |
Delegated to: | Netdev Maintainers |
Headers | show |
Series | [net-next] selftests: forwarding: add a pvid_change test to bridge_vlan_unaware | expand |
Hello: This patch was applied to netdev/net-next.git (main) by Paolo Abeni <pabeni@redhat.com>: On Wed, 11 Dec 2024 01:35:40 +0200 you wrote: > Historically, DSA drivers have seen problems with the model in which > bridge VLANs work, particularly with them being offloaded to switchdev > asynchronously relative to when they become active (vlan_filtering=1). > > This switchdev API peculiarity was papered over by commit 2ea7a679ca2a > ("net: dsa: Don't add vlans when vlan filtering is disabled"), which > introduced other problems, fixed by commit 54a0ed0df496 ("net: dsa: > provide an option for drivers to always receive bridge VLANs") through > an opt-in ds->configure_vlan_while_not_filtering bool (which later > became an opt-out). > > [...] Here is the summary with links: - [net-next] selftests: forwarding: add a pvid_change test to bridge_vlan_unaware https://git.kernel.org/netdev/net-next/c/a3b16198d3df You are awesome, thank you!
diff --git a/tools/testing/selftests/net/forwarding/bridge_vlan_unaware.sh b/tools/testing/selftests/net/forwarding/bridge_vlan_unaware.sh index 1c8a26046589..2b5700b61ffa 100755 --- a/tools/testing/selftests/net/forwarding/bridge_vlan_unaware.sh +++ b/tools/testing/selftests/net/forwarding/bridge_vlan_unaware.sh @@ -1,7 +1,7 @@ #!/bin/bash # SPDX-License-Identifier: GPL-2.0 -ALL_TESTS="ping_ipv4 ping_ipv6 learning flooding" +ALL_TESTS="ping_ipv4 ping_ipv6 learning flooding pvid_change" NUM_NETIFS=4 source lib.sh @@ -77,12 +77,16 @@ cleanup() ping_ipv4() { - ping_test $h1 192.0.2.2 + local msg=$1 + + ping_test $h1 192.0.2.2 "$msg" } ping_ipv6() { - ping6_test $h1 2001:db8:1::2 + local msg=$1 + + ping6_test $h1 2001:db8:1::2 "$msg" } learning() @@ -95,6 +99,21 @@ flooding() flood_test $swp2 $h1 $h2 } +pvid_change() +{ + # Test that the changing of the VLAN-aware PVID does not affect + # VLAN-unaware forwarding + bridge vlan add vid 3 dev $swp1 pvid untagged + + ping_ipv4 " with bridge port $swp1 PVID changed" + ping_ipv6 " with bridge port $swp1 PVID changed" + + bridge vlan del vid 3 dev $swp1 + + ping_ipv4 " with bridge port $swp1 PVID deleted" + ping_ipv6 " with bridge port $swp1 PVID deleted" +} + trap cleanup EXIT setup_prepare