patch 'net/mlx5: fix access to auxiliary flow data' has been queued to stable release 24.11.3

Kevin Traynor ktraynor at redhat.com
Fri Jul 18 21:30:38 CEST 2025


Hi,

FYI, your patch has been queued to stable release 24.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 07/23/25. 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/kevintraynor/dpdk-stable

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable/commit/dfaef2bbf027ae77412ea60834d66ad4a13d051b

Thanks.

Kevin

---
>From dfaef2bbf027ae77412ea60834d66ad4a13d051b Mon Sep 17 00:00:00 2001
From: Gregory Etelson <getelson at nvidia.com>
Date: Wed, 25 Jun 2025 12:43:39 +0300
Subject: [PATCH] net/mlx5: fix access to auxiliary flow data

[ upstream commit 92a5b06c150ec5c28d7fb734d1ea1e7d5b4cb26f ]

The MLX5 PMD keeps non-essential flow data in an auxiliary structure
to reduce flow L1 cache usage.

The auxiliary data location differs in template and non-template flows.

The PMD tried to fetch flow template table from a non-template flow object
and accessed stale memory address.

This change separates the `mlx5_flow_hw_aux()` implementation
for async template and sync non-template flows.

Fixes: 27d171b88031 ("net/mlx5: abstract flow action and enable reconfigure")

Signed-off-by: Gregory Etelson <getelson at nvidia.com>
Acked-by: Dariusz Sosnowski <dsosnowski at nvidia.com>
---
 drivers/net/mlx5/mlx5_flow_hw.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)

diff --git a/drivers/net/mlx5/mlx5_flow_hw.c b/drivers/net/mlx5/mlx5_flow_hw.c
index f60b7b0cc0..6781bad9b7 100644
--- a/drivers/net/mlx5/mlx5_flow_hw.c
+++ b/drivers/net/mlx5/mlx5_flow_hw.c
@@ -130,10 +130,14 @@ mlx5_flow_hw_aux(uint16_t port_id, struct rte_flow_hw *flow)
 	struct rte_flow_template_table *table = flow->table;
 
-	if (rte_flow_template_table_resizable(port_id, &table->cfg.attr)) {
-		size_t offset = sizeof(struct rte_flow_hw) + mlx5dr_rule_get_handle_size();
+	if (!flow->nt_rule) {
+		if (rte_flow_template_table_resizable(port_id, &table->cfg.attr)) {
+			size_t offset = sizeof(struct rte_flow_hw) + mlx5dr_rule_get_handle_size();
 
-		return RTE_PTR_ADD(flow, offset);
+			return RTE_PTR_ADD(flow, offset);
+		} else {
+			return &table->flow_aux[flow->idx - 1];
+		}
 	} else {
-		return ((flow->nt_rule) ? flow->nt2hws->flow_aux : &table->flow_aux[flow->idx - 1]);
+		return flow->nt2hws->flow_aux;
 	}
 }
-- 
2.50.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2025-07-18 20:29:14.603789381 +0100
+++ 0104-net-mlx5-fix-access-to-auxiliary-flow-data.patch	2025-07-18 20:29:11.026907625 +0100
@@ -1 +1 @@
-From 92a5b06c150ec5c28d7fb734d1ea1e7d5b4cb26f Mon Sep 17 00:00:00 2001
+From dfaef2bbf027ae77412ea60834d66ad4a13d051b Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 92a5b06c150ec5c28d7fb734d1ea1e7d5b4cb26f ]
+
@@ -18 +19,0 @@
-Cc: stable at dpdk.org
@@ -27 +28 @@
-index f7f85effba..a211b8ac52 100644
+index f60b7b0cc0..6781bad9b7 100644



More information about the stable mailing list