net: ethernet: ti: cpsw: unsync mcast entries while switch promisc mode
authorIvan Khoronzhuk <ivan.khoronzhuk@linaro.org>
Mon, 22 Oct 2018 18:51:36 +0000 (21:51 +0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 1 Dec 2019 08:13:45 +0000 (09:13 +0100)
commit5de459c874400367ce17da43e7f0b11e5c7f24cd
treeb7e25196819ea682c384a226842c3ba5773dc02c
parentdd99b3b9d60e79c068e0f37c8c3e2fa00a66c123
net: ethernet: ti: cpsw: unsync mcast entries while switch promisc mode

[ Upstream commit 9737cc99dd14b5b8b9d267618a6061feade8ea68 ]

After flushing all mcast entries from the table, the ones contained in
mc list of ndev are not restored when promisc mode is toggled off,
because they are considered as synched with ALE, thus, in order to
restore them after promisc mode - reset syncing info. This fix
touches only switch mode devices, including single port boards
like Beagle Bone.

Fixes: commit 5da1948969bc
("net: ethernet: ti: cpsw: fix lost of mcast packets while rx_mode update")

Signed-off-by: Ivan Khoronzhuk <ivan.khoronzhuk@linaro.org>
Reviewed-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/ti/cpsw.c