DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [dpdk-dev v1] net/ice: fix issue for GTPU l4 hash
@ 2020-07-21  2:32 Jeff Guo
  2020-07-21  5:19 ` Zhang, Qi Z
  0 siblings, 1 reply; 2+ messages in thread
From: Jeff Guo @ 2020-07-21  2:32 UTC (permalink / raw)
  To: qi.z.zhang, qiming.yang; +Cc: dev, simei.su, jia.guo

When the configure pattern involve GTPU inner l3 and l4, even the
configure input set only l3 but not l4, the different l4 protocol
header should also be configured for the different l4 protocol.

Fixes: 0b952714e9c1 ("net/ice: refactor PF hash flow")
Fixes: de32fa2ba27b ("net/ice: support RSS for IPv6 prefix")

Signed-off-by: Jeff Guo <jia.guo@intel.com>
---
 drivers/net/ice/ice_hash.c | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/drivers/net/ice/ice_hash.c b/drivers/net/ice/ice_hash.c
index 05388b412..13f88d37c 100644
--- a/drivers/net/ice/ice_hash.c
+++ b/drivers/net/ice/ice_hash.c
@@ -506,6 +506,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_UDP_DST_PORT)},
 	{ETH_RSS_NONFRAG_IPV4_UDP | ETH_RSS_L3_SRC_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_SA)},
 	{ETH_RSS_NONFRAG_IPV4_UDP | ETH_RSS_L3_DST_ONLY | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_DA) |
@@ -516,6 +517,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_UDP_DST_PORT)},
 	{ETH_RSS_NONFRAG_IPV4_UDP | ETH_RSS_L3_DST_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_DA)},
 	{ETH_RSS_NONFRAG_IPV4_UDP | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_UDP_SRC_PORT) |
@@ -535,6 +537,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_TCP_DST_PORT)},
 	{ETH_RSS_NONFRAG_IPV4_TCP | ETH_RSS_L3_SRC_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_SA)},
 	{ETH_RSS_NONFRAG_IPV4_TCP | ETH_RSS_L3_DST_ONLY | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_DA) |
@@ -545,6 +548,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_TCP_DST_PORT)},
 	{ETH_RSS_NONFRAG_IPV4_TCP | ETH_RSS_L3_DST_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_DA)},
 	{ETH_RSS_NONFRAG_IPV4_TCP | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_TCP_SRC_PORT) |
@@ -564,6 +568,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_SCTP_DST_PORT)},
 	{ETH_RSS_NONFRAG_IPV4_SCTP | ETH_RSS_L3_SRC_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_SA)},
 	{ETH_RSS_NONFRAG_IPV4_SCTP | ETH_RSS_L3_DST_ONLY | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_DA) |
@@ -574,6 +579,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_SCTP_DST_PORT)},
 	{ETH_RSS_NONFRAG_IPV4_SCTP | ETH_RSS_L3_DST_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV4_DA)},
 	{ETH_RSS_NONFRAG_IPV4_SCTP | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_SCTP_SRC_PORT) |
@@ -614,6 +620,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_UDP_DST_PORT)},
 	{ETH_RSS_NONFRAG_IPV6_UDP | ETH_RSS_L3_SRC_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_SA)},
 	{ETH_RSS_NONFRAG_IPV6_UDP | ETH_RSS_L3_DST_ONLY | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_DA) |
@@ -624,6 +631,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_UDP_DST_PORT)},
 	{ETH_RSS_NONFRAG_IPV6_UDP | ETH_RSS_L3_DST_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_DA)},
 	{ETH_RSS_NONFRAG_IPV6_UDP | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_UDP_SRC_PORT) |
@@ -643,6 +651,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE32_SA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_UDP_DST_PORT)},
 	{ETH_RSS_IPV6_PRE32_UDP | ETH_RSS_L3_SRC_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE32_SA)},
 	{ETH_RSS_IPV6_PRE32_UDP | ETH_RSS_L3_DST_ONLY | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE32_DA) |
@@ -651,6 +660,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE32_DA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_UDP_DST_PORT)},
 	{ETH_RSS_IPV6_PRE32_UDP | ETH_RSS_L3_DST_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE32_DA)},
 	{ETH_RSS_IPV6_PRE32_UDP | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_UDP_SRC_PORT)},
@@ -664,6 +674,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE48_SA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_UDP_DST_PORT)},
 	{ETH_RSS_IPV6_PRE48_UDP | ETH_RSS_L3_SRC_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE48_SA)},
 	{ETH_RSS_IPV6_PRE48_UDP | ETH_RSS_L3_DST_ONLY | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE48_DA) |
@@ -672,6 +683,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE48_DA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_UDP_DST_PORT)},
 	{ETH_RSS_IPV6_PRE48_UDP | ETH_RSS_L3_DST_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE48_DA)},
 	{ETH_RSS_IPV6_PRE48_UDP | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_UDP_SRC_PORT)},
@@ -685,6 +697,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE64_SA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_UDP_DST_PORT)},
 	{ETH_RSS_IPV6_PRE64_UDP | ETH_RSS_L3_SRC_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE64_SA)},
 	{ETH_RSS_IPV6_PRE64_UDP | ETH_RSS_L3_DST_ONLY | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE64_DA) |
@@ -693,6 +706,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE64_DA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_UDP_DST_PORT)},
 	{ETH_RSS_IPV6_PRE64_UDP | ETH_RSS_L3_DST_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE64_DA)},
 	{ETH_RSS_IPV6_PRE64_UDP | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_UDP_SRC_PORT)},
@@ -708,6 +722,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_TCP_DST_PORT)},
 	{ETH_RSS_NONFRAG_IPV6_TCP | ETH_RSS_L3_SRC_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_SA)},
 	{ETH_RSS_NONFRAG_IPV6_TCP | ETH_RSS_L3_DST_ONLY | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_DA) |
@@ -718,6 +733,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_TCP_DST_PORT)},
 	{ETH_RSS_NONFRAG_IPV6_TCP | ETH_RSS_L3_DST_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_DA)},
 	{ETH_RSS_NONFRAG_IPV6_TCP | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_TCP_SRC_PORT) |
@@ -735,6 +751,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE32_SA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_TCP_DST_PORT)},
 	{ETH_RSS_IPV6_PRE32_TCP | ETH_RSS_L3_SRC_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE32_SA)},
 	{ETH_RSS_IPV6_PRE32_TCP | ETH_RSS_L3_DST_ONLY | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE32_DA) |
@@ -743,6 +760,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE32_DA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_TCP_DST_PORT)},
 	{ETH_RSS_IPV6_PRE32_TCP | ETH_RSS_L3_DST_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE32_DA)},
 	{ETH_RSS_IPV6_PRE32_TCP | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_TCP_SRC_PORT)},
@@ -756,6 +774,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE48_SA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_TCP_DST_PORT)},
 	{ETH_RSS_IPV6_PRE48_TCP | ETH_RSS_L3_SRC_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE48_SA)},
 	{ETH_RSS_IPV6_PRE48_TCP | ETH_RSS_L3_DST_ONLY | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE48_DA) |
@@ -764,6 +783,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE48_DA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_TCP_DST_PORT)},
 	{ETH_RSS_IPV6_PRE48_TCP | ETH_RSS_L3_DST_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE48_DA)},
 	{ETH_RSS_IPV6_PRE48_TCP | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_TCP_SRC_PORT)},
@@ -777,6 +797,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE64_SA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_TCP_DST_PORT)},
 	{ETH_RSS_IPV6_PRE64_TCP | ETH_RSS_L3_SRC_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE64_SA)},
 	{ETH_RSS_IPV6_PRE64_TCP | ETH_RSS_L3_DST_ONLY | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE64_DA) |
@@ -785,6 +806,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE64_DA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_TCP_DST_PORT)},
 	{ETH_RSS_IPV6_PRE64_TCP | ETH_RSS_L3_DST_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE64_DA)},
 	{ETH_RSS_IPV6_PRE64_TCP | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_TCP_SRC_PORT)},
@@ -800,6 +822,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_SCTP_DST_PORT)},
 	{ETH_RSS_NONFRAG_IPV6_SCTP | ETH_RSS_L3_SRC_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_SA)},
 	{ETH_RSS_NONFRAG_IPV6_SCTP | ETH_RSS_L3_DST_ONLY | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_DA) |
@@ -810,6 +833,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_SCTP_DST_PORT)},
 	{ETH_RSS_NONFRAG_IPV6_SCTP | ETH_RSS_L3_DST_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_DA)},
 	{ETH_RSS_NONFRAG_IPV6_SCTP | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_SCTP_SRC_PORT) |
@@ -827,6 +851,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE32_SA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_SCTP_DST_PORT)},
 	{ETH_RSS_IPV6_PRE32_SCTP | ETH_RSS_L3_SRC_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE32_SA)},
 	{ETH_RSS_IPV6_PRE32_SCTP | ETH_RSS_L3_DST_ONLY | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE32_DA) |
@@ -835,6 +860,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE32_DA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_SCTP_DST_PORT)},
 	{ETH_RSS_IPV6_PRE32_SCTP | ETH_RSS_L3_DST_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE32_DA)},
 	{ETH_RSS_IPV6_PRE32_SCTP | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_SCTP_SRC_PORT)},
@@ -848,6 +874,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE48_SA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_SCTP_DST_PORT)},
 	{ETH_RSS_IPV6_PRE48_SCTP | ETH_RSS_L3_SRC_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE48_SA)},
 	{ETH_RSS_IPV6_PRE48_SCTP | ETH_RSS_L3_DST_ONLY | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE48_DA) |
@@ -856,6 +883,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE48_DA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_SCTP_DST_PORT)},
 	{ETH_RSS_IPV6_PRE48_SCTP | ETH_RSS_L3_DST_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE48_DA)},
 	{ETH_RSS_IPV6_PRE48_SCTP | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_SCTP_SRC_PORT)},
@@ -869,6 +897,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE64_SA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_SCTP_DST_PORT)},
 	{ETH_RSS_IPV6_PRE64_SCTP | ETH_RSS_L3_SRC_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE64_SA)},
 	{ETH_RSS_IPV6_PRE64_SCTP | ETH_RSS_L3_DST_ONLY | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE64_DA) |
@@ -877,6 +906,7 @@ struct ice_hash_match_type ice_hash_type_list[] = {
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE64_DA) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_SCTP_DST_PORT)},
 	{ETH_RSS_IPV6_PRE64_SCTP | ETH_RSS_L3_DST_ONLY,
+		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PROT) |
 		BIT_ULL(ICE_FLOW_FIELD_IDX_IPV6_PRE64_DA)},
 	{ETH_RSS_IPV6_PRE64_SCTP | ETH_RSS_L4_SRC_ONLY,
 		BIT_ULL(ICE_FLOW_FIELD_IDX_SCTP_SRC_PORT)},
-- 
2.20.1


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [dpdk-dev] [dpdk-dev v1] net/ice: fix issue for GTPU l4 hash
  2020-07-21  2:32 [dpdk-dev] [dpdk-dev v1] net/ice: fix issue for GTPU l4 hash Jeff Guo
@ 2020-07-21  5:19 ` Zhang, Qi Z
  0 siblings, 0 replies; 2+ messages in thread
From: Zhang, Qi Z @ 2020-07-21  5:19 UTC (permalink / raw)
  To: Guo, Jia, Yang, Qiming; +Cc: dev, Su, Simei



> -----Original Message-----
> From: Guo, Jia <jia.guo@intel.com>
> Sent: Tuesday, July 21, 2020 10:33 AM
> To: Zhang, Qi Z <qi.z.zhang@intel.com>; Yang, Qiming <qiming.yang@intel.com>
> Cc: dev@dpdk.org; Su, Simei <simei.su@intel.com>; Guo, Jia <jia.guo@intel.com>
> Subject: [dpdk-dev v1] net/ice: fix issue for GTPU l4 hash
> 
> When the configure pattern involve GTPU inner l3 and l4, even the configure
> input set only l3 but not l4, the different l4 protocol header should also be
> configured for the different l4 protocol.
> 
> Fixes: 0b952714e9c1 ("net/ice: refactor PF hash flow")
> Fixes: de32fa2ba27b ("net/ice: support RSS for IPv6 prefix")

Acked-by: Qi Zhang <qi.z.zhang@intel.com>

Applied to dpdk-next-net-intel.

Thanks
Qi

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-07-21  5:19 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-21  2:32 [dpdk-dev] [dpdk-dev v1] net/ice: fix issue for GTPU l4 hash Jeff Guo
2020-07-21  5:19 ` Zhang, Qi Z

DPDK patches and discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://inbox.dpdk.org/dev/0 dev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dev dev/ https://inbox.dpdk.org/dev \
		dev@dpdk.org
	public-inbox-index dev

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.dev


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git