Hi, > -----Original Message----- > From: dev <dev-boun...@dpdk.org> On Behalf Of Matan Azrad > Sent: Wednesday, February 19, 2020 10:30 AM > To: dev@dpdk.org > Cc: Slava Ovsiienko <viachesl...@mellanox.com>; sta...@dpdk.org > Subject: [dpdk-dev] [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: sta...@dpdk.org > > Signed-off-by: Matan Azrad <ma...@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
Patch applied to next-net-mlx, Kindest regards, Raslan Darawsheh