From: Petr Machata Date: Mon, 22 Sep 2025 14:14:49 +0000 (+0200) Subject: selftests: bridge_fdb_local_vlan_0: Test FDB vs. NET_ADDR_SET behavior X-Git-Tag: v6.18-rc1~132^2~76 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=f67e9ae72dd72ae37d186d68f7a9f9eb8082cd95;p=thirdparty%2Flinux.git 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 Acked-by: Nikolay Aleksandrov Link: https://patch.msgid.link/137cc25396f5a4f407267af895a14bc45552ba5f.1758550408.git.petrm@nvidia.com Signed-off-by: Jakub Kicinski --- 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 5a0b43aff5aaf..65f74c46c2f38 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