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: 4027fffe86f4 ("net/ice: support default RSS for IP fragment packet")

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

diff --git a/drivers/net/ice/ice_ethdev.c b/drivers/net/ice/ice_ethdev.c
index a4cd39c954..64ee569525 100644
--- a/drivers/net/ice/ice_ethdev.c
+++ b/drivers/net/ice/ice_ethdev.c
@@ -2975,7 +2975,7 @@ ice_rss_hash_set(struct ice_pf *pf, uint64_t rss_hf)
 
        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 | 
BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_ID);
+               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",
@@ -2984,7 +2984,7 @@ ice_rss_hash_set(struct ice_pf *pf, uint64_t rss_hf)
 
        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 | 
BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_ID);
+               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",
-- 
2.25.1

Reply via email to