[dpdk-dev] [PATCH] net/ice: fix flow redirector issue

Beilei Xing beilei.xing at intel.com
Wed Apr 22 14:22:44 CEST 2020


If there's VF reset, the kernel PF will remove rules
associated with the reset VF no matter the HW VSI ID
is changed or not. So DCF should redirector all rules
associated with the reset VF no matter the HW VSI ID
is changed or not.

Fixes: f10cde8e8478 ("net/ice: get VF hardware index in DCF")
Fixes: dc0f06849e50 ("net/ice: redirect switch rule to new VSI")

Signed-off-by: Beilei Xing <beilei.xing at intel.com>
---
 drivers/net/ice/ice_dcf.c        | 2 +-
 drivers/net/ice/ice_dcf_parent.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/net/ice/ice_dcf.c b/drivers/net/ice/ice_dcf.c
index 4c30f0e..0cd5d1b 100644
--- a/drivers/net/ice/ice_dcf.c
+++ b/drivers/net/ice/ice_dcf.c
@@ -536,7 +536,7 @@ ice_dcf_handle_vsi_update_event(struct ice_dcf_hw *hw)
 	rte_intr_disable(&pci_dev->intr_handle);
 	ice_dcf_disable_irq0(hw);
 
-	if (ice_dcf_get_vf_resource(hw) || ice_dcf_get_vf_vsi_map(hw))
+	if (ice_dcf_get_vf_resource(hw) || ice_dcf_get_vf_vsi_map(hw) < 0)
 		err = -1;
 
 	rte_intr_enable(&pci_dev->intr_handle);
diff --git a/drivers/net/ice/ice_dcf_parent.c b/drivers/net/ice/ice_dcf_parent.c
index d4b4ede..bdfc7d4 100644
--- a/drivers/net/ice/ice_dcf_parent.c
+++ b/drivers/net/ice/ice_dcf_parent.c
@@ -45,7 +45,7 @@ ice_dcf_update_vsi_ctx(struct ice_hw *hw, uint16_t vsi_handle,
 			VIRTCHNL_DCF_VF_VSI_ID_S;
 
 		/* Redirect rules if vsi mapping table changes. */
-		if (!first_update && vsi_ctx->vsi_num != new_vsi_num) {
+		if (!first_update) {
 			struct ice_flow_redirect rd;
 
 			memset(&rd, 0, sizeof(struct ice_flow_redirect));
-- 
2.7.4



More information about the dev mailing list