mirror of
https://github.com/FEX-Emu/linux.git
synced 2025-01-22 18:42:01 +00:00
mlxsw: spectrum: Use correct PVID value when removing VLANs
When removing a range of VLANs in which PVID is a member we should use the correct PVID value instead of some VLAN in the range. Also, change two print statements to use 'dev' instead of 'mlxsw_sp_port->dev', as it's already used in other print statements in the function. Signed-off-by: Ido Schimmel <idosch@mellanox.com> Signed-off-by: Jiri Pirko <jiri@mellanox.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
f99bf205da
commit
06c071f68d
@ -532,7 +532,7 @@ static int __mlxsw_sp_port_vlans_del(struct mlxsw_sp_port *mlxsw_sp_port,
|
||||
u16 vid_begin, u16 vid_end, bool init)
|
||||
{
|
||||
struct net_device *dev = mlxsw_sp_port->dev;
|
||||
u16 vid, vid_e;
|
||||
u16 vid, vid_e, pvid;
|
||||
int err;
|
||||
|
||||
/* In case this is invoked with BRIDGE_FLAGS_SELF and port is
|
||||
@ -549,23 +549,21 @@ static int __mlxsw_sp_port_vlans_del(struct mlxsw_sp_port *mlxsw_sp_port,
|
||||
err = mlxsw_sp_port_vlan_set(mlxsw_sp_port, vid, vid_e, false,
|
||||
false);
|
||||
if (err) {
|
||||
netdev_err(mlxsw_sp_port->dev, "Unable to del VIDs %d-%d\n",
|
||||
vid, vid_e);
|
||||
netdev_err(dev, "Unable to del VIDs %d-%d\n", vid,
|
||||
vid_e);
|
||||
return err;
|
||||
}
|
||||
}
|
||||
|
||||
if ((mlxsw_sp_port->pvid >= vid_begin) &&
|
||||
(mlxsw_sp_port->pvid <= vid_end)) {
|
||||
pvid = mlxsw_sp_port->pvid;
|
||||
if (pvid >= vid_begin && pvid <= vid_end && pvid != 1) {
|
||||
/* Default VLAN is always 1 */
|
||||
mlxsw_sp_port->pvid = 1;
|
||||
err = mlxsw_sp_port_pvid_set(mlxsw_sp_port,
|
||||
mlxsw_sp_port->pvid);
|
||||
err = mlxsw_sp_port_pvid_set(mlxsw_sp_port, 1);
|
||||
if (err) {
|
||||
netdev_err(mlxsw_sp_port->dev, "Unable to del PVID %d\n",
|
||||
vid);
|
||||
netdev_err(dev, "Unable to del PVID %d\n", pvid);
|
||||
return err;
|
||||
}
|
||||
mlxsw_sp_port->pvid = 1;
|
||||
}
|
||||
|
||||
if (init)
|
||||
|
Loading…
x
Reference in New Issue
Block a user