mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-02 03:57:34 -04:00
mlxsw: spectrum: Delete RIF when VLAN device is removed
In commit602b74eda8("mlxsw: spectrum_switchdev: Do not leak RIFs when removing bridge") I handled the case where RIFs created for VLAN devices were not properly cleaned up when their real device (a bridge) was removed. However, I forgot to handle the case of the VLAN device itself being removed. Do so now when the VLAN device is being unlinked from its real device. Fixes:99f44bb352("mlxsw: spectrum: Enable L3 interfaces on top of bridge devices") Signed-off-by: Ido Schimmel <idosch@mellanox.com> Reviewed-by: Jiri Pirko <jiri@mellanox.com> Reported-by: Artem Shvorin <art@qrator.net> Tested-by: Artem Shvorin <art@qrator.net> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
f3c84a8e3e
commit
c360867ec4
@@ -4845,6 +4845,8 @@ static int mlxsw_sp_netdevice_bridge_event(struct net_device *br_dev,
|
||||
upper_dev = info->upper_dev;
|
||||
if (info->linking)
|
||||
break;
|
||||
if (is_vlan_dev(upper_dev))
|
||||
mlxsw_sp_rif_destroy_by_dev(mlxsw_sp, upper_dev);
|
||||
if (netif_is_macvlan(upper_dev))
|
||||
mlxsw_sp_rif_macvlan_del(mlxsw_sp, upper_dev);
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user