[dpdk-dev] [PATCH 20.11 5/7] net/ice: support 6-tuple RSS

Wenjun Wu wenjun1.wu at intel.com
Fri Sep 10 10:08:19 CEST 2021


This patch is not for LTS upstream, just for users to cherry-pick.

Add 6-tuple RSS support for pattern eth/vlan/ipv4, eth/vlan/ipv4/sctp,
eth/vlan/ipv4/udp,eth/vlan/ipv4/tcp.

Signed-off-by: Wenjun Wu <wenjun1.wu at intel.com>
---
 drivers/net/ice/ice_hash.c | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/drivers/net/ice/ice_hash.c b/drivers/net/ice/ice_hash.c
index b8a87ea1dd..89bc458b86 100644
--- a/drivers/net/ice/ice_hash.c
+++ b/drivers/net/ice/ice_hash.c
@@ -505,6 +505,9 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 	{ETH_RSS_IPV4 | ETH_RSS_L3_DST_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_DA)},
 	{ETH_RSS_IPV4, ICE_FLOW_HASH_IPV4},
+	{ETH_RSS_C_VLAN | ETH_RSS_IPV4,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_C_VLAN) |
+		ICE_FLOW_HASH_IPV4},
 	{ETH_RSS_FRAG_IPV4,
 		ICE_FLOW_HASH_IPV4 |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_ID)},
@@ -539,6 +542,10 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 	{ETH_RSS_NONFRAG_IPV4_UDP,
 		ICE_HASH_UDP_IPV4 |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT)},
+	{ETH_RSS_C_VLAN | ETH_RSS_NONFRAG_IPV4_UDP,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_C_VLAN) |
+		ICE_HASH_UDP_IPV4 |
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT)},
 	{ETH_RSS_NONFRAG_IPV4_TCP | ETH_RSS_L3_SRC_ONLY | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_SA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT) |
@@ -570,6 +577,10 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 	{ETH_RSS_NONFRAG_IPV4_TCP,
 		ICE_HASH_TCP_IPV4 |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT)},
+	{ETH_RSS_C_VLAN | ETH_RSS_NONFRAG_IPV4_TCP,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_C_VLAN) |
+		ICE_HASH_TCP_IPV4 |
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT)},
 	{ETH_RSS_NONFRAG_IPV4_SCTP | ETH_RSS_L3_SRC_ONLY | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_SA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT) |
@@ -601,6 +612,10 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 	{ETH_RSS_NONFRAG_IPV4_SCTP,
 		ICE_HASH_SCTP_IPV4 |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT)},
+	{ETH_RSS_C_VLAN | ETH_RSS_NONFRAG_IPV4_SCTP,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_C_VLAN) |
+		ICE_HASH_SCTP_IPV4 |
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT)},
 	/* IPV6 */
 	{ETH_RSS_IPV6 | ETH_RSS_L3_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_SA)},
-- 
2.25.1



More information about the dev mailing list