On 4/15/2021 4:11 PM, Li Zhang wrote:
To support more meters and better performance,
MLX HW provide ASO flow meter.
It can expose millions of ASO flow meter context's in HW.
This ASO object can allocate the large bulk meter objects.
This patch set implement the ASO flow meter for mlx5 driver.
MLX5 PMD driver will be responsible for ASO flow meter manage to HW.


What is ASO?
Search yields "Advanced Steering Operation" but that seems Mellanox jargon,
would you mind adding some mlx documentation to describe it? If there are some design considerations around it, it may be good to document that too. Also please provide the long version of the abbreviation in the commit log, at least at first usage of it.

And what do you think mentioning from this new support in the release notes?

Thanks,
ferruh

V2: Fix compile error issue (mlx5_glue->destroy_flow_action)
V3: Fix comments.
V4: Fix comments and add Acked.
V5: Fix unused log_obj_size issue.

Li Zhang (10):
   net/mlx5: optimize meter statistics
   common/mlx5: add definitions for ASO flow meter
   common/mlx5: add read ASO flow meter HCA capability
   common/mlx5: add DevX API to create ASO flow meter object
   net/mlx5: flow meter pool to manage meter object
   net/mlx5: initialize the flow meter ASO SQ
   net/mlx5: aso flow meter send WQE and CQE handle
   net/mlx5: add support of ASO meter action
   net/mlx5: make ASO meter queue thread-safe
   net/mlx5: allow multiple flow tables on the same level

Shun Hao (3):
   common/mlx5: add color register idle bits definition
   net/mlx5: fix meter statistics
   net/mlx5: use mask for meter register setting

Suanming Mou (1):
   net/mlx5: support three level table walk

  doc/guides/nics/mlx5.rst                      |   6 +
  drivers/common/mlx5/mlx5_devx_cmds.c          |  68 ++
  drivers/common/mlx5/mlx5_devx_cmds.h          |  26 +-
  drivers/common/mlx5/mlx5_prm.h                |  81 +-
  drivers/common/mlx5/version.map               |   1 +
  drivers/net/mlx5/linux/mlx5_os.c              |  20 +-
  drivers/net/mlx5/meson.build                  |   2 +-
  drivers/net/mlx5/mlx5.c                       |  98 +-
  drivers/net/mlx5/mlx5.h                       | 258 +++++-
  drivers/net/mlx5/mlx5_flow.c                  | 334 +++++--
  drivers/net/mlx5/mlx5_flow.h                  | 212 ++---
  .../mlx5/{mlx5_flow_age.c => mlx5_flow_aso.c} | 289 +++++-
  drivers/net/mlx5/mlx5_flow_dv.c               | 792 +++++++++++-----
  drivers/net/mlx5/mlx5_flow_meter.c            | 873 ++++++++++++------
  drivers/net/mlx5/mlx5_utils.h                 |  90 ++
  15 files changed, 2320 insertions(+), 830 deletions(-)
  rename drivers/net/mlx5/{mlx5_flow_age.c => mlx5_flow_aso.c} (65%)


Reply via email to