patch 'net/mlx5: remove device status check in flow creation' has been queued to stable release 22.11.5
luca.boccassi at gmail.com
luca.boccassi at gmail.com
Thu Mar 14 01:09:46 CET 2024
Hi,
FYI, your patch has been queued to stable release 22.11.5
Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 03/16/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://github.com/bluca/dpdk-stable
This queued commit can be viewed at:
https://github.com/bluca/dpdk-stable/commit/fccac369b501cd5dff9c89326f5c307155030717
Thanks.
Luca Boccassi
---
>From fccac369b501cd5dff9c89326f5c307155030717 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
[ 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 fe50d23987..20fa4eee0c 100644
--- a/drivers/net/mlx5/mlx5_flow_hw.c
+++ b/drivers/net/mlx5/mlx5_flow_hw.c
@@ -2514,10 +2514,6 @@ flow_hw_async_flow_create(struct rte_eth_dev *dev,
uint32_t flow_idx;
int ret;
- if (unlikely((!dev->data->dev_started))) {
- rte_errno = EINVAL;
- goto error;
- }
if (unlikely(!priv->hw_q[queue].job_idx)) {
rte_errno = ENOMEM;
goto error;
--
2.39.2
---
Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- - 2024-03-14 00:09:23.009107573 +0000
+++ 0050-net-mlx5-remove-device-status-check-in-flow-creation.patch 2024-03-14 00:09:20.705617048 +0000
@@ -1 +1 @@
-From 4095ce34095e33ae9e8b19150b9280ff8737a590 Mon Sep 17 00:00:00 2001
+From fccac369b501cd5dff9c89326f5c307155030717 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 4095ce34095e33ae9e8b19150b9280ff8737a590 ]
+
@@ -14 +15,0 @@
-Cc: stable at dpdk.org
@@ -19,2 +20,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 +24 @@
-index 6f43e88864..8ca866059d 100644
+index fe50d23987..20fa4eee0c 100644
@@ -26,2 +27,2 @@
-@@ -3526,11 +3526,6 @@ flow_hw_async_flow_create(struct rte_eth_dev *dev,
- uint32_t res_idx = 0;
+@@ -2514,10 +2514,6 @@ flow_hw_async_flow_create(struct rte_eth_dev *dev,
+ uint32_t flow_idx;
@@ -31,3 +32,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,2 +35,2 @@
- flow = mlx5_ipool_malloc(table->flow, &flow_idx);
- if (!flow)
+ if (unlikely(!priv->hw_q[queue].job_idx)) {
+ rte_errno = ENOMEM;
More information about the stable
mailing list