mbox series

[0/8,B,SRU] add 8 BD limit for tx flow

Message ID 20200709073005.13674-1-ike.pan@canonical.com
Headers show
Series add 8 BD limit for tx flow | expand

Message

Ike Panhc July 9, 2020, 7:30 a.m. UTC
BugLink: https://launchpad.net/bugs/1859756

We have reports hns3 is down while iscsi and spark tests.
The first patch ("net: hns3: add 8 BD limit for tx flow")
is the fix but also need to cherry-pick patch d1a37dedcfcf
to fix a use-after-free issue introudcing by first fix.

To satisfy patch dependency and also several patches has
to be cherry-picked along way.

These patches are also available in the Git repository at:
  git://kernel.ubuntu.com/ikepanhc/public.git lp1859756.2

Peng Li (1):
  net: hns3: add 8 BD limit for tx flow

Yunsheng Lin (7):
  net: hns3: avoid mult + div op in critical data path
  net: hns3: remove some ops in struct hns3_nic_ops
  net: hns3: fix for not calculating tx bd num correctly
  net: hns3: unify maybe_stop_tx for TSO and non-TSO case
  net: hns3: add check for max TX BD num for tso and non-tso case
  net: hns3: fix for TX queue not restarted problem
  net: hns3: fix a use after free problem in hns3_nic_maybe_stop_tx()

 .../net/ethernet/hisilicon/hns3/hns3_enet.c   | 154 ++++++++----------
 .../net/ethernet/hisilicon/hns3/hns3_enet.h   |  15 +-
 .../ethernet/hisilicon/hns3/hns3_ethtool.c    |   1 +
 3 files changed, 78 insertions(+), 92 deletions(-)

Comments

Stefan Bader July 9, 2020, 8:32 a.m. UTC | #1
On 09.07.20 09:30, Ike Panhc wrote:
> BugLink: https://launchpad.net/bugs/1859756
> 
> We have reports hns3 is down while iscsi and spark tests.
> The first patch ("net: hns3: add 8 BD limit for tx flow")
> is the fix but also need to cherry-pick patch d1a37dedcfcf
> to fix a use-after-free issue introudcing by first fix.
> 
> To satisfy patch dependency and also several patches has
> to be cherry-picked along way.
> 
> These patches are also available in the Git repository at:
>   git://kernel.ubuntu.com/ikepanhc/public.git lp1859756.2
> 
> Peng Li (1):
>   net: hns3: add 8 BD limit for tx flow
> 
> Yunsheng Lin (7):
>   net: hns3: avoid mult + div op in critical data path
>   net: hns3: remove some ops in struct hns3_nic_ops
>   net: hns3: fix for not calculating tx bd num correctly
>   net: hns3: unify maybe_stop_tx for TSO and non-TSO case
>   net: hns3: add check for max TX BD num for tso and non-tso case
>   net: hns3: fix for TX queue not restarted problem
>   net: hns3: fix a use after free problem in hns3_nic_maybe_stop_tx()
> 
>  .../net/ethernet/hisilicon/hns3/hns3_enet.c   | 154 ++++++++----------
>  .../net/ethernet/hisilicon/hns3/hns3_enet.h   |  15 +-
>  .../ethernet/hisilicon/hns3/hns3_ethtool.c    |   1 +
>  3 files changed, 78 insertions(+), 92 deletions(-)
> 
Not sure whether all this really is needed to fix the bug. But on the other hand
this is for very specific hw and can be verified. Also I believe with this
driver we are already far away from original 4.15 code. So

Acked-by: Stefan Bader <stefan.bader@canonical.com>
Colin Ian King July 9, 2020, 8:44 a.m. UTC | #2
On 09/07/2020 08:30, Ike Panhc wrote:
> BugLink: https://launchpad.net/bugs/1859756
> 
> We have reports hns3 is down while iscsi and spark tests.
> The first patch ("net: hns3: add 8 BD limit for tx flow")
> is the fix but also need to cherry-pick patch d1a37dedcfcf
> to fix a use-after-free issue introudcing by first fix.
> 
> To satisfy patch dependency and also several patches has
> to be cherry-picked along way.
> 
> These patches are also available in the Git repository at:
>   git://kernel.ubuntu.com/ikepanhc/public.git lp1859756.2
> 
> Peng Li (1):
>   net: hns3: add 8 BD limit for tx flow
> 
> Yunsheng Lin (7):
>   net: hns3: avoid mult + div op in critical data path
>   net: hns3: remove some ops in struct hns3_nic_ops
>   net: hns3: fix for not calculating tx bd num correctly
>   net: hns3: unify maybe_stop_tx for TSO and non-TSO case
>   net: hns3: add check for max TX BD num for tso and non-tso case
>   net: hns3: fix for TX queue not restarted problem
>   net: hns3: fix a use after free problem in hns3_nic_maybe_stop_tx()
> 
>  .../net/ethernet/hisilicon/hns3/hns3_enet.c   | 154 ++++++++----------
>  .../net/ethernet/hisilicon/hns3/hns3_enet.h   |  15 +-
>  .../ethernet/hisilicon/hns3/hns3_ethtool.c    |   1 +
>  3 files changed, 78 insertions(+), 92 deletions(-)
> 
As Stefan noted there are commits here that may not be necessary, but
they look OK to me as part of the backporting exercise.  Also the test
results are good and the changes are focused on a specific piece of
hardware so regression potential is limited.

Acked-by: Colin Ian King <colin.king@canonical.com>
Kelsey Skunberg July 30, 2020, 9:17 p.m. UTC | #3
Applied to Bionic/master-next. Thank you! 

-Kelsey

On 2020-07-09 15:30:05 , Ike Panhc wrote:
> BugLink: https://launchpad.net/bugs/1859756
> 
> We have reports hns3 is down while iscsi and spark tests.
> The first patch ("net: hns3: add 8 BD limit for tx flow")
> is the fix but also need to cherry-pick patch d1a37dedcfcf
> to fix a use-after-free issue introudcing by first fix.
> 
> To satisfy patch dependency and also several patches has
> to be cherry-picked along way.
> 
> These patches are also available in the Git repository at:
>   git://kernel.ubuntu.com/ikepanhc/public.git lp1859756.2
> 
> Peng Li (1):
>   net: hns3: add 8 BD limit for tx flow
> 
> Yunsheng Lin (7):
>   net: hns3: avoid mult + div op in critical data path
>   net: hns3: remove some ops in struct hns3_nic_ops
>   net: hns3: fix for not calculating tx bd num correctly
>   net: hns3: unify maybe_stop_tx for TSO and non-TSO case
>   net: hns3: add check for max TX BD num for tso and non-tso case
>   net: hns3: fix for TX queue not restarted problem
>   net: hns3: fix a use after free problem in hns3_nic_maybe_stop_tx()
> 
>  .../net/ethernet/hisilicon/hns3/hns3_enet.c   | 154 ++++++++----------
>  .../net/ethernet/hisilicon/hns3/hns3_enet.h   |  15 +-
>  .../ethernet/hisilicon/hns3/hns3_ethtool.c    |   1 +
>  3 files changed, 78 insertions(+), 92 deletions(-)
> 
> -- 
> 2.25.1
> 
> 
> -- 
> kernel-team mailing list
> kernel-team@lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team