mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-05 02:21:52 +09:00
bridge: Don't insert unnecessary local fdb entry on changing mac address
[ Upstream commit0b148def40] The missing br_vlan_should_use() test caused creation of an unneeded local fdb entry on changing mac address of a bridge device when there is a vlan which is configured on a bridge port but not on the bridge device. Fixes:2594e9064a("bridge: vlan: add per-vlan struct and move to rhashtables") Signed-off-by: Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp> Acked-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
f946ceab11
commit
38f56354f4
@@ -278,6 +278,8 @@ void br_fdb_change_mac_address(struct net_bridge *br, const u8 *newaddr)
|
||||
* change from under us.
|
||||
*/
|
||||
list_for_each_entry(v, &vg->vlan_list, vlist) {
|
||||
if (!br_vlan_should_use(v))
|
||||
continue;
|
||||
f = __br_fdb_get(br, br->dev->dev_addr, v->vid);
|
||||
if (f && f->is_local && !f->dst)
|
||||
fdb_delete_local(br, NULL, f);
|
||||
|
||||
Reference in New Issue
Block a user