From: Ori Kam <orika@nvidia.com>
To: Ivan Malov <Ivan.Malov@oktetlabs.ru>,
"Xueming(Steven) Li" <xuemingl@nvidia.com>,
"dev@dpdk.org" <dev@dpdk.org>
Cc: NBU-Contact-Thomas Monjalon <thomas@monjalon.net>,
Ferruh Yigit <ferruh.yigit@intel.com>,
Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
Subject: Re: [dpdk-dev] [PATCH 1/2] ethdev: introduce transfer attribute to shared action conf
Date: Sun, 1 Nov 2020 08:11:34 +0000 [thread overview]
Message-ID: <DM6PR12MB4987A6AE9573EFC2FCE1F1F8D6130@DM6PR12MB4987.namprd12.prod.outlook.com> (raw)
In-Reply-To: <66df746e-1a70-d2bb-fa31-7df2a81faac4@oktetlabs.ru>
Hi Ivan,
> -----Original Message-----
> From: Ivan Malov <Ivan.Malov@oktetlabs.ru>
> Sent: Friday, October 30, 2020 10:35 PM
> Subject: Re: [dpdk-dev] [PATCH 1/2] ethdev: introduce transfer attribute to
> shared action conf
>
> Hi,
>
> On 30/10/2020 18:49, Xueming(Steven) Li wrote:
> > Hi Ivan,
> >
> >> -----Original Message-----
> >> From: dev <dev-bounces@dpdk.org> On Behalf Of Ivan Malov
> >> Sent: Thursday, October 29, 2020 7:47 PM
> >> To: dev@dpdk.org
> >> Cc: Ori Kam <orika@nvidia.com>; NBU-Contact-Thomas Monjalon
> >> <thomas@monjalon.net>; Ferruh Yigit <ferruh.yigit@intel.com>; Andrew
> >> Rybchenko <andrew.rybchenko@oktetlabs.ru>
> >> Subject: [dpdk-dev] [PATCH 1/2] ethdev: introduce transfer attribute to
> >> shared action conf
> >>
> >> In a flow rule, attribute "transfer" means operation level at which both
> traffic
> >> is matched and actions are conducted.
> >>
> >> Add the very same attribute to shared action configuration.
> >> If a driver needs to prepare HW resources in two different ways, depending
> >> on the operation level, in order to set up an action, then this new attribute
> >> will indicate the level.
> >> Also, when handling a flow rule insertion, the driver will be able to turn
> >> down a shared action if its level is unfit.
> > Most actions apply to both level, rss and queue action applies on non-transfer
> level,
> > Port action applies to transfer level. Is there a particular scenario for this new
> attribute?
>
> Most doesn't mean all, and you've already described some of the
> exceptions. And that's exactly the deal. Particular scenarios are don't
> cares given the fact that such an attribute is meant to be a generic
> solution. If an action happens to be supported on both levels, this
> doesn't necessarily mean that HW resources/objects that need to be
> prepared in the two cases are of the same type (or programmed to the NIC
> the same way). This is exactly what applies to flow rules (which do have
> attribute transfer) and what should be done to shared action conf, too.
>
> If this still seems vague, please let me know.
>
The only question is can we see a reason to share action between transfer and
non transfer?
I don't see such a reason and I think it can improve the code. So I vote to add it.
In any case, you are missing the rte_flow rst update.
I can see that the rst also misses the ingress bits, can you please also
create a fix for those?
Thanks,
Ori
> >
> >>
> >> Signed-off-by: Ivan Malov <ivan.malov@oktetlabs.ru>
> >> ---
> >> lib/librte_ethdev/rte_flow.h | 7 +++++++
> >> 1 file changed, 7 insertions(+)
> >>
> >> diff --git a/lib/librte_ethdev/rte_flow.h b/lib/librte_ethdev/rte_flow.h index
> >> a8eac4deb..0b993d8eb 100644
> >> --- a/lib/librte_ethdev/rte_flow.h
> >> +++ b/lib/librte_ethdev/rte_flow.h
> >> @@ -3487,6 +3487,13 @@ struct rte_flow_shared_action_conf {
> >> /**< Action valid for rules applied to ingress traffic. */
> >> uint32_t egress:1;
> >> /**< Action valid for rules applied to egress traffic. */
> >> +
> >> + /**
> >> + * This attribute matches that of the flow rules which
> >> + * are supposed to comprise the given shared action.
> >> + * See struct rte_flow_attr.
> >> + */
> >> + uint32_t transfer:1;
> >> };
> >>
> >> /**
> >> --
> >> 2.20.1
>
> --
> Ivan M
next prev parent reply other threads:[~2020-11-01 8:11 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-10-29 11:46 Ivan Malov
2020-10-29 11:46 ` [dpdk-dev] [PATCH 2/2] app/testpmd: support shared flow action attribute transfer Ivan Malov
2020-10-29 12:37 ` [dpdk-dev] [PATCH 1/2] ethdev: introduce transfer attribute to shared action conf Ferruh Yigit
2020-10-29 12:54 ` Andrew Rybchenko
2020-10-30 15:49 ` Xueming(Steven) Li
2020-10-30 20:35 ` Ivan Malov
2020-11-01 8:11 ` Ori Kam [this message]
2020-11-01 9:35 ` Ori Kam
2020-11-02 9:37 ` Ori Kam
2020-11-02 11:35 ` [dpdk-dev] [PATCH v2 " Ivan Malov
2020-11-02 11:35 ` [dpdk-dev] [PATCH v2 2/2] app/testpmd: support shared flow action attribute transfer Ivan Malov
2020-11-02 11:43 ` [dpdk-dev] [PATCH v3 1/2] ethdev: introduce transfer attribute to shared action conf Ivan Malov
2020-11-02 11:43 ` [dpdk-dev] [PATCH v3 2/2] app/testpmd: support shared flow action attribute transfer Ivan Malov
2020-11-02 14:04 ` Ori Kam
2020-11-02 13:15 ` [dpdk-dev] [PATCH v3 1/2] ethdev: introduce transfer attribute to shared action conf Andrew Rybchenko
2020-11-02 21:44 ` Ajit Khaparde
2020-11-02 18:54 ` Ferruh Yigit
2020-11-03 14:10 ` Ivan Malov
2020-11-03 15:52 ` Ferruh Yigit
2020-11-03 14:20 ` Andrey Vesnovaty
2020-11-03 16:05 ` Ferruh Yigit
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=DM6PR12MB4987A6AE9573EFC2FCE1F1F8D6130@DM6PR12MB4987.namprd12.prod.outlook.com \
--to=orika@nvidia.com \
--cc=Ivan.Malov@oktetlabs.ru \
--cc=andrew.rybchenko@oktetlabs.ru \
--cc=dev@dpdk.org \
--cc=ferruh.yigit@intel.com \
--cc=thomas@monjalon.net \
--cc=xuemingl@nvidia.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).