Commit a572c0a7 authored by Roi Dayan's avatar Roi Dayan Committed by Saeed Mahameed

net/mlx5e: CT, Remove redundant flow args from tc ct calls

The flow arg is not being used so remove it.
Signed-off-by: default avatarRoi Dayan <roid@nvidia.com>
Reviewed-by: default avatarOz Shlomo <ozsh@nvidia.com>
Signed-off-by: default avatarSaeed Mahameed <saeedm@nvidia.com>
parent 73a3f1bc
...@@ -1787,7 +1787,6 @@ mlx5_tc_ct_del_ft_cb(struct mlx5_tc_ct_priv *ct_priv, struct mlx5_ct_ft *ft) ...@@ -1787,7 +1787,6 @@ mlx5_tc_ct_del_ft_cb(struct mlx5_tc_ct_priv *ct_priv, struct mlx5_ct_ft *ft)
*/ */
static struct mlx5_flow_handle * static struct mlx5_flow_handle *
__mlx5_tc_ct_flow_offload(struct mlx5_tc_ct_priv *ct_priv, __mlx5_tc_ct_flow_offload(struct mlx5_tc_ct_priv *ct_priv,
struct mlx5e_tc_flow *flow,
struct mlx5_flow_spec *orig_spec, struct mlx5_flow_spec *orig_spec,
struct mlx5_flow_attr *attr) struct mlx5_flow_attr *attr)
{ {
...@@ -1926,7 +1925,6 @@ __mlx5_tc_ct_flow_offload(struct mlx5_tc_ct_priv *ct_priv, ...@@ -1926,7 +1925,6 @@ __mlx5_tc_ct_flow_offload(struct mlx5_tc_ct_priv *ct_priv,
struct mlx5_flow_handle * struct mlx5_flow_handle *
mlx5_tc_ct_flow_offload(struct mlx5_tc_ct_priv *priv, mlx5_tc_ct_flow_offload(struct mlx5_tc_ct_priv *priv,
struct mlx5e_tc_flow *flow,
struct mlx5_flow_spec *spec, struct mlx5_flow_spec *spec,
struct mlx5_flow_attr *attr, struct mlx5_flow_attr *attr,
struct mlx5e_tc_mod_hdr_acts *mod_hdr_acts) struct mlx5e_tc_mod_hdr_acts *mod_hdr_acts)
...@@ -1937,7 +1935,7 @@ mlx5_tc_ct_flow_offload(struct mlx5_tc_ct_priv *priv, ...@@ -1937,7 +1935,7 @@ mlx5_tc_ct_flow_offload(struct mlx5_tc_ct_priv *priv,
return ERR_PTR(-EOPNOTSUPP); return ERR_PTR(-EOPNOTSUPP);
mutex_lock(&priv->control_lock); mutex_lock(&priv->control_lock);
rule = __mlx5_tc_ct_flow_offload(priv, flow, spec, attr); rule = __mlx5_tc_ct_flow_offload(priv, spec, attr);
mutex_unlock(&priv->control_lock); mutex_unlock(&priv->control_lock);
return rule; return rule;
...@@ -1945,8 +1943,8 @@ mlx5_tc_ct_flow_offload(struct mlx5_tc_ct_priv *priv, ...@@ -1945,8 +1943,8 @@ mlx5_tc_ct_flow_offload(struct mlx5_tc_ct_priv *priv,
static void static void
__mlx5_tc_ct_delete_flow(struct mlx5_tc_ct_priv *ct_priv, __mlx5_tc_ct_delete_flow(struct mlx5_tc_ct_priv *ct_priv,
struct mlx5e_tc_flow *flow, struct mlx5_ct_flow *ct_flow,
struct mlx5_ct_flow *ct_flow) struct mlx5_flow_attr *attr)
{ {
struct mlx5_flow_attr *pre_ct_attr = ct_flow->pre_ct_attr; struct mlx5_flow_attr *pre_ct_attr = ct_flow->pre_ct_attr;
struct mlx5e_priv *priv = netdev_priv(ct_priv->netdev); struct mlx5e_priv *priv = netdev_priv(ct_priv->netdev);
...@@ -1966,7 +1964,6 @@ __mlx5_tc_ct_delete_flow(struct mlx5_tc_ct_priv *ct_priv, ...@@ -1966,7 +1964,6 @@ __mlx5_tc_ct_delete_flow(struct mlx5_tc_ct_priv *ct_priv,
void void
mlx5_tc_ct_delete_flow(struct mlx5_tc_ct_priv *priv, mlx5_tc_ct_delete_flow(struct mlx5_tc_ct_priv *priv,
struct mlx5e_tc_flow *flow,
struct mlx5_flow_attr *attr) struct mlx5_flow_attr *attr)
{ {
struct mlx5_ct_flow *ct_flow = attr->ct_attr.ct_flow; struct mlx5_ct_flow *ct_flow = attr->ct_attr.ct_flow;
...@@ -1978,7 +1975,7 @@ mlx5_tc_ct_delete_flow(struct mlx5_tc_ct_priv *priv, ...@@ -1978,7 +1975,7 @@ mlx5_tc_ct_delete_flow(struct mlx5_tc_ct_priv *priv,
return; return;
mutex_lock(&priv->control_lock); mutex_lock(&priv->control_lock);
__mlx5_tc_ct_delete_flow(priv, flow, ct_flow); __mlx5_tc_ct_delete_flow(priv, ct_flow, attr);
mutex_unlock(&priv->control_lock); mutex_unlock(&priv->control_lock);
} }
......
...@@ -116,13 +116,11 @@ mlx5_tc_ct_parse_action(struct mlx5_tc_ct_priv *priv, ...@@ -116,13 +116,11 @@ mlx5_tc_ct_parse_action(struct mlx5_tc_ct_priv *priv,
struct mlx5_flow_handle * struct mlx5_flow_handle *
mlx5_tc_ct_flow_offload(struct mlx5_tc_ct_priv *priv, mlx5_tc_ct_flow_offload(struct mlx5_tc_ct_priv *priv,
struct mlx5e_tc_flow *flow,
struct mlx5_flow_spec *spec, struct mlx5_flow_spec *spec,
struct mlx5_flow_attr *attr, struct mlx5_flow_attr *attr,
struct mlx5e_tc_mod_hdr_acts *mod_hdr_acts); struct mlx5e_tc_mod_hdr_acts *mod_hdr_acts);
void void
mlx5_tc_ct_delete_flow(struct mlx5_tc_ct_priv *priv, mlx5_tc_ct_delete_flow(struct mlx5_tc_ct_priv *priv,
struct mlx5e_tc_flow *flow,
struct mlx5_flow_attr *attr); struct mlx5_flow_attr *attr);
bool bool
...@@ -183,7 +181,6 @@ mlx5_tc_ct_parse_action(struct mlx5_tc_ct_priv *priv, ...@@ -183,7 +181,6 @@ mlx5_tc_ct_parse_action(struct mlx5_tc_ct_priv *priv,
static inline struct mlx5_flow_handle * static inline struct mlx5_flow_handle *
mlx5_tc_ct_flow_offload(struct mlx5_tc_ct_priv *priv, mlx5_tc_ct_flow_offload(struct mlx5_tc_ct_priv *priv,
struct mlx5e_tc_flow *flow,
struct mlx5_flow_spec *spec, struct mlx5_flow_spec *spec,
struct mlx5_flow_attr *attr, struct mlx5_flow_attr *attr,
struct mlx5e_tc_mod_hdr_acts *mod_hdr_acts) struct mlx5e_tc_mod_hdr_acts *mod_hdr_acts)
...@@ -193,7 +190,6 @@ mlx5_tc_ct_flow_offload(struct mlx5_tc_ct_priv *priv, ...@@ -193,7 +190,6 @@ mlx5_tc_ct_flow_offload(struct mlx5_tc_ct_priv *priv,
static inline void static inline void
mlx5_tc_ct_delete_flow(struct mlx5_tc_ct_priv *priv, mlx5_tc_ct_delete_flow(struct mlx5_tc_ct_priv *priv,
struct mlx5e_tc_flow *flow,
struct mlx5_flow_attr *attr) struct mlx5_flow_attr *attr)
{ {
} }
......
...@@ -113,13 +113,12 @@ struct mlx5e_tc_flow { ...@@ -113,13 +113,12 @@ struct mlx5e_tc_flow {
struct mlx5_flow_handle * struct mlx5_flow_handle *
mlx5e_tc_rule_offload(struct mlx5e_priv *priv, mlx5e_tc_rule_offload(struct mlx5e_priv *priv,
struct mlx5e_tc_flow *flow,
struct mlx5_flow_spec *spec, struct mlx5_flow_spec *spec,
struct mlx5_flow_attr *attr); struct mlx5_flow_attr *attr);
void void
mlx5e_tc_rule_unoffload(struct mlx5e_priv *priv, mlx5e_tc_rule_unoffload(struct mlx5e_priv *priv,
struct mlx5e_tc_flow *flow, struct mlx5_flow_handle *rule,
struct mlx5_flow_attr *attr); struct mlx5_flow_attr *attr);
u8 mlx5e_tc_get_ip_version(struct mlx5_flow_spec *spec, bool outer); u8 mlx5e_tc_get_ip_version(struct mlx5_flow_spec *spec, bool outer);
......
...@@ -303,7 +303,6 @@ mlx5_tc_rule_delete(struct mlx5e_priv *priv, ...@@ -303,7 +303,6 @@ mlx5_tc_rule_delete(struct mlx5e_priv *priv,
struct mlx5_flow_handle * struct mlx5_flow_handle *
mlx5e_tc_rule_offload(struct mlx5e_priv *priv, mlx5e_tc_rule_offload(struct mlx5e_priv *priv,
struct mlx5e_tc_flow *flow,
struct mlx5_flow_spec *spec, struct mlx5_flow_spec *spec,
struct mlx5_flow_attr *attr) struct mlx5_flow_attr *attr)
{ {
...@@ -313,7 +312,7 @@ mlx5e_tc_rule_offload(struct mlx5e_priv *priv, ...@@ -313,7 +312,7 @@ mlx5e_tc_rule_offload(struct mlx5e_priv *priv,
struct mlx5e_tc_mod_hdr_acts *mod_hdr_acts = struct mlx5e_tc_mod_hdr_acts *mod_hdr_acts =
&attr->parse_attr->mod_hdr_acts; &attr->parse_attr->mod_hdr_acts;
return mlx5_tc_ct_flow_offload(get_ct_priv(priv), flow, return mlx5_tc_ct_flow_offload(get_ct_priv(priv),
spec, attr, spec, attr,
mod_hdr_acts); mod_hdr_acts);
} }
...@@ -329,14 +328,13 @@ mlx5e_tc_rule_offload(struct mlx5e_priv *priv, ...@@ -329,14 +328,13 @@ mlx5e_tc_rule_offload(struct mlx5e_priv *priv,
void void
mlx5e_tc_rule_unoffload(struct mlx5e_priv *priv, mlx5e_tc_rule_unoffload(struct mlx5e_priv *priv,
struct mlx5e_tc_flow *flow, struct mlx5_flow_handle *rule,
struct mlx5_flow_attr *attr) struct mlx5_flow_attr *attr)
{ {
struct mlx5_eswitch *esw = priv->mdev->priv.eswitch; struct mlx5_eswitch *esw = priv->mdev->priv.eswitch;
struct mlx5_flow_handle *rule = flow->rule[0];
if (attr->flags & MLX5_ATTR_FLAG_CT) { if (attr->flags & MLX5_ATTR_FLAG_CT) {
mlx5_tc_ct_delete_flow(get_ct_priv(priv), flow, attr); mlx5_tc_ct_delete_flow(get_ct_priv(priv), attr);
return; return;
} }
...@@ -1136,7 +1134,7 @@ mlx5e_tc_add_nic_flow(struct mlx5e_priv *priv, ...@@ -1136,7 +1134,7 @@ mlx5e_tc_add_nic_flow(struct mlx5e_priv *priv,
} }
if (attr->flags & MLX5_ATTR_FLAG_CT) if (attr->flags & MLX5_ATTR_FLAG_CT)
flow->rule[0] = mlx5_tc_ct_flow_offload(get_ct_priv(priv), flow, &parse_attr->spec, flow->rule[0] = mlx5_tc_ct_flow_offload(get_ct_priv(priv), &parse_attr->spec,
attr, &parse_attr->mod_hdr_acts); attr, &parse_attr->mod_hdr_acts);
else else
flow->rule[0] = mlx5e_add_offloaded_nic_rule(priv, &parse_attr->spec, flow->rule[0] = mlx5e_add_offloaded_nic_rule(priv, &parse_attr->spec,
...@@ -1171,7 +1169,7 @@ static void mlx5e_tc_del_nic_flow(struct mlx5e_priv *priv, ...@@ -1171,7 +1169,7 @@ static void mlx5e_tc_del_nic_flow(struct mlx5e_priv *priv,
flow_flag_clear(flow, OFFLOADED); flow_flag_clear(flow, OFFLOADED);
if (attr->flags & MLX5_ATTR_FLAG_CT) if (attr->flags & MLX5_ATTR_FLAG_CT)
mlx5_tc_ct_delete_flow(get_ct_priv(flow->priv), flow, attr); mlx5_tc_ct_delete_flow(get_ct_priv(flow->priv), attr);
else if (!IS_ERR_OR_NULL(flow->rule[0])) else if (!IS_ERR_OR_NULL(flow->rule[0]))
mlx5e_del_offloaded_nic_rule(priv, flow->rule[0], attr); mlx5e_del_offloaded_nic_rule(priv, flow->rule[0], attr);
...@@ -1210,7 +1208,7 @@ mlx5e_tc_offload_fdb_rules(struct mlx5_eswitch *esw, ...@@ -1210,7 +1208,7 @@ mlx5e_tc_offload_fdb_rules(struct mlx5_eswitch *esw,
if (attr->flags & MLX5_ATTR_FLAG_SLOW_PATH) if (attr->flags & MLX5_ATTR_FLAG_SLOW_PATH)
return mlx5_eswitch_add_offloaded_rule(esw, spec, attr); return mlx5_eswitch_add_offloaded_rule(esw, spec, attr);
rule = mlx5e_tc_rule_offload(flow->priv, flow, spec, attr); rule = mlx5e_tc_rule_offload(flow->priv, spec, attr);
if (IS_ERR(rule)) if (IS_ERR(rule))
return rule; return rule;
...@@ -1224,7 +1222,7 @@ mlx5e_tc_offload_fdb_rules(struct mlx5_eswitch *esw, ...@@ -1224,7 +1222,7 @@ mlx5e_tc_offload_fdb_rules(struct mlx5_eswitch *esw,
return rule; return rule;
err_rule1: err_rule1:
mlx5e_tc_rule_unoffload(flow->priv, flow, attr); mlx5e_tc_rule_unoffload(flow->priv, rule, attr);
return flow->rule[1]; return flow->rule[1];
} }
...@@ -1240,7 +1238,7 @@ void mlx5e_tc_unoffload_fdb_rules(struct mlx5_eswitch *esw, ...@@ -1240,7 +1238,7 @@ void mlx5e_tc_unoffload_fdb_rules(struct mlx5_eswitch *esw,
if (attr->esw_attr->split_count) if (attr->esw_attr->split_count)
mlx5_eswitch_del_fwd_rule(esw, flow->rule[1], attr); mlx5_eswitch_del_fwd_rule(esw, flow->rule[1], attr);
mlx5e_tc_rule_unoffload(flow->priv, flow, attr); mlx5e_tc_rule_unoffload(flow->priv, flow->rule[0], attr);
} }
struct mlx5_flow_handle * struct mlx5_flow_handle *
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment