[dpdk-dev] [PATCH v5] app/testpmd: fix the default RSS key configuration
Ferruh Yigit
ferruh.yigit at intel.com
Thu Oct 15 15:52:24 CEST 2020
On 10/15/2020 1:41 PM, Lijun Ou wrote:
> When start the testpmd, the pmd driver initializes the RSS
> configuration. Generally, the recommended RSS hash key is
> used as the default key in the driver. In addition, the
> default key is different from the default RSS flow in testpmd
> without specifying RSS hash key. So. if you do not specify
> the RSS key when creating an RSS rule, the testpmd uses the
> default key as the default RSS key of the RSS rule. As a result,
> you may mistakenly consider that the RSS key in use is the valid
> default key of the NIC, actually, the key and the valid default
> key of the NIC are two values.
>
> Consider the follow usage with testpmd:
> 1. first, startup testpmd:
> testpmd> show port 0 rss-hash key
> RSS functions:
> all ipv4-frag ipv4-other ipv6-frag ipv6-other ip
> RSS key:
> -6D5A56DA255B0EC24167253D43A38FB0D0CA2BCBAE7B30B477CB2DA38030F
> -20C6A42B73BBEAC01FA
> 2. create a rss rule
> testpmd> flow create 0 ingress pattern eth / ipv4 / udp / end actions rss \
> types ipv4-udp end queues end / end
>
> 3. show rss-hash key
> testpmd> show port 0 rss-hash key
> RSS functions:
> all ipv4-udp udp
> RSS key:
> -74657374706D6427732064656661756C74205253532068617368206B65792C206F
> -76657272696465
>
> In order to solve the above problems, it use the NIC valid default
> RSS key instead of the testpmd dummy RSS key in the flow configuration
> when the RSS key is not specified in the flow rule. If the NIC RSS key
> is invalid, it will use testpmd dummy RSS key as the default key.
>
> Fixes: ac8d22de2394 ("ethdev: flatten RSS configuration in flow API")
> Cc: stable at dpdk.org
>
> Signed-off-by: Lijun Ou <oulijun at huawei.com>
> Reviewed-by: Phil Yang <phil.yang at arm.com>
> ---
> V4->V5:
> -rewrite the commit log
> -add reviewed-by
Hi Lijun,
There were multiple other comments, it seems they are not addressed but only
updated the commit log, can you please check comments to prev versions.
Before going into the details, my question was what happens if default key not
provided at all?
It seems this has been already tried by Ophir [1], later reverted back [2]
bringing the initial issue back.
According commit, the reason of revert is to support following command:
"flow create 0 <pattern> actions rss queues 0 1 end key_len 40 / end"
@Ophir, @Lijun,
Can we ignore the 'key_len' if the 'key' is not supported and solve current
issue as initially intended ([1])?
[1] https://git.dpdk.org/dpdk/commit/?id=a4391f8bae8
[2] https://git.dpdk.org/dpdk/commit/?id=f3698c3d09a
More information about the dev
mailing list