net/mlx5: add ID generation
authorOri Kam <orika@mellanox.com>
Wed, 30 Oct 2019 23:53:21 +0000 (23:53 +0000)
committerFerruh Yigit <ferruh.yigit@intel.com>
Fri, 8 Nov 2019 22:15:04 +0000 (23:15 +0100)
commit830d209161c1562f894fa2c843043012c5602b13
tree92d81f95e86d4debcd0ada255b68fd32ff222eb5
parent70d84dc797b7161a4f89bb3b8886159288b6738f
net/mlx5: add ID generation

When splitting flows for example in hairpin / metering, there is a need
to combine the flows. This is done using ID.
This commit introduce a simple way to generate such IDs.

The reason why bitmap was not used is due to fact that the release and
allocation are O(n) while in the chosen approch the allocation and
release are O(1)

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