linux/drivers/net/ethernet/mellanox
David Thompson ee8a9600b5 mlxbf_gige: clear valid_polarity upon open
The network interface managed by the mlxbf_gige driver can
get into a problem state where traffic does not flow.
In this state, the interface will be up and enabled, but
will stop processing received packets.  This problem state
will happen if three specific conditions occur:
    1) driver has received more than (N * RxRingSize) packets but
       less than (N+1 * RxRingSize) packets, where N is an odd number
       Note: the command "ethtool -g <interface>" will display the
       current receive ring size, which currently defaults to 128
    2) the driver's interface was disabled via "ifconfig oob_net0 down"
       during the window described in #1.
    3) the driver's interface is re-enabled via "ifconfig oob_net0 up"

This patch ensures that the driver's "valid_polarity" field is
cleared during the open() method so that it always matches the
receive polarity used by hardware.  Without this fix, the driver
needs to be unloaded and reloaded to correct this problem state.

Fixes: f92e1869d7 ("Add Mellanox BlueField Gigabit Ethernet driver")
Reviewed-by: Asmaa Mnebhi <asmaa@nvidia.com>
Signed-off-by: David Thompson <davthompson@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2021-09-16 14:31:58 +01:00
..
mlx4 ethtool: extend coalesce setting uAPI with CQE mode 2021-08-24 07:38:29 -07:00
mlx5/core net/{mlx5|nfp|bnxt}: Remove unnecessary RTNL lock assert 2021-09-16 14:09:30 +01:00
mlxbf_gige mlxbf_gige: clear valid_polarity upon open 2021-09-16 14:31:58 +01:00
mlxfw net/mlxfw: Use kzalloc for allocating only one thing 2021-01-05 16:01:02 -08:00
mlxsw mlxsw: spectrum_router: Increase parsing depth for multipath hash 2021-08-22 21:39:55 +01: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