patch 'net/mlx5: reject jump to root table' has been queued to stable release 19.11.12

christian.ehrhardt at canonical.com christian.ehrhardt at canonical.com
Fri Feb 25 18:15:22 CET 2022


Hi,

FYI, your patch has been queued to stable release 19.11.12

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 02/27/22. 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://github.com/cpaelzer/dpdk-stable-queue

This queued commit can be viewed at:
https://github.com/cpaelzer/dpdk-stable-queue/commit/7e275590e51019b5b34b86c54b0d126523da93ae

Thanks.

Christian Ehrhardt <christian.ehrhardt at canonical.com>

---
>From 7e275590e51019b5b34b86c54b0d126523da93ae Mon Sep 17 00:00:00 2001
From: Xiaoyu Min <jackmin at nvidia.com>
Date: Tue, 18 Jan 2022 19:38:50 +0800
Subject: [PATCH] net/mlx5: reject jump to root table

[ upstream commit 87b26522f7ff65375fb1d773a7f93c70bf857b96 ]

Currently root table as destination is not supported.
The jump action which finally be translated to underlying root table in
rdma-core should be rejected.

Fixes: f78f747f41d0 ("net/mlx5: allow jump to group lower than current")

Signed-off-by: Xiaoyu Min <jackmin at nvidia.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo at nvidia.com>
---
 drivers/net/mlx5/mlx5_flow_dv.c | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/drivers/net/mlx5/mlx5_flow_dv.c b/drivers/net/mlx5/mlx5_flow_dv.c
index e16a98be3b..6f0876f233 100644
--- a/drivers/net/mlx5/mlx5_flow_dv.c
+++ b/drivers/net/mlx5/mlx5_flow_dv.c
@@ -3487,7 +3487,7 @@ flow_dv_validate_action_jump(const struct rte_flow_action *action,
 			     const struct rte_flow_attr *attributes,
 			     bool external, struct rte_flow_error *error)
 {
-	uint32_t target_group, table;
+	uint32_t target_group, table = 0;
 	int ret = 0;
 
 	if (action_flags & (MLX5_FLOW_FATE_ACTIONS |
@@ -3515,6 +3515,10 @@ flow_dv_validate_action_jump(const struct rte_flow_action *action,
 					  RTE_FLOW_ERROR_TYPE_ACTION, NULL,
 					  "target group must be other than"
 					  " the current flow group");
+	if (table == 0)
+		return rte_flow_error_set(error, EINVAL,
+					  RTE_FLOW_ERROR_TYPE_ACTION_CONF,
+					  NULL, "root table shouldn't be destination");
 	return 0;
 }
 
-- 
2.35.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2022-02-25 16:58:45.391847134 +0100
+++ 0029-net-mlx5-reject-jump-to-root-table.patch	2022-02-25 16:58:44.244990416 +0100
@@ -1 +1 @@
-From 87b26522f7ff65375fb1d773a7f93c70bf857b96 Mon Sep 17 00:00:00 2001
+From 7e275590e51019b5b34b86c54b0d126523da93ae Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 87b26522f7ff65375fb1d773a7f93c70bf857b96 ]
+
@@ -11 +12,0 @@
-Cc: stable at dpdk.org
@@ -20 +21 @@
-index 18992b1e26..af90a7fd0a 100644
+index e16a98be3b..6f0876f233 100644
@@ -23 +24 @@
-@@ -4968,7 +4968,7 @@ flow_dv_validate_action_jump(struct rte_eth_dev *dev,
+@@ -3487,7 +3487,7 @@ flow_dv_validate_action_jump(const struct rte_flow_action *action,
@@ -30,3 +31,3 @@
- 	struct flow_grp_info grp_info = {
- 		.external = !!external,
-@@ -4999,6 +4999,10 @@ flow_dv_validate_action_jump(struct rte_eth_dev *dev,
+ 
+ 	if (action_flags & (MLX5_FLOW_FATE_ACTIONS |
+@@ -3515,6 +3515,10 @@ flow_dv_validate_action_jump(const struct rte_flow_action *action,


More information about the stable mailing list