Skip to content

Commit f72f2fb

Browse files
LGA1150kuba-moo
authored andcommitted
net: dsa: mv88e6xxx: override existent unicast portvec in port_fdb_add
Having multiple destination ports for a unicast address does not make sense. Make port_db_load_purge override existent unicast portvec instead of adding a new port bit. Fixes: 8847293 ("net: dsa: mv88e6xxx: handle multiple ports in ATU") Signed-off-by: DENG Qingfang <[email protected]> Reviewed-by: Vladimir Oltean <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Jakub Kicinski <[email protected]>
1 parent eb4e8fa commit f72f2fb

File tree

1 file changed

+5
-1
lines changed
  • drivers/net/dsa/mv88e6xxx

1 file changed

+5
-1
lines changed

drivers/net/dsa/mv88e6xxx/chip.c

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1676,7 +1676,11 @@ static int mv88e6xxx_port_db_load_purge(struct mv88e6xxx_chip *chip, int port,
16761676
if (!entry.portvec)
16771677
entry.state = 0;
16781678
} else {
1679-
entry.portvec |= BIT(port);
1679+
if (state == MV88E6XXX_G1_ATU_DATA_STATE_UC_STATIC)
1680+
entry.portvec = BIT(port);
1681+
else
1682+
entry.portvec |= BIT(port);
1683+
16801684
entry.state = state;
16811685
}
16821686

0 commit comments

Comments
 (0)