Hi David,

I tried validating series to see the trace results but babeltrace throws error 
while reading metadata file and traces can’t be generated.
Can you please have a look into this ?

Thanks.

From: Sunil Kumar Kori
Sent: Friday, February 7, 2025 5:09 PM
To: David Marchand <[email protected]>; Jerin Jacob <[email protected]>
Cc: [email protected]; Chengwen Feng <[email protected]>; Kevin Laatz 
<[email protected]>; Bruce Richardson <[email protected]>; Tyler 
Retzlaff <[email protected]>; Andre Muezerie 
<[email protected]>; Thomas Monjalon <[email protected]>; Stephen 
Hemminger <[email protected]>
Subject: RE: [EXTERNAL] Re: [PATCH v2 3/3] trace: fix undefined behavior in 
register

Hi David,

I will look into this at earliest and provide feedback.

Thanks

From: David Marchand 
<[email protected]<mailto:[email protected]>>
Sent: Friday, February 7, 2025 2:20 PM
To: Jerin Jacob <[email protected]<mailto:[email protected]>>; Sunil Kumar 
Kori <[email protected]<mailto:[email protected]>>
Cc: [email protected]<mailto:[email protected]>; Chengwen Feng 
<[email protected]<mailto:[email protected]>>; Kevin Laatz 
<[email protected]<mailto:[email protected]>>; Bruce Richardson 
<[email protected]<mailto:[email protected]>>; Tyler Retzlaff 
<[email protected]<mailto:[email protected]>>; Andre 
Muezerie <[email protected]<mailto:[email protected]>>; 
Thomas Monjalon <[email protected]<mailto:[email protected]>>; Stephen 
Hemminger <[email protected]<mailto:[email protected]>>
Subject: [EXTERNAL] Re: [PATCH v2 3/3] trace: fix undefined behavior in register

Hello Jerin, Sunil, On Thu, Jan 30, 2025 at 3: 59 PM David Marchand <david. 
marchand@ redhat. com> wrote: > > Registering a tracepoint handler was 
resulting so far in undefined > behavior at runtime. > > The 
RTE_TRACE_POINT_REGISTER()


Hello Jerin, Sunil,



On Thu, Jan 30, 2025 at 3:59 PM David Marchand

<[email protected]<mailto:[email protected]>> wrote:

>

> Registering a tracepoint handler was resulting so far in undefined

> behavior at runtime.

>

> The RTE_TRACE_POINT_REGISTER() macro was casting the tracepoint handler

> (which expects arguments) to a void (*)(void).

> At runtime, calling this handler while registering resulted in

> reading the current stack with no relation to this function prototype.

>

> Instead, declare an additional inline _register() handler for each

> tracepoint and make sure that the emitting macros in

> rte_trace_point_register.h only work on arguments name and type.

>

> The original tracepoint handler prototype is adjusted by adding a

> __rte_unused for each argument (since emitting macros do nothing

> with them).

> This last part introduces an implementation limit of 15 arguments.

>

> With this change in place, the workaround in dmadev tracepoints can be

> removed.

>

> Signed-off-by: David Marchand 
> <[email protected]<mailto:[email protected]>>



Can I have your opinion and review on this patch?



Thanks.





--

David Marchand


Reply via email to