DPDK patches and discussions
 help / color / mirror / Atom feed
From: Ori Kam <orika@mellanox.com>
To: Andrew Rybchenko <arybchenko@solarflare.com>,
	Thomas Monjalon <thomas@monjalon.net>,
	"david.marchand@redhat.com" <david.marchand@redhat.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 v2] doc: update RSS action with best effort
Date: Wed, 5 Aug 2020 14:08:33 +0000	[thread overview]
Message-ID: <AM6PR05MB51768F2EBA2929FF8E4F5E67DB4B0@AM6PR05MB5176.eurprd05.prod.outlook.com> (raw)
In-Reply-To: <5cc28959-f649-f262-eb68-2bf44727c786@solarflare.com>

Hi Andrew,

> -----Original Message-----
> From: Andrew Rybchenko <arybchenko@solarflare.com>
> 
> On 8/4/20 11:13 AM, Ori Kam wrote:
> > Using the rte_flow action RSS types field,
> > may result in undefined outcome.
> >
> > For example selecting both UDP and TCP,
> > selecting TCP RSS type but the pattern is targeting UDP traffic.
> > another option is that the PMD doesn't support all requested types.
> >
> > Until now, it wasn't clear what will happen in such cases.
> > This commit clarify this issue by stating that the PMD
> > will work in the best-effort mode.
> >
> > Signed-off-by: Ori Kam <orika@mellanox.com>
> > ---
> > v2:
> >  * Based on ML, update that using only unsupported hash type
> >    may cause the flow to be rejected by PMD.
> > ---
> >  doc/guides/prog_guide/rte_flow.rst | 11 +++++++++++
> >  1 file changed, 11 insertions(+)
> >
> > diff --git a/doc/guides/prog_guide/rte_flow.rst
> b/doc/guides/prog_guide/rte_flow.rst
> > index 3e5cd1e..d730b66 100644
> > --- a/doc/guides/prog_guide/rte_flow.rst
> > +++ b/doc/guides/prog_guide/rte_flow.rst
> > @@ -1735,6 +1735,17 @@ unspecified "best-effort" settings from the
> underlying PMD, which depending
> >  on the flow rule, may result in anything ranging from empty (single queue)
> >  to all-inclusive RSS.
> >
> > +Best effort will be used, in case there is a conflict inside the rule.
> > +The conflict can be the result of:
> > +
> > +- Conflicting RSS types, for example setting both UDP and TCP.
> 
> Thinking more about it, I see no conflict at all. It is common
> to specify both TCP and UDP in hash function if user wants to
> take TCP ports for TCP packets and UDP ports for UDP into
> account.
> 
I fully agree with you that it is common to use both UDP and TCP and
expect it to work based on the traffic. this is the point of this patch.
To clarify that this is valid input and the PMD will work in best effort mode.

> > +
> > +- Conflicting between RSS types and the requested pattern to match,
> > +  for example matching on UDP and hashing RSS on TCP.
> 
> I'd not name it a conflict either. It is just common rule when
> applicable fields are used only.
> 
Just like my comment from above.

> > +
> > +If requested RSS hash type is not supported,
> > +and no supported hash type is requested then the PMD may reject the flow.
> > +
> 
> I disagree with such description. If requested RSS hash type is
> not supported (not present in dev_info.flow_type_rss_offloads),
> it must be rejected and error returned.
> If requested RSS hash type is not supported for a packet
> matching the rule, but supported in general (present in
> dev_info.flow_type_rss_offloads), part of RSS hash type
> specification may be ignored and only applicable bits are used.
> If result is empty, PMD may reject the flow rule.
> 
The flow should be rejected even if it is used with some type that is supported?


> >  Note: RSS hash result is stored in the ``hash.rss`` mbuf field which
> >  overlaps ``hash.fdir.lo``. Since `Action: MARK`_ sets the ``hash.fdir.hi``
> >  field only, both can be requested simultaneously.
> >


  reply	other threads:[~2020-08-05 14:08 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-08-03 14:28 [dpdk-dev] [PATCH] " Ori Kam
2020-08-03 14:33 ` Andrew Rybchenko
2020-08-03 15:22   ` Ori Kam
2020-08-03 15:33     ` Andrew Rybchenko
2020-08-03 15:47       ` Ori Kam
2020-08-03 16:03         ` Andrew Rybchenko
2020-08-03 16:53           ` Ori Kam
2020-08-03 15:40     ` David Marchand
2020-08-03 15:49       ` Ori Kam
2020-08-03 15:55         ` Andrew Rybchenko
2020-08-03 16:12           ` Thomas Monjalon
2020-09-14 14:29           ` Ferruh Yigit
2020-08-04  8:13 ` [dpdk-dev] [PATCH v2] " Ori Kam
2020-08-05 12:39   ` Ori Kam
2020-08-05 13:39   ` Andrew Rybchenko
2020-08-05 14:08     ` Ori Kam [this message]
2020-08-06 12:14       ` Andrew Rybchenko
2020-08-06 16:55         ` Ori Kam
2020-09-14 14:38       ` Ferruh Yigit
2020-08-07  5:02 ` [dpdk-dev] [PATCH v3] " Ori Kam
2020-08-07  9:41   ` Andrew Rybchenko
2020-08-10  7:40     ` Ori Kam
2020-08-10  9:53       ` Andrew Rybchenko
2020-08-10 15:08 ` [dpdk-dev] [PATCH v4] " Ori Kam
2020-09-14 14:43   ` 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=AM6PR05MB51768F2EBA2929FF8E4F5E67DB4B0@AM6PR05MB5176.eurprd05.prod.outlook.com \
    --to=orika@mellanox.com \
    --cc=arybchenko@solarflare.com \
    --cc=david.marchand@redhat.com \
    --cc=dev@dpdk.org \
    --cc=john.mcnamara@intel.com \
    --cc=marko.kovacevic@intel.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).