patch 'ethdev: fix error struct in flow configure' has been queued to stable release 23.11.5
Xueming Li
xuemingl at nvidia.com
Thu Jun 26 14:01:21 CEST 2025
Hi,
FYI, your patch has been queued to stable release 23.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 06/28/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://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=87abb5b57dcf720c4ec72799664d16fcae1736b8
Thanks.
Xueming Li <xuemingl at nvidia.com>
---
>From 87abb5b57dcf720c4ec72799664d16fcae1736b8 Mon Sep 17 00:00:00 2001
From: Maayan Kashani <mkashani at nvidia.com>
Date: Thu, 29 May 2025 08:56:10 +0300
Subject: [PATCH] ethdev: fix error struct in flow configure
Cc: Xueming Li <xuemingl at nvidia.com>
[ upstream commit af7ac22d8da82398065d5f3c799c17a7cec3a6af ]
rte_flow_configure() returned error value w/o filling the
error struct which caused a crash on complain function.
Filling the error struct fixed the issue.
Fixes: 4ff58b734bc9 ("ethdev: introduce flow engine configuration")
Signed-off-by: Maayan Kashani <mkashani at nvidia.com>
---
lib/ethdev/rte_flow.c | 12 ++++++++----
1 file changed, 8 insertions(+), 4 deletions(-)
diff --git a/lib/ethdev/rte_flow.c b/lib/ethdev/rte_flow.c
index fa2a8fedce..cce9e08168 100644
--- a/lib/ethdev/rte_flow.c
+++ b/lib/ethdev/rte_flow.c
@@ -1675,21 +1675,21 @@ rte_flow_configure(uint16_t port_id,
RTE_FLOW_LOG(INFO,
"Device with port_id=%"PRIu16" is not configured.\n",
port_id);
- return -EINVAL;
+ goto error;
}
if (dev->data->dev_started != 0) {
RTE_FLOW_LOG(INFO,
"Device with port_id=%"PRIu16" already started.\n",
port_id);
- return -EINVAL;
+ goto error;
}
if (port_attr == NULL) {
RTE_FLOW_LOG(ERR, "Port %"PRIu16" info is NULL.\n", port_id);
- return -EINVAL;
+ goto error;
}
if (queue_attr == NULL) {
RTE_FLOW_LOG(ERR, "Port %"PRIu16" queue info is NULL.\n", port_id);
- return -EINVAL;
+ goto error;
}
if ((port_attr->flags & RTE_FLOW_PORT_FLAG_SHARE_INDIRECT) &&
!rte_eth_dev_is_valid_port(port_attr->host_port_id)) {
@@ -1710,6 +1710,10 @@ rte_flow_configure(uint16_t port_id,
return rte_flow_error_set(error, ENOTSUP,
RTE_FLOW_ERROR_TYPE_UNSPECIFIED,
NULL, rte_strerror(ENOTSUP));
+error:
+ return rte_flow_error_set(error, EINVAL,
+ RTE_FLOW_ERROR_TYPE_UNSPECIFIED,
+ NULL, rte_strerror(EINVAL));
}
struct rte_flow_pattern_template *
--
2.34.1
---
Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- - 2025-06-26 19:59:20.115243030 +0800
+++ 0061-ethdev-fix-error-struct-in-flow-configure.patch 2025-06-26 19:59:17.446418041 +0800
@@ -1 +1 @@
-From af7ac22d8da82398065d5f3c799c17a7cec3a6af Mon Sep 17 00:00:00 2001
+From 87abb5b57dcf720c4ec72799664d16fcae1736b8 Mon Sep 17 00:00:00 2001
@@ -4,0 +5,3 @@
+Cc: Xueming Li <xuemingl at nvidia.com>
+
+[ upstream commit af7ac22d8da82398065d5f3c799c17a7cec3a6af ]
@@ -12 +14,0 @@
-Cc: stable at dpdk.org
@@ -20 +22 @@
-index 9f8d8f3dc2..fe8f43caff 100644
+index fa2a8fedce..cce9e08168 100644
@@ -23,3 +25,3 @@
-@@ -1725,21 +1725,21 @@ rte_flow_configure(uint16_t port_id,
- FLOW_LOG(INFO,
- "Device with port_id=%"PRIu16" is not configured.",
+@@ -1675,21 +1675,21 @@ rte_flow_configure(uint16_t port_id,
+ RTE_FLOW_LOG(INFO,
+ "Device with port_id=%"PRIu16" is not configured.\n",
@@ -31,2 +33,2 @@
- FLOW_LOG(INFO,
- "Device with port_id=%"PRIu16" already started.",
+ RTE_FLOW_LOG(INFO,
+ "Device with port_id=%"PRIu16" already started.\n",
@@ -38 +40 @@
- FLOW_LOG(ERR, "Port %"PRIu16" info is NULL.", port_id);
+ RTE_FLOW_LOG(ERR, "Port %"PRIu16" info is NULL.\n", port_id);
@@ -43 +45 @@
- FLOW_LOG(ERR, "Port %"PRIu16" queue info is NULL.", port_id);
+ RTE_FLOW_LOG(ERR, "Port %"PRIu16" queue info is NULL.\n", port_id);
@@ -49 +51 @@
-@@ -1760,6 +1760,10 @@ rte_flow_configure(uint16_t port_id,
+@@ -1710,6 +1710,10 @@ rte_flow_configure(uint16_t port_id,
@@ -59 +61 @@
- RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_flow_pattern_template_create, 22.03)
+ struct rte_flow_pattern_template *
More information about the stable
mailing list