patch 'net/mlx5: fix flex item tunnel mode' has been queued to stable release 23.11.3
Xueming Li
xuemingl at nvidia.com
Mon Nov 11 07:28:33 CET 2024
Hi,
FYI, your patch has been queued to stable release 23.11.3
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/30/24. 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. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.
Queued patches are on a temporary branch at:
https://git.dpdk.org/dpdk-stable/log/?h=23.11-staging
This queued commit can be viewed at:
https://git.dpdk.org/dpdk-stable/commit/?h=23.11-staging&id=06b70793f9f1885d71895b16d648be571c8045c1
Thanks.
Xueming Li <xuemingl at nvidia.com>
---
>From 06b70793f9f1885d71895b16d648be571c8045c1 Mon Sep 17 00:00:00 2001
From: Viacheslav Ovsiienko <viacheslavo at nvidia.com>
Date: Wed, 18 Sep 2024 16:46:18 +0300
Subject: [PATCH] net/mlx5: fix flex item tunnel mode
Cc: Xueming Li <xuemingl at nvidia.com>
[ upstream commit e46b26663de964b54ed9fc2e7eade07261d8e396 ]
The RTE flex item can represent tunnel header itself,
and split inner and outer items, it should be reflected
in the item flags while PMD is processing the item array.
Fixes: 8c0ca7527bc8 ("net/mlx5/hws: support flex item matching")
Signed-off-by: Viacheslav Ovsiienko <viacheslavo at nvidia.com>
Acked-by: Dariusz Sosnowski <dsosnowski at nvidia.com>
---
drivers/net/mlx5/mlx5_flow_hw.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/drivers/net/mlx5/mlx5_flow_hw.c b/drivers/net/mlx5/mlx5_flow_hw.c
index af4df13b2f..ca2611942e 100644
--- a/drivers/net/mlx5/mlx5_flow_hw.c
+++ b/drivers/net/mlx5/mlx5_flow_hw.c
@@ -394,6 +394,7 @@ flow_hw_matching_item_flags_get(const struct rte_flow_item items[])
uint64_t last_item = 0;
for (; items->type != RTE_FLOW_ITEM_TYPE_END; items++) {
+ enum rte_flow_item_flex_tunnel_mode tunnel_mode = FLEX_TUNNEL_MODE_SINGLE;
int tunnel = !!(item_flags & MLX5_FLOW_LAYER_TUNNEL);
int item_type = items->type;
@@ -439,6 +440,13 @@ flow_hw_matching_item_flags_get(const struct rte_flow_item items[])
case RTE_FLOW_ITEM_TYPE_GTP:
last_item = MLX5_FLOW_LAYER_GTP;
break;
+ break;
+ case RTE_FLOW_ITEM_TYPE_FLEX:
+ mlx5_flex_get_tunnel_mode(items, &tunnel_mode);
+ last_item = tunnel_mode == FLEX_TUNNEL_MODE_TUNNEL ?
+ MLX5_FLOW_ITEM_FLEX_TUNNEL :
+ tunnel ? MLX5_FLOW_ITEM_INNER_FLEX :
+ MLX5_FLOW_ITEM_OUTER_FLEX;
default:
break;
}
--
2.34.1
---
Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- - 2024-11-11 14:23:10.103428639 +0800
+++ 0107-net-mlx5-fix-flex-item-tunnel-mode.patch 2024-11-11 14:23:05.312192836 +0800
@@ -1 +1 @@
-From e46b26663de964b54ed9fc2e7eade07261d8e396 Mon Sep 17 00:00:00 2001
+From 06b70793f9f1885d71895b16d648be571c8045c1 Mon Sep 17 00:00:00 2001
@@ -4,0 +5,3 @@
+Cc: Xueming Li <xuemingl at nvidia.com>
+
+[ upstream commit e46b26663de964b54ed9fc2e7eade07261d8e396 ]
@@ -11 +13,0 @@
-Cc: stable at dpdk.org
@@ -20 +22 @@
-index 279ffdc03a..986fd8a93d 100644
+index af4df13b2f..ca2611942e 100644
@@ -23 +25 @@
-@@ -558,6 +558,7 @@ flow_hw_matching_item_flags_get(const struct rte_flow_item items[])
+@@ -394,6 +394,7 @@ flow_hw_matching_item_flags_get(const struct rte_flow_item items[])
@@ -31,3 +33,3 @@
-@@ -606,6 +607,13 @@ flow_hw_matching_item_flags_get(const struct rte_flow_item items[])
- case RTE_FLOW_ITEM_TYPE_COMPARE:
- last_item = MLX5_FLOW_ITEM_COMPARE;
+@@ -439,6 +440,13 @@ flow_hw_matching_item_flags_get(const struct rte_flow_item items[])
+ case RTE_FLOW_ITEM_TYPE_GTP:
+ last_item = MLX5_FLOW_LAYER_GTP;
@@ -34,0 +37 @@
++ break;
@@ -41 +43,0 @@
-+ break;
More information about the stable
mailing list