[v2,2/2] net/iavf: fix rss algorithm configure issue

Message ID 20200513202128.112290-2-jia.guo@intel.com (mailing list archive)
State Accepted, archived
Delegated to: xiaolong ye
Headers
Series [v2,1/2] common/iavf: fix typo of rss algorithm type |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/travis-robot warning Travis build: failed
ci/Intel-compilation success Compilation OK

Commit Message

Guo, Jia May 13, 2020, 8:21 p.m. UTC
  When configure rss rule, the etherdev rss hash function type should be
mapped to the corresponding virtchnl rss algorithm type.

Fixes: 7be10c3004be ("net/iavf: add RSS configuration for VF")
Signed-off-by: Jeff Guo <jia.guo@intel.com>
---
v2->v1:
fix a type for xor.
---
 drivers/net/iavf/iavf_hash.c | 20 +++++++++++---------
 1 file changed, 11 insertions(+), 9 deletions(-)
  

Comments

Qi Zhang May 13, 2020, 9:34 a.m. UTC | #1
> -----Original Message-----
> From: Guo, Jia <jia.guo@intel.com>
> Sent: Thursday, May 14, 2020 4:21 AM
> To: Xing, Beilei <beilei.xing@intel.com>; Ye, Xiaolong
> <xiaolong.ye@intel.com>; Zhang, Qi Z <qi.z.zhang@intel.com>; Wu, Jingjing
> <jingjing.wu@intel.com>
> Cc: dev@dpdk.org; Guo, Jia <jia.guo@intel.com>
> Subject: [dpdk-dev v2 2/2] net/iavf: fix rss algorithm configure issue
> 
> When configure rss rule, the etherdev rss hash function type should be
> mapped to the corresponding virtchnl rss algorithm type.
> 
> Fixes: 7be10c3004be ("net/iavf: add RSS configuration for VF")
> Signed-off-by: Jeff Guo <jia.guo@intel.com>

Acked-by: Qi Zhang <qi.z.zhang@intel.com>
  
Xiaolong Ye May 14, 2020, 6:02 a.m. UTC | #2
On 05/13, Zhang, Qi Z wrote:
>
>
>> -----Original Message-----
>> From: Guo, Jia <jia.guo@intel.com>
>> Sent: Thursday, May 14, 2020 4:21 AM
>> To: Xing, Beilei <beilei.xing@intel.com>; Ye, Xiaolong
>> <xiaolong.ye@intel.com>; Zhang, Qi Z <qi.z.zhang@intel.com>; Wu, Jingjing
>> <jingjing.wu@intel.com>
>> Cc: dev@dpdk.org; Guo, Jia <jia.guo@intel.com>
>> Subject: [dpdk-dev v2 2/2] net/iavf: fix rss algorithm configure issue
>> 
>> When configure rss rule, the etherdev rss hash function type should be
>> mapped to the corresponding virtchnl rss algorithm type.
>> 
>> Fixes: 7be10c3004be ("net/iavf: add RSS configuration for VF")
>> Signed-off-by: Jeff Guo <jia.guo@intel.com>
>
>Acked-by: Qi Zhang <qi.z.zhang@intel.com>
>

Applied to dpdk-next-net-intel, Thanks.
  

Patch

diff --git a/drivers/net/iavf/iavf_hash.c b/drivers/net/iavf/iavf_hash.c
index 6359ead76..975c84556 100644
--- a/drivers/net/iavf/iavf_hash.c
+++ b/drivers/net/iavf/iavf_hash.c
@@ -47,7 +47,7 @@  struct iavf_hash_match_type {
 
 struct iavf_rss_meta {
 	struct virtchnl_proto_hdrs *proto_hdrs;
-	uint32_t hash_function;
+	enum virtchnl_rss_algorithm rss_algorithm;
 };
 
 struct iavf_hash_flow_cfg {
@@ -1001,13 +1001,15 @@  iavf_hash_parse_action(struct iavf_pattern_match_item *pattern_match_item,
 
 			/* Check hash function and save it to rss_meta. */
 			if (rss->func == RTE_ETH_HASH_FUNCTION_SIMPLE_XOR)
-				rss_meta->hash_function =
-				RTE_ETH_HASH_FUNCTION_SIMPLE_XOR;
-
-			if (rss->func ==
-			    RTE_ETH_HASH_FUNCTION_SYMMETRIC_TOEPLITZ)
-				rss_meta->hash_function =
-				RTE_ETH_HASH_FUNCTION_SYMMETRIC_TOEPLITZ;
+				rss_meta->rss_algorithm =
+					VIRTCHNL_RSS_ALG_XOR_ASYMMETRIC;
+			else if (rss->func ==
+				 RTE_ETH_HASH_FUNCTION_SYMMETRIC_TOEPLITZ)
+				rss_meta->rss_algorithm =
+					VIRTCHNL_RSS_ALG_TOEPLITZ_SYMMETRIC;
+			else
+				rss_meta->rss_algorithm =
+					VIRTCHNL_RSS_ALG_TOEPLITZ_ASYMMETRIC;
 
 			type_match_item =
 			rte_zmalloc("iavf_type_match_item",
@@ -1126,7 +1128,7 @@  iavf_hash_create(__rte_unused struct iavf_adapter *ad,
 	}
 
 	rss_cfg->proto_hdrs = *rss_meta->proto_hdrs;
-	rss_cfg->rss_algorithm = rss_meta->hash_function;
+	rss_cfg->rss_algorithm = rss_meta->rss_algorithm;
 
 	ret = iavf_add_del_rss_cfg(ad, rss_cfg, true);
 	if (!ret) {