mbox series

[SRU,F:linux-bluefield,v2,0/1] UBUNTU: SAUCE: mlxbf_gige: clear valid_polarity upon open

Message ID cover.1631113390.git.davthompson@nvidia.com
Headers show
Series UBUNTU: SAUCE: mlxbf_gige: clear valid_polarity upon open | expand

Message

David Thompson Sept. 8, 2021, 3:57 p.m. UTC
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(+)

Comments

Tim Gardner Sept. 8, 2021, 4:59 p.m. UTC | #1
Acked-by: Tim Gardner <tim.gardner@canonical.com>

The '[Other]' info in the bug report is no longer accurate. The version 
will remain at 1.24.

On 9/8/21 9:57 AM, David Thompson wrote:
> 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(+)
>
Luke Nowakowski-Krijger Sept. 24, 2021, 6:10 p.m. UTC | #2
Applied to focal/linux-bluefield

Thanks!
- Luke

On Wed, Sep 8, 2021 at 8:57 AM David Thompson <davthompson@nvidia.com>
wrote:

> 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
>
>
> --
> kernel-team mailing list
> kernel-team@lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team
>