[dpdk-stable] patch 'net/mlx5: fix RSS flow action hash type selection' has been queued to stable release 18.08.1

Kevin Traynor ktraynor at redhat.com
Tue Nov 20 20:12:04 CET 2018


Hi,

FYI, your patch has been queued to stable release 18.08.1

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 11/23/18. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the patch applied
to the branch. If the code is different (ie: not only metadata diffs), due for example to
a change in context or macro names, please double check it.

Thanks.

Kevin Traynor

---
>From faf304b4e6a64deb7ac6cf57cacb35ce4cdf4c83 Mon Sep 17 00:00:00 2001
From: Shahaf Shuler <shahafs at mellanox.com>
Date: Tue, 14 Aug 2018 14:17:21 +0300
Subject: [PATCH] net/mlx5: fix RSS flow action hash type selection

[ upstream commit b8ac090835339d69e23208360a9b43f39c4016eb ]

On the code after the below commits, the criteria to select the IPV4 or
IPV6 hash functions was the existence of some ETH_RSS_IPV4 RSS types on
the flow rule.

The check is wrong. For example ETH_RSS_NONFRAG_IPV4_TCP will not select
the IPV4 hash which will cause the packet to be spread in a bad way.

Fix it by adding the corresponding types needed for each hash selection.

Fixes: 592f05b29a25 ("net/mlx5: add RSS flow action")
Fixes: fd0b70316bca ("net/mlx5: support inner RSS computation")

Reported-by: Yaroslav Brustinov <ybrustin at cisco.com>
Signed-off-by: Shahaf Shuler <shahafs at mellanox.com>
Acked-by: Yongseok Koh <yskoh at mellanox.com>
---
 drivers/net/mlx5/mlx5_flow.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c
index ca4625b69..3f548a9a4 100644
--- a/drivers/net/mlx5/mlx5_flow.c
+++ b/drivers/net/mlx5/mlx5_flow.c
@@ -1054,4 +1054,6 @@ mlx5_flow_item_ipv4(const struct rte_flow_item *item, struct rte_flow *flow,
 			(flow, tunnel,
 			 (ETH_RSS_IPV4 | ETH_RSS_FRAG_IPV4 |
+			  ETH_RSS_NONFRAG_IPV4_TCP |
+			  ETH_RSS_NONFRAG_IPV4_UDP |
 			  ETH_RSS_NONFRAG_IPV4_OTHER),
 			 (IBV_RX_HASH_SRC_IPV4 | IBV_RX_HASH_DST_IPV4));
@@ -1189,5 +1191,8 @@ mlx5_flow_item_ipv6(const struct rte_flow_item *item, struct rte_flow *flow,
 		mlx5_flow_verbs_hashfields_adjust
 			(flow, tunnel,
-			 (ETH_RSS_IPV6 | ETH_RSS_NONFRAG_IPV6_OTHER),
+			 (ETH_RSS_IPV6 | ETH_RSS_FRAG_IPV6 |
+			  ETH_RSS_NONFRAG_IPV6_TCP | ETH_RSS_NONFRAG_IPV6_UDP |
+			  ETH_RSS_NONFRAG_IPV6_OTHER | ETH_RSS_IPV6_EX |
+			  ETH_RSS_IPV6_TCP_EX | ETH_RSS_IPV6_UDP_EX),
 			 (IBV_RX_HASH_SRC_IPV6 | IBV_RX_HASH_DST_IPV6));
 		flow->cur_verbs->attr->priority = MLX5_PRIORITY_MAP_L3;
-- 
2.19.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2018-11-20 17:53:07.799988070 +0000
+++ 0014-net-mlx5-fix-RSS-flow-action-hash-type-selection.patch	2018-11-20 17:53:07.000000000 +0000
@@ -1,8 +1,10 @@
-From b8ac090835339d69e23208360a9b43f39c4016eb Mon Sep 17 00:00:00 2001
+From faf304b4e6a64deb7ac6cf57cacb35ce4cdf4c83 Mon Sep 17 00:00:00 2001
 From: Shahaf Shuler <shahafs at mellanox.com>
 Date: Tue, 14 Aug 2018 14:17:21 +0300
 Subject: [PATCH] net/mlx5: fix RSS flow action hash type selection
 
+[ upstream commit b8ac090835339d69e23208360a9b43f39c4016eb ]
+
 On the code after the below commits, the criteria to select the IPV4 or
 IPV6 hash functions was the existence of some ETH_RSS_IPV4 RSS types on
 the flow rule.
@@ -14,7 +16,6 @@
 
 Fixes: 592f05b29a25 ("net/mlx5: add RSS flow action")
 Fixes: fd0b70316bca ("net/mlx5: support inner RSS computation")
-Cc: stable at dpdk.org
 
 Reported-by: Yaroslav Brustinov <ybrustin at cisco.com>
 Signed-off-by: Shahaf Shuler <shahafs at mellanox.com>


More information about the stable mailing list