1. overwrite the comments of fields of 'rte_eth_rss_conf'. 2. Add comments for RTE_ETH_HASH_FUNCTION_DEFAULT.
Signed-off-by: Jie Hai <haij...@huawei.com> --- lib/ethdev/rte_ethdev.h | 33 ++++++++++++++++++--------------- lib/ethdev/rte_flow.h | 1 + 2 files changed, 19 insertions(+), 15 deletions(-) diff --git a/lib/ethdev/rte_ethdev.h b/lib/ethdev/rte_ethdev.h index 2fd3cd808dbf..37fd5afef48a 100644 --- a/lib/ethdev/rte_ethdev.h +++ b/lib/ethdev/rte_ethdev.h @@ -448,24 +448,27 @@ struct rte_vlan_filter_conf { /** * A structure used to configure the Receive Side Scaling (RSS) feature * of an Ethernet port. - * If not NULL, the *rss_key* pointer of the *rss_conf* structure points - * to an array holding the RSS key to use for hashing specific header - * fields of received packets. The length of this array should be indicated - * by *rss_key_len* below. Otherwise, a default random hash key is used by - * the device driver. - * - * The *rss_key_len* field of the *rss_conf* structure indicates the length - * in bytes of the array pointed by *rss_key*. To be compatible, this length - * will be checked in i40e only. Others assume 40 bytes to be used as before. - * - * The *rss_hf* field of the *rss_conf* structure indicates the different - * types of IPv4/IPv6 packets to which the RSS hashing must be applied. - * Supplying an *rss_hf* equal to zero disables the RSS feature. */ struct rte_eth_rss_conf { - uint8_t *rss_key; /**< If not NULL, 40-byte hash key. */ + /** + * In rte_eth_dev_rss_hash_conf_get(), the *rss_key_len* should be + * greater than or equal to the hash_key_size which get from + * rte_eth_dev_info_get() API. And the *rss_key* should contain at least + * *rss_key_len* bytes. If not meet these requirements, the query result + * is unreliable even the operation returns success. + * + * In rte_eth_dev_rss_hash_update() or rte_eth_dev_configure(), the + * *rss_key_len* indicates the length of the *rss_key* in bytes of + * the array pointed by *rss_key*. Drivers are free to ignore the + * *rss_key_len* and assume key length is 40 bytes. + */ + uint8_t *rss_key; uint8_t rss_key_len; /**< hash key length in bytes. */ - uint64_t rss_hf; /**< Hash functions to apply - see below. */ + /** + * Indicates the type of packets or the specific part of packets to + * which RSS hashing is to be applied. + */ + uint64_t rss_hf; }; /* diff --git a/lib/ethdev/rte_flow.h b/lib/ethdev/rte_flow.h index edefa34c10da..25f1dffd1f30 100644 --- a/lib/ethdev/rte_flow.h +++ b/lib/ethdev/rte_flow.h @@ -3226,6 +3226,7 @@ struct rte_flow_query_count { * Hash function types. */ enum rte_eth_hash_function { + /** DEFAULT means driver decides which hash algorithm to pick. */ RTE_ETH_HASH_FUNCTION_DEFAULT = 0, RTE_ETH_HASH_FUNCTION_TOEPLITZ, /**< Toeplitz */ RTE_ETH_HASH_FUNCTION_SIMPLE_XOR, /**< Simple XOR */ -- 2.30.0