net/mlx5: fix meter policy flow match item
authorShun Hao <shunh@nvidia.com>
Fri, 2 Jul 2021 09:14:46 +0000 (12:14 +0300)
committerRaslan Darawsheh <rasland@nvidia.com>
Thu, 8 Jul 2021 20:09:26 +0000 (22:09 +0200)
commit48fbc1be82b551e41c58e94de780fdd2ffaaeb78
tree09f8e421155c88655eb17678e0c6c8cb3d21f71b
parent3c481324baf32b98a7b7ce669ecde98a0662f07c
net/mlx5: fix meter policy flow match item

Currently when creating meter policy, a src port_id match item will
always be added in switch domain. So if one meter is used by another
port, it will not work correctly.

This issue is solved:
1. If policy fate action is port_id, add the src port_id match item,
and the meter cannot be shared by another port.
2. If policy fate action isn't port_id, don't add the src port_id
match, meter can be shared by another port.

This fix enables one meter being shared by different ports. User can
create a meter flow using a port_id match item to make this meter
shared by other port.

Fixes: afb4aa4f122 ("net/mlx5: support meter policy operations")
Cc: stable@dpdk.org
Signed-off-by: Shun Hao <shunh@nvidia.com>
Acked-by: Matan Azrad <matan@nvidia.com>
doc/guides/nics/mlx5.rst
drivers/net/mlx5/mlx5.h
drivers/net/mlx5/mlx5_flow_dv.c