mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-20 04:57:52 +07:00
mlxsw: spectrum: Make VLAN deletion function symmetric
Commit 05978481e7
("mlxsw: spectrum: Create PVID vPort before
registering netdevice") removed __mlxsw_sp_port_vlans_del() from the
init sequence of the driver, which forced it to be non-symmetric with
regards to __mlxsw_sp_port_vlans_add().
Make both functions symmetric as the constraint no longer exists.
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
1803e0fb7e
commit
f7a8f6cec3
@ -1008,14 +1008,6 @@ static int __mlxsw_sp_port_vlans_del(struct mlxsw_sp_port *mlxsw_sp_port,
|
||||
if (!mlxsw_sp_port->bridged)
|
||||
return -EINVAL;
|
||||
|
||||
err = __mlxsw_sp_port_vlans_set(mlxsw_sp_port, vid_begin, vid_end,
|
||||
false, false);
|
||||
if (err) {
|
||||
netdev_err(dev, "Unable to del VIDs %d-%d\n", vid_begin,
|
||||
vid_end);
|
||||
return err;
|
||||
}
|
||||
|
||||
pvid = mlxsw_sp_port->pvid;
|
||||
if (pvid >= vid_begin && pvid <= vid_end) {
|
||||
err = mlxsw_sp_port_pvid_set(mlxsw_sp_port, 0);
|
||||
@ -1025,6 +1017,14 @@ static int __mlxsw_sp_port_vlans_del(struct mlxsw_sp_port *mlxsw_sp_port,
|
||||
}
|
||||
}
|
||||
|
||||
err = __mlxsw_sp_port_vlans_set(mlxsw_sp_port, vid_begin, vid_end,
|
||||
false, false);
|
||||
if (err) {
|
||||
netdev_err(dev, "Unable to del VIDs %d-%d\n", vid_begin,
|
||||
vid_end);
|
||||
return err;
|
||||
}
|
||||
|
||||
mlxsw_sp_port_fid_leave(mlxsw_sp_port, vid_begin, vid_end);
|
||||
|
||||
/* Changing activity bits only if HW operation succeded */
|
||||
|
Loading…
Reference in New Issue
Block a user