[v2,1/2] net/ice: fix RSS configuration failure

Message ID 20210916023457.441901-1-wenjun1.wu@intel.com (mailing list archive)
State Superseded, archived
Delegated to: Qi Zhang
Headers
Series fix RSS configuration failure |

Checks

Context Check Description
ci/checkpatch success coding style OK

Commit Message

Wenjun Wu Sept. 16, 2021, 2:34 a.m. UTC
  According to patch [1], IPv4 and IPv6 fragment ptypes should be
separated from IP other ptypes. That is to say, when RSS for IP
packets is enabled, it should not affect IP fragment packets.

Previously, we try to enable RSS for both IP packets and IP fragment
packets with hash field of src and dst address. However, due to
share code limitation, when RSS for IP packets and IP fragment packets
coexists, they cannot share the same hash field.

As a result, independent configuration of default RSS for IP fragment
packets need to be removed.

This patch revert the original patch to fix this failure.

[1]
commit 08c16b212d03 ("net/ice/base: fix ptype bitmap for IP fragment")

Fixes: 91f59358dc05 ("net/ice: fix default RSS hash for IP fragment packets")
Fixes: 4027fffe86f4 ("net/ice: support default RSS for IP fragment packet")
Cc: stable@dpdk.org

Signed-off-by: Wenjun Wu <wenjun1.wu@intel.com>
---
 drivers/net/ice/ice_ethdev.c | 22 +---------------------
 1 file changed, 1 insertion(+), 21 deletions(-)
  

Patch

diff --git a/drivers/net/ice/ice_ethdev.c b/drivers/net/ice/ice_ethdev.c
index 8d62b84805..0fcaf24fb1 100644
--- a/drivers/net/ice/ice_ethdev.c
+++ b/drivers/net/ice/ice_ethdev.c
@@ -2822,9 +2822,7 @@  ice_rss_hash_set(struct ice_pf *pf, uint64_t rss_hf)
 	ETH_RSS_NONFRAG_IPV4_TCP | \
 	ETH_RSS_NONFRAG_IPV6_TCP | \
 	ETH_RSS_NONFRAG_IPV4_SCTP | \
-	ETH_RSS_NONFRAG_IPV6_SCTP | \
-	ETH_RSS_FRAG_IPV4 | \
-	ETH_RSS_FRAG_IPV6)
+	ETH_RSS_NONFRAG_IPV6_SCTP)
 
 	ret = ice_rem_vsi_rss_cfg(hw, vsi->idx);
 	if (ret)
@@ -2979,24 +2977,6 @@  ice_rss_hash_set(struct ice_pf *pf, uint64_t rss_hf)
 				    __func__, ret);
 	}
 
-	if (rss_hf & ETH_RSS_FRAG_IPV4) {
-		cfg.addl_hdrs = ICE_FLOW_SEG_HDR_IPV4 | ICE_FLOW_SEG_HDR_IPV_FRAG;
-		cfg.hash_flds = ICE_FLOW_HASH_IPV4;
-		ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
-		if (ret)
-			PMD_DRV_LOG(ERR, "%s IPV4_FRAG rss flow fail %d",
-				    __func__, ret);
-	}
-
-	if (rss_hf & ETH_RSS_FRAG_IPV6) {
-		cfg.addl_hdrs = ICE_FLOW_SEG_HDR_IPV6 | ICE_FLOW_SEG_HDR_IPV_FRAG;
-		cfg.hash_flds = ICE_FLOW_HASH_IPV6;
-		ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
-		if (ret)
-			PMD_DRV_LOG(ERR, "%s IPV6_FRAG rss flow fail %d",
-				    __func__, ret);
-	}
-
 	pf->rss_hf = rss_hf & ICE_RSS_HF_ALL;
 }