net/mlx5: support integrity flow item
authorGregory Etelson <getelson@nvidia.com>
Thu, 29 Apr 2021 18:36:58 +0000 (21:36 +0300)
committerFerruh Yigit <ferruh.yigit@intel.com>
Tue, 4 May 2021 15:37:22 +0000 (17:37 +0200)
commit79f8952783d0d186316dc339931ae560ae459712
tree24b51d24cd20296657d4d11a21b9dd003c7a2c02
parent0f250a4b6ed38586971f11f20d3eef78924b5f0f
net/mlx5: support integrity flow item

MLX5 PMD supports the following integrity filters for outer and
inner network headers:
- l3_ok
- l4_ok
- ipv4_csum_ok
- l4_csum_ok

`level` values 0 and 1 reference outer headers.
`level` > 1 reference inner headers.

Flow rule items supplied by application must explicitly specify
network headers referred by integrity item. For example:
flow create 0 ingress
  pattern
    integrity level is 0 value mask l3_ok value spec l3_ok /
    eth / ipv6 / end …

or

flow create 0 ingress
  pattern
    integrity level is 0 value mask l4_ok value spec 0 /
    eth / ipv4 proto is udp / end …

Signed-off-by: Gregory Etelson <getelson@nvidia.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
doc/guides/nics/mlx5.rst
doc/guides/rel_notes/release_21_02.rst
drivers/net/mlx5/mlx5_flow.h
drivers/net/mlx5/mlx5_flow_dv.c