Commit 2a829fe2 authored by Roi Dayan's avatar Roi Dayan Committed by Saeed Mahameed

net/mlx5e: TC, Clean redundant counter flag from tc action parsers

When tc actions being parsed only the last flow attr created needs the
counter flag and the previous flags being reset.
Clean the flag from the tc action parsers.
Signed-off-by: default avatarRoi Dayan <roid@nvidia.com>
Signed-off-by: default avatarSaeed Mahameed <saeedm@nvidia.com>
parent a8128326
...@@ -19,8 +19,7 @@ tc_act_parse_accept(struct mlx5e_tc_act_parse_state *parse_state, ...@@ -19,8 +19,7 @@ tc_act_parse_accept(struct mlx5e_tc_act_parse_state *parse_state,
struct mlx5e_priv *priv, struct mlx5e_priv *priv,
struct mlx5_flow_attr *attr) struct mlx5_flow_attr *attr)
{ {
attr->action |= MLX5_FLOW_CONTEXT_ACTION_FWD_DEST | attr->action |= MLX5_FLOW_CONTEXT_ACTION_FWD_DEST;
MLX5_FLOW_CONTEXT_ACTION_COUNT;
attr->flags |= MLX5_ATTR_FLAG_ACCEPT; attr->flags |= MLX5_ATTR_FLAG_ACCEPT;
return 0; return 0;
......
...@@ -19,8 +19,7 @@ tc_act_parse_drop(struct mlx5e_tc_act_parse_state *parse_state, ...@@ -19,8 +19,7 @@ tc_act_parse_drop(struct mlx5e_tc_act_parse_state *parse_state,
struct mlx5e_priv *priv, struct mlx5e_priv *priv,
struct mlx5_flow_attr *attr) struct mlx5_flow_attr *attr)
{ {
attr->action |= MLX5_FLOW_CONTEXT_ACTION_DROP | attr->action |= MLX5_FLOW_CONTEXT_ACTION_DROP;
MLX5_FLOW_CONTEXT_ACTION_COUNT;
return 0; return 0;
} }
......
...@@ -76,8 +76,7 @@ tc_act_parse_goto(struct mlx5e_tc_act_parse_state *parse_state, ...@@ -76,8 +76,7 @@ tc_act_parse_goto(struct mlx5e_tc_act_parse_state *parse_state,
struct mlx5e_priv *priv, struct mlx5e_priv *priv,
struct mlx5_flow_attr *attr) struct mlx5_flow_attr *attr)
{ {
attr->action |= MLX5_FLOW_CONTEXT_ACTION_FWD_DEST | attr->action |= MLX5_FLOW_CONTEXT_ACTION_FWD_DEST;
MLX5_FLOW_CONTEXT_ACTION_COUNT;
attr->dest_chain = act->chain_index; attr->dest_chain = act->chain_index;
return 0; return 0;
......
...@@ -296,8 +296,7 @@ tc_act_parse_mirred(struct mlx5e_tc_act_parse_state *parse_state, ...@@ -296,8 +296,7 @@ tc_act_parse_mirred(struct mlx5e_tc_act_parse_state *parse_state,
if (err) if (err)
return err; return err;
attr->action |= MLX5_FLOW_CONTEXT_ACTION_FWD_DEST | attr->action |= MLX5_FLOW_CONTEXT_ACTION_FWD_DEST;
MLX5_FLOW_CONTEXT_ACTION_COUNT;
return 0; return 0;
} }
......
...@@ -40,8 +40,7 @@ tc_act_parse_mirred_nic(struct mlx5e_tc_act_parse_state *parse_state, ...@@ -40,8 +40,7 @@ tc_act_parse_mirred_nic(struct mlx5e_tc_act_parse_state *parse_state,
{ {
attr->parse_attr->mirred_ifindex[0] = act->dev->ifindex; attr->parse_attr->mirred_ifindex[0] = act->dev->ifindex;
flow_flag_set(parse_state->flow, HAIRPIN); flow_flag_set(parse_state->flow, HAIRPIN);
attr->action |= MLX5_FLOW_CONTEXT_ACTION_FWD_DEST | attr->action |= MLX5_FLOW_CONTEXT_ACTION_FWD_DEST;
MLX5_FLOW_CONTEXT_ACTION_COUNT;
return 0; return 0;
} }
......
...@@ -58,8 +58,7 @@ tc_act_parse_redirect_ingress(struct mlx5e_tc_act_parse_state *parse_state, ...@@ -58,8 +58,7 @@ tc_act_parse_redirect_ingress(struct mlx5e_tc_act_parse_state *parse_state,
struct net_device *out_dev = act->dev; struct net_device *out_dev = act->dev;
int err; int err;
attr->action |= MLX5_FLOW_CONTEXT_ACTION_FWD_DEST | attr->action |= MLX5_FLOW_CONTEXT_ACTION_FWD_DEST;
MLX5_FLOW_CONTEXT_ACTION_COUNT;
err = mlx5e_set_fwd_to_int_port_actions(priv, attr, out_dev->ifindex, err = mlx5e_set_fwd_to_int_port_actions(priv, attr, out_dev->ifindex,
MLX5E_TC_INT_PORT_INGRESS, MLX5E_TC_INT_PORT_INGRESS,
......
...@@ -26,8 +26,7 @@ tc_act_parse_trap(struct mlx5e_tc_act_parse_state *parse_state, ...@@ -26,8 +26,7 @@ tc_act_parse_trap(struct mlx5e_tc_act_parse_state *parse_state,
struct mlx5e_priv *priv, struct mlx5e_priv *priv,
struct mlx5_flow_attr *attr) struct mlx5_flow_attr *attr)
{ {
attr->action |= MLX5_FLOW_CONTEXT_ACTION_FWD_DEST | attr->action |= MLX5_FLOW_CONTEXT_ACTION_FWD_DEST;
MLX5_FLOW_CONTEXT_ACTION_COUNT;
attr->flags |= MLX5_ATTR_FLAG_SLOW_PATH; attr->flags |= MLX5_ATTR_FLAG_SLOW_PATH;
return 0; return 0;
......
...@@ -3536,7 +3536,6 @@ alloc_flow_post_acts(struct mlx5e_tc_flow *flow, struct netlink_ext_ack *extack) ...@@ -3536,7 +3536,6 @@ alloc_flow_post_acts(struct mlx5e_tc_flow *flow, struct netlink_ext_ack *extack)
/* Set counter action on last post act rule. */ /* Set counter action on last post act rule. */
attr->action |= MLX5_FLOW_CONTEXT_ACTION_COUNT; attr->action |= MLX5_FLOW_CONTEXT_ACTION_COUNT;
} else { } else {
attr->action &= ~MLX5_FLOW_CONTEXT_ACTION_COUNT;
err = mlx5e_tc_act_set_next_post_act(flow, attr, next_attr); err = mlx5e_tc_act_set_next_post_act(flow, attr, next_attr);
if (err) if (err)
goto out_free; goto out_free;
......
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