DPDK patches and discussions
 help / color / mirror / Atom feed
From: Andrew Rybchenko <arybchenko@solarflare.com>
To: Ori Kam <orika@mellanox.com>, <thomas@monjalon.net>,
	<david.marchand@redhat.com>,
	John McNamara <john.mcnamara@intel.com>,
	"Marko Kovacevic" <marko.kovacevic@intel.com>
Cc: <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH v2] doc: update RSS action with best effort
Date: Wed, 5 Aug 2020 16:39:11 +0300
Message-ID: <5cc28959-f649-f262-eb68-2bf44727c786@solarflare.com> (raw)
In-Reply-To: <1596528811-138806-1-git-send-email-orika@mellanox.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.

> +
> +- 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.

> +
> +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.

>  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.
> 


  parent reply	other threads:[~2020-08-05 13:39 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 [this message]
2020-08-05 14:08     ` Ori Kam
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=5cc28959-f649-f262-eb68-2bf44727c786@solarflare.com \
    --to=arybchenko@solarflare.com \
    --cc=david.marchand@redhat.com \
    --cc=dev@dpdk.org \
    --cc=john.mcnamara@intel.com \
    --cc=marko.kovacevic@intel.com \
    --cc=orika@mellanox.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

DPDK patches and discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://inbox.dpdk.org/dev/0 dev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 dev dev/ https://inbox.dpdk.org/dev \
		dev@dpdk.org
	public-inbox-index dev

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://inbox.dpdk.org/inbox.dpdk.dev


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git