From: Ferruh Yigit <ferruh.yigit@intel.com>
To: Bing Zhao <bingz@nvidia.com>, <viacheslavo@nvidia.com>,
<matan@nvidia.com>
Cc: <dev@dpdk.org>, <rasland@nvidia.com>, <stable@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH v2] net/mlx5: fix the RSS consistency check of meter policy
Date: Wed, 10 Nov 2021 16:16:54 +0000 [thread overview]
Message-ID: <e5d93cdc-8584-0514-be21-4f675842cf82@intel.com> (raw)
In-Reply-To: <20211018144307.148246-1-bingz@nvidia.com>
On 10/18/2021 3:43 PM, Bing Zhao wrote:
> After yellow color actions in the metering policy were supported,
> the RSS could be used for both green and yellow colors and only the
> queues attribute could be different.
>
> When specifying the attributes of a RSS, some fields can be ignored
> and some default values will be used in PMD. For example, there is a
> default RSS key in the PMD and it will be used to create the TIR if
> nothing is provided by the application.
>
> The default value cases were missed in the current implementation
> and it would cause some false positives or crashes.
>
> The comparison function should be adjusted to take all cases into
> consideration when RSS is used for both green and yellow colors.
>
> Fixes: 4b7bf3ffb473 ("net/mlx5: support yellow in meter policy validation")
> Cc: stable@dpdk.org
>
> Signed-off-by: Bing Zhao <bingz@nvidia.com>
> ---
> v2: remove unnecessary parenthesis
> ---
> drivers/net/mlx5/mlx5_flow_dv.c | 18 ++++++++++++++----
> 1 file changed, 14 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/net/mlx5/mlx5_flow_dv.c b/drivers/net/mlx5/mlx5_flow_dv.c
> index 609ab43fb6..94b70bd10a 100644
> --- a/drivers/net/mlx5/mlx5_flow_dv.c
> +++ b/drivers/net/mlx5/mlx5_flow_dv.c
> @@ -17412,12 +17412,22 @@ static inline int
> flow_dv_mtr_policy_rss_compare(const struct rte_flow_action_rss *r1,
> const struct rte_flow_action_rss *r2)
> {
> - if (!r1 || !r2)
> + if (r1 == NULL || r2 == NULL)
> return 0;
> - if (r1->func != r2->func || r1->level != r2->level ||
> - r1->types != r2->types || r1->key_len != r2->key_len ||
> - memcmp(r1->key, r2->key, r1->key_len))
> + if (!(r1->level <= 1 && r2->level <= 1) &&
> + !(r1->level > 1 && r2->level > 1))
> return 1;
> + if (r1->types != r2->types &&
> + !((r1->types == 0 || r1->types == ETH_RSS_IP) &&
> + (r2->types == 0 || r2->types == ETH_RSS_IP)))
Need to use renamed macro: RTE_ETH_RSS_IP
Will update in the next-net.
next prev parent reply other threads:[~2021-11-10 16:19 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-18 13:16 [dpdk-dev] [PATCH] " Bing Zhao
2021-10-18 14:43 ` [dpdk-dev] [PATCH v2] " Bing Zhao
2021-11-04 8:56 ` Matan Azrad
2021-11-09 9:57 ` Raslan Darawsheh
2021-11-10 16:16 ` Ferruh Yigit [this message]
2021-10-20 19:35 ` [dpdk-dev] [PATCH] " Raslan Darawsheh
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=e5d93cdc-8584-0514-be21-4f675842cf82@intel.com \
--to=ferruh.yigit@intel.com \
--cc=bingz@nvidia.com \
--cc=dev@dpdk.org \
--cc=matan@nvidia.com \
--cc=rasland@nvidia.com \
--cc=stable@dpdk.org \
--cc=viacheslavo@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).