>On Mon, Feb 6, 2023 at 12:59 PM Ankur Dwivedi <adwiv...@marvell.com> >wrote: >> >> Adds a trace point emit function for capturing a blob. The blob >> captures the length passed by the application followed by the array. >> >> The maximum blob bytes which can be captured is bounded by >> RTE_TRACE_BLOB_LEN_MAX macro. The value for max blob length macro is >> 64 bytes. If the length is less than 64 the remaining trailing bytes >> are set to zero. >> >> This patch also adds test case for emit blob tracepoint function. >> >> Signed-off-by: Ankur Dwivedi <adwiv...@marvell.com> >> Acked-by: Morten Brørup <m...@smartsharesystems.com> >> Acked-by: Sunil Kumar Kori <sk...@marvell.com> >> Acked-by: Jerin Jacob <jer...@marvell.com> > >I came accross this patch while looking at CI failures. >Giving my two cents. > > >> diff --git a/lib/eal/include/rte_eal_trace.h >> b/lib/eal/include/rte_eal_trace.h index 5ef4398230..6f5c022558 100644 >> --- a/lib/eal/include/rte_eal_trace.h >> +++ b/lib/eal/include/rte_eal_trace.h >> @@ -143,6 +143,12 @@ RTE_TRACE_POINT( >> rte_trace_point_emit_string(func); >> ) >> >> +RTE_TRACE_POINT( >> + rte_eal_trace_generic_blob, >> + RTE_TRACE_POINT_ARGS(const void *in, uint8_t len), >> + rte_trace_point_emit_blob(in, len); >> +) >> + >> #define RTE_EAL_TRACE_GENERIC_FUNC >> rte_eal_trace_generic_func(__func__) > >This new tracepoint is exported as a public API. >So its underlying symbol __rte_eal_trace_generic_blob (part of the inlined >implementation) is visible to applications: > >#define __RTE_TRACE_POINT(_mode, _tp, _args, ...) \ extern >rte_trace_point_t __##_tp; \ static __rte_always_inline void \ _tp _args \ { \ > __rte_trace_point_emit_header_##_mode(&__##_tp); \ > __VA_ARGS__ \ >} > >__rte_eal_trace_generic_blob must be exported as a versionned symbol (i.e. >listed in EAL version.map).
Yes, as rte_eal_trace_generic_blob is a generic trace point called by the test app, it needs to be exported. Will add it in next patch series. > > >-- >David Marchand