Hi, > -----Original Message----- > From: Jiawei Wang <jiaw...@nvidia.com> > Sent: Wednesday, February 3, 2021 10:29 AM > To: Slava Ovsiienko <viachesl...@nvidia.com>; Matan Azrad > <ma...@nvidia.com>; Ori Kam <or...@nvidia.com>; NBU-Contact-Thomas > Monjalon <tho...@monjalon.net> > Cc: dev@dpdk.org; Raslan Darawsheh <rasl...@nvidia.com>; > sta...@dpdk.org > Subject: [PATCH] net/mlx5: fix E-Switch egress mirror flow validation > > The stored metadata in all registers C were lost in E-Switch egress > mirroring flows due to HW limitation. The register C0 keeps the > source vport index that also was used as one of the flow matcher. > > While sample action and jump action (jump to table X) was in the > E-Switch egress flow, the flow in the next table X wasn't hit since > source vport value lost. > > The modify actions after sample action should be applied to the packet > on normal path, not to the sampled packet. In order to support this > mlx5 PMD splits the flow into sub flows and jump action is engaged > implicitly, causing malfunction due to registers corruption. > > This patch adds the validation the for E-Switch mirroring jump egress > flow, and checks for this hidden jump as well and reject the flows with > modify actions after sampling. > > Fixes: 6a951567c159 ("net/mlx5: support E-Switch mirroring and jump in one > flow") > Cc: sta...@dpdk.org > > Signed-off-by: Jiawei Wang <jiaw...@nvidia.com> > Acked-by: Viacheslav Ovsiienko <viachesl...@nvidia.com> > --- Patch applied to next-net-mlx,
Kindest regards, Raslan Darawsheh