net/mlx5: fix counter and age flow action validation
authorJiawei Wang <jiaweiw@nvidia.com>
Tue, 2 Feb 2021 16:42:49 +0000 (18:42 +0200)
committerFerruh Yigit <ferruh.yigit@intel.com>
Thu, 4 Feb 2021 17:19:37 +0000 (18:19 +0100)
commit5fe95d736471452cdf9f26d8b01fd0b8d6de90e0
treea561552b36606fac0acc6b83a9deaafc88b3d122
parent5f5b0ac90424754575d50d40f3d8a1c80dfe6786
net/mlx5: fix counter and age flow action validation

Currently old age action was implemented by flow counter and only one
counter index was maintained in each flow. While there was old age
action and share count action in one flow, and the same share count
action in the another flow, the counter was updated if second flow
was hit, so it may cause the first flow didn't aged out since the
counter was updated by second flow.

This patch updates the validation function for count and old age action:
  - Old age and shared count action combination is not supported.
  - Old age and count(not shared) action could work in the same sub
    flow.

Fixes: e7138997e07d ("net/mlx5: make shared counters thread safe")
Cc: stable@dpdk.org
Signed-off-by: Jiawei Wang <jiaweiw@nvidia.com>
Acked-by: Matan Azrad <matan@nvidia.com>
drivers/net/mlx5/mlx5_flow_dv.c