[PATCH v9 1/8] lib/pmu: quiesce rte_pmu_read deprecation warning in chkincs
Stephen Hemminger
stephen at networkplumber.org
Fri Aug 1 23:57:36 CEST 2025
On Fri, 1 Aug 2025 11:37:06 +0200
Tomasz Duszynski <tduszynski at marvell.com> wrote:
> > > Add a dummy rte_pmu_read() definition for chkincs when
> > > ALLOW_EXPERIMENTAL_API is not defined to suppress warnings from
> > > use of experimental APIs in tracepoints.
> > >
> > > Fixes: 960c43184c4d ("pmu: introduce library for reading PMU events")
> > >
> > > Signed-off-by: Tomasz Duszynski <tduszynski at marvell.com>
> > > ---
> > > lib/pmu/rte_pmu.h | 4 ++++
> > > 1 file changed, 4 insertions(+)
> > >
> > > diff --git a/lib/pmu/rte_pmu.h b/lib/pmu/rte_pmu.h
> > > index 57b634ecd8..84a5d522d1 100644
> > > --- a/lib/pmu/rte_pmu.h
> > > +++ b/lib/pmu/rte_pmu.h
> > > @@ -232,6 +232,10 @@ rte_pmu_read(unsigned int index)
> > >
> > > return __rte_pmu_read_userpage(group->mmap_pages[index]);
> > > }
> > > +/* quiesce warnings produced by chkincs */
> > > +#ifndef ALLOW_EXPERIMENTAL_API
> > > +#define rte_pmu_read(pc) ({ RTE_SET_USED(pc); 0; })
> > > +#endif
> > >
> >
> > Seems like a problem that could be fixed cleaner in chkincs?
>
> I don't think there is good solution to this problem. From one angle chinkcs should detect
> violations to experimental api calling conventions and it does that. This library is injected
> into eal tracing so calling experimental api happens hence warnings are showing up.
>
> On the other hand adding some exception list (or whatever) to chkincs could encourage similar
> cases by making it a) easy b) looking clean. What I have now is at least not very appealing.
>
> It looks like this library is the only one non-compliant to experimental api calling rules so I'd
> leave that workaround as is hoping that it won't be experimental for too long.
I would rather just make some of the function non-experimental or internal.
More information about the dev
mailing list