mbox series

[00/27] net/mlx5: HW steering PMD update

Message ID 20220923144334.27736-1-suanmingm@nvidia.com (mailing list archive)
Headers
Series net/mlx5: HW steering PMD update |

Message

Suanming Mou Sept. 23, 2022, 2:43 p.m. UTC
  The skeleton of mlx5 HW steering(HWS) has been updated into
upstream for pretty a long time, but not updated anymore due
to missing of the low-level steering layer code. Luckily,
better late than never, the steering layer finnaly comes[1].

This series will add more features to the existing PMD code:
 - FDB and metadata copy.
 - Modify field.
 - Meter.
 - Counter.
 - Aging.
 - Action template pre-parser optimization.
 - Connection tracking.


Some features such as meter/aging/ct touches the public API,
and public API changes have been sent to ML much earily in
other threads in order not to be swallowed by this big series.

The dpends patches as below:
 [1]https://patches.dpdk.org/project/dpdk/cover/20220922190345.394-1-valex@nvidia.com/
 [2]https://patches.dpdk.org/project/dpdk/cover/20220921021133.2982954-1-akozyrev@nvidia.com/
 [3]https://patches.dpdk.org/project/dpdk/cover/20220921145409.511328-1-michaelba@nvidia.com/
 [4]https://patches.dpdk.org/project/dpdk/patch/20220920071036.20878-1-suanmingm@nvidia.com/
 [5]https://patches.dpdk.org/project/dpdk/patch/20220920071141.21769-1-suanmingm@nvidia.com/
 [6]https://patches.dpdk.org/project/dpdk/patch/20220921143202.1790802-1-dsosnowski@nvidia.com/


Alexander Kozyrev (7):
  ethdev: add meter profiles/policies config
  net/mlx5: add HW steering meter action
  net/mlx5: add meter color flow matching in dv
  net/mlx5: add meter color flow matching in hws
  net/mlx5: implement profile/policy get
  net/mlx5: implement METER MARK action for HWS
  net/mlx5: implement METER MARK indirect action for HWS

Bing Zhao (3):
  net/mlx5: enable mark flag for all ports in the same domain
  net/mlx5: add extended metadata mode for hardware steering
  net/mlx5: add support for ASO return register

Dariusz Sosnowski (5):
  net/mlx5: validate modify field action template
  net/mlx5: create port actions
  net/mlx5: support DR action template API
  net/mlx5: add pattern and table attribute validation
  net/mlx5: add meta item support in egress

Gregory Etelson (1):
  net/mlx5: add HW steering VLAN push, pop and VID modify flow actions

Suanming Mou (8):
  net/mlx5: fix invalid flow attributes
  net/mlx5: fix IPv6 and TCP RSS hash fields
  net/mlx5: add shared header reformat support
  net/mlx5: add modify field hws support
  net/mlx5: support caching queue action
  net/mlx5: fix indirect action validate
  lib/ethdev: add connection tracking configuration
  net/mlx5: add HW steering connection tracking support

Xiaoyu Min (3):
  net/mlx5: add HW steering counter action
  net/mlx5: update indirect actions ops to HW variation
  net/mlx5: support indirect count action for HW steering

 doc/guides/nics/mlx5.rst             |    9 +
 drivers/common/mlx5/mlx5_devx_cmds.c |   50 +
 drivers/common/mlx5/mlx5_devx_cmds.h |   27 +
 drivers/common/mlx5/mlx5_prm.h       |   21 +-
 drivers/common/mlx5/version.map      |    1 +
 drivers/net/mlx5/linux/mlx5_os.c     |   41 +-
 drivers/net/mlx5/meson.build         |    1 +
 drivers/net/mlx5/mlx5.c              |   39 +-
 drivers/net/mlx5/mlx5.h              |  160 +-
 drivers/net/mlx5/mlx5_defs.h         |    2 +
 drivers/net/mlx5/mlx5_flow.c         |  247 +-
 drivers/net/mlx5/mlx5_flow.h         |  265 +-
 drivers/net/mlx5/mlx5_flow_aso.c     |  313 +-
 drivers/net/mlx5/mlx5_flow_dv.c      |  840 ++--
 drivers/net/mlx5/mlx5_flow_hw.c      | 5434 +++++++++++++++++++++++---
 drivers/net/mlx5/mlx5_flow_meter.c   |  967 ++++-
 drivers/net/mlx5/mlx5_flow_verbs.c   |    4 +-
 drivers/net/mlx5/mlx5_hws_cnt.c      |  523 +++
 drivers/net/mlx5/mlx5_hws_cnt.h      |  558 +++
 drivers/net/mlx5/mlx5_trigger.c      |   80 +-
 lib/ethdev/rte_flow.h                |   27 +-
 21 files changed, 8556 insertions(+), 1053 deletions(-)
 create mode 100644 drivers/net/mlx5/mlx5_hws_cnt.c
 create mode 100644 drivers/net/mlx5/mlx5_hws_cnt.h