DPDK patches and discussions
 help / color / mirror / Atom feed
* [PATCH v0 1/1] dmadev: add domain_id field to access group join API
@ 2025-11-03 10:29 Vamsi Krishna
  2025-11-04  0:45 ` fengchengwen
  2025-11-04  5:21 ` [PATCH v2 " Vamsi Krishna
  0 siblings, 2 replies; 6+ messages in thread
From: Vamsi Krishna @ 2025-11-03 10:29 UTC (permalink / raw)
  To: dev, fengchengwen; +Cc: thomas, vattunuru

From: Vamsi Attunuru <vattunuru@marvell.com>

Add domain_id field to access group join API, which is required
to retrieve handler information associated with the specified domain.
This enhancement ensures that domain-specific context is available
during group join operations, improving flexibility and traceability
in multi-domain environments.

It also aligns the parameters of access group create and join APIs
for consistency and clarity.

Signed-off-by: Vamsi Attunuru <vattunuru@marvell.com>
---
 lib/dmadev/rte_dmadev.c       |  6 +++---
 lib/dmadev/rte_dmadev.h       | 10 ++++++----
 lib/dmadev/rte_dmadev_pmd.h   |  4 ++--
 lib/dmadev/rte_dmadev_trace.h |  6 ++++--
 4 files changed, 15 insertions(+), 11 deletions(-)

diff --git a/lib/dmadev/rte_dmadev.c b/lib/dmadev/rte_dmadev.c
index c008e829db..b75b4f9bd1 100644
--- a/lib/dmadev/rte_dmadev.c
+++ b/lib/dmadev/rte_dmadev.c
@@ -875,8 +875,8 @@ rte_dma_access_pair_group_destroy(int16_t dev_id, int16_t group_id)
 
 RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_dma_access_pair_group_join, 25.11)
 int
-rte_dma_access_pair_group_join(int16_t dev_id, int16_t group_id, rte_uuid_t token,
-			       rte_dma_access_pair_group_event_cb_t cb)
+rte_dma_access_pair_group_join(int16_t dev_id, rte_uuid_t domain_id, rte_uuid_t token,
+			       int16_t group_id, rte_dma_access_pair_group_event_cb_t cb)
 {
 	struct rte_dma_info dev_info;
 	struct rte_dma_dev *dev;
@@ -899,7 +899,7 @@ rte_dma_access_pair_group_join(int16_t dev_id, int16_t group_id, rte_uuid_t toke
 
 	if (*dev->dev_ops->access_pair_group_join == NULL)
 		return -ENOTSUP;
-	return (*dev->dev_ops->access_pair_group_join)(dev, group_id, token, cb);
+	return (*dev->dev_ops->access_pair_group_join)(dev, domain_id, token, group_id, cb);
 }
 
 RTE_EXPORT_EXPERIMENTAL_SYMBOL(rte_dma_access_pair_group_leave, 25.11)
diff --git a/lib/dmadev/rte_dmadev.h b/lib/dmadev/rte_dmadev.h
index 0f4f10ec12..5287b0f32d 100644
--- a/lib/dmadev/rte_dmadev.h
+++ b/lib/dmadev/rte_dmadev.h
@@ -912,10 +912,12 @@ int rte_dma_access_pair_group_destroy(int16_t dev_id, int16_t group_id);
  *
  * @param dev_id
  *   Identifier of the DMA device attempting to join the group.
- * @param group_id
- *   ID of the access group to join.
+ * @param domain_id
+ *   Unique identifier representing the process or OS domain.
  * @param token
  *   Authentication token used to validate group membership.
+ * @param group_id
+ *   ID of the access group to join.
  * @param cb
  *   Callback function to be invoked when the device leaves the group
  *   or when the group is destroyed due to some exception or failure.
@@ -925,8 +927,8 @@ int rte_dma_access_pair_group_destroy(int16_t dev_id, int16_t group_id);
  *   negative value on failure indicating the error code.
  */
 __rte_experimental
-int rte_dma_access_pair_group_join(int16_t dev_id, int16_t group_id, rte_uuid_t token,
-				   rte_dma_access_pair_group_event_cb_t cb);
+int rte_dma_access_pair_group_join(int16_t dev_id, rte_uuid_t domain_id, rte_uuid_t token,
+				   int16_t group_id, rte_dma_access_pair_group_event_cb_t cb);
 
 /**
  * Leave an access group, removing the device's entry from the group table
diff --git a/lib/dmadev/rte_dmadev_pmd.h b/lib/dmadev/rte_dmadev_pmd.h
index 16fd625c2d..8a6b0a9c98 100644
--- a/lib/dmadev/rte_dmadev_pmd.h
+++ b/lib/dmadev/rte_dmadev_pmd.h
@@ -75,8 +75,8 @@ typedef int (*rte_dma_access_pair_group_destroy_t)(const struct rte_dma_dev *dev
 						   int16_t group_id);
 
 /** @internal Used to join an access pair group for inter-process or inter-OS DMA transfers. */
-typedef int (*rte_dma_access_pair_group_join_t)(const struct rte_dma_dev *dev, int16_t group_id,
-						rte_uuid_t token,
+typedef int (*rte_dma_access_pair_group_join_t)(const struct rte_dma_dev *dev, rte_uuid_t domain_id,
+						rte_uuid_t token, int16_t group_id,
 						rte_dma_access_pair_group_event_cb_t cb);
 
 /** @internal Used to leave an access pair group, removing the device from the group. */
diff --git a/lib/dmadev/rte_dmadev_trace.h b/lib/dmadev/rte_dmadev_trace.h
index da80a8cb50..7ad00b5bfa 100644
--- a/lib/dmadev/rte_dmadev_trace.h
+++ b/lib/dmadev/rte_dmadev_trace.h
@@ -120,10 +120,12 @@ RTE_TRACE_POINT(
 
 RTE_TRACE_POINT(
 	rte_dma_trace_access_pair_group_join,
-	RTE_TRACE_POINT_ARGS(int16_t dev_id, int16_t group_id, rte_uuid_t token),
+	RTE_TRACE_POINT_ARGS(int16_t dev_id, rte_uuid_t domain_id, rte_uuid_t token,
+			     int16_t group_id),
 	rte_trace_point_emit_i16(dev_id);
-	rte_trace_point_emit_i16(group_id);
+	rte_trace_point_emit_u8_ptr(&domain_id[0]);
 	rte_trace_point_emit_u8_ptr(&token[0]);
+	rte_trace_point_emit_i16(group_id);
 )
 
 RTE_TRACE_POINT(
-- 
2.34.1


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2025-11-04 11:53 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-11-03 10:29 [PATCH v0 1/1] dmadev: add domain_id field to access group join API Vamsi Krishna
2025-11-04  0:45 ` fengchengwen
2025-11-04  4:02   ` [EXTERNAL] " Vamsi Krishna Attunuru
2025-11-04  5:21 ` [PATCH v2 " Vamsi Krishna
2025-11-04  6:05   ` fengchengwen
2025-11-04 11:53     ` [EXTERNAL] " Vamsi Krishna Attunuru

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).