在 2020/6/3 1:13, Ferruh Yigit 写道:
On 6/1/2020 2:31 AM, oulijun wrote:
Hi Ferruh Yigit and others
I am learning data structure defined by dpdk framework and I noticed
a data structure definition below:
enum rte_eth_hash_function {
RTE_ETH_HASH_FUNCTION_DEFAULT = 0,
RTE_ETH_HASH_FUNCTION_TOEPLITZ, /**< Toeplitz */
RTE_ETH_HASH_FUNCTION_SIMPLE_XOR, /**< Simple XOR */
/**
* Symmetric Toeplitz: src, dst will be replaced by
* xor(src, dst). For the case with src/dst only,
* src or dst address will xor with zero pair.
*/
RTE_ETH_HASH_FUNCTION_SYMMETRIC_TOEPLITZ,
RTE_ETH_HASH_FUNCTION_MAX,
};
I have a little difficulty understanding that for the comment:
/**
* Symmetric Toeplitz: src, dst will be replaced by
* xor(src, dst). For the case with src/dst only,
* src or dst address will xor with zero pair.
*/
if user configure rss func for symmetric toeplitz, Rss type must be
updated at the same time?
if user configure rss func for xor, rss type must be empty and the queue
number is zero?
Must it be restricted like this? If so, what is his benefit?
Looking forward to your reply
cc'ed Qi & Andrew
As far as I understand that comment is only describing the Symmetric Toeplitz
behavior. I don't see any rss type or queue number limitation.
Hi Qi & Andrew
if user configure rss func for symmetric toeplitz, RSS types must be
updated at the same time?
flow create 0 ingress pattern end actions rss func symmetric_toepilitz
types tcp end / end
if use the following cmd:
flow create 0 ingress pattern end actions rss func symmetric_toepilitz
types end / end
it is wrong and the driver will print the error info.
How to understand this limitation?
Thanks
Lijun Ou
.