diff options
author | Roi Dayan <roid@nvidia.com> | 2021-12-19 10:31:18 +0200 |
---|---|---|
committer | Saeed Mahameed <saeedm@nvidia.com> | 2022-02-16 23:55:17 -0800 |
commit | 7843bd604081b5f005b31343cde1bb680bcc1776 (patch) | |
tree | 898b9865bada08a00ca1a9cb0835743a84bd7c9e /drivers | |
parent | 2a829fe25d2809a33a6842359323bb139556c03d (diff) | |
download | linux-7843bd604081b5f005b31343cde1bb680bcc1776.tar.bz2 |
net/mlx5e: TC, Make post_act parse CT and sample actions
Before this commit post_act can be used for normal rules
and didn't handle special cases like CT and sample.
With this commit post_act rule can also handle the special cases
when needed.
Signed-off-by: Roi Dayan <roid@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/ethernet/mellanox/mlx5/core/en/tc/post_act.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en/tc/post_act.c b/drivers/net/ethernet/mellanox/mlx5/core/en/tc/post_act.c index 32abc91adf23..dea137dd744b 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/en/tc/post_act.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/en/tc/post_act.c @@ -1,6 +1,7 @@ // SPDX-License-Identifier: GPL-2.0 OR Linux-OpenIB // Copyright (c) 2021, NVIDIA CORPORATION & AFFILIATES. All rights reserved. +#include "en/tc_priv.h" #include "en_tc.h" #include "post_act.h" #include "mlx5_core.h" @@ -89,7 +90,7 @@ mlx5e_tc_post_act_offload(struct mlx5e_post_act *post_act, /* Post action rule matches on fte_id and executes original rule's tc rule action */ mlx5e_tc_match_to_reg_match(spec, FTEID_TO_REG, handle->id, MLX5_POST_ACTION_MASK); - handle->rule = mlx5_tc_rule_insert(post_act->priv, spec, handle->attr); + handle->rule = mlx5e_tc_rule_offload(post_act->priv, spec, handle->attr); if (IS_ERR(handle->rule)) { err = PTR_ERR(handle->rule); netdev_warn(post_act->priv->netdev, "Failed to add post action rule"); @@ -152,7 +153,7 @@ void mlx5e_tc_post_act_unoffload(struct mlx5e_post_act *post_act, struct mlx5e_post_act_handle *handle) { - mlx5_tc_rule_delete(post_act->priv, handle->rule, handle->attr); + mlx5e_tc_rule_unoffload(post_act->priv, handle->rule, handle->attr); handle->rule = NULL; } |