DPDK patches and discussions
 help / color / mirror / Atom feed
From: Ferruh Yigit <ferruh.yigit@amd.com>
To: Huisong Li <lihuisong@huawei.com>,
	dev@dpdk.org, thomas@monjalon.net,
	Chengwen Feng <fengchengwen@huawei.com>,
	Jie Hai <haijie1@huawei.com>,
	Dongdong Liu <liudongdong3@huawei.com>
Cc: liuyonglong@huawei.com
Subject: Re: [PATCH v3 1/6] doc: add RSS hash algorithm feature
Date: Mon, 27 Nov 2023 12:19:43 +0000	[thread overview]
Message-ID: <aa715eaa-bc94-4a26-acc8-38f927ca54ec@amd.com> (raw)
In-Reply-To: <20231125014745.61348-2-lihuisong@huawei.com>

On 11/25/2023 1:47 AM, Huisong Li wrote:
> Add hash algorithm feature introduced by 23.11 and fix some RSS features
> description.
> 
> Fixes: 34ff088cc241 ("ethdev: set and query RSS hash algorithm")
> 
> Signed-off-by: Huisong Li <lihuisong@huawei.com>
> Acked-by: Chengwen Feng <fengchengwen@huawei.com>
> ---
>  doc/guides/nics/features.rst | 26 ++++++++++++++++++++++----
>  1 file changed, 22 insertions(+), 4 deletions(-)
> 
> diff --git a/doc/guides/nics/features.rst b/doc/guides/nics/features.rst
> index 1a1dc16c1e..0d38c5c525 100644
> --- a/doc/guides/nics/features.rst
> +++ b/doc/guides/nics/features.rst
> @@ -277,10 +277,12 @@ RSS hash
>  Supports RSS hashing on RX.
>  
>  * **[uses]     user config**: ``dev_conf.rxmode.mq_mode`` = ``RTE_ETH_MQ_RX_RSS_FLAG``.
> -* **[uses]     user config**: ``dev_conf.rx_adv_conf.rss_conf``.
> +* **[uses]     user config**: ``rss_conf.rss_hf``.
>

Feature title is "RSS hash", it can be two things,
1. "Receive Side Scaling" support
2. Provide RSS hash to application

When this document first prepared RSS hash value was always provided to
the application when RSS enabled.
So intention with this feature was "Receive Side Scaling" support, hence
'RTE_ETH_MQ_RX_RSS_FLAG' added.

Later providing RSS has to the application separated as optimization,
'RTE_ETH_RX_OFFLOAD_RSS_HASH' & 'RTE_MBUF_F_RX_RSS_HASH' added for this
support.


As the intention of this feature is "Receive Side Scaling" support, we
shouldn't reduce configuration struct to 'rss_conf.rss_hf'.

Instead perhaps can expand to:
'rte_eth_conf.rx_adv_conf.rss_conf', 'rte_eth_rss_conf'



>  * **[uses]     rte_eth_rxconf,rte_eth_rxmode**: ``offloads:RTE_ETH_RX_OFFLOAD_RSS_HASH``.
>  * **[provides] rte_eth_dev_info**: ``flow_type_rss_offloads``.
>  * **[provides] mbuf**: ``mbuf.ol_flags:RTE_MBUF_F_RX_RSS_HASH``, ``mbuf.rss``.
> +* **[related]  API**: ``rte_eth_dev_configure``, ``rte_eth_dev_rss_hash_update``
> +  ``rte_eth_dev_rss_hash_conf_get()``.
>  

ack

>  
>  .. _nic_features_inner_rss:
> @@ -288,7 +290,7 @@ Supports RSS hashing on RX.
>  Inner RSS
>  ---------
>  
> -Supports RX RSS hashing on Inner headers.
> +Supports RX RSS hashing on Inner headers by rte_flow API.
>  

This should be clarified with details below, not sure if it required to
limit description to rte_flow.


And I guess similar confusion exist with the providing hash to user.
Need to check if rte_flow implementation puts hash to mbuf along with
doing the RSS, or if it checks 'RTE_ETH_RX_OFFLOAD_RSS_HASH' offload,
and update below items accordingly.


>  * **[uses]    rte_flow_action_rss**: ``level``.
>  * **[uses]    rte_eth_rxconf,rte_eth_rxmode**: ``offloads:RTE_ETH_RX_OFFLOAD_RSS_HASH``.
> @@ -303,9 +305,25 @@ RSS key update
>  Supports configuration of Receive Side Scaling (RSS) hash computation. Updating
>  Receive Side Scaling (RSS) hash key.
>  
> -* **[implements] eth_dev_ops**: ``rss_hash_update``, ``rss_hash_conf_get``.
> +* **[implements] eth_dev_ops**: ``dev_configure``, ``rss_hash_update``, ``rss_hash_conf_get``.
> +* **[uses]     user config**: ``rss_conf.rss_key``, ``rss_conf.rss_key_len``
>  * **[provides]   rte_eth_dev_info**: ``hash_key_size``.
> -* **[related]    API**: ``rte_eth_dev_rss_hash_update()``,
> +* **[related]    API**: ``rte_eth_dev_configure``, ``rte_eth_dev_rss_hash_update()``,
> +  ``rte_eth_dev_rss_hash_conf_get()``.
> +

ack

There is an inconsistency in the documentation but I think it is good to
use '()' when documenting API, like: 'rte_eth_dev_configure()'


> +
> +.. _nic_features_rss_hash_algo_update:
> +
> +RSS hash algorithm update
> +-------------------------
> +
> +Supports configuration of Receive Side Scaling (RSS) hash algorithm. Updating
> +RSS hash algorithm.
> +
> +* **[implements] eth_dev_ops**: ``dev_configure``, ``rss_hash_update``, ``rss_hash_conf_get``.
> +* **[uses]     user config**: ``rss_conf.algorithm``
> +* **[provides]   rte_eth_dev_info**: ``rss_algo_capa``.
> +* **[related]    API**: ``rte_eth_dev_configure``, ``rte_eth_dev_rss_hash_update()``,
>    ``rte_eth_dev_rss_hash_conf_get()``.
>  
>  


This document describes features listed in the 'default.ini', so we
shouldn't have above.

And I don't think RSS hash algorithm update is a big enough feature to
list in the feature list, perhaps it can be embedded in the RSS support
block, what do you think?



  reply	other threads:[~2023-11-27 12:19 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-11-23 13:59 [PATCH 0/5] doc/features: fix some features and add new features Huisong Li
2023-11-23 13:59 ` [PATCH 1/5] doc/features: add RSS hash algorithm feature Huisong Li
2023-11-23 13:59 ` [PATCH 2/5] doc/features: add link up/down feature Huisong Li
2023-11-23 13:59 ` [PATCH 3/5] doc/features: add config interface for speed capabilities Huisong Li
2023-11-23 13:59 ` [PATCH 4/5] doc/features: add Traffic Manager features Huisong Li
2023-11-23 13:59 ` [PATCH 5/5] doc/features: add dump device private information feature Huisong Li
2023-11-23 14:18   ` Thomas Monjalon
2023-11-24  2:03     ` lihuisong (C)
2023-11-24  3:12 ` [PATCH 0/6] doc/features: fix some features and add new features Huisong Li
2023-11-24  3:12   ` [PATCH 1/6] doc/features: add RSS hash algorithm feature Huisong Li
2023-11-24  3:12   ` [PATCH 2/6] doc/features: add link up/down feature Huisong Li
2023-11-24  3:12   ` [PATCH 3/6] doc/features: add features for link speeds Huisong Li
2023-11-24  3:12   ` [PATCH 4/6] doc/features: add Traffic Manager features Huisong Li
2023-11-24  3:12   ` [PATCH 5/6] doc/features: add dump device private information feature Huisong Li
2023-11-24  3:12   ` [PATCH 6/6] doc/features: add feature for loopback mode Huisong Li
2023-11-24  3:24   ` [PATCH 0/6] doc/features: fix some features and add new features fengchengwen
2023-11-25  1:47 ` [PATCH v3 " Huisong Li
2023-11-25  1:47   ` [PATCH v3 1/6] doc: add RSS hash algorithm feature Huisong Li
2023-11-27 12:19     ` Ferruh Yigit [this message]
2023-11-27 13:12       ` lihuisong (C)
2023-11-27 15:43         ` Ferruh Yigit
2023-11-27 16:35           ` Ferruh Yigit
2023-11-28  1:34             ` lihuisong (C)
2023-11-28 10:23               ` Ferruh Yigit
2023-11-28  1:21           ` lihuisong (C)
2023-11-28 10:09             ` Ferruh Yigit
2023-11-28 11:29               ` lihuisong (C)
2023-11-28 11:52                 ` Ferruh Yigit
2023-11-28 12:46                   ` lihuisong (C)
2023-11-25  1:47   ` [PATCH v3 2/6] doc: add link up/down feature Huisong Li
2023-11-27 12:24     ` Ferruh Yigit
2023-11-27 13:16       ` lihuisong (C)
2023-11-25  1:47   ` [PATCH v3 3/6] doc: add features for link speeds Huisong Li
2023-11-25  1:47   ` [PATCH v3 4/6] doc: add Traffic Manager feature Huisong Li
2023-11-25  1:47   ` [PATCH v3 5/6] doc: add dump device private information feature Huisong Li
2023-11-25  1:47   ` [PATCH v3 6/6] doc: add feature for loopback mode Huisong Li
2023-11-27 12:35   ` [PATCH v3 0/6] doc/features: fix some features and add new features Ferruh Yigit
2023-11-27 13:37     ` lihuisong (C)
2023-11-27 16:19       ` Ferruh Yigit
2023-11-27 14:16 ` [PATCH v4 0/5] " Huisong Li
2023-11-27 14:16   ` [PATCH v4 1/5] doc: fix the description of RSS related feature Huisong Li
2023-11-27 16:36     ` Ferruh Yigit
2023-11-27 14:16   ` [PATCH v4 2/5] doc: add link up/down feature Huisong Li
2023-11-27 14:16   ` [PATCH v4 3/5] doc: add features for link speeds Huisong Li
2023-11-27 14:16   ` [PATCH v4 4/5] doc: add Traffic Manager feature Huisong Li
2023-11-27 14:16   ` [PATCH v4 5/5] doc: add dump device private information ops Huisong Li
2023-11-27 16:37     ` Ferruh Yigit
2023-11-27 16:44   ` [PATCH v4 0/5] doc/features: fix some features and add new features Ferruh Yigit
2023-11-28  2:09     ` lihuisong (C)
2023-11-28  4:07       ` lihuisong (C)
2023-11-27 16:56   ` Ferruh Yigit
2023-11-28  2:23     ` lihuisong (C)
2023-11-28  5:59 ` [PATCH v5 0/3] " Huisong Li
2023-11-28  5:59   ` [PATCH v5 1/3] doc: fix the description of RSS related feature Huisong Li
2023-11-28 13:54     ` Thomas Monjalon
2023-11-28  5:59   ` [PATCH v5 2/3] doc: add link up/down feature Huisong Li
2023-11-28  5:59   ` [PATCH v5 3/3] doc: add dump device private information ops Huisong Li

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=aa715eaa-bc94-4a26-acc8-38f927ca54ec@amd.com \
    --to=ferruh.yigit@amd.com \
    --cc=dev@dpdk.org \
    --cc=fengchengwen@huawei.com \
    --cc=haijie1@huawei.com \
    --cc=lihuisong@huawei.com \
    --cc=liudongdong3@huawei.com \
    --cc=liuyonglong@huawei.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).