From: Eli Cohen Date: Wed, 4 Mar 2020 08:32:56 +0000 (+0200) Subject: net/mlx5: Fix group version management X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=454401aeb2957e0d996bc9208b78aa4d8ac12964;p=linux.git net/mlx5: Fix group version management When adding a rule to a flow group we need increment the version of the group. Current code fails to do that and as a result, when trying to add a rule, we will fail to discover a case where an FTE with the same match value was added while we scanned the groups of the same match criteria, thus we may try to add an FTE that was already added. Signed-off-by: Eli Cohen Reviewed-by: Mark Bloch Signed-off-by: Saeed Mahameed --- diff --git a/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c b/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c index a9ec40ca78936..751dd5869485a 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c @@ -1323,6 +1323,7 @@ add_rule_fte(struct fs_fte *fte, fte->node.active = true; fte->status |= FS_FTE_STATUS_EXISTING; atomic_inc(&fte->node.version); + atomic_inc(&fg->node.version); out: return handle;