From: Thomas Monjalon <thomas@monjalon.net>
To: "Dumitrescu, Cristian" <cristian.dumitrescu@intel.com>,
Volodymyr Fialko <vfialko@marvell.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>,
Jerin Jacob Kollanukkaran <jerinj@marvell.com>,
Anoob Joseph <anoobj@marvell.com>
Subject: Re: [EXT] Re: [PATCH v3] bitmap: add scan from offset function
Date: Mon, 03 Jul 2023 14:17:32 +0200 [thread overview]
Message-ID: <4492074.LvFx2qVVIh@thomas> (raw)
In-Reply-To: <MW2PR18MB22826B9C863863A363A131A6A829A@MW2PR18MB2282.namprd18.prod.outlook.com>
03/07/2023 14:02, Volodymyr Fialko:
>
> > -----Original Message-----
> > From: Thomas Monjalon <thomas@monjalon.net>
> > Sent: Monday, July 3, 2023 1:51 PM
> > To: Dumitrescu, Cristian <cristian.dumitrescu@intel.com>; Volodymyr Fialko <vfialko@marvell.com>
> > Cc: dev@dpdk.org; Jerin Jacob Kollanukkaran <jerinj@marvell.com>; Anoob Joseph
> > <anoobj@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.
OK I see.
So we should give up with __rte_internal for inline functions.
As it is not supposed to be exposed to the applications,
I think we can skip the __rte_experimental flag.
> > > 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.dumitrescu@intel.com>
> > > > Sent: Friday, June 23, 2023 2:41 PM
> > > > To: Thomas Monjalon <thomas@monjalon.net>; Volodymyr Fialko
> > > > <vfialko@marvell.com>
> > > > Cc: dev@dpdk.org; Jerin Jacob Kollanukkaran <jerinj@marvell.com>;
> > > > Anoob Joseph <anoobj@marvell.com>
> > > > Subject: [EXT] RE: [PATCH v3] bitmap: add scan from offset function
> > > >
> > > > External Email
> > > >
> > > > --------------------------------------------------------------------
> > > > --
> > > >
> > > >
> > > > > -----Original Message-----
> > > > > From: Thomas Monjalon <thomas@monjalon.net>
> > > > > Sent: Thursday, June 22, 2023 6:45 PM
> > > > > To: Volodymyr Fialko <vfialko@marvell.com>
> > > > > Cc: dev@dpdk.org; Dumitrescu, Cristian
> > > > > <cristian.dumitrescu@intel.com>; jerinj@marvell.com;
> > > > > anoobj@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 <vfialko@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
> > >
> >
> >
> >
> >
>
>
next prev parent reply other threads:[~2023-07-03 12:17 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-04-14 8:39 [PATCH] bitmap: add scan init at given position Volodymyr Fialko
2023-06-01 15:26 ` Thomas Monjalon
2023-06-08 14:20 ` Dumitrescu, Cristian
2023-06-08 14:50 ` Bruce Richardson
2023-06-12 10:58 ` Volodymyr Fialko
2023-06-13 15:40 ` [PATCH v2] bitmap: add scan from offset function Volodymyr Fialko
2023-06-19 11:30 ` Dumitrescu, Cristian
2023-06-21 10:01 ` [PATCH v3] " Volodymyr Fialko
2023-06-21 10:37 ` Dumitrescu, Cristian
2023-06-22 17:44 ` Thomas Monjalon
2023-06-23 12:40 ` Dumitrescu, Cristian
2023-07-03 10:56 ` Volodymyr Fialko
2023-07-03 11:51 ` Thomas Monjalon
2023-07-03 12:02 ` [EXT] " Volodymyr Fialko
2023-07-03 12:17 ` Thomas Monjalon [this message]
2023-07-03 9:31 ` [PATCH v4] " Volodymyr Fialko
2023-07-03 10:54 ` Dumitrescu, Cristian
2023-07-03 12:39 ` [PATCH v5] " Volodymyr Fialko
2023-07-03 13:01 ` Dumitrescu, Cristian
2024-07-03 11:27 ` Volodymyr Fialko
2024-07-03 12:50 ` Thomas Monjalon
2024-07-03 13:42 ` Volodymyr Fialko
2024-07-03 15:55 ` Thomas Monjalon
2024-10-04 3:04 ` Stephen Hemminger
2024-10-10 9:08 ` [EXTERNAL] " Volodymyr Fialko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4492074.LvFx2qVVIh@thomas \
--to=thomas@monjalon.net \
--cc=anoobj@marvell.com \
--cc=cristian.dumitrescu@intel.com \
--cc=dev@dpdk.org \
--cc=jerinj@marvell.com \
--cc=vfialko@marvell.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).