aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Bloch <[email protected]>2024-09-11 13:17:47 -0700
committerJakub Kicinski <[email protected]>2024-09-12 20:50:28 -0700
commit940390d976902e184e1186d0f7dab3ba884dec84 (patch)
treeb2fcb2467deb569226cef5ffcf82c1445540a643
parentda2f660b3ba1be33310452959ab72d1d7ce39350 (diff)
net/mlx5: fs, move hardware fte deletion function reset
Downstream patches will need this as we might not want to reset it when a pending rule is connected to the FTE. Signed-off-by: Mark Bloch <[email protected]> Signed-off-by: Saeed Mahameed <[email protected]> Reviewed-by: Jacob Keller <[email protected]> Link: https://patch.msgid.link/[email protected] Signed-off-by: Jakub Kicinski <[email protected]>
-rw-r--r--drivers/net/ethernet/mellanox/mlx5/core/fs_core.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c b/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
index e32725487702..899d91577a54 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/fs_core.c
@@ -683,6 +683,8 @@ static void del_hw_fte(struct fs_node *node)
fte->index, fg->id);
node->active = false;
}
+ /* Avoid double call to del_hw_fte */
+ fte->node.del_hw_func = NULL;
}
static void del_sw_fte(struct fs_node *node)
@@ -2265,8 +2267,6 @@ void mlx5_del_flow_rules(struct mlx5_flow_handle *handle)
tree_remove_node(&handle->rule[i]->node, true);
if (list_empty(&fte->node.children)) {
fte->node.del_hw_func(&fte->node);
- /* Avoid double call to del_hw_fte */
- fte->node.del_hw_func = NULL;
up_write_ref_node(&fte->node, false);
tree_put_node(&fte->node, false);
} else if (fte->dests_size) {