patch 'net/mlx5: remove device status check in flow creation' has been queued to stable release 23.11.1

Xueming Li xuemingl at nvidia.com
Sat Apr 13 14:49:02 CEST 2024


Hi,

FYI, your patch has been queued to stable release 23.11.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 04/15/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=272feb8eb990b5ef05604e0359d39dc5650f449c

Thanks.

Xueming Li <xuemingl at nvidia.com>

---
>From 272feb8eb990b5ef05604e0359d39dc5650f449c Mon Sep 17 00:00:00 2001
From: Bing Zhao <bingz at nvidia.com>
Date: Thu, 29 Feb 2024 12:51:56 +0100
Subject: [PATCH] net/mlx5: remove device status check in flow creation
Cc: Xueming Li <xuemingl at nvidia.com>

[ upstream commit 4095ce34095e33ae9e8b19150b9280ff8737a590 ]

The flow rule can be inserted even before the device started. The
only exception is for a queue or RSS action.

For the other interfaces of template API, the start status is not
checked. The checking would cause some cache miss or eviction since
the flag locates on some other cache line.

Fixes: f1fecffa88df ("net/mlx5: support Direct Rules action template API")

Signed-off-by: Bing Zhao <bingz at nvidia.com>
Acked-by: Ori Kam <orika at nvidia.com>
---
 drivers/net/mlx5/mlx5_flow_hw.c | 4 ----
 1 file changed, 4 deletions(-)

diff --git a/drivers/net/mlx5/mlx5_flow_hw.c b/drivers/net/mlx5/mlx5_flow_hw.c
index 7e4ead1875..6aaf3aee2a 100644
--- a/drivers/net/mlx5/mlx5_flow_hw.c
+++ b/drivers/net/mlx5/mlx5_flow_hw.c
@@ -3322,10 +3322,6 @@ flow_hw_async_flow_create(struct rte_eth_dev *dev,
 	uint32_t res_idx = 0;
 	int ret;
 
-	if (unlikely((!dev->data->dev_started))) {
-		rte_errno = EINVAL;
-		goto error;
-	}
 	job = flow_hw_job_get(priv, queue);
 	if (!job) {
 		rte_errno = ENOMEM;
-- 
2.34.1

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2024-04-13 20:43:06.968868057 +0800
+++ 0062-net-mlx5-remove-device-status-check-in-flow-creation.patch	2024-04-13 20:43:05.017753905 +0800
@@ -1 +1 @@
-From 4095ce34095e33ae9e8b19150b9280ff8737a590 Mon Sep 17 00:00:00 2001
+From 272feb8eb990b5ef05604e0359d39dc5650f449c Mon Sep 17 00:00:00 2001
@@ -4,0 +5,3 @@
+Cc: Xueming Li <xuemingl at nvidia.com>
+
+[ upstream commit 4095ce34095e33ae9e8b19150b9280ff8737a590 ]
@@ -14 +16,0 @@
-Cc: stable at dpdk.org
@@ -19,2 +21,2 @@
- drivers/net/mlx5/mlx5_flow_hw.c | 5 -----
- 1 file changed, 5 deletions(-)
+ drivers/net/mlx5/mlx5_flow_hw.c | 4 ----
+ 1 file changed, 4 deletions(-)
@@ -23 +25 @@
-index 6f43e88864..8ca866059d 100644
+index 7e4ead1875..6aaf3aee2a 100644
@@ -26 +28 @@
-@@ -3526,11 +3526,6 @@ flow_hw_async_flow_create(struct rte_eth_dev *dev,
+@@ -3322,10 +3322,6 @@ flow_hw_async_flow_create(struct rte_eth_dev *dev,
@@ -31,3 +33,2 @@
--		rte_flow_error_set(error, EINVAL, RTE_FLOW_ERROR_TYPE_UNSPECIFIED, NULL,
--				   "Port must be started before enqueueing flow operations");
--		return NULL;
+-		rte_errno = EINVAL;
+-		goto error;
@@ -35,3 +36,3 @@
- 	flow = mlx5_ipool_malloc(table->flow, &flow_idx);
- 	if (!flow)
- 		goto error;
+ 	job = flow_hw_job_get(priv, queue);
+ 	if (!job) {
+ 		rte_errno = ENOMEM;


More information about the stable mailing list