[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