X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=drivers%2Fnet%2Fmlx5%2Fmlx5_flow_meter.c;h=b36bc7bac3f8c777666e649f4020d7acf6d84fef;hb=671eb37c81e8ec18b2463daf0fdd116b74b31e0d;hp=86c334b08b0d20e0c6ee90148d49b7935595a084;hpb=3efac8085e2c596ce469b45349f85f2929b6aba4;p=dpdk.git diff --git a/drivers/net/mlx5/mlx5_flow_meter.c b/drivers/net/mlx5/mlx5_flow_meter.c index 86c334b08b..b36bc7bac3 100644 --- a/drivers/net/mlx5/mlx5_flow_meter.c +++ b/drivers/net/mlx5/mlx5_flow_meter.c @@ -10,6 +10,7 @@ #include #include +#include #include "mlx5.h" #include "mlx5_flow.h" @@ -356,8 +357,8 @@ mlx5_flow_meter_profile_add(struct rte_eth_dev *dev, if (ret) return ret; /* Meter profile memory allocation. */ - fmp = rte_calloc(__func__, 1, sizeof(struct mlx5_flow_meter_profile), - RTE_CACHE_LINE_SIZE); + fmp = mlx5_malloc(MLX5_MEM_ZERO, sizeof(struct mlx5_flow_meter_profile), + RTE_CACHE_LINE_SIZE, SOCKET_ID_ANY); if (fmp == NULL) return -rte_mtr_error_set(error, ENOMEM, RTE_MTR_ERROR_TYPE_UNSPECIFIED, @@ -374,7 +375,7 @@ mlx5_flow_meter_profile_add(struct rte_eth_dev *dev, TAILQ_INSERT_TAIL(fmps, fmp, next); return 0; error: - rte_free(fmp); + mlx5_free(fmp); return ret; } @@ -417,7 +418,7 @@ mlx5_flow_meter_profile_delete(struct rte_eth_dev *dev, NULL, "Meter profile is in use."); /* Remove from list. */ TAILQ_REMOVE(&priv->flow_meter_profiles, fmp, next); - rte_free(fmp); + mlx5_free(fmp); return 0; } @@ -1220,6 +1221,7 @@ error: void mlx5_flow_meter_detach(struct mlx5_flow_meter *fm) { +#ifdef HAVE_MLX5_DR_CREATE_ACTION_FLOW_METER MLX5_ASSERT(fm->ref_cnt); if (--fm->ref_cnt) return; @@ -1229,6 +1231,9 @@ mlx5_flow_meter_detach(struct mlx5_flow_meter *fm) fm->ingress = 0; fm->egress = 0; fm->transfer = 0; +#else + (void)fm; +#endif } /** @@ -1286,7 +1291,7 @@ mlx5_flow_meter_flush(struct rte_eth_dev *dev, struct rte_mtr_error *error) MLX5_ASSERT(!fmp->ref_cnt); /* Remove from list. */ TAILQ_REMOVE(&priv->flow_meter_profiles, fmp, next); - rte_free(fmp); + mlx5_free(fmp); } return 0; }