From: Olivier Matz <olivier.matz@6wind.com>
To: "Gavin Hu (Arm Technology China)" <Gavin.Hu@arm.com>
Cc: "thomas@monjalon.net" <thomas@monjalon.net>,
"dev@dpdk.org" <dev@dpdk.org>, nd <nd@arm.com>,
"jerinj@marvell.com" <jerinj@marvell.com>,
"hemant.agrawal@nxp.com" <hemant.agrawal@nxp.com>,
"Nipun.gupta@nxp.com" <nipun.gupta@nxp.com>,
Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>,
"i.maximets@samsung.com" <i.maximets@samsung.com>,
"stable@dpdk.org" <stable@dpdk.org>,
"Ruifeng Wang (Arm Technology China)" <Ruifeng.Wang@arm.com>
Subject: Re: [dpdk-stable] [dpdk-dev] [PATCH v7 1/2] ring: add reset API to flush the ring when not in use
Date: Fri, 12 Jul 2019 13:48:42 +0200 [thread overview]
Message-ID: <20190712114842.4igwthwrg6cmxqs5@platinum> (raw)
In-Reply-To: <VI1PR08MB316731061F2CAEAD700F4D698FF20@VI1PR08MB3167.eurprd08.prod.outlook.com>
Hi Gavin,
On Fri, Jul 12, 2019 at 11:06:28AM +0000, Gavin Hu (Arm Technology China) wrote:
> Hi Olivier,
>
> > -----Original Message-----
> > From: Olivier Matz <olivier.matz@6wind.com>
> > Sent: Friday, July 12, 2019 5:54 PM
> > To: Gavin Hu (Arm Technology China) <Gavin.Hu@arm.com>
> > Cc: thomas@monjalon.net; dev@dpdk.org; nd <nd@arm.com>;
> > jerinj@marvell.com; hemant.agrawal@nxp.com; Nipun.gupta@nxp.com;
> > Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>;
> > i.maximets@samsung.com; stable@dpdk.org
> > Subject: Re: [dpdk-dev] [PATCH v7 1/2] ring: add reset API to flush the ring
> > when not in use
> >
> > Hi Gavin,
> >
> > On Fri, Jul 12, 2019 at 09:32:39AM +0000, Gavin Hu (Arm Technology China)
> > wrote:
> > > Hi Olivier and Thomas,
> > >
> > > > -----Original Message-----
> > > > From: Thomas Monjalon <thomas@monjalon.net>
> > > > Sent: Thursday, July 4, 2019 10:42 PM
> > > > To: Gavin Hu (Arm Technology China) <Gavin.Hu@arm.com>
> > > > Cc: dev@dpdk.org; Olivier Matz <olivier.matz@6wind.com>; nd
> > > > <nd@arm.com>; jerinj@marvell.com; hemant.agrawal@nxp.com;
> > > > Nipun.gupta@nxp.com; Honnappa Nagarahalli
> > > > <Honnappa.Nagarahalli@arm.com>; i.maximets@samsung.com;
> > > > stable@dpdk.org
> > > > Subject: Re: [dpdk-dev] [PATCH v7 1/2] ring: add reset API to flush the ring
> > > > when not in use
> > > >
> > > > 29/03/2019 15:17, Olivier Matz:
> > > > > Hi,
> > > > >
> > > > > On Fri, Mar 15, 2019 at 11:31:25AM +0800, Gavin Hu wrote:
> > > > > > Currently, the flush is done by dequeuing the ring in a while loop. It is
> > > > > > much simpler to flush the queue by resetting the head and tail indices.
> > > > > >
> > > > > > Fixes: af75078fece3 ("first public release")
> > > > > > Cc: stable@dpdk.org
> > > > > >
> > > > > > Signed-off-by: Gavin Hu <gavin.hu@arm.com>
> > > > > > Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com>
> > > > > > Reviewed-by: Honnappa Nagarahalli <honnappa.nagarahalli@arm.com>
> > > > > > ---
> > > > > > --- a/lib/librte_ring/rte_ring_version.map
> > > > > > +++ b/lib/librte_ring/rte_ring_version.map
> > > > > > @@ -17,3 +17,10 @@ DPDK_2.2 {
> > > > > > rte_ring_free;
> > > > > >
> > > > > > } DPDK_2.0;
> > > > > > +
> > > > > > +EXPERIMENTAL {
> > > > > > + global:
> > > > > > +
> > > > > > + rte_ring_reset;
> > > > > > +
> > > > > > +};
> > > > >
> > > > > To me, a static inline function does not need to be added in
> > > > > rte_ring_version.map (or is it due to a check script checking the
> > > > > __rte_experimental tag ?). I found at least one commit where it
> > > > > is not the case:
> > > > > c277b34c1b3b ("mbuf: add function returning buffer address")
> > > > >
> > > > > There are 2 options:
> > > > > 1- remove the rte_ring_version.map part of the patch.
> > > > > 2- change the static inline function into a standard function.
> > > > >
> > > > > I would prefer 2-, because it allows to keep an api/abi compat
> > > > > layer in the future.
> > > >
> > > > There are no news about this patch.
> > > > I classify it as changes requested.
> > > >
> > > Sorry for missed your comments for long time, I just submitted v8.
> > > I took the first option as it is in the data path and to keep consistent to its
> > neighboring functions.
> >
> > Could you give a little more context about why you need to reset
> > the ring in the data path? I see that it is used in rte_hash_reset(),
> > but in my thinking, this was more used at init/exit.
> Sorry,literally it is in the control path, but I was impressed it will impact the
> Data path performance when discussing this patch with Honnappa.
I'm asking this because given the recent discussions about ABI stability,
I'd like to avoid defining a new static inline if it is not required.
Thanks,
Olivier
next prev parent reply other threads:[~2019-07-12 11:48 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <1552620686-10347-1-git-send-email-gavin.hu@arm.com>
[not found] ` <20181212062404.30243-1-gavin.hu@arm.com>
2018-12-12 6:24 ` [dpdk-stable] [PATCH v1 2/2] hash: flush the rings instead of dequeuing one by one Gavin Hu
[not found] ` <20181212064733.1008-1-gavin.hu@arm.com>
2018-12-12 6:47 ` [dpdk-stable] [PATCH v2 " Gavin Hu
2018-12-12 10:15 ` [dpdk-stable] [dpdk-dev] " Bruce Richardson
2018-12-12 19:28 ` Mattias Rönnblom
2019-03-15 3:31 ` [dpdk-stable] [PATCH v7 1/2] ring: add reset API to flush the ring when not in use Gavin Hu
2019-03-29 14:17 ` Olivier Matz
2019-07-04 14:42 ` [dpdk-stable] [dpdk-dev] " Thomas Monjalon
2019-07-12 9:32 ` Gavin Hu (Arm Technology China)
2019-07-12 9:53 ` Olivier Matz
2019-07-12 11:06 ` Gavin Hu (Arm Technology China)
2019-07-12 11:48 ` Olivier Matz [this message]
2019-07-12 15:07 ` Gavin Hu (Arm Technology China)
2019-07-12 15:40 ` Honnappa Nagarahalli
2019-07-12 16:01 ` Gavin Hu (Arm Technology China)
2019-07-16 8:47 ` [dpdk-stable] " Olivier Matz
2019-07-16 9:00 ` Olivier Matz
2019-03-15 3:31 ` [dpdk-stable] [PATCH v7 2/2] hash: flush the rings instead of dequeuing one by one Gavin Hu
2019-07-12 9:26 ` [dpdk-stable] [PATCH v8 1/2] ring: add reset API to flush the ring when not in use Gavin Hu
2019-07-12 9:26 ` [dpdk-stable] [PATCH v8 2/2] hash: flush the rings instead of dequeuing one by one Gavin Hu
2019-07-12 15:54 ` [dpdk-stable] [PATCH v9 1/2] ring: add reset API to flush the ring when not in use Gavin Hu
2019-07-16 9:01 ` Olivier Matz
2019-07-16 11:31 ` Olivier Matz
2019-07-16 14:03 ` Gavin Hu (Arm Technology China)
2019-07-16 15:06 ` Thomas Monjalon
2019-07-16 19:25 ` Gavin Hu (Arm Technology China)
2019-07-12 15:54 ` [dpdk-stable] [PATCH v9 2/2] hash: flush the rings instead of dequeuing one by one Gavin Hu
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=20190712114842.4igwthwrg6cmxqs5@platinum \
--to=olivier.matz@6wind.com \
--cc=Gavin.Hu@arm.com \
--cc=Honnappa.Nagarahalli@arm.com \
--cc=Ruifeng.Wang@arm.com \
--cc=dev@dpdk.org \
--cc=hemant.agrawal@nxp.com \
--cc=i.maximets@samsung.com \
--cc=jerinj@marvell.com \
--cc=nd@arm.com \
--cc=nipun.gupta@nxp.com \
--cc=stable@dpdk.org \
--cc=thomas@monjalon.net \
/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).