[v3,1/2] net/iavf: fix default RSS field for IP fragment packets

Message ID 20210817084401.183739-1-wenjun1.wu@intel.com (mailing list archive)
State Accepted, archived
Delegated to: Qi Zhang
Headers
Series [v3,1/2] net/iavf: fix default RSS field for IP fragment packets |

Checks

Context Check Description
ci/checkpatch success coding style OK

Commit Message

Wenjun Wu Aug. 17, 2021, 8:44 a.m. UTC
  Previously, hash value is calculated by src IP address, dst IP address
and IP ID. However, default RSS field only needs src and dst IP address.

This patch removes IP ID from default RSS field for IP fragment packets to
improve default RSS configuration.

Fixes: 9e29a278bc0c ("net/iavf: support default RSS for IP fragment")

Signed-off-by: Wenjun Wu <wenjun1.wu@intel.com>
---
 drivers/net/iavf/iavf_hash.c | 26 ++------------------------
 1 file changed, 2 insertions(+), 24 deletions(-)
  

Patch

diff --git a/drivers/net/iavf/iavf_hash.c b/drivers/net/iavf/iavf_hash.c
index 2b03dad858..eba55ecea5 100644
--- a/drivers/net/iavf/iavf_hash.c
+++ b/drivers/net/iavf/iavf_hash.c
@@ -624,34 +624,12 @@  iavf_rss_hash_set(struct iavf_adapter *ad, uint64_t rss_hf, bool add)
 	}
 
 	if (rss_hf & ETH_RSS_FRAG_IPV4) {
-		struct virtchnl_proto_hdrs hdr = {
-			.tunnel_level = TUNNEL_LEVEL_OUTER,
-			.count = 3,
-			.proto_hdr = {
-				proto_hdr_eth,
-				proto_hdr_ipv4,
-				{
-					VIRTCHNL_PROTO_HDR_IPV4_FRAG,
-					FIELD_SELECTOR(VIRTCHNL_PROTO_HDR_IPV4_FRAG_PKID),
-					{BUFF_NOUSED},
-				},
-			},
-		};
-		rss_cfg.proto_hdrs = hdr;
+		rss_cfg.proto_hdrs = outer_ipv4_tmplt;
 		iavf_add_del_rss_cfg(ad, &rss_cfg, add);
 	}
 
 	if (rss_hf & ETH_RSS_FRAG_IPV6) {
-		struct virtchnl_proto_hdrs hdr = {
-			.tunnel_level = TUNNEL_LEVEL_OUTER,
-			.count = 3,
-			.proto_hdr = {
-				proto_hdr_eth,
-				proto_hdr_ipv6,
-				proto_hdr_ipv6_frag,
-			},
-		};
-		rss_cfg.proto_hdrs = hdr;
+		rss_cfg.proto_hdrs = outer_ipv6_tmplt;
 		iavf_add_del_rss_cfg(ad, &rss_cfg, add);
 	}