diff options
| author | Petr Machata <petrm@nvidia.com> | 2025-09-22 16:14:49 +0200 |
|---|---|---|
| committer | Jakub Kicinski <kuba@kernel.org> | 2025-09-23 17:10:49 -0700 |
| commit | f67e9ae72dd72ae37d186d68f7a9f9eb8082cd95 (patch) | |
| tree | c9bd68ab79b96385424e9bc7240bf51aa0b03747 /tools/testing/selftests | |
| parent | net: bridge: Install FDB for bridge MAC on VLAN 0 (diff) | |
| download | linux-f67e9ae72dd72ae37d186d68f7a9f9eb8082cd95.tar.gz linux-f67e9ae72dd72ae37d186d68f7a9f9eb8082cd95.zip | |
selftests: bridge_fdb_local_vlan_0: Test FDB vs. NET_ADDR_SET behavior
The previous patch fixed an issue whereby no FDB entry would be created for
the bridge itself on VLAN 0 under some circumstances. This could break
forwarding. Add a test for the fix.
Signed-off-by: Petr Machata <petrm@nvidia.com>
Acked-by: Nikolay Aleksandrov <razor@blackwall.org>
Link: https://patch.msgid.link/137cc25396f5a4f407267af895a14bc45552ba5f.1758550408.git.petrm@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'tools/testing/selftests')
| -rwxr-xr-x | tools/testing/selftests/net/forwarding/bridge_fdb_local_vlan_0.sh | 28 |
1 files changed, 24 insertions, 4 deletions
diff --git a/tools/testing/selftests/net/forwarding/bridge_fdb_local_vlan_0.sh b/tools/testing/selftests/net/forwarding/bridge_fdb_local_vlan_0.sh index 5a0b43aff5aa..65f74c46c2f3 100755 --- a/tools/testing/selftests/net/forwarding/bridge_fdb_local_vlan_0.sh +++ b/tools/testing/selftests/net/forwarding/bridge_fdb_local_vlan_0.sh @@ -27,6 +27,7 @@ ALL_TESTS=" test_d_sharing test_q_no_sharing test_q_sharing + test_addr_set " NUM_NETIFS=6 @@ -110,13 +111,10 @@ setup_prepare() switch_create } -adf_bridge_create() +adf_bridge_configure() { local dev - local mac - ip_link_add br up type bridge vlan_default_pvid 0 "$@" - mac=$(mac_get br) ip_addr_add br 192.0.2.3/28 ip_addr_add br 2001:db8:1::3/64 @@ -130,7 +128,15 @@ adf_bridge_create() bridge_vlan_add dev "$dev" vid 2 bridge_vlan_add dev "$dev" vid 3 done +} + +adf_bridge_create() +{ + local mac + ip_link_add br up type bridge vlan_default_pvid 0 "$@" + mac=$(mac_get br) + adf_bridge_configure ip_link_set_addr br "$mac" } @@ -367,6 +373,20 @@ test_q_sharing() do_test_sharing 1 } +adf_addr_set_bridge_create() +{ + ip_link_add br up type bridge vlan_filtering 0 + ip_link_set_addr br "$(mac_get br)" + adf_bridge_configure +} + +test_addr_set() +{ + adf_addr_set_bridge_create + setup_wait + + do_end_to_end_test "$(mac_get br)" "NET_ADDR_SET: end to end, br MAC" +} trap cleanup EXIT |
