net/mlx5: fix L3 VXLAN RSS expansion
The RSS expansion feature was introduced to split RSS flows according to the adjustment between the RSS types and the flow items. The expansion function gets an item tree for the above adjustment from the caller which reflects the HW needs. The standard vxlan header next protocol is always Ethernet while there are some Mellanox customers who use their own method to allow L3 headers after the vxlan tunnel header. The expansion tree of mlx5 PMD didn't expect to get L3 headers after the vxlan header what caused a failure in flow creation when inner RSS is requested on L3 after vxlan flow. Add IPV4 and IPV6 as optional headers after vxlan in the RSS expansion tree to allow L3 tunnel support for vxlan. Fixes: f4f06e361516 ("net/mlx5: add flow VXLAN item") Cc: stable@dpdk.org Signed-off-by: Matan Azrad <matan@mellanox.com> Acked-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
This commit is contained in:
parent
c288d7b5eb
commit
cd04052475
@ -167,7 +167,9 @@ static const struct rte_flow_expand_node mlx5_support_expansion[] = {
|
||||
.rss_types = ETH_RSS_NONFRAG_IPV6_TCP,
|
||||
},
|
||||
[MLX5_EXPANSION_VXLAN] = {
|
||||
.next = RTE_FLOW_EXPAND_RSS_NEXT(MLX5_EXPANSION_ETH),
|
||||
.next = RTE_FLOW_EXPAND_RSS_NEXT(MLX5_EXPANSION_ETH,
|
||||
MLX5_EXPANSION_IPV4,
|
||||
MLX5_EXPANSION_IPV6),
|
||||
.type = RTE_FLOW_ITEM_TYPE_VXLAN,
|
||||
},
|
||||
[MLX5_EXPANSION_VXLAN_GPE] = {
|
||||
|
Loading…
x
Reference in New Issue
Block a user