net/mlx5e: Extend flower police validation
authorVlad Buslov <vladbu@nvidia.com>
Tue, 5 Jul 2022 09:39:10 +0000 (11:39 +0200)
committerSaeed Mahameed <saeedm@nvidia.com>
Wed, 13 Jul 2022 22:56:48 +0000 (15:56 -0700)
Recent net commit 4d1e07d83ccc ("net/mlx5e: Fix matchall police parameters
validation") removed notexceed action id validation from
mlx5e_police_validate() and left it up to callers. However, since
tc_act_can_offload_police() only exists in net-next its validation is
extended in this dedicated followup patch.

Signed-off-by: Vlad Buslov <vladbu@nvidia.com>
Reviewed-by: Jianbo Liu <jianbol@nvidia.com>
Signed-off-by: Saeed Mahameed <saeedm@nvidia.com>
drivers/net/ethernet/mellanox/mlx5/core/en/tc/act/police.c

index ab32fe6..4bd9c04 100644 (file)
@@ -10,6 +10,12 @@ tc_act_can_offload_police(struct mlx5e_tc_act_parse_state *parse_state,
                          int act_index,
                          struct mlx5_flow_attr *attr)
 {
+       if (act->police.notexceed.act_id != FLOW_ACTION_PIPE &&
+           act->police.notexceed.act_id != FLOW_ACTION_ACCEPT) {
+               NL_SET_ERR_MSG_MOD(parse_state->extack,
+                                  "Offload not supported when conform action is not pipe or ok");
+               return false;
+       }
        if (mlx5e_policer_validate(parse_state->flow_action, act,
                                   parse_state->extack))
                return false;