[v4,06/18] net/i40e/base: fix PF reset failed

Message ID 20210906020258.1291688-7-robinx.zhang@intel.com (mailing list archive)
State Superseded, archived
Delegated to: Qi Zhang
Headers
Series i40e base code update |

Checks

Context Check Description
ci/checkpatch success coding style OK

Commit Message

Robin Zhang Sept. 6, 2021, 2:02 a.m. UTC
  PF has to delete all the filters during reset.
If it is fully loaded with filters then it is possible
that it will take more than 200 ms to finish the reset
resulting in timeout during pf_reset and
PF reset failed, -15 error indication.
Increasing the timeout value for PF reset from 200 to 1000
to give PF more time to finish reset if it is loaded with filters.

Fixes: 1e32378f0774 ("i40e/base: increase PF reset max loop limit")
Cc: stable@dpdk.org

Signed-off-by: Sylwester Dziedziuch <sylwesterx.dziedziuch@intel.com>
Signed-off-by: Robin Zhang <robinx.zhang@intel.com>
---
 drivers/net/i40e/base/i40e_common.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Ferruh Yigit Sept. 29, 2021, 4:21 p.m. UTC | #1
On 9/6/2021 3:02 AM, Robin Zhang wrote:
> PF has to delete all the filters during reset.
> If it is fully loaded with filters then it is possible
> that it will take more than 200 ms to finish the reset
> resulting in timeout during pf_reset and
> PF reset failed, -15 error indication.
> Increasing the timeout value for PF reset from 200 to 1000
> to give PF more time to finish reset if it is loaded with filters.
> 
> Fixes: 1e32378f0774 ("i40e/base: increase PF reset max loop limit")
> Cc: stable@dpdk.org
> 
> Signed-off-by: Sylwester Dziedziuch <sylwesterx.dziedziuch@intel.com>
> Signed-off-by: Robin Zhang <robinx.zhang@intel.com>

What do you think updating patch title as:
 net/i40e/base: fix PF reset
  

Patch

diff --git a/drivers/net/i40e/base/i40e_common.c b/drivers/net/i40e/base/i40e_common.c
index ceedec68bf..aa424e6010 100644
--- a/drivers/net/i40e/base/i40e_common.c
+++ b/drivers/net/i40e/base/i40e_common.c
@@ -1341,7 +1341,7 @@  STATIC enum i40e_status_code i40e_poll_globr(struct i40e_hw *hw,
 	return I40E_ERR_RESET_FAILED;
 }
 
-#define I40E_PF_RESET_WAIT_COUNT	200
+#define I40E_PF_RESET_WAIT_COUNT	1000
 /**
  * i40e_pf_reset - Reset the PF
  * @hw: pointer to the hardware structure