[dpdk-dev] [PATCH v1] net/iavf: fix hash default set

Xie, WeiX weix.xie at intel.com
Tue Aug 4 09:03:25 CEST 2020


Tested-by:  Xie,WeiX < weix.xie at intel.com>

Regards,
Xie Wei

-----Original Message-----
From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Jeff Guo
Sent: Tuesday, August 4, 2020 10:59 AM
To: Zhang, Qi Z <qi.z.zhang at intel.com>; Wu, Jingjing <jingjing.wu at intel.com>; Xing, Beilei <beilei.xing at intel.com>
Cc: dev at dpdk.org; Guo, Junfeng <junfeng.guo at intel.com>; Su, Simei <simei.su at intel.com>; Guo, Jia <jia.guo at intel.com>
Subject: [dpdk-dev] [PATCH v1] net/iavf: fix hash default set

Different device has different hash capability, it should not be expected that all hash set would be successful to set into all devices by default. So remove the return checking when hash default set. And remove gtpu hash default set, iavf only enable hash for general protocols.

Fixes: c94366cfc641 ("net/iavf: add GTPU in default hash")
Signed-off-by: Jeff Guo <jia.guo at intel.com>
---
 drivers/net/iavf/iavf_hash.c | 23 ++---------------------
 1 file changed, 2 insertions(+), 21 deletions(-)

diff --git a/drivers/net/iavf/iavf_hash.c b/drivers/net/iavf/iavf_hash.c index e2eebd2d3..c06b52ea9 100644
--- a/drivers/net/iavf/iavf_hash.c
+++ b/drivers/net/iavf/iavf_hash.c
@@ -3639,18 +3639,6 @@ struct virtchnl_proto_hdrs *iavf_hash_default_hdrs[] = {
 	&hdrs_hint_ipv6_udp,
 	&hdrs_hint_ipv6_tcp,
 	&hdrs_hint_ipv6_sctp,
-	&hdrs_hint_ipv4_gtpu_ip,
-	&hdrs_hint_ipv4_udp_gtpu_ip,
-	&hdrs_hint_ipv4_tcp_gtpu_ip,
-	&hdrs_hint_ipv4_gtpu_eh,
-	&hdrs_hint_ipv4_udp_gtpu_eh,
-	&hdrs_hint_ipv4_tcp_gtpu_eh,
-	&hdrs_hint_ipv6_gtpu_ip,
-	&hdrs_hint_ipv6_udp_gtpu_ip,
-	&hdrs_hint_ipv6_tcp_gtpu_ip,
-	&hdrs_hint_ipv6_gtpu_eh,
-	&hdrs_hint_ipv6_udp_gtpu_eh,
-	&hdrs_hint_ipv6_tcp_gtpu_eh,
 };
 
 static struct iavf_flow_engine iavf_hash_engine = { @@ -3676,7 +3664,6 @@ iavf_hash_default_set(struct iavf_adapter *ad, bool add)  {
 	struct virtchnl_rss_cfg *rss_cfg;
 	uint16_t i;
-	int ret;
 
 	rss_cfg = rte_zmalloc("iavf rss rule",
 			      sizeof(struct virtchnl_rss_cfg), 0); @@ -3687,16 +3674,10 @@ iavf_hash_default_set(struct iavf_adapter *ad, bool add)
 		rss_cfg->proto_hdrs = *iavf_hash_default_hdrs[i];
 		rss_cfg->rss_algorithm = VIRTCHNL_RSS_ALG_TOEPLITZ_ASYMMETRIC;
 
-		ret = iavf_add_del_rss_cfg(ad, rss_cfg, add);
-		if (ret) {
-			PMD_DRV_LOG(ERR, "fail to %s RSS configure",
-				    add ? "add" : "delete");
-			rte_free(rss_cfg);
-			return ret;
-		}
+		iavf_add_del_rss_cfg(ad, rss_cfg, add);
 	}
 
-	return ret;
+	return 0;
 }
 
 RTE_INIT(iavf_hash_engine_init)
--
2.20.1



More information about the dev mailing list