[dpdk-stable] [PATCH] net/mlx5: fix L3 vxlan RSS expansion
Slava Ovsiienko
viacheslavo at mellanox.com
Wed Feb 19 10:13:48 CET 2020
> -----Original Message-----
> From: Matan Azrad <matan at mellanox.com>
> Sent: Wednesday, February 19, 2020 10:30
> To: dev at dpdk.org
> Cc: Slava Ovsiienko <viacheslavo at mellanox.com>; stable at dpdk.org
> Subject: [PATCH] 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 at dpdk.org
>
> Signed-off-by: Matan Azrad <matan at mellanox.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo at mellanox.com>
> ---
> drivers/net/mlx5/mlx5_flow.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/mlx5/mlx5_flow.c b/drivers/net/mlx5/mlx5_flow.c
> index 2548201..6544cc4 100644
> --- a/drivers/net/mlx5/mlx5_flow.c
> +++ b/drivers/net/mlx5/mlx5_flow.c
> @@ -167,7 +167,9 @@ enum mlx5_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] = {
> --
> 1.8.3.1
More information about the stable
mailing list