> -----Original Message----- > From: Thomas Monjalon <tho...@monjalon.net> > Sent: Monday, July 3, 2023 1:51 PM > To: Dumitrescu, Cristian <cristian.dumitre...@intel.com>; Volodymyr Fialko > <vfia...@marvell.com> > Cc: dev@dpdk.org; Jerin Jacob Kollanukkaran <jer...@marvell.com>; Anoob Joseph > <ano...@marvell.com> > Subject: [EXT] Re: [PATCH v3] bitmap: add scan from offset function > > External Email > > ---------------------------------------------------------------------- > 03/07/2023 12:56, Volodymyr Fialko: > > Since it's header-only library, there is issue with using __rte_intenal > > (appeared in v4). > > What is the issue?
>From V4 ci build >failure(http://mails.dpdk.org/archives/test-report/2023-July/421235.html): In file included from ../examples/ipsec-secgw/event_helper.c:6: ../lib/eal/include/rte_bitmap.h:645:2: error: Symbol is not public ABI __rte_bitmap_scan_init_at(bmp, offset); ^ ../lib/eal/include/rte_bitmap.h:150:1: note: from 'diagnose_if' attribute on '__rte_bitmap_scan_init_at': __rte_internal ^~~~~~~~~~~~~~ ../lib/eal/include/rte_compat.h:42:16: note: expanded from macro '__rte_internal' __attribute__((diagnose_if(1, "Symbol is not public ABI", "error"), \ ^ ~ 1 error generated. /Volodymyr > > > Even if the function itself is not used directly, it get's included to the > > other public files. > > It explains why other functions in this library does not have the > > rte_internal prefix, but the double > underscores. > > So, should I simply remove __rte_internal from v4, or there's another > > approach to resolve this > issue(beside creating .c file)? > > > > /Volodymyr > > > > > -----Original Message----- > > > From: Dumitrescu, Cristian <cristian.dumitre...@intel.com> > > > Sent: Friday, June 23, 2023 2:41 PM > > > To: Thomas Monjalon <tho...@monjalon.net>; Volodymyr Fialko > > > <vfia...@marvell.com> > > > Cc: dev@dpdk.org; Jerin Jacob Kollanukkaran <jer...@marvell.com>; > > > Anoob Joseph <ano...@marvell.com> > > > Subject: [EXT] RE: [PATCH v3] bitmap: add scan from offset function > > > > > > External Email > > > > > > -------------------------------------------------------------------- > > > -- > > > > > > > > > > -----Original Message----- > > > > From: Thomas Monjalon <tho...@monjalon.net> > > > > Sent: Thursday, June 22, 2023 6:45 PM > > > > To: Volodymyr Fialko <vfia...@marvell.com> > > > > Cc: dev@dpdk.org; Dumitrescu, Cristian > > > > <cristian.dumitre...@intel.com>; jer...@marvell.com; > > > > ano...@marvell.com > > > > Subject: Re: [PATCH v3] bitmap: add scan from offset function > > > > > > > > 21/06/2023 12:01, Volodymyr Fialko: > > > > > Currently, in the case when we search for a bit set after a > > > > > particular value, the bitmap has to be scanned from the > > > > > beginning and > > > > > rte_bitmap_scan() has to be called multiple times until we hit the > > > > > value. > > > > > > > > > > Add a new rte_bitmap_scan_from_offset() function to initialize > > > > > scan state at the given offset and perform scan, this will allow > > > > > getting the next set bit after certain offset within one scan call. > > > > > > > > > > Signed-off-by: Volodymyr Fialko <vfia...@marvell.com> > > > > > --- > > > > > v2: > > > > > - added rte_bitmap_scan_from_offset > > > > > v3 > > > > > - added note for internal use only for init_at function > > > > [...] > > > > > +/** > > > > > + * @warning > > > > > + * @b EXPERIMENTAL: this API may change without prior notice. > > > > > + * > > > > > + * Bitmap initialize internal scan pointers at the given > > > > > +position for the scan > > > > function. > > > > > + * > > > > > + * Note: for private/internal use, for public: > > > > > + * @see rte_bitmap_scan_from_offset() > > > > > + * > > > > > + * @param bmp > > > > > + * Handle to bitmap instance > > > > > + * @param pos > > > > > + * Bit position to start scan > > > > > + */ > > > > > +__rte_experimental > > > > > +static inline void > > > > > +__rte_bitmap_scan_init_at(struct rte_bitmap *bmp, uint32_t pos) > > > > > > > > I think it should marked with __rte_internal instead of experimental. > > > > > > > > > > > > > > > > > +1 > > > > > >