[PATCH v10 03/10] lib/pmu: quiesce rte_pmu_read deprecation warning in chkincs

Tomasz Duszynski tduszynski at marvell.com
Mon Aug 4 12:09:09 CEST 2025


> > 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 an awkward solution I would rather that fix chkincs
> or restructure this.
>
> The way you are doing it will cause the checks for use
> of experimental API to not work.

No matter how I shuffle things around, the experimental API keeps getting called from
non-experimental code, so those warnings will show up.. Fixing chkincs would mean telling it to
skip checks for this library, which is basically what I'm already doing here.

Dropping experimental tag feels too soon. The library still needs some time to bake.

So, unless anyone has got other ideas, which is the better trade off here: yanking experimental
tags or tweaking chkincs to ignore the library checks?


More information about the dev mailing list