From: Jerin Jacob Kollanukkaran <jerinj@marvell.com>
To: Tom Barbette <barbette@kth.se>,
Pavan Nikhilesh Bhagavatula <pbhagavatula@marvell.com>,
"stephen@networkplumber.org" <stephen@networkplumber.org>,
"arybchenko@solarflare.com" <arybchenko@solarflare.com>,
"hemant.agrawal@nxp.com" <hemant.agrawal@nxp.com>,
"thomas@monjalon.net" <thomas@monjalon.net>,
"ferruh.yigit@intel.com" <ferruh.yigit@intel.com>,
"bruce.richardson@intel.com" <bruce.richardson@intel.com>,
Neil Horman <nhorman@tuxdriver.com>,
John McNamara <john.mcnamara@intel.com>,
"Marko Kovacevic" <marko.kovacevic@intel.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [patch v4] doc: announce API change in ethdev offload flags
Date: Fri, 9 Aug 2019 09:28:23 +0000 [thread overview]
Message-ID: <BYAPR18MB2424B0E93CB133FDA62370CDC8D60@BYAPR18MB2424.namprd18.prod.outlook.com> (raw)
In-Reply-To: <2811f2d9-9c85-0eff-6228-e8c5251587a7@kth.se>
> -----Original Message-----
> From: Tom Barbette <barbette@kth.se>
> Sent: Friday, August 9, 2019 2:44 PM
> To: Pavan Nikhilesh Bhagavatula <pbhagavatula@marvell.com>; Jerin Jacob
> Kollanukkaran <jerinj@marvell.com>; stephen@networkplumber.org;
> arybchenko@solarflare.com; hemant.agrawal@nxp.com;
> thomas@monjalon.net; ferruh.yigit@intel.com;
> bruce.richardson@intel.com; Neil Horman <nhorman@tuxdriver.com>; John
> McNamara <john.mcnamara@intel.com>; Marko Kovacevic
> <marko.kovacevic@intel.com>
> Cc: dev@dpdk.org
> Subject: Re: [dpdk-dev] [patch v4] doc: announce API change in ethdev
> offload flags
>
> I think the silent breaking is still not solved for DEV_RX_OFFLOAD_RSS_HASH
> and DEV_RX_OFFLOAD_FLOW_MARK.
Unlike ptype, presence of rss hash and flow_mark will be marked in ol_flags
as PKT_RX_RSS_HASH and PKT_RX_FDIR_ID. So NO application contract breakage.
>
> An old application will still compile without any problem, but the RSS hash will
> not be written and the app will break... They should be negative. Eg
> DEV_RX_OFFLOAD_NO_RSS_HASH and
> DEV_RX_OFFLOAD_NO_FLOW_MARK?
>
> Then, regarding the idea, are we sure it's better to add a configuration
> check/a branch than always copying a few bytes from a warm cache line to a
> warm cache line? Or some HW could free some internal resources? But
> drivers are free to ignore it so it is not a problem as opposed to silent
> breaking.
>
> Tom
>
> On 2019-08-09 10:17, pbhagavatula@marvell.com wrote:
> > From: Pavan Nikhilesh <pbhagavatula@marvell.com>
> >
> > Add new offload flags ``DEV_RX_OFFLOAD_RSS`` and
> ``DEV_RX_OFFLOAD_FLOW_MARK``.
> > Add new function ``rte_eth_dev_set_supported_ptypes`` to allow
> application to
> > set specific ptypes to be updated in ``rte_mbuf::packet_type``
> >
> > Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
> > Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
> > Acked-by: Jerin Jacob <jerinj@marvell.com>
> > Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
> > ---
> > doc/guides/rel_notes/deprecation.rst | 23 +++++++++++++++++++++++
> > 1 file changed, 23 insertions(+)
> >
> > diff --git a/doc/guides/rel_notes/deprecation.rst
> b/doc/guides/rel_notes/deprecation.rst
> > index 37b8592b6..e4e2a85d7 100644
> > --- a/doc/guides/rel_notes/deprecation.rst
> > +++ b/doc/guides/rel_notes/deprecation.rst
> > @@ -78,3 +78,26 @@ Deprecation Notices
> > to set new power environment if power environment was already
> initialized.
> > In this case the function will return -1 unless the environment is unset
> first
> > (using ``rte_power_unset_env``). Other function usage scenarios will not
> change.
> > +
> > +* ethdev: New offload flags ``DEV_RX_OFFLOAD_RSS_HASH`` and
> ``DEV_RX_OFFLOAD_FLOW_MARK``
> > + will be added in 19.11.
> > + This will allow application to enable or disable PMDs from updating
> > + ``rte_mbuf::hash::rss`` and ``rte_mbuf::hash::fdir`` respectively.
> > + This scheme will allow PMDs to avoid writes to ``rte_mbuf`` fields on Rx
> and
> > + thereby improve Rx performance if application wishes do so.
> > + In 19.11 PMDs will still update the fields even when the offloads are not
> > + enabled.
> > +
> > +* ethdev: New function ``rte_eth_dev_set_supported_ptypes`` will be
> added in
> > + 19.11.
> > + This will allow application to request PMD to set specific ptypes defined
> > + through ``rte_eth_dev_set_supported_ptypes`` in
> ``rte_mbuf::packet_type``.
> > + If application doesn't want any ptype information it can call
> > + ``rte_eth_dev_set_supported_ptypes(ethdev_id,
> RTE_PTYPE_UNKNOWN)``
> > + If application doesn't call ``rte_eth_dev_set_supported_ptypes`` PMD
> can
> > + return ``rte_mbuf::packet_type`` with
> ``rte_eth_dev_get_supported_ptypes``.
> > + If application is interested only in L2/L3 layer, it can inform the PMD to
> update
> > + ``rte_mbuf::packet_type`` with L2/L3 ptype by calling
> > + ``rte_eth_dev_set_supported_ptypes(ethdev_id, RTE_PTYPE_L2_MASK
> | RTE_PTYPE_L3_MASK)``.
> > + This scheme will allow PMDs to avoid writes to ``rte_mbuf`` fields on Rx
> and
> > + thereby improve Rx performance if application wishes do so.
> > --
> > 2.17.1
> >
next prev parent reply other threads:[~2019-08-09 9:28 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-08-07 16:09 [dpdk-dev] [patch] " pbhagavatula
2019-08-07 19:36 ` Andrew Rybchenko
2019-08-08 8:17 ` [dpdk-dev] [patch v2] " pbhagavatula
2019-08-08 8:33 ` Jerin Jacob Kollanukkaran
2019-08-08 8:55 ` Pavan Nikhilesh Bhagavatula
2019-08-08 8:58 ` [dpdk-dev] [patch v3] " pbhagavatula
2019-08-08 9:23 ` Ananyev, Konstantin
2019-08-08 10:00 ` Jerin Jacob Kollanukkaran
2019-08-08 10:08 ` Ananyev, Konstantin
2019-08-08 10:23 ` Jerin Jacob Kollanukkaran
2019-08-08 10:33 ` Ananyev, Konstantin
2019-08-08 10:59 ` Jerin Jacob Kollanukkaran
2019-08-08 11:08 ` Thomas Monjalon
2019-08-08 16:53 ` Ananyev, Konstantin
2019-08-09 3:48 ` Jerin Jacob Kollanukkaran
2019-08-09 8:24 ` Ananyev, Konstantin
2019-08-09 8:13 ` Hemant Agrawal
2019-08-09 8:17 ` [dpdk-dev] [patch v4] " pbhagavatula
2019-08-09 8:47 ` Ananyev, Konstantin
2019-08-09 9:07 ` Pavan Nikhilesh Bhagavatula
2019-08-09 9:13 ` Tom Barbette
2019-08-09 9:22 ` Andrew Rybchenko
2019-08-09 9:28 ` Jerin Jacob Kollanukkaran [this message]
2019-08-09 9:55 ` [dpdk-dev] [patch v5] " pbhagavatula
2019-08-09 10:13 ` Ananyev, Konstantin
2019-08-10 21:10 ` Thomas Monjalon
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=BYAPR18MB2424B0E93CB133FDA62370CDC8D60@BYAPR18MB2424.namprd18.prod.outlook.com \
--to=jerinj@marvell.com \
--cc=arybchenko@solarflare.com \
--cc=barbette@kth.se \
--cc=bruce.richardson@intel.com \
--cc=dev@dpdk.org \
--cc=ferruh.yigit@intel.com \
--cc=hemant.agrawal@nxp.com \
--cc=john.mcnamara@intel.com \
--cc=marko.kovacevic@intel.com \
--cc=nhorman@tuxdriver.com \
--cc=pbhagavatula@marvell.com \
--cc=stephen@networkplumber.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).