Hi, > -----Original Message----- > From: dev <dev-boun...@dpdk.org> On Behalf Of Dekel Peled > Sent: Tuesday, November 3, 2020 12:38 PM > To: Slava Ovsiienko <viachesl...@nvidia.com>; Shahaf Shuler > <shah...@nvidia.com>; Matan Azrad <ma...@nvidia.com> > Cc: dev@dpdk.org > Subject: [dpdk-dev] [PATCH] net/mlx5: fix aging queue doorbell ringing > > Recent patch introduced a new SQ for ASO flow hit management. > This SQ uses two WQEBB's for each WQE. > The SQ producer index is 16 bits wide. > > The enqueue loop posts new WQEs to the ASO SQ, using WQE index for > the SQ management. > This 16 bits index multiplied by 2 was wrongly used also for SQ > doorbell ringing. > The multiplication caused the SW index overlapping to be out of sync > with the hardware index, causing it to get stuck. > > This patch separates the WQE index management from the doorbell index > management. > So, for each WQE index incrementation by 1, the doorbell index is > incremented by 2. > > Fixes: 18c88cf29c29 ("net/mlx5: support flow hit action for aging") > > Signed-off-by: Dekel Peled <dek...@nvidia.com> > Acked-by: Matan Azrad <ma...@nvidia.com> > --- > drivers/common/mlx5/mlx5_prm.h | 21 +++++++++++++------ > drivers/net/mlx5/mlx5.h | 3 ++- > drivers/net/mlx5/mlx5_flow_age.c | 36 ++++++++++++++++++-------------- > 3 files changed, 37 insertions(+), 23 deletions(-) >
Patch applied to next-net-mlx, Kindest regards, Raslan Darawsheh