DPDK patches and discussions
 help / color / mirror / Atom feed
From: Jie Hai <haijie1@huawei.com>
To: Thomas Monjalon <thomas@monjalon.net>
Cc: <dev@dpdk.org>, Ferruh Yigit <ferruh.yigit@amd.com>,
	Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>,
	<liudongdong3@huawei.com>, <orika@nvidia.com>,
	<jerinj@marvell.com>, <ajit.khaparde@broadcom.com>
Subject: Re: [PATCH v2 1/5] ethdev: support setting and querying RSS algorithm
Date: Fri, 8 Sep 2023 16:44:24 +0800	[thread overview]
Message-ID: <6f9d565d-b9b7-030b-8daf-ffcd4faa39f1@huawei.com> (raw)
In-Reply-To: <2922097.o0KrE1Onz3@thomas>

Hi, Thomas
Thanks for your review.

On 2023/9/4 15:45, Thomas Monjalon wrote:
> 04/09/2023 09:10, Jie Hai:
>> On 2023/8/30 19:46, Thomas Monjalon wrote:
>>> 26/08/2023 09:46, Jie Hai:
>   >> + * The *func* field of the *rss_conf* structure indicates the hash algorithm
>>>> + * applied by the RSS hashing. Passing RTE_ETH_HASH_FUNCTION_DEFAULT allows
>>>> + * the PMD to use its best-effort algorithm rather than a specific one.
>>>>     */
>>>
>>> I don't like commenting a field on top of the structure.
>>> By the way, the first sentence does not look helpful.
>>> RTE_ETH_HASH_FUNCTION_DEFAULT may be explained in the enum.
>>>
>> Other fields  above the structure 'rte_eth_rss_conf' have comments.
>> If the new fields 'func' do not have comments, it may be misleading.
>> Unless all the comments above are removed. I'm not sure whether to
>> delete them or not.
> 
> You should explain RTE_ETH_HASH_FUNCTION_DEFAULT in its enum.
> The rest of the explanation can be on the struct field.
> I'm OK to have another patch moving old explanations from the struct
> to the fields.
Fixed in V4, please check it.
> 
>>>>    struct rte_eth_rss_conf {
>>>>    	uint8_t *rss_key;    /**< If not NULL, 40-byte hash key. */
>>>>    	uint8_t rss_key_len; /**< hash key length in bytes. */
>>>>    	uint64_t rss_hf;     /**< Hash functions to apply - see below. */
>>>> +	enum rte_eth_hash_function func;	/**< Hash algorithm to apply. */
>>>
>>> You can drop "to apply" words.
>> Fixed in V3.
>>>
>>> How the algorithms support combinations in rss_hf?
>>>
>> The rss_hf defines the input of the RSS hash algorithms.
>> For example, rss_hf = RTE_ETH_RSS_NONFRAG_IPV4_TCP | RTE_ETH_RSS_IPV4,
>> these two kinds of packets can be dispatched to different queues
>> according to their tuple field value.
>> For ipv4-tcp packets, src-ip, dst-ip, src-port, dst-port are used as
>> parameters of RSS hash algorithms to compute hash value.
>> For ipv4 packets src-ip, dst-ip are used.
>>
>> If rss_hf = RTE_ETH_RSS_NONFRAG_IPV4_TCP | RTE_ETH_RSS_L4_SRC_ONLY, for
>> ipv4-tcp packets, src-port is used as parameters of RSS hash algorithms
>> to compute hash value.
> 
> I know what is rss_hf.
> My question is about the algorithms.
> Do they all support any combination in rss_hf?
> 
>
I don't know about all vendors' hardware implementations,
so here's just my simple opinion.

Theoretically, I think that all algorithms should support all 
combinations in rss_hf, The reasons are as follows.

1. The rss_hf and algorithms are independent. For different algorithms 
and the same packets and hash key, the input parameters for different 
algorithms should be the same, which depends on implemetation of hardware.

2. As long as hardware and driver support, all packet types defined by
rss_hf could generate the the input parameters for the algorithm to compute.

Thanks,
Jie Hai
> .

  reply	other threads:[~2023-09-08  8:44 UTC|newest]

Thread overview: 222+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-03-15 11:00 [PATCH 0/5] support setting and querying RSS algorithms Dongdong Liu
2023-03-15 11:00 ` [PATCH 1/5] ethdev: support setting and querying rss algorithm Dongdong Liu
2023-03-15 11:28   ` Ivan Malov
2023-03-16 13:10     ` Dongdong Liu
2023-03-16 14:31       ` Ivan Malov
2023-03-15 13:43   ` Thomas Monjalon
2023-03-16 13:16     ` Dongdong Liu
2023-06-02 20:19       ` Ferruh Yigit
2023-06-05 12:34         ` Dongdong Liu
2023-03-15 11:00 ` [PATCH 2/5] net/hns3: support setting and querying RSS hash function Dongdong Liu
2023-03-15 11:00 ` [PATCH 3/5] app/proc-info: fix never show RSS info Dongdong Liu
2023-06-02 20:19   ` Ferruh Yigit
2023-06-05 13:04     ` Dongdong Liu
2023-06-02 21:19   ` Stephen Hemminger
2023-06-05 13:07     ` Dongdong Liu
2023-03-15 11:00 ` [PATCH 4/5] app/proc-info: show RSS types with strings Dongdong Liu
2023-06-02 20:22   ` Ferruh Yigit
2023-06-05 13:12     ` Dongdong Liu
2023-03-15 11:00 ` [PATCH 5/5] app/proc-info: support querying RSS hash algorithm Dongdong Liu
2023-08-26  7:46 ` [PATCH v2 0/5] support setting and querying RSS algorithms Jie Hai
2023-08-26  7:46   ` [PATCH v2 1/5] ethdev: support setting and querying RSS algorithm Jie Hai
2023-08-30 11:46     ` Thomas Monjalon
2023-08-31  0:10       ` Ajit Khaparde
2023-08-31 10:59         ` Jie Hai
2023-09-04  6:26         ` Jie Hai
2023-09-05 16:17           ` Ajit Khaparde
2023-09-04  7:10       ` Jie Hai
2023-09-04  7:45         ` Thomas Monjalon
2023-09-08  8:44           ` Jie Hai [this message]
2023-09-09  0:01             ` Ajit Khaparde
2023-09-11 10:09               ` Thomas Monjalon
2023-09-11 16:11                 ` Ajit Khaparde
2023-09-06 15:10     ` Stephen Hemminger
2023-09-08  9:28       ` Jie Hai
2023-09-08 20:58         ` Stephen Hemminger
2023-09-12  1:49           ` Jie Hai
2023-08-26  7:46   ` [PATCH v2 2/5] net/hns3: support setting and querying RSS hash function Jie Hai
2023-08-26  7:46   ` [PATCH v2 3/5] app/proc-info: fix never show RSS info Jie Hai
2023-08-26  7:46   ` [PATCH v2 4/5] app/proc-info: adjust the display format of " Jie Hai
2023-08-26  7:46   ` [PATCH v2 5/5] app/proc-info: support querying RSS hash algorithm Jie Hai
2023-09-04  6:10   ` [PATCH v3 0/5] support setting and querying RSS algorithms Jie Hai
2023-09-04  6:10     ` [PATCH v3 1/5] app/proc-info: fix never show RSS info Jie Hai
2023-09-04  6:10     ` [PATCH v3 2/5] app/proc-info: adjust the display format of " Jie Hai
2023-09-04  6:10     ` [PATCH v3 3/5] app/proc-info: support querying RSS hash algorithm Jie Hai
2023-09-04  6:10     ` [PATCH v3 4/5] app/testpmd: add RSS hash algorithms display Jie Hai
2023-09-04  6:10     ` [PATCH v3 5/5] app/testpmd: add RSS hash algorithms setting Jie Hai
2023-09-04  7:37     ` [PATCH v3 0/5] support setting and querying RSS algorithms Jie Hai
2023-09-04  7:28   ` [PATCH " Jie Hai
2023-09-04  7:28     ` [PATCH 1/5] ethdev: support setting and querying RSS algorithm Jie Hai
2023-09-04  7:28     ` [PATCH 2/5] net/hns3: support setting and querying RSS hash function Jie Hai
2023-09-04  7:28     ` [PATCH 3/5] app/proc-info: fix never show RSS info Jie Hai
2023-09-05 16:29       ` Pattan, Reshma
2023-09-08  8:01         ` Jie Hai
2023-09-04  7:28     ` [PATCH 4/5] app/proc-info: adjust the display format of " Jie Hai
2023-09-04  7:28     ` [PATCH 5/5] app/proc-info: support querying RSS hash algorithm Jie Hai
2023-09-05 17:07       ` Pattan, Reshma
2023-09-08  8:01         ` Jie Hai
2023-09-08  8:00     ` [PATCH v4 0/7] support setting and querying RSS algorithms Jie Hai
2023-09-08  8:00       ` [PATCH v4 1/7] ethdev: recomment some definitions related to RSS Jie Hai
2023-09-20 16:39         ` Ferruh Yigit
2023-09-26 12:08           ` Jie Hai
2023-09-08  8:00       ` [PATCH v4 2/7] ethdev: support setting and querying RSS algorithm Jie Hai
2023-09-20 16:39         ` Ferruh Yigit
2023-09-20 17:15           ` Ajit Khaparde
2023-09-26 13:23           ` Jie Hai
2023-09-08  8:00       ` [PATCH v4 3/7] net/hns3: support setting and querying RSS hash function Jie Hai
2023-09-08  8:00       ` [PATCH v4 4/7] app/proc-info: fix never show RSS info Jie Hai
2023-09-13 11:48         ` Pattan, Reshma
2023-09-25  1:13           ` Jie Hai
2023-09-08  8:00       ` [PATCH v4 5/7] app/proc-info: adjust the display format of " Jie Hai
2023-09-13 12:22         ` Pattan, Reshma
2023-09-08  8:00       ` [PATCH v4 6/7] app/proc-info: support querying RSS hash algorithm Jie Hai
2023-09-13 11:42         ` Pattan, Reshma
2023-09-13 11:44         ` Pattan, Reshma
2023-09-08  8:00       ` [PATCH v4 7/7] app/testpmd: add RSS hash algorithms display Jie Hai
2023-10-11  9:27       ` [PATCH v5 00/40] support setting and querying RSS algorithms Jie Hai
2023-10-11  9:27         ` [PATCH v5 01/40] ethdev: overwrite some comment related to RSS Jie Hai
2023-10-11 16:31           ` Ferruh Yigit
2023-10-12  2:03             ` Jie Hai
2023-10-12  2:47           ` fengchengwen
2023-10-11  9:27         ` [PATCH v5 02/40] ethdev: support setting and querying RSS algorithm Jie Hai
2023-10-11 17:39           ` Stephen Hemminger
2023-10-12  2:21             ` fengchengwen
2023-10-12 15:23               ` Stephen Hemminger
2023-10-24 12:54               ` Jie Hai
2023-10-11  9:27         ` [PATCH v5 03/40] net/atlantic: check RSS hash algorithms Jie Hai
2023-10-11  9:27         ` [PATCH v5 04/40] net/axgbe: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 05/40] net/bnx2x: " Jie Hai
2023-10-11 17:02           ` Ferruh Yigit
2023-10-11  9:27         ` [PATCH v5 06/40] net/bnxt: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 07/40] net/bonding: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 08/40] net/cnxk: " Jie Hai
2023-10-11 17:04           ` Ferruh Yigit
2023-10-12  2:25             ` Jie Hai
2023-10-11  9:27         ` [PATCH v5 09/40] net/cpfl: " Jie Hai
2023-10-11 17:20           ` Ferruh Yigit
2023-10-12  2:34             ` Xing, Beilei
2023-10-11  9:27         ` [PATCH v5 10/40] net/cxgbe: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 11/40] net/dpaa: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 12/40] net/dpaa2: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 13/40] net/ena: " Jie Hai
2023-10-11 17:27           ` Ferruh Yigit
2023-10-12  2:35             ` Jie Hai
2023-10-11  9:27         ` [PATCH v5 14/40] net/enic: " Jie Hai
2023-10-11 17:32           ` Ferruh Yigit
2023-10-12 18:09             ` John Daley (johndale)
2023-10-11  9:27         ` [PATCH v5 15/40] net/fm10k: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 16/40] net/hinic: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 17/40] net/i40e: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 18/40] net/iavf: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 19/40] net/ice: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 20/40] net/idpf: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 21/40] net/igc: " Jie Hai
2023-10-11 17:51           ` Ferruh Yigit
2023-10-11  9:27         ` [PATCH v5 22/40] net/ionic: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 23/40] net/ixgbe: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 24/40] net/mana: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 25/40] net/mlx5: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 26/40] net/mvpp2: " Jie Hai
2023-10-11 18:00           ` Ferruh Yigit
2023-10-12  2:21             ` Jie Hai
2023-10-11  9:27         ` [PATCH v5 27/40] net/netvsc: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 28/40] net/ngbe: : " Jie Hai
2023-10-11  9:27         ` [PATCH v5 29/40] net/nfp: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 30/40] net/null: " Jie Hai
2023-10-11 18:06           ` Ferruh Yigit
2023-10-11  9:27         ` [PATCH v5 31/40] net/qede: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 32/40] net/sfc: " Jie Hai
2023-10-11  9:27         ` [PATCH v5 33/40] net/tap: " Jie Hai
2023-10-11 18:13           ` Ferruh Yigit
2023-10-11  9:27         ` [PATCH v5 34/40] net/thunderx: " Jie Hai
2023-10-11  9:28         ` [PATCH v5 35/40] net/txgbe: " Jie Hai
2023-10-11  9:28         ` [PATCH v5 36/40] net/hns3: support setting and querying RSS hash function Jie Hai
2023-10-12  2:23           ` fengchengwen
2023-10-12  2:56             ` Jie Hai
2023-10-12  3:05             ` Jie Hai
2023-10-12  3:59               ` fengchengwen
2023-10-11  9:28         ` [PATCH v5 37/40] app/proc-info: fix never show RSS info Jie Hai
2023-10-12  1:59           ` fengchengwen
2023-10-11  9:28         ` [PATCH v5 38/40] app/proc-info: adjust the display format of " Jie Hai
2023-10-12  2:01           ` fengchengwen
2023-10-12  3:10             ` Jie Hai
2023-10-11  9:28         ` [PATCH v5 39/40] app/proc-info: support querying RSS hash algorithm Jie Hai
2023-10-12  2:05           ` fengchengwen
2023-10-12  3:51             ` Jie Hai
2023-10-11  9:28         ` [PATCH v5 40/40] app/testpmd: add RSS hash algorithms display Jie Hai
2023-10-12  3:04           ` fengchengwen
2023-10-11 18:19         ` [PATCH v5 00/40] support setting and querying RSS algorithms Ferruh Yigit
2023-10-12 16:49         ` Stephen Hemminger
2023-10-17 14:06         ` Thomas Monjalon
2023-10-17 14:26           ` Ferruh Yigit
2023-10-24 12:57             ` lihuisong (C)
2023-10-26  8:53               ` Thomas Monjalon
2023-10-27  9:28         ` [PATCH 0/9] " Jie Hai
2023-10-27  9:28           ` [PATCH 1/9] ethdev: overwrite some comment related to RSS Jie Hai
2023-10-29  7:26             ` Ori Kam
2023-11-01  6:06               ` Jie Hai
2023-10-27  9:28           ` [PATCH 2/9] ethdev: support setting and querying RSS algorithm Jie Hai
2023-10-27  9:28           ` [PATCH 3/9] net/hns3: report RSS hash algorithms capability Jie Hai
2023-10-27  9:28           ` [PATCH 4/9] net/hns3: support setting and querying RSS hash function Jie Hai
2023-10-27  9:28           ` [PATCH 5/9] app/proc-info: fix never show RSS info Jie Hai
2023-10-27  9:28           ` [PATCH 6/9] app/proc-info: adjust the display format of " Jie Hai
2023-10-27  9:28           ` [PATCH 7/9] lib/ethdev: add API to get RSS algorithm names Jie Hai
2023-10-27  9:28           ` [PATCH 8/9] app/proc-info: support querying RSS hash algorithm Jie Hai
2023-10-27  9:28           ` [PATCH 9/9] app/testpmd: add RSS hash algorithms display Jie Hai
2023-10-28  1:46           ` [PATCH v7 0/9] support setting and querying RSS algorithms Jie Hai
2023-10-28  1:46             ` [PATCH v7 1/9] ethdev: overwrite some comment related to RSS Jie Hai
2023-10-28  2:41               ` lihuisong (C)
2023-11-01 12:55                 ` Ferruh Yigit
2023-10-28  1:46             ` [PATCH v7 2/9] ethdev: support setting and querying RSS algorithm Jie Hai
2023-10-28  3:01               ` lihuisong (C)
2023-11-01 12:55                 ` Ferruh Yigit
2023-10-28  1:46             ` [PATCH v7 3/9] net/hns3: report RSS hash algorithms capability Jie Hai
2023-10-28  3:02               ` lihuisong (C)
2023-10-28  1:46             ` [PATCH v7 4/9] net/hns3: support setting and querying RSS hash function Jie Hai
2023-10-28  1:46             ` [PATCH v7 5/9] app/proc-info: fix never show RSS info Jie Hai
2023-10-28  3:03               ` lihuisong (C)
2023-10-28  1:46             ` [PATCH v7 6/9] app/proc-info: adjust the display format of " Jie Hai
2023-10-28  1:46             ` [PATCH v7 7/9] lib/ethdev: add API to get RSS algorithm names Jie Hai
2023-10-28  3:09               ` lihuisong (C)
2023-11-01  2:04               ` Ferruh Yigit
2023-10-28  1:46             ` [PATCH v7 8/9] app/proc-info: support querying RSS hash algorithm Jie Hai
2023-10-28  1:46             ` [PATCH v7 9/9] app/testpmd: add RSS hash algorithms display Jie Hai
2023-10-28  3:14               ` lihuisong (C)
2023-11-01  2:04             ` [PATCH v7 0/9] support setting and querying RSS algorithms Ferruh Yigit
2023-11-01  7:40 ` [PATCH v8 00/10] " Jie Hai
2023-11-01  7:40   ` [PATCH v8 01/10] ethdev: overwrite some comment related to RSS Jie Hai
2023-11-01 10:09     ` lihuisong (C)
2023-11-01 13:13     ` Ferruh Yigit
2023-11-02  3:29       ` Jie Hai
2023-11-01  7:40   ` [PATCH v8 02/10] lib/ethdev: check RSS key length Jie Hai
2023-11-01 10:07     ` lihuisong (C)
2023-11-01 13:19     ` Ferruh Yigit
2023-11-02  3:40       ` Jie Hai
2023-11-01  7:40   ` [PATCH v8 03/10] ethdev: support setting and querying RSS algorithm Jie Hai
2023-11-01 13:36     ` Ferruh Yigit
2023-11-02  6:58       ` Jie Hai
2023-11-01  7:40   ` [PATCH v8 04/10] net/hns3: report RSS hash algorithms capability Jie Hai
2023-11-01  7:40   ` [PATCH v8 05/10] net/hns3: support setting and querying RSS hash function Jie Hai
2023-11-01  7:40   ` [PATCH v8 06/10] app/proc-info: fix never show RSS info Jie Hai
2023-11-01  7:40   ` [PATCH v8 07/10] app/proc-info: adjust the display format of " Jie Hai
2023-11-01  7:40   ` [PATCH v8 08/10] ethdev: add API to get RSS algorithm names Jie Hai
2023-11-01  7:40   ` [PATCH v8 09/10] app/proc-info: support querying RSS hash algorithm Jie Hai
2023-11-01 10:08     ` lihuisong (C)
2023-11-01  7:40   ` [PATCH v8 10/10] app/testpmd: add RSS hash algorithms display Jie Hai
2023-11-01 13:42     ` Ferruh Yigit
2023-11-02  7:33       ` Jie Hai
2023-11-01  9:44   ` [PATCH v8 00/10] support setting and querying RSS algorithms fengchengwen
2023-11-02  8:20 ` [PATCH v9 0/9] " Jie Hai
2023-11-02  8:20   ` [PATCH v9 1/9] ethdev: overwrite some comment related to RSS Jie Hai
2023-11-06 10:57     ` Andrew Rybchenko
2023-11-02  8:20   ` [PATCH v9 2/9] ethdev: support setting and querying RSS algorithm Jie Hai
2023-11-03 15:52     ` Ferruh Yigit
2023-11-02  8:20   ` [PATCH v9 3/9] net/hns3: report RSS hash algorithms capability Jie Hai
2023-11-02  8:20   ` [PATCH v9 4/9] net/hns3: support setting and querying RSS hash function Jie Hai
2023-11-02  8:20   ` [PATCH v9 5/9] app/proc-info: fix never show RSS info Jie Hai
2023-11-02  8:20   ` [PATCH v9 6/9] app/proc-info: adjust the display format of " Jie Hai
2023-11-02  8:20   ` [PATCH v9 7/9] ethdev: add API to get RSS algorithm names Jie Hai
2023-11-06 10:43     ` Andrew Rybchenko
2023-11-02  8:20   ` [PATCH v9 8/9] app/proc-info: support querying RSS hash algorithm Jie Hai
2023-11-02  8:20   ` [PATCH v9 9/9] app/testpmd: add RSS hash algorithms display Jie Hai
2023-11-02 13:11   ` [PATCH v9 0/9] support setting and querying RSS algorithms 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=6f9d565d-b9b7-030b-8daf-ffcd4faa39f1@huawei.com \
    --to=haijie1@huawei.com \
    --cc=ajit.khaparde@broadcom.com \
    --cc=andrew.rybchenko@oktetlabs.ru \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@amd.com \
    --cc=jerinj@marvell.com \
    --cc=liudongdong3@huawei.com \
    --cc=orika@nvidia.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).