[dpdk-dev] [PATCH 3/5] net/mlx5: fix RSS tunneled flow without outer

Nelio Laranjeiro nelio.laranjeiro at 6wind.com
Tue Oct 31 16:51:12 CET 2017


Allow to use the RSS when the outer part of the packet is not defined.  The
RSS is still performed on the outer.
This modification only serves the internal engine to create the necessary
Verbs flows according to the user request.

Fixes: 39797c6db80b ("net/mlx5: fix RSS action for tunneled packets")
Cc: shahafs at mellanox.com

Signed-off-by: Nelio Laranjeiro <nelio.laranjeiro at 6wind.com>
---
 drivers/net/mlx5/mlx5_flow.c | 9 +++------
 1 file changed, 3 insertions(+), 6 deletions(-)

diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c
index a7864871c..fcc9a260e 100644
--- a/drivers/net/mlx5/mlx5_flow.c
+++ b/drivers/net/mlx5/mlx5_flow.c
@@ -1010,15 +1010,13 @@ priv_flow_convert_finalise(struct priv *priv, struct mlx5_flow_parse *parser)
 			if (hash_rxq_init[i].ip_version == MLX5_IPV4) {
 				size = sizeof(struct ibv_flow_spec_ipv4_ext);
 				specs.ipv4 = (struct ibv_flow_spec_ipv4_ext){
-					.type = IBV_FLOW_SPEC_IPV4_EXT |
-						parser->inner,
+					.type = IBV_FLOW_SPEC_IPV4_EXT,
 					.size = size,
 				};
 			} else {
 				size = sizeof(struct ibv_flow_spec_ipv6);
 				specs.ipv6 = (struct ibv_flow_spec_ipv6){
-					.type = IBV_FLOW_SPEC_IPV6 |
-						parser->inner,
+					.type = IBV_FLOW_SPEC_IPV6,
 					.size = size,
 				};
 			}
@@ -1038,8 +1036,7 @@ priv_flow_convert_finalise(struct priv *priv, struct mlx5_flow_parse *parser)
 				.type = ((i == HASH_RXQ_UDPV4 ||
 					  i == HASH_RXQ_UDPV6) ?
 					 IBV_FLOW_SPEC_UDP :
-					 IBV_FLOW_SPEC_TCP) |
-					parser->inner,
+					 IBV_FLOW_SPEC_TCP),
 				.size = size,
 			};
 			if (parser->queue[i].ibv_attr) {
-- 
2.11.0



More information about the dev mailing list