[dpdk-dev] [PATCH v10 1/2] ethdev: add pre-defined meter policy API

Ajit Khaparde ajit.khaparde at broadcom.com
Tue Apr 20 19:12:54 CEST 2021


On Tue, Apr 20, 2021 at 7:05 AM Jiawei Wang <jiaweiw at nvidia.com> wrote:
>
> From: Li Zhang <lizh at nvidia.com>
>
> Currently, the flow meter policy does not support multiple actions
> per color; also the allowed action types per color are very limited.
> In addition, the policy cannot be pre-defined.
>
> Due to the growing in flow actions offload abilities there is a potential
> for the user to use variety of actions per color differently.
> This new meter policy API comes to allow this potential in the most ethdev
> common way using rte_flow action definition.
> A list of rte_flow actions will be provided by the user per color
> in order to create a meter policy.
> In addition, the API forces to pre-define the policy before
> the meters creation in order to allow sharing of single policy
> with multiple meters efficiently.
>
> meter_policy_id is added into struct rte_mtr_params.
> So that it can get the policy during the meters creation.
>
> Allow coloring the packet using a new rte_flow_action_color
> as could be done by the old policy API.
>
> Add two common policy template as macros in the head file.
>
> The next API function were added:
> - rte_mtr_meter_policy_add
> - rte_mtr_meter_policy_delete
> - rte_mtr_meter_policy_update
> - rte_mtr_meter_policy_validate
> The next struct was changed:
> - rte_mtr_params
> - rte_mtr_capabilities
> The next API was deleted:
> - rte_mtr_policer_actions_update
>
> To support this API the following app were changed:
> app/test-flow-perf: clean meter policer
> app/testpmd: clean meter policer
>
> To support this API the following drivers were changed:
> net/softnic: support meter policy API
> 1. Cleans meter rte_mtr_policer_action.
> 2. Supports policy API to get color action as policer action did.
>    The color action will be mapped into rte_table_action_policer.
>
> net/mlx5: clean meter creation management
> Cleans and breaks part of the current meter management
> in order to allow better design with policy API.
>
> Signed-off-by: Li Zhang <lizh at nvidia.com>
> Signed-off-by: Haifei Luo <haifeil at nvidia.com>
> Signed-off-by: Jiawei Wang <jiaweiw at nvidia.com>
> Acked-by: Matan Azrad <matan at nvidia.com>
> Acked-by: Ray Kinsella <mdr at ashroe.eu>
> Acked-by: Ori Kam <orika at nvidia.com>
> Acked-by: Jasvinder Singh <jasvinder.singh at intel.com>
> Acked-by: Cristian Dumitrescu <cristian.dumitrescu at intel.com>
Acked-by: Ajit Khaparde <ajit.khaparde at broadcom.com>


> --
> 1.8.3.1
>


More information about the dev mailing list