Commit 30482e4e authored by Egil Hjelmeland's avatar Egil Hjelmeland Committed by David S. Miller

net: dsa: lan9303: Fix lan9303_alr_del_port()

Fix embarrassing bug in lan9303_alr_del_port(): Instead of zeroing
entr->mac_addr, I destroyed the next cache entry. Affected .port_fdb_del and
.port_mdb_del.

Fixes: 0620427e ("net: dsa: lan9303: Add fdb/mdb manipulation")
Signed-off-by: default avatarEgil Hjelmeland <privat@egil-hjelmeland.no>
Reviewed-by: default avatarVivien Didelot <vivien.didelot@savoirfairelinux.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent fdae5f37
...@@ -719,7 +719,7 @@ static int lan9303_alr_del_port(struct lan9303 *chip, const u8 *mac, int port) ...@@ -719,7 +719,7 @@ static int lan9303_alr_del_port(struct lan9303 *chip, const u8 *mac, int port)
entr->port_map &= ~BIT(port); entr->port_map &= ~BIT(port);
if (entr->port_map == 0) /* zero means its free again */ if (entr->port_map == 0) /* zero means its free again */
eth_zero_addr(&entr->port_map); eth_zero_addr(entr->mac_addr);
lan9303_alr_set_entry(chip, mac, entr->port_map, entr->stp_override); lan9303_alr_set_entry(chip, mac, entr->port_map, entr->stp_override);
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment