[SRU][F:linux-bluefield][PATCH v2 0/1] UBUNTU: SAUCE: mlxbf_gige: clear valid_polarity upon open
David Thompson
davthompson at nvidia.com
Wed Sep 8 15:57:21 UTC 2021
BugLink: https://bugs.launchpad.net/bugs/1942932
SRU Justification:
[Impact]
* The oob_net0 interface, managed by the mlxbf_gige driver, will be
up and enabled but can stop processing received packets 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 oob_net0" 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"
Without this fix, the driver needs to be unloaded and re-loaded
to correct this condition.
[Fix]
* The fix is to ensure that the driver's "valid_polarity" field
is cleared during the open() method so that it always matches
the receive polarity used by hardware.
[Test Case]
* To test this fix, need to send in a specific number of packets to
the "oob_net0" interface, then issue "ifconfig oob_net0 down" to
disable the interface. A subsequent "ifconfig oob_net0 up" command
will succesfully bring up the "oob_net0" interface and start the
processing of received packets.
[Regression Potential]
* There is low risk of this fix causing any problems.
[Other]
* n/a
David Thompson (1):
UBUNTU: SAUCE: mlxbf_gige: clear valid_polarity upon open
drivers/net/ethernet/mellanox/mlxbf_gige/mlxbf_gige_main.c | 7 +++++++
1 file changed, 7 insertions(+)
--
2.30.1
More information about the kernel-team
mailing list