From: Ori Kam <orika@nvidia.com>
To: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>,
Jack Min <jackmin@nvidia.com>,
"NBU-Contact-Thomas Monjalon (EXTERNAL)" <thomas@monjalon.net>,
Ferruh Yigit <ferruh.yigit@xilinx.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>
Subject: RE: [RFC v2 1/2] ethdev: port flags for pre-configuration flow hints
Date: Thu, 2 Jun 2022 05:50:36 +0000 [thread overview]
Message-ID: <MW2PR12MB46660790645C2647F6AF0852D6DE9@MW2PR12MB4666.namprd12.prod.outlook.com> (raw)
In-Reply-To: <9dfcaec4-c4af-2e64-909d-51ca0f8da554@oktetlabs.ru>
> -----Original Message-----
> From: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
> Sent: Wednesday, June 1, 2022 9:21 PM
> Subject: Re: [RFC v2 1/2] ethdev: port flags for pre-configuration flow hints
>
> Summary must not be a statement. May be:
> ethdev: add strict queue to pre-configuration flow hints
>
> On 6/1/22 10:39, Xiaoyu Min wrote:
> > The data-path focused flow rule management can manage flow rules in more
> > optimized way than traditional one by using hints provided by
> > application in initialization phase.
> >
> > In addition to the current hints we have in port attr, more hints could
> > be provided by application about its behaviour.
> >
> > One example is how the application do with the same flow rule ?
> > A. create/destroy flow on same queue but query flow on different queue
> > or queue-less way (i.e, counter query)
> > B. All flow operations will be exactly on the same queue, by which PMD
> > could be in more optimized way then A because resource could be
> > isolated and access based on queue, without lock, for example.
> >
> > This patch add flag about above situation and could be extended to cover
> > more situations.
> >
> > Signed-off-by: Xiaoyu Min <jackmin@nvidia.com>
> > ---
> > lib/ethdev/rte_flow.h | 11 +++++++++++
> > 1 file changed, 11 insertions(+)
> >
> > diff --git a/lib/ethdev/rte_flow.h b/lib/ethdev/rte_flow.h
> > index d8827dd184..38439fcd1d 100644
> > --- a/lib/ethdev/rte_flow.h
> > +++ b/lib/ethdev/rte_flow.h
> > @@ -4948,6 +4948,12 @@ rte_flow_info_get(uint16_t port_id,
> > struct rte_flow_queue_info *queue_info,
> > struct rte_flow_error *error);
> >
> > +/**
> > + * Indicate all operations for a given flow rule will _strictly_ happen
> > + * on the same queue (create/destroy/query/update).
> > + */
> > +#define RTE_FLOW_PORT_FLAG_STRICT_QUEUE RTE_BIT32(0)
> > +
> > /**
> > * @warning
> > * @b EXPERIMENTAL: this API may change without prior notice.
> > @@ -4972,6 +4978,11 @@ struct rte_flow_port_attr {
> > * @see RTE_FLOW_ACTION_TYPE_METER
> > */
> > uint32_t nb_meters;
> > + /**
> > + * Port flags.
> > + * @see RTE_FLOW_PORT_FLAG_STRICT_QUEUE
>
> I'm not sure that it is a good idea to list flags here.
> If so, it will be required to add all future flags here.
> So, may be just "Port flags (RTE_FLOW_PORT_FLAG_*)"
>
+1
> > + */
> > + uint32_t flags;
> > };
> >
> > /**
next prev parent reply other threads:[~2022-06-02 5:50 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-04-07 5:30 [RFC 0/2] queue-based flow aged report Xiaoyu Min
2022-04-07 5:30 ` [RFC 1/2] ethdev: port flags for pre-configuration flow hints Xiaoyu Min
2022-04-07 11:27 ` Ori Kam
2022-04-07 13:01 ` Jack Min
2022-04-07 15:04 ` Stephen Hemminger
2022-04-08 2:35 ` Jack Min
2022-05-30 16:46 ` Thomas Monjalon
2022-05-31 10:47 ` Jack Min
2022-04-07 5:30 ` [RFC 2/2] ethdev: queue-based flow aged report Xiaoyu Min
2022-05-30 16:42 ` Thomas Monjalon
2022-05-31 11:06 ` Jack Min
2022-05-31 12:57 ` Thomas Monjalon
2022-06-01 7:39 ` [RFC 0/2] " Xiaoyu Min
2022-06-01 7:39 ` [RFC v2 1/2] ethdev: port flags for pre-configuration flow hints Xiaoyu Min
2022-06-01 9:03 ` Ori Kam
2022-06-01 18:20 ` Andrew Rybchenko
2022-06-02 5:50 ` Ori Kam [this message]
2022-06-02 9:38 ` Jack Min
2022-06-01 7:39 ` [RFC v2 2/2] ethdev: queue-based flow aged report Xiaoyu Min
2022-06-01 18:21 ` Andrew Rybchenko
2022-06-02 6:10 ` Ori Kam
2022-06-02 10:23 ` Jack Min
2022-06-06 9:47 ` Ori Kam
2022-06-02 9:39 ` Jack Min
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=MW2PR12MB46660790645C2647F6AF0852D6DE9@MW2PR12MB4666.namprd12.prod.outlook.com \
--to=orika@nvidia.com \
--cc=andrew.rybchenko@oktetlabs.ru \
--cc=dev@dpdk.org \
--cc=ferruh.yigit@xilinx.com \
--cc=jackmin@nvidia.com \
--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).