net/mlx5: fix default mark copy flow
authorViacheslav Ovsiienko <viacheslavo@mellanox.com>
Wed, 27 Nov 2019 13:36:43 +0000 (13:36 +0000)
committerThomas Monjalon <thomas@monjalon.net>
Wed, 27 Nov 2019 15:15:10 +0000 (16:15 +0100)
commita0865f6f074880a2270f937d385070d1ae726bdf
tree020c1e7d52638575a3d68dd41e3a44528619b275
parent20bbb9e0450f2ccda374584173dc0a5cd93c9f06
net/mlx5: fix default mark copy flow

In extensive metadata mode the MARK copy table is engaged,
if the application creates the flow with zero MARK ID action:

flow create 1 ingress pattern eth / ... / end actions mark id 0 / .. end

And then destroys that, the traffic to the port stops. This happens
due to default flow for the copy table has the zero ID and is removed
with the application rule. The patch extends internal ID variable
to 64 bits and provide the UINT64_MAX ID for the copy table default
rule.

Fixes: dd3c774f6ffb ("net/mlx5: add metadata register copy table")

Signed-off-by: Viacheslav Ovsiienko <viacheslavo@mellanox.com>
Acked-by: Ori Kam <orika@mellanox.com>
drivers/net/mlx5/mlx5_defs.h
drivers/net/mlx5/mlx5_flow.c