net: dsa: mv88e6xxx: Avoid useless attempts to fast-age LAGs
When a port is a part of a LAG, the ATU will create dynamic entries belonging to the LAG ID when learning is enabled. So trying to fast-age those out using the constituent port will have no effect. Unfortunately the hardware does not support move operations on LAGs so there is no obvious way to transform the request to target the LAG instead. Instead we document this known limitation and at least avoid wasting any time on it. Signed-off-by: Tobias Waldekranz <tobias@waldekranz.com> Reviewed-by: Vladimir Oltean <olteanv@gmail.com> Reviewed-by: Florian Fainelli <f.fainelli@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
cc76ce9e8d
commit
ffcec3f257
|
@ -1479,6 +1479,13 @@ static void mv88e6xxx_port_fast_age(struct dsa_switch *ds, int port)
|
|||
struct mv88e6xxx_chip *chip = ds->priv;
|
||||
int err;
|
||||
|
||||
if (dsa_to_port(ds, port)->lag_dev)
|
||||
/* Hardware is incapable of fast-aging a LAG through a
|
||||
* regular ATU move operation. Until we have something
|
||||
* more fancy in place this is a no-op.
|
||||
*/
|
||||
return;
|
||||
|
||||
mv88e6xxx_reg_lock(chip);
|
||||
err = mv88e6xxx_g1_atu_remove(chip, 0, port, false);
|
||||
mv88e6xxx_reg_unlock(chip);
|
||||
|
|
Loading…
Reference in New Issue