mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-05 02:21:52 +09:00
net: systemport: Fix reception of BPDUs
[ Upstream commit a40061ea2e ]
SYSTEMPORT has its RXCHK parser block that attempts to validate the
packet structures, unfortunately setting the L2 header check bit will
cause Bridge PDUs (BPDUs) to be incorrectly rejected because they look
like LLC/SNAP packets with a non-IPv4 or non-IPv6 Ethernet Type.
Fixes: 4e8aedfe78c7 ("net: systemport: Turn on offloads by default")
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
3491857f42
commit
d33f5a0feb
@@ -134,6 +134,10 @@ static int bcm_sysport_set_rx_csum(struct net_device *dev,
|
||||
|
||||
priv->rx_chk_en = !!(wanted & NETIF_F_RXCSUM);
|
||||
reg = rxchk_readl(priv, RXCHK_CONTROL);
|
||||
/* Clear L2 header checks, which would prevent BPDUs
|
||||
* from being received.
|
||||
*/
|
||||
reg &= ~RXCHK_L2_HDR_DIS;
|
||||
if (priv->rx_chk_en)
|
||||
reg |= RXCHK_EN;
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user