WSL2-Linux-Kernel/drivers/net/ethernet/mellanox
David Thompson 5e4d2efaae mlxbf_gige: disable RX filters until RX path initialized
[ Upstream commit df934abb185c71c9f2fa07a5013672d0cbd36560 ]

A recent change to the driver exposed a bug where the MAC RX
filters (unicast MAC, broadcast MAC, and multicast MAC) are
configured and enabled before the RX path is fully initialized.
The result of this bug is that after the PHY is started packets
that match these MAC RX filters start to flow into the RX FIFO.
And then, after rx_init() is completed, these packets will go
into the driver RX ring as well. If enough packets are received
to fill the RX ring (default size is 128 packets) before the call
to request_irq() completes, the driver RX function becomes stuck.

This bug is intermittent but is most likely to be seen where the
oob_net0 interface is connected to a busy network with lots of
broadcast and multicast traffic.

All the MAC RX filters must be disabled until the RX path is ready,
i.e. all initialization is done and all the IRQs are installed.

Fixes: f7442a634ac0 ("mlxbf_gige: call request_irq() after NAPI initialized")
Reviewed-by: Asmaa Mnebhi <asmaa@nvidia.com>
Signed-off-by: David Thompson <davthompson@nvidia.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20240809163612.12852-1-davthompson@nvidia.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-09-04 13:23:19 +02:00
..
mlx4 net/mlx4: Check retval of mlx4_bitmap_init 2022-12-02 17:41:05 +01:00
mlx5/core net/mlx5e: Correctly report errors for ethtool rx flows 2024-09-04 13:23:18 +02:00
mlxbf_gige mlxbf_gige: disable RX filters until RX path initialized 2024-09-04 13:23:19 +02:00
mlxfw mlxfw: fix null-ptr-deref in mlxfw_mfa2_tlv_next() 2023-04-26 13:51:49 +02:00
mlxsw mlxsw: spectrum_acl: Fix ACL scale regression and firmware errors 2024-08-19 05:44:57 +02:00
Kconfig Add Mellanox BlueField Gigabit Ethernet driver 2021-06-25 11:20:23 -07:00
Makefile Add Mellanox BlueField Gigabit Ethernet driver 2021-06-25 11:20:23 -07:00