Re: [patch net-next v3 09/10] flow_offload: introduce "disabled" HW stats type and allow it in mlxsw

Jakub Kicinski
2020-03-06T19:31:21Z

On Fri, 6 Mar 2020 14:28:55 +0100 Jiri Pirko wrote:
> From: Jiri Pirko <jiri@mellanox.com>
>
> Introduce new type for disabled HW stats and allow the value in
> mlxsw offload.
>
> Signed-off-by: Jiri Pirko <jiri@mellanox.com>
> ---
> v2->v3:
> - moved to bitfield
> v1->v2:
> - moved to action
> ---
> drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c | 2 +-
> include/net/flow_offload.h | 1 +
> 2 files changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c b/drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c
> index 4bf3ac1cb20d..88aa554415df 100644
> --- a/drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c
> +++ b/drivers/net/ethernet/mellanox/mlxsw/spectrum_flower.c
> @@ -36,7 +36,7 @@ static int mlxsw_sp_flower_parse_actions(struct mlxsw_sp *mlxsw_sp,
> err = mlxsw_sp_acl_rulei_act_count(mlxsw_sp, rulei, extack);
> if (err)
> return err;
> - } else {
> + } else if (act->hw_stats_type != FLOW_ACTION_HW_STATS_TYPE_DISABLED) {
> NL_SET_ERR_MSG_MOD(extack, "Unsupported action HW stats type");
> return -EOPNOTSUPP;
> }
> diff --git a/include/net/flow_offload.h b/include/net/flow_offload.h
> index d597d500a5df..b700c570f7f1 100644
> --- a/include/net/flow_offload.h
> +++ b/include/net/flow_offload.h
> @@ -159,6 +159,7 @@ enum flow_action_mangle_base {
> #define FLOW_ACTION_HW_STATS_TYPE_DELAYED BIT(1)
> #define FLOW_ACTION_HW_STATS_TYPE_ANY (FLOW_ACTION_HW_STATS_TYPE_IMMEDIATE | \
> FLOW_ACTION_HW_STATS_TYPE_DELAYED)
> +#define FLOW_ACTION_HW_STATS_TYPE_DISABLED 0

Would it fit better for the bitfield if disabled internally is
BIT(last type + 1)?