> -----Original Message-----
> From: Wu, Wenjun1 <wenjun1.wu@intel.com>
> Sent: Thursday, May 6, 2021 10:20 AM
> To: dev@dpdk.org; Yang, Qiming <qiming.yang@intel.com>; Zhang, Qi Z
> <qi.z.zhang@intel.com>
> Cc: Wu, Wenjun1 <wenjun1.wu@intel.com>
> Subject: [PATCH v1] net/ice: remove redundant RSS configuration for GTPU
>
> Originally, the default RSS for GTPU is inner fields. Now, we hope outer RSS for
> GTPU to be the default.
>
> Since RSS for ipv4, RSS for ipv6, RSS for UDP and RSS for TCP can cover the
> cases of outer RSS for GTPU, this patch deletes redundant default RSS
> configurations for GTPU.
>
> Signed-off-by: Wenjun Wu <wenjun1.wu@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
Applied to dpdk-next-net-intel.
Thanks
Qi
@@ -2928,21 +2928,6 @@ ice_rss_hash_set(struct ice_pf *pf, uint64_t rss_hf)
}
if (rss_hf & ETH_RSS_IPV4) {
- cfg.addl_hdrs = ICE_FLOW_SEG_HDR_GTPU_IP | ICE_FLOW_SEG_HDR_IPV4 |
- ICE_FLOW_SEG_HDR_IPV_OTHER;
- cfg.hash_flds = ICE_FLOW_HASH_IPV4;
- ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
- if (ret)
- PMD_DRV_LOG(ERR, "%s GTPU_IPV4 rss flow fail %d",
- __func__, ret);
-
- cfg.addl_hdrs = ICE_FLOW_SEG_HDR_GTPU_EH | ICE_FLOW_SEG_HDR_IPV4 |
- ICE_FLOW_SEG_HDR_IPV_OTHER;
- ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
- if (ret)
- PMD_DRV_LOG(ERR, "%s GTPU_EH_IPV4 rss flow fail %d",
- __func__, ret);
-
cfg.addl_hdrs = ICE_FLOW_SEG_HDR_PPPOE | ICE_FLOW_SEG_HDR_IPV4 |
ICE_FLOW_SEG_HDR_IPV_OTHER;
ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
@@ -2952,21 +2937,6 @@ ice_rss_hash_set(struct ice_pf *pf, uint64_t rss_hf)
}
if (rss_hf & ETH_RSS_IPV6) {
- cfg.addl_hdrs = ICE_FLOW_SEG_HDR_GTPU_IP | ICE_FLOW_SEG_HDR_IPV6 |
- ICE_FLOW_SEG_HDR_IPV_OTHER;
- cfg.hash_flds = ICE_FLOW_HASH_IPV6;
- ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
- if (ret)
- PMD_DRV_LOG(ERR, "%s GTPU_IPV6 rss flow fail %d",
- __func__, ret);
-
- cfg.addl_hdrs = ICE_FLOW_SEG_HDR_GTPU_EH | ICE_FLOW_SEG_HDR_IPV6 |
- ICE_FLOW_SEG_HDR_IPV_OTHER;
- ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
- if (ret)
- PMD_DRV_LOG(ERR, "%s GTPU_EH_IPV6 rss flow fail %d",
- __func__, ret);
-
cfg.addl_hdrs = ICE_FLOW_SEG_HDR_PPPOE | ICE_FLOW_SEG_HDR_IPV6 |
ICE_FLOW_SEG_HDR_IPV_OTHER;
ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
@@ -2976,21 +2946,6 @@ ice_rss_hash_set(struct ice_pf *pf, uint64_t rss_hf)
}
if (rss_hf & ETH_RSS_NONFRAG_IPV4_UDP) {
- cfg.addl_hdrs = ICE_FLOW_SEG_HDR_GTPU_IP | ICE_FLOW_SEG_HDR_UDP |
- ICE_FLOW_SEG_HDR_IPV4 | ICE_FLOW_SEG_HDR_IPV_OTHER;
- cfg.hash_flds = ICE_HASH_UDP_IPV4;
- ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
- if (ret)
- PMD_DRV_LOG(ERR, "%s GTPU_IPV4_UDP rss flow fail %d",
- __func__, ret);
-
- cfg.addl_hdrs = ICE_FLOW_SEG_HDR_GTPU_EH | ICE_FLOW_SEG_HDR_UDP |
- ICE_FLOW_SEG_HDR_IPV4 | ICE_FLOW_SEG_HDR_IPV_OTHER;
- ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
- if (ret)
- PMD_DRV_LOG(ERR, "%s GTPU_EH_IPV4_UDP rss flow fail %d",
- __func__, ret);
-
cfg.addl_hdrs = ICE_FLOW_SEG_HDR_PPPOE | ICE_FLOW_SEG_HDR_UDP |
ICE_FLOW_SEG_HDR_IPV4 | ICE_FLOW_SEG_HDR_IPV_OTHER;
ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
@@ -3000,21 +2955,6 @@ ice_rss_hash_set(struct ice_pf *pf, uint64_t rss_hf)
}
if (rss_hf & ETH_RSS_NONFRAG_IPV6_UDP) {
- cfg.addl_hdrs = ICE_FLOW_SEG_HDR_GTPU_IP | ICE_FLOW_SEG_HDR_UDP |
- ICE_FLOW_SEG_HDR_IPV6 | ICE_FLOW_SEG_HDR_IPV_OTHER;
- cfg.hash_flds = ICE_HASH_UDP_IPV6;
- ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
- if (ret)
- PMD_DRV_LOG(ERR, "%s GTPU_IPV6_UDP rss flow fail %d",
- __func__, ret);
-
- cfg.addl_hdrs = ICE_FLOW_SEG_HDR_GTPU_EH | ICE_FLOW_SEG_HDR_UDP |
- ICE_FLOW_SEG_HDR_IPV6 | ICE_FLOW_SEG_HDR_IPV_OTHER;
- ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
- if (ret)
- PMD_DRV_LOG(ERR, "%s GTPU_EH_IPV6_UDP rss flow fail %d",
- __func__, ret);
-
cfg.addl_hdrs = ICE_FLOW_SEG_HDR_PPPOE | ICE_FLOW_SEG_HDR_UDP |
ICE_FLOW_SEG_HDR_IPV6 | ICE_FLOW_SEG_HDR_IPV_OTHER;
ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
@@ -3024,21 +2964,6 @@ ice_rss_hash_set(struct ice_pf *pf, uint64_t rss_hf)
}
if (rss_hf & ETH_RSS_NONFRAG_IPV4_TCP) {
- cfg.addl_hdrs = ICE_FLOW_SEG_HDR_GTPU_IP | ICE_FLOW_SEG_HDR_TCP |
- ICE_FLOW_SEG_HDR_IPV4 | ICE_FLOW_SEG_HDR_IPV_OTHER;
- cfg.hash_flds = ICE_HASH_TCP_IPV4;
- ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
- if (ret)
- PMD_DRV_LOG(ERR, "%s GTPU_IPV4_TCP rss flow fail %d",
- __func__, ret);
-
- cfg.addl_hdrs = ICE_FLOW_SEG_HDR_GTPU_EH | ICE_FLOW_SEG_HDR_TCP |
- ICE_FLOW_SEG_HDR_IPV4 | ICE_FLOW_SEG_HDR_IPV_OTHER;
- ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
- if (ret)
- PMD_DRV_LOG(ERR, "%s GTPU_EH_IPV4_TCP rss flow fail %d",
- __func__, ret);
-
cfg.addl_hdrs = ICE_FLOW_SEG_HDR_PPPOE | ICE_FLOW_SEG_HDR_TCP |
ICE_FLOW_SEG_HDR_IPV4 | ICE_FLOW_SEG_HDR_IPV_OTHER;
ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
@@ -3048,21 +2973,6 @@ ice_rss_hash_set(struct ice_pf *pf, uint64_t rss_hf)
}
if (rss_hf & ETH_RSS_NONFRAG_IPV6_TCP) {
- cfg.addl_hdrs = ICE_FLOW_SEG_HDR_GTPU_IP | ICE_FLOW_SEG_HDR_TCP |
- ICE_FLOW_SEG_HDR_IPV6 | ICE_FLOW_SEG_HDR_IPV_OTHER;
- cfg.hash_flds = ICE_HASH_TCP_IPV6;
- ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
- if (ret)
- PMD_DRV_LOG(ERR, "%s GTPU_IPV6_TCP rss flow fail %d",
- __func__, ret);
-
- cfg.addl_hdrs = ICE_FLOW_SEG_HDR_GTPU_EH | ICE_FLOW_SEG_HDR_TCP |
- ICE_FLOW_SEG_HDR_IPV6 | ICE_FLOW_SEG_HDR_IPV_OTHER;
- ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);
- if (ret)
- PMD_DRV_LOG(ERR, "%s GTPU_EH_IPV6_TCP rss flow fail %d",
- __func__, ret);
-
cfg.addl_hdrs = ICE_FLOW_SEG_HDR_PPPOE | ICE_FLOW_SEG_HDR_TCP |
ICE_FLOW_SEG_HDR_IPV6 | ICE_FLOW_SEG_HDR_IPV_OTHER;
ret = ice_add_rss_cfg_wrap(pf, vsi->idx, &cfg);