DPDK patches and discussions
 help / color / mirror / Atom feed
* [PATCH] ethdev: fix asynchronous destroy and push tracepoints
@ 2023-05-18 21:59 Alexander Kozyrev
  2023-05-19  5:21 ` [EXT] " Ankur Dwivedi
                   ` (2 more replies)
  0 siblings, 3 replies; 7+ messages in thread
From: Alexander Kozyrev @ 2023-05-18 21:59 UTC (permalink / raw)
  To: dev; +Cc: orika, matan, thomas, adwivedi

The rte_flow_async_destroy() and rte_flow_push() API is
intended to be as fast as possible and tracepoints for
these functions must be marked as fast-path tracepoints.

Fixes: 6679cf21d608 ("ethdev: add trace points")

Signed-off-by: Alexander Kozyrev <akozyrev@nvidia.com>
---
 lib/ethdev/ethdev_trace.h | 42 +++++++++++++++++++--------------------
 1 file changed, 21 insertions(+), 21 deletions(-)

diff --git a/lib/ethdev/ethdev_trace.h b/lib/ethdev/ethdev_trace.h
index ba7871aa3e..c8498b19e3 100644
--- a/lib/ethdev/ethdev_trace.h
+++ b/lib/ethdev/ethdev_trace.h
@@ -1582,27 +1582,6 @@ RTE_TRACE_POINT(
 	rte_trace_point_emit_int(ret);
 )
 
-RTE_TRACE_POINT(
-	rte_flow_trace_async_destroy,
-	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
-		const struct rte_flow_op_attr *op_attr,
-		const struct rte_flow *flow, const void *user_data, int ret),
-	rte_trace_point_emit_u16(port_id);
-	rte_trace_point_emit_u32(queue_id);
-	rte_trace_point_emit_ptr(op_attr);
-	rte_trace_point_emit_ptr(flow);
-	rte_trace_point_emit_ptr(user_data);
-	rte_trace_point_emit_int(ret);
-)
-
-RTE_TRACE_POINT(
-	rte_flow_trace_push,
-	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id, int ret),
-	rte_trace_point_emit_u16(port_id);
-	rte_trace_point_emit_u32(queue_id);
-	rte_trace_point_emit_int(ret);
-)
-
 RTE_TRACE_POINT(
 	rte_mtr_trace_capabilities_get,
 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
@@ -2356,6 +2335,19 @@ RTE_TRACE_POINT_FP(
 	rte_trace_point_emit_ptr(flow);
 )
 
+RTE_TRACE_POINT_FP(
+	rte_flow_trace_async_destroy,
+	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
+		const struct rte_flow_op_attr *op_attr,
+		const struct rte_flow *flow, const void *user_data, int ret),
+	rte_trace_point_emit_u16(port_id);
+	rte_trace_point_emit_u32(queue_id);
+	rte_trace_point_emit_ptr(op_attr);
+	rte_trace_point_emit_ptr(flow);
+	rte_trace_point_emit_ptr(user_data);
+	rte_trace_point_emit_int(ret);
+)
+
 RTE_TRACE_POINT_FP(
 	rte_flow_trace_async_update,
 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
@@ -2374,6 +2366,14 @@ RTE_TRACE_POINT_FP(
 	rte_trace_point_emit_int(ret);
 )
 
+RTE_TRACE_POINT_FP(
+	rte_flow_trace_push,
+	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id, int ret),
+	rte_trace_point_emit_u16(port_id);
+	rte_trace_point_emit_u32(queue_id);
+	rte_trace_point_emit_int(ret);
+)
+
 RTE_TRACE_POINT_FP(
 	rte_flow_trace_pull,
 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
-- 
2.18.2


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

* RE: [EXT] [PATCH] ethdev: fix asynchronous destroy and push tracepoints
  2023-05-18 21:59 [PATCH] ethdev: fix asynchronous destroy and push tracepoints Alexander Kozyrev
@ 2023-05-19  5:21 ` Ankur Dwivedi
  2023-05-21 19:09   ` Ori Kam
  2023-05-19  9:00 ` Ferruh Yigit
  2023-05-23 17:39 ` [PATCH v2] " Alexander Kozyrev
  2 siblings, 1 reply; 7+ messages in thread
From: Ankur Dwivedi @ 2023-05-19  5:21 UTC (permalink / raw)
  To: Alexander Kozyrev, dev; +Cc: orika, matan, thomas

>The rte_flow_async_destroy() and rte_flow_push() API is intended to be as
>fast as possible and tracepoints for these functions must be marked as fast-
>path tracepoints.
>
>Fixes: 6679cf21d608 ("ethdev: add trace points")
>
>Signed-off-by: Alexander Kozyrev <akozyrev@nvidia.com>

Acked-by: Ankur Dwivedi <adwivedi@marvell.com>
>---
> lib/ethdev/ethdev_trace.h | 42 +++++++++++++++++++--------------------
> 1 file changed, 21 insertions(+), 21 deletions(-)
>
>diff --git a/lib/ethdev/ethdev_trace.h b/lib/ethdev/ethdev_trace.h index
>ba7871aa3e..c8498b19e3 100644
>--- a/lib/ethdev/ethdev_trace.h
>+++ b/lib/ethdev/ethdev_trace.h
>@@ -1582,27 +1582,6 @@ RTE_TRACE_POINT(
> 	rte_trace_point_emit_int(ret);
> )
>
>-RTE_TRACE_POINT(
>-	rte_flow_trace_async_destroy,
>-	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
>-		const struct rte_flow_op_attr *op_attr,
>-		const struct rte_flow *flow, const void *user_data, int ret),
>-	rte_trace_point_emit_u16(port_id);
>-	rte_trace_point_emit_u32(queue_id);
>-	rte_trace_point_emit_ptr(op_attr);
>-	rte_trace_point_emit_ptr(flow);
>-	rte_trace_point_emit_ptr(user_data);
>-	rte_trace_point_emit_int(ret);
>-)
>-
>-RTE_TRACE_POINT(
>-	rte_flow_trace_push,
>-	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id, int
>ret),
>-	rte_trace_point_emit_u16(port_id);
>-	rte_trace_point_emit_u32(queue_id);
>-	rte_trace_point_emit_int(ret);
>-)
>-
> RTE_TRACE_POINT(
> 	rte_mtr_trace_capabilities_get,
> 	RTE_TRACE_POINT_ARGS(uint16_t port_id, @@ -2356,6 +2335,19
>@@ RTE_TRACE_POINT_FP(
> 	rte_trace_point_emit_ptr(flow);
> )
>
>+RTE_TRACE_POINT_FP(
>+	rte_flow_trace_async_destroy,
>+	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
>+		const struct rte_flow_op_attr *op_attr,
>+		const struct rte_flow *flow, const void *user_data, int ret),
>+	rte_trace_point_emit_u16(port_id);
>+	rte_trace_point_emit_u32(queue_id);
>+	rte_trace_point_emit_ptr(op_attr);
>+	rte_trace_point_emit_ptr(flow);
>+	rte_trace_point_emit_ptr(user_data);
>+	rte_trace_point_emit_int(ret);
>+)
>+
> RTE_TRACE_POINT_FP(
> 	rte_flow_trace_async_update,
> 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id, @@ -
>2374,6 +2366,14 @@ RTE_TRACE_POINT_FP(
> 	rte_trace_point_emit_int(ret);
> )
>
>+RTE_TRACE_POINT_FP(
>+	rte_flow_trace_push,
>+	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id, int
>ret),
>+	rte_trace_point_emit_u16(port_id);
>+	rte_trace_point_emit_u32(queue_id);
>+	rte_trace_point_emit_int(ret);
>+)
>+
> RTE_TRACE_POINT_FP(
> 	rte_flow_trace_pull,
> 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
>--
>2.18.2


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

* Re: [PATCH] ethdev: fix asynchronous destroy and push tracepoints
  2023-05-18 21:59 [PATCH] ethdev: fix asynchronous destroy and push tracepoints Alexander Kozyrev
  2023-05-19  5:21 ` [EXT] " Ankur Dwivedi
@ 2023-05-19  9:00 ` Ferruh Yigit
  2023-05-23 17:37   ` Alexander Kozyrev
  2023-05-23 17:39 ` [PATCH v2] " Alexander Kozyrev
  2 siblings, 1 reply; 7+ messages in thread
From: Ferruh Yigit @ 2023-05-19  9:00 UTC (permalink / raw)
  To: Alexander Kozyrev, dev; +Cc: orika, matan, thomas, adwivedi

On 5/18/2023 10:59 PM, Alexander Kozyrev wrote:

> 
> The rte_flow_async_destroy() and rte_flow_push() API is
> intended to be as fast as possible and tracepoints for
> these functions must be marked as fast-path tracepoints.
> 
> Fixes: 6679cf21d608 ("ethdev: add trace points")
> 
> Signed-off-by: Alexander Kozyrev <akozyrev@nvidia.com>

<...>
> +RTE_TRACE_POINT_FP(
> +       rte_flow_trace_async_destroy,
> +       RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
> +               const struct rte_flow_op_attr *op_attr,
> +               const struct rte_flow *flow, const void *user_data, int ret),
> +       rte_trace_point_emit_u16(port_id);
> +       rte_trace_point_emit_u32(queue_id);
> +       rte_trace_point_emit_ptr(op_attr);
> +       rte_trace_point_emit_ptr(flow);
> +       rte_trace_point_emit_ptr(user_data);
> +       rte_trace_point_emit_int(ret);
> +)
> +
>  RTE_TRACE_POINT_FP(
>         rte_flow_trace_async_update,
>         RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
> @@ -2374,6 +2366,14 @@ RTE_TRACE_POINT_FP(
>         rte_trace_point_emit_int(ret);
>  )
> 
> +RTE_TRACE_POINT_FP(
> +       rte_flow_trace_push,
> +       RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id, int ret),
> +       rte_trace_point_emit_u16(port_id);
> +       rte_trace_point_emit_u32(queue_id);
> +       rte_trace_point_emit_int(ret);
> +)
> +

Patch doesn't apply cleanly because it can't find
'rte_flow_trace_async_update', is there a dependency?


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

* RE: [EXT] [PATCH] ethdev: fix asynchronous destroy and push tracepoints
  2023-05-19  5:21 ` [EXT] " Ankur Dwivedi
@ 2023-05-21 19:09   ` Ori Kam
  0 siblings, 0 replies; 7+ messages in thread
From: Ori Kam @ 2023-05-21 19:09 UTC (permalink / raw)
  To: Ankur Dwivedi, Alexander Kozyrev, dev
  Cc: Matan Azrad, NBU-Contact-Thomas Monjalon (EXTERNAL)

Hi Ankur,

> -----Original Message-----
> From: Ankur Dwivedi <adwivedi@marvell.com>
> Sent: Friday, May 19, 2023 8:21 AM
> 
> >The rte_flow_async_destroy() and rte_flow_push() API is intended to be as
> >fast as possible and tracepoints for these functions must be marked as fast-
> >path tracepoints.
> >
> >Fixes: 6679cf21d608 ("ethdev: add trace points")
> >
> >Signed-off-by: Alexander Kozyrev <akozyrev@nvidia.com>
> 
> Acked-by: Ankur Dwivedi <adwivedi@marvell.com>
> >---

Acked-by: Ori Kam <orika@nvidia.com>
Best,
Ori

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

* RE: [PATCH] ethdev: fix asynchronous destroy and push tracepoints
  2023-05-19  9:00 ` Ferruh Yigit
@ 2023-05-23 17:37   ` Alexander Kozyrev
  0 siblings, 0 replies; 7+ messages in thread
From: Alexander Kozyrev @ 2023-05-23 17:37 UTC (permalink / raw)
  To: Ferruh Yigit, dev
  Cc: Ori Kam, Matan Azrad, NBU-Contact-Thomas Monjalon (EXTERNAL), adwivedi

> Patch doesn't apply cleanly because it can't find
> 'rte_flow_trace_async_update', is there a dependency?

Fixed in v2. The patch was based on my "update rule" commit.

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

* [PATCH v2] ethdev: fix asynchronous destroy and push tracepoints
  2023-05-18 21:59 [PATCH] ethdev: fix asynchronous destroy and push tracepoints Alexander Kozyrev
  2023-05-19  5:21 ` [EXT] " Ankur Dwivedi
  2023-05-19  9:00 ` Ferruh Yigit
@ 2023-05-23 17:39 ` Alexander Kozyrev
  2023-05-24  9:51   ` Ferruh Yigit
  2 siblings, 1 reply; 7+ messages in thread
From: Alexander Kozyrev @ 2023-05-23 17:39 UTC (permalink / raw)
  To: dev; +Cc: orika, matan, thomas, adwivedi

The rte_flow_async_destroy() and rte_flow_push() API is
intended to be as fast as possible and tracepoints for
these functions must be marked as fast-path tracepoints.

Fixes: 6679cf21d608 ("ethdev: add trace points")

Signed-off-by: Alexander Kozyrev <akozyrev@nvidia.com>
Acked-by: Ankur Dwivedi <adwivedi@marvell.com>
Acked-by: Ori Kam <orika@nvidia.com>
---
 lib/ethdev/ethdev_trace.h | 42 +++++++++++++++++++--------------------
 1 file changed, 21 insertions(+), 21 deletions(-)

diff --git a/lib/ethdev/ethdev_trace.h b/lib/ethdev/ethdev_trace.h
index 3dc7d028b8..18bf1a706f 100644
--- a/lib/ethdev/ethdev_trace.h
+++ b/lib/ethdev/ethdev_trace.h
@@ -1582,27 +1582,6 @@ RTE_TRACE_POINT(
 	rte_trace_point_emit_int(ret);
 )
 
-RTE_TRACE_POINT(
-	rte_flow_trace_async_destroy,
-	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
-		const struct rte_flow_op_attr *op_attr,
-		const struct rte_flow *flow, const void *user_data, int ret),
-	rte_trace_point_emit_u16(port_id);
-	rte_trace_point_emit_u32(queue_id);
-	rte_trace_point_emit_ptr(op_attr);
-	rte_trace_point_emit_ptr(flow);
-	rte_trace_point_emit_ptr(user_data);
-	rte_trace_point_emit_int(ret);
-)
-
-RTE_TRACE_POINT(
-	rte_flow_trace_push,
-	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id, int ret),
-	rte_trace_point_emit_u16(port_id);
-	rte_trace_point_emit_u32(queue_id);
-	rte_trace_point_emit_int(ret);
-)
-
 RTE_TRACE_POINT(
 	rte_mtr_trace_capabilities_get,
 	RTE_TRACE_POINT_ARGS(uint16_t port_id,
@@ -2345,6 +2324,27 @@ RTE_TRACE_POINT_FP(
 	rte_trace_point_emit_ptr(flow);
 )
 
+RTE_TRACE_POINT_FP(
+	rte_flow_trace_async_destroy,
+	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
+		const struct rte_flow_op_attr *op_attr,
+		const struct rte_flow *flow, const void *user_data, int ret),
+	rte_trace_point_emit_u16(port_id);
+	rte_trace_point_emit_u32(queue_id);
+	rte_trace_point_emit_ptr(op_attr);
+	rte_trace_point_emit_ptr(flow);
+	rte_trace_point_emit_ptr(user_data);
+	rte_trace_point_emit_int(ret);
+)
+
+RTE_TRACE_POINT_FP(
+	rte_flow_trace_push,
+	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id, int ret),
+	rte_trace_point_emit_u16(port_id);
+	rte_trace_point_emit_u32(queue_id);
+	rte_trace_point_emit_int(ret);
+)
+
 RTE_TRACE_POINT_FP(
 	rte_flow_trace_pull,
 	RTE_TRACE_POINT_ARGS(uint16_t port_id, uint32_t queue_id,
-- 
2.18.2


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

* Re: [PATCH v2] ethdev: fix asynchronous destroy and push tracepoints
  2023-05-23 17:39 ` [PATCH v2] " Alexander Kozyrev
@ 2023-05-24  9:51   ` Ferruh Yigit
  0 siblings, 0 replies; 7+ messages in thread
From: Ferruh Yigit @ 2023-05-24  9:51 UTC (permalink / raw)
  To: Alexander Kozyrev, dev; +Cc: orika, matan, thomas, adwivedi

On 5/23/2023 6:39 PM, Alexander Kozyrev wrote:
> The rte_flow_async_destroy() and rte_flow_push() API is
> intended to be as fast as possible and tracepoints for
> these functions must be marked as fast-path tracepoints.
> 
> Fixes: 6679cf21d608 ("ethdev: add trace points")
> 
> Signed-off-by: Alexander Kozyrev <akozyrev@nvidia.com>
> Acked-by: Ankur Dwivedi <adwivedi@marvell.com>
> Acked-by: Ori Kam <orika@nvidia.com>
>

Applied to dpdk-next-net/main, thanks.


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

end of thread, other threads:[~2023-05-24  9:52 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-05-18 21:59 [PATCH] ethdev: fix asynchronous destroy and push tracepoints Alexander Kozyrev
2023-05-19  5:21 ` [EXT] " Ankur Dwivedi
2023-05-21 19:09   ` Ori Kam
2023-05-19  9:00 ` Ferruh Yigit
2023-05-23 17:37   ` Alexander Kozyrev
2023-05-23 17:39 ` [PATCH v2] " Alexander Kozyrev
2023-05-24  9:51   ` Ferruh Yigit

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).