> From: Tomasz Duszynski [mailto:tduszyn...@marvell.com]
> Sent: Monday, 28 October 2024 11.32
> 
> >On Fri, Oct 25, 2024 at 2:25 PM Tomasz Duszynski
> <tduszyn...@marvell.com> wrote:
> >>
> >> In order to profile app one needs to store significant amount of
> >> samples somewhere for an analysis later on. Since trace library
> >> supports storing data in a CTF format lets take advantage of that
> and
> >> add a dedicated PMU tracepoint.
> >>
> >> Signed-off-by: Tomasz Duszynski <tduszyn...@marvell.com>
> >
> >
> >--------------START-------------------------
> >> diff --git a/lib/eal/common/eal_common_trace_points.c
> >> b/lib/eal/common/eal_common_trace_points.c
> >> index 0f1240ea3a..c99eab92f4 100644
> >> --- a/lib/eal/common/eal_common_trace_points.c
> >> +++ b/lib/eal/common/eal_common_trace_points.c
> >> @@ -100,3 +100,8 @@
> RTE_TRACE_POINT_REGISTER(rte_eal_trace_intr_enable,
> >>         lib.eal.intr.enable)
> >>  RTE_TRACE_POINT_REGISTER(rte_eal_trace_intr_disable,
> >>         lib.eal.intr.disable)
> >> +
> >> +#ifdef RTE_LIB_PMU
> >> +RTE_TRACE_POINT_REGISTER(rte_eal_trace_pmu_read,
> >> +       lib.eal.pmu.read)
> >> +#endif
> >>
> >>  #define RTE_EAL_TRACE_GENERIC_FUNC
> >> rte_eal_trace_generic_func(__func__)
> >>
> >> +#ifdef RTE_LIB_PMU
> >> +#include <rte_pmu.h>
> >> +
> >> +RTE_TRACE_POINT_FP(
> >> +       rte_eal_trace_pmu_read,
> >> +       RTE_TRACE_POINT_ARGS(unsigned int index),
> >> +       uint64_t val = rte_pmu_read(index);
> >> +       rte_trace_point_emit_u64(val);
> >> +)
> >> +#endif
> >> +
> >--------------END-------------------------
> >
> >All of the above changes can go to lib/pmu. Right? Like ethdev is
> adding its trace points in ethdev
> >library?
> >and make trace point name as rte_pmu_trace_read
> 
> That's because libpmu is higher than eal in hierarchy of libraries so
> it won't see some symbols, for example __rte_trace_point_register().
> So first tracing itself needs to be moved out to a separate library and
> then approach other libs take would become natural for libpmu too.

OK; I suppose the required change of tracing library is not going to happen 
right away, so Ack to keeping it here (for now).

Please rename trace point to rte_pmu_trace_read / lib.pmu.read as requested by 
Jerin. Although it is temporarily in EAL (due to the above trace library 
issue), it really is PMU library, not EAL library.


Reply via email to