Hi, > -----Original Message----- > From: dev <dev-boun...@dpdk.org> On Behalf Of Lior Margalit > Sent: Tuesday, August 3, 2021 9:13 PM > To: Matan Azrad <ma...@nvidia.com> > Cc: dev@dpdk.org; Lior Margalit <lmarga...@nvidia.com>; sta...@dpdk.org > Subject: [dpdk-dev] [PATCH v1] net/mlx5: fix RSS expansion for inner tunnel > VLAN > > The RSS expansion alg is using a graph to find the possible expansion > paths. The VLAN item in the flow pattern requires special treatment, > because it should not be added implicitly by the expansion alg. > If the flow pattern ends with ETH item, the pattern will be expanded > with IPv4 and IPv6. For example: > testpmd> flow create ... eth / end actions rss / end > ETH END > ETH IPV4 END > ETH IPV6 END > If a VLAN item follows the ETH item in the flow pattern, the pattern > will be expanded with IPv4 and IPv6 following the VLAN item. > For example: > testpmd> flow create ... eth / vlan / end actions rss level 1 / end > ETH VLAN END > ETH VLAN IPV4 END > ETH VLAN IPV6 END > > The case of inner tunnel VLAN item was not taken care of so the flow > pattern did not expand with IPv6 and IPv4 as expected. > Example with inner VLAN: > testpmd> flow create ... / vxlan / eth / vlan / end actions rss level 2 > / end > The current result of the expansion alg: > ETH IPV6 UDP VXLAN ETH VLAN END > The expected result of the expansion alg: > ETH IPV6 UDP VXLAN ETH VLAN END > ETH IPV6 UDP VXLAN ETH VLAN IPV4 END > ETH IPV6 UDP VXLAN ETH VLAN IPV6 END > > The fix is to introduce a new flag to set on a graph expansion node > to apply the 'explicit' behavior, meaning the node is not added to > the expanded pattern, if it is not found in the flow pattern, but the > expansion alg can go deeper to its next nodes. > > Fixes: c7870bfe09dc ("ethdev: move RSS expansion code to mlx5 driver") > Cc: sta...@dpdk.org > > Signed-off-by: Lior Margalit <lmarga...@nvidia.com> > Acked-by: Matan Azrad <ma...@nvidia.com>
Patch applied to next-net-mlx, Kindest regards, Raslan Darawsheh