From: Andrew Rybchenko <arybchenko@solarflare.com>
To: Tom Barbette <barbette@kth.se>, <pbhagavatula@marvell.com>,
<jerinj@marvell.com>, <stephen@networkplumber.org>,
<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
Date: Fri, 9 Aug 2019 12:22:30 +0300 [thread overview]
Message-ID: <a0501cc3-eedb-754c-f317-c1b91b54e1bf@solarflare.com> (raw)
In-Reply-To: <2811f2d9-9c85-0eff-6228-e8c5251587a7@kth.se>
On 8/9/19 12:13 PM, Tom Barbette wrote:
> I think the silent breaking is still not solved for
> DEV_RX_OFFLOAD_RSS_HASH and DEV_RX_OFFLOAD_FLOW_MARK.
>
> 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.
It could be not delivered from NIC to host saving PCIe bandwidth. E.g.
flow mark plus RSS hash is 8 byte and it is more than 10% for small packet.
> 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:23 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 [this message]
2019-08-09 9:28 ` Jerin Jacob Kollanukkaran
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=a0501cc3-eedb-754c-f317-c1b91b54e1bf@solarflare.com \
--to=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=jerinj@marvell.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).