patch 'doc: fix API comments for Doxygen 1.18.0' has been queued to stable release 24.11.9
luca.boccassi at gmail.com
luca.boccassi at gmail.com
Tue Oct 27 12:48:20 CET 2026
Hi,
FYI, your patch has been queued to stable release 24.11.9
Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 10/29/26. 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/5c7c0b11beee4f1458b9182840dcb391658c2798
Thanks.
Luca Boccassi
---
>From 5c7c0b11beee4f1458b9182840dcb391658c2798 Mon Sep 17 00:00:00 2001
From: Thomas Monjalon <thomas at monjalon.net>
Date: Thu, 3 Sep 2026 14:38:17 +0200
Subject: [PATCH] doc: fix API comments for Doxygen 1.18.0
[ upstream commit 87dc4e4182a793f1e56a3744104c7065ca8d83fe ]
After upgrading to Doxygen 1.18.0, there are 2 kinds of errors:
- @ref func() for static function is broken because of parens
- @ref struct.member with anonymous struct/union is broken
Parentheses are removed from inline function references.
The second issue is more difficult and requires to degrade the doc
by providing a global link to the struct page for the fields.
The root causes of these issues can be found in these links:
https://github.com/doxygen/doxygen/commit/e1bff01
https://github.com/doxygen/doxygen/issues/12226
Signed-off-by: Thomas Monjalon <thomas at monjalon.net>
Reviewed-by: Stephen Hemminger <stephen at networkplumber.org>
---
lib/eventdev/rte_eventdev.h | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)
diff --git a/lib/eventdev/rte_eventdev.h b/lib/eventdev/rte_eventdev.h
index 7649882b53d..6b5cc991f0b 100644
--- a/lib/eventdev/rte_eventdev.h
+++ b/lib/eventdev/rte_eventdev.h
@@ -744,12 +744,12 @@ enum rte_event_dev_preschedule_type {
RTE_EVENT_PRESCHEDULE_NONE,
/**< Disable pre-schedule across the event device or on a given event port.
* @ref rte_event_dev_config.preschedule_type
- * @ref rte_event_port_preschedule_modify()
+ * @ref rte_event_port_preschedule_modify
*/
RTE_EVENT_PRESCHEDULE,
/**< Enable pre-schedule always across the event device or a given event port.
* @ref rte_event_dev_config.preschedule_type
- * @ref rte_event_port_preschedule_modify()
+ * @ref rte_event_port_preschedule_modify
* @see RTE_EVENT_DEV_CAP_EVENT_PRESCHEDULE
* @see RTE_EVENT_DEV_CAP_PER_PORT_PRESCHEDULE
*/
@@ -758,7 +758,7 @@ enum rte_event_dev_preschedule_type {
* Delay issuing pre-schedule until there are no forward progress constraints with
* the held flow contexts.
* @ref rte_event_dev_config.preschedule_type
- * @ref rte_event_port_preschedule_modify()
+ * @ref rte_event_port_preschedule_modify
* @see RTE_EVENT_DEV_CAP_EVENT_PRESCHEDULE_ADAPTIVE
* @see RTE_EVENT_DEV_CAP_PER_PORT_PRESCHEDULE
*/
@@ -1520,8 +1520,8 @@ struct __rte_aligned(16) rte_event_vector {
*
* NOTE:
* In restoring event order of forwarded events, the eventdev API guarantees that
- * all events from the same flow (i.e. same @ref rte_event.flow_id,
- * @ref rte_event.priority and @ref rte_event.queue_id) will be put in the original
+ * all events from the same flow (i.e. same @ref rte_event "flow_id",
+ * @ref rte_event "priority" and @ref rte_event "queue_id") will be put in the original
* order before being forwarded to the destination queue.
* Some eventdevs may implement stricter ordering to achieve this aim,
* for example, restoring the order across *all* flows dequeued from the same ORDERED
@@ -1533,8 +1533,8 @@ struct __rte_aligned(16) rte_event_vector {
#define RTE_SCHED_TYPE_ATOMIC 1
/**< Atomic scheduling
*
- * Events from an atomic flow, identified by a combination of @ref rte_event.flow_id,
- * @ref rte_event.queue_id and @ref rte_event.priority, can be scheduled only to a
+ * Events from an atomic flow, identified by a combination of @ref rte_event "flow_id",
+ * @ref rte_event "queue_id" and @ref rte_event "priority", can be scheduled only to a
* single port at a time. The port is guaranteed to have exclusive (atomic)
* access to the associated flow context, which enables the user to avoid SW
* synchronization. Atomic flows also maintain event ordering
@@ -1614,12 +1614,12 @@ struct __rte_aligned(16) rte_event_vector {
/* Event enqueue operations */
#define RTE_EVENT_OP_NEW 0
-/**< The @ref rte_event.op field must be set to this operation type to inject a new event,
+/**< The @ref rte_event "op" field must be set to this operation type to inject a new event,
* i.e. one not previously dequeued, into the event device, to be scheduled
* for processing.
*/
#define RTE_EVENT_OP_FORWARD 1
-/**< The application must set the @ref rte_event.op field to this operation type to return a
+/**< The application must set the @ref rte_event "op" field to this operation type to return a
* previously dequeued event to the event device to be scheduled for further processing.
*
* This event *must* be enqueued to the same port that the
@@ -1627,7 +1627,7 @@ struct __rte_aligned(16) rte_event_vector {
*
* The event's fields, including (but not limited to) flow_id, scheduling type,
* destination queue, and event payload e.g. mbuf pointer, may all be updated as
- * desired by the application, but the @ref rte_event.impl_opaque field must
+ * desired by the application, but the @ref rte_event "impl_opaque" field must
* be kept to the same value as was present when the event was dequeued.
*/
#define RTE_EVENT_OP_RELEASE 2
@@ -1655,7 +1655,7 @@ struct __rte_aligned(16) rte_event_vector {
* should be considered filled.
*
* Events with this operation type must only be enqueued to the same port that the
- * event to be released was dequeued from. The @ref rte_event.impl_opaque
+ * event to be released was dequeued from. The @ref rte_event "impl_opaque"
* field in the release event must have the same value as that in the original dequeued event.
*
* If a dequeued event is re-enqueued with operation type of @ref RTE_EVENT_OP_RELEASE,
--
2.47.3
---
Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- - 2026-10-27 11:43:54.012767118 +0000
+++ 0006-doc-fix-API-comments-for-Doxygen-1.18.0.patch 2026-10-27 11:43:53.494058830 +0000
@@ -1 +1 @@
-From 87dc4e4182a793f1e56a3744104c7065ca8d83fe Mon Sep 17 00:00:00 2001
+From 5c7c0b11beee4f1458b9182840dcb391658c2798 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 87dc4e4182a793f1e56a3744104c7065ca8d83fe ]
+
@@ -19,2 +20,0 @@
-Cc: stable at dpdk.org
-
@@ -24,3 +24,2 @@
- lib/eventdev/rte_eventdev.h | 22 +++++++++++-----------
- lib/graph/rte_graph_feature_arc.h | 8 ++++----
- 2 files changed, 15 insertions(+), 15 deletions(-)
+ lib/eventdev/rte_eventdev.h | 22 +++++++++++-----------
+ 1 file changed, 11 insertions(+), 11 deletions(-)
@@ -29 +28 @@
-index 4e13a38d89..db730131f2 100644
+index 7649882b53d..6b5cc991f0b 100644
@@ -56 +55 @@
-@@ -1524,8 +1524,8 @@ struct __rte_aligned(16) rte_event_vector {
+@@ -1520,8 +1520,8 @@ struct __rte_aligned(16) rte_event_vector {
@@ -67 +66 @@
-@@ -1537,8 +1537,8 @@ struct __rte_aligned(16) rte_event_vector {
+@@ -1533,8 +1533,8 @@ struct __rte_aligned(16) rte_event_vector {
@@ -78 +77 @@
-@@ -1618,12 +1618,12 @@ struct __rte_aligned(16) rte_event_vector {
+@@ -1614,12 +1614,12 @@ struct __rte_aligned(16) rte_event_vector {
@@ -93 +92 @@
-@@ -1631,7 +1631,7 @@ struct __rte_aligned(16) rte_event_vector {
+@@ -1627,7 +1627,7 @@ struct __rte_aligned(16) rte_event_vector {
@@ -102 +101 @@
-@@ -1659,7 +1659,7 @@ struct __rte_aligned(16) rte_event_vector {
+@@ -1655,7 +1655,7 @@ struct __rte_aligned(16) rte_event_vector {
@@ -111,34 +109,0 @@
-diff --git a/lib/graph/rte_graph_feature_arc.h b/lib/graph/rte_graph_feature_arc.h
-index 14f24be831..aa6495c4ad 100644
---- a/lib/graph/rte_graph_feature_arc.h
-+++ b/lib/graph/rte_graph_feature_arc.h
-@@ -128,7 +128,7 @@ extern "C" {
- * (like VRF table for IP lookup or IPsec SA for inbound policy etc). A
- * reference of allocated resource can be passed from control plane to
- * dataplane via *app_cookie* argument in @ref rte_graph_feature_enable(). A
-- * corresponding dataplane API @ref rte_graph_feature_data_app_cookie_get() can
-+ * corresponding dataplane API @ref rte_graph_feature_data_app_cookie_get can
- * be used to retrieve same cookie in fast path.
- *
- * When a feature is disabled, resources allocated during feature enable can be
-@@ -138,9 +138,9 @@ extern "C" {
- *
- * If current feature node is not consuming packet, it might want to send it to
- * next enabled feature. Depending upon current node is a:
-- * - start_node (via @ref rte_graph_feature_data_first_feature_get())
-+ * - start_node (via @ref rte_graph_feature_data_first_feature_get)
- * - feature nodes added between start_node and end_node (via @ref
-- * rte_graph_feature_data_next_feature_get())
-+ * rte_graph_feature_data_next_feature_get)
- * - end_feature_node (must not call any feature arc steering APIs) as from
- * this node packet exits feature arc
- *
-@@ -151,7 +151,7 @@ extern "C" {
- *
- * rte_mbuf carries [feature_data] into feature arc specific mbuf dynamic
- * field. See @ref rte_graph_feature_arc_mbuf_dynfields and @ref
-- * rte_graph_feature_arc_mbuf_dynfields_get() for more details.
-+ * rte_graph_feature_arc_mbuf_dynfields_get for more details.
- *
- * Fast path synchronization
- * -------------------------
More information about the stable
mailing list