[dpdk-stable] patch 'net/bnxt: fix link status during device recovery' has been queued to stable release 19.11.6

Kalesh Anakkur Purayil kalesh-anakkur.purayil at broadcom.com
Thu Oct 29 10:22:56 CET 2020


Hi Luca,

On Wed, Oct 28, 2020 at 4:19 PM <luca.boccassi at gmail.com> wrote:

> Hi,
>
> FYI, your patch has been queued to stable release 19.11.6
>
> Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
> It will be pushed if I get no objections before 10/30/20. So please
> shout if anyone has objections.
>
> Also note that after the patch there's a diff of the upstream commit vs the
> patch applied to the branch. This will indicate if there was any rebasing
> needed to apply to the stable branch. If there were code changes for
> rebasing
> (ie: not only metadata diffs), please double check that the rebase was
> correctly done.
>
> Thanks.
>
> Luca Boccassi
>
> ---
> From 77d290729b074c88263d3024229f806fa176e684 Mon Sep 17 00:00:00 2001
> From: Kalesh AP <kalesh-anakkur.purayil at broadcom.com>
> Date: Tue, 22 Sep 2020 11:04:16 +0530
> Subject: [PATCH] net/bnxt: fix link status during device recovery
>
> [ upstream commit 6fcd0de92298f61b8f96ba170db9e81923019626 ]
>
> Driver should not send the phy_cfg request to bring link down
> during reset recovery. If the driver sends the phy_cfg request
> in recovery process, then FW needs to re-establish the link which
> in turn increases the recovery time based on PHY type and link partners.
>
> Fixes: df6cd7c1f73a ("net/bnxt: handle reset notify async event from FW")
>
> Signed-off-by: Kalesh AP <kalesh-anakkur.purayil at broadcom.com>
> Reviewed-by: Somnath Kotur <somnath.kotur at broadcom.com>
> Reviewed-by: Ajit Khaparde <ajit.khaparde at broadcom.com>
> ---
>  drivers/net/bnxt/bnxt_ethdev.c | 6 ++++--
>  1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/bnxt/bnxt_ethdev.c
> b/drivers/net/bnxt/bnxt_ethdev.c
> index d6afd03e56..bbfe883c15 100644
> --- a/drivers/net/bnxt/bnxt_ethdev.c
> +++ b/drivers/net/bnxt/bnxt_ethdev.c
> @@ -942,7 +942,9 @@ static void bnxt_dev_stop_op(struct rte_eth_dev
> *eth_dev)
>
>         bnxt_cancel_fw_health_check(bp);
>
> -       bnxt_dev_set_link_down_op(eth_dev);
> +       /* Do not bring link down during reset recovery */
> +       if (!is_bnxt_in_error(bp))
> +               bnxt_dev_set_link_down_op(eth_dev);
>
>         /* Wait for link to be reset and the async notification to process.
>          * During reset recovery, there is no need to wait and
> @@ -3908,7 +3910,7 @@ static void bnxt_write_fw_reset_reg(struct bnxt *bp,
> uint32_t index)
>
>  static void bnxt_dev_cleanup(struct bnxt *bp)
>  {
> -       bnxt_set_hwrm_link_config(bp, false);
> +       bp->eth_dev->data->dev_link.link_status = 0;
>         bp->link_info.link_up = 0;
>         if (bp->eth_dev->data->dev_started)
>                 bnxt_dev_stop_op(bp->eth_dev);
> --
> 2.20.1
>
> ---
>   Diff of the applied patch vs upstream commit (please double-check if
> non-empty:
> ---
> --- -   2020-10-28 10:35:13.947167689 +0000
> +++ 0070-net-bnxt-fix-link-status-during-device-recovery.patch  2020-10-28
> 10:35:11.556830789 +0000
> @@ -1,15 +1,16 @@
> -From 6fcd0de92298f61b8f96ba170db9e81923019626 Mon Sep 17 00:00:00 2001
> +From 77d290729b074c88263d3024229f806fa176e684 Mon Sep 17 00:00:00 2001
>  From: Kalesh AP <kalesh-anakkur.purayil at broadcom.com>
>  Date: Tue, 22 Sep 2020 11:04:16 +0530
>  Subject: [PATCH] net/bnxt: fix link status during device recovery
>
> +[ upstream commit 6fcd0de92298f61b8f96ba170db9e81923019626 ]
> +
>  Driver should not send the phy_cfg request to bring link down
>  during reset recovery. If the driver sends the phy_cfg request
>  in recovery process, then FW needs to re-establish the link which
>  in turn increases the recovery time based on PHY type and link partners.
>
>  Fixes: df6cd7c1f73a ("net/bnxt: handle reset notify async event from FW")
> -Cc: stable at dpdk.org
>
>  Signed-off-by: Kalesh AP <kalesh-anakkur.purayil at broadcom.com>
>  Reviewed-by: Somnath Kotur <somnath.kotur at broadcom.com>
> @@ -19,10 +20,10 @@
>   1 file changed, 4 insertions(+), 2 deletions(-)
>
>  diff --git a/drivers/net/bnxt/bnxt_ethdev.c
> b/drivers/net/bnxt/bnxt_ethdev.c
> -index 05e9a6abbf..e0afaac694 100644
> +index d6afd03e56..bbfe883c15 100644
>  --- a/drivers/net/bnxt/bnxt_ethdev.c
>  +++ b/drivers/net/bnxt/bnxt_ethdev.c
> -@@ -1323,7 +1323,9 @@ static void bnxt_dev_stop_op(struct rte_eth_dev
> *eth_dev)
> +@@ -942,7 +942,9 @@ static void bnxt_dev_stop_op(struct rte_eth_dev
> *eth_dev)
>
>         bnxt_cancel_fw_health_check(bp);
>
> @@ -33,13 +34,13 @@
>
>         /* Wait for link to be reset and the async notification to process.
>          * During reset recovery, there is no need to wait and
> -@@ -4377,7 +4379,7 @@ static void bnxt_write_fw_reset_reg(struct bnxt
> *bp, uint32_t index)
> +@@ -3908,7 +3910,7 @@ static void bnxt_write_fw_reset_reg(struct bnxt
> *bp, uint32_t index)
>
>   static void bnxt_dev_cleanup(struct bnxt *bp)
>   {
>  -      bnxt_set_hwrm_link_config(bp, false);
>  +      bp->eth_dev->data->dev_link.link_status = 0;
> -       bp->link_info->link_up = 0;
> +       bp->link_info.link_up = 0;
>         if (bp->eth_dev->data->dev_started)
>                 bnxt_dev_stop_op(bp->eth_dev);
>

Luca,
          I see that the rebase is not correct, I will fix and send the
patch to 19.11 LTS.

Regards,
Kalesh

>  --
>


-- 
Regards,
Kalesh A P


More information about the stable mailing list