DPDK patches and discussions
 help / color / mirror / Atom feed
* [PATCH 0/9] net/mlx5: flow fast path validation
@ 2024-06-05 18:34 Dariusz Sosnowski
  2024-06-05 18:34 ` [PATCH 1/9] ethdev: support duplicating only item mask Dariusz Sosnowski
                   ` (11 more replies)
  0 siblings, 12 replies; 31+ messages in thread
From: Dariusz Sosnowski @ 2024-06-05 18:34 UTC (permalink / raw)
  To: Viacheslav Ovsiienko, Ori Kam, Suanming Mou, Matan Azrad,
	Thomas Monjalon, Ferruh Yigit, Andrew Rybchenko
  Cc: dev

This patchset adds validations for flow items and actions
supplied by the user to fast path async flow API functions
implemented in mlx5 PMD.

- Patch 1: Adds the ability to generically calculate
  flow item's mask size using rte_flow_conv().
  This change is used in follow up patches to check for
  non-zero mask in pattern template.
- Patches 2-7: Prepares mlx5 PMD for adding fast path validations.
  Specifically:

  - Required functionality for validating queue indexes and
    target represented ports are extracted for reuse.
  - Additional info, required for validation, is stored in
    pattern and actions templates.
  - Introduces mlx5_fp_debug_enabled() function for checking
    if mlx5 PMD was compiled in debug mode.

- Patch 8: Introduce validations to:

  - rte_flow_async_create()
  - rte_flow_async_create_by_index()
  - rte_flow_async_actions_update()
  - rte_flow_async_destroy()

  These validations are enabled if and only if
  RTE_LIBRTE_MLX5_DEBUG macro is defined during compilation.

Depends-on: series-32087 ("net/mlx5: add match with Tx queue item")
Depends-on: series-32080 ("net/mlx5: validate HWS template items")

Dariusz Sosnowski (9):
  ethdev: support duplicating only item mask
  net/mlx5: extract target port validation
  net/mlx5: extract queue index validation
  net/mlx5: store pattern template items
  net/mlx5: store original actions in template
  net/mlx5: store expected type on indirect action
  net/mlx5: store modify field action
  common/mlx5: add debug mode indicator
  net/mlx5: add async flow operation validation

 doc/guides/rel_notes/release_24_07.rst |   1 +
 drivers/common/mlx5/mlx5_common.h      |  13 +
 drivers/net/mlx5/mlx5_flow.c           |  59 ++-
 drivers/net/mlx5/mlx5_flow.h           |  12 +
 drivers/net/mlx5/mlx5_flow_hw.c        | 620 +++++++++++++++++++++++--
 lib/ethdev/rte_flow.c                  |  15 +-
 lib/ethdev/rte_flow.h                  |  12 +
 7 files changed, 682 insertions(+), 50 deletions(-)

--
2.39.2


^ permalink raw reply	[flat|nested] 31+ messages in thread

end of thread, other threads:[~2024-06-26 18:16 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-06-05 18:34 [PATCH 0/9] net/mlx5: flow fast path validation Dariusz Sosnowski
2024-06-05 18:34 ` [PATCH 1/9] ethdev: support duplicating only item mask Dariusz Sosnowski
2024-06-05 18:34 ` [PATCH 2/9] net/mlx5: extract target port validation Dariusz Sosnowski
2024-06-05 18:34 ` [PATCH 3/9] net/mlx5: extract queue index validation Dariusz Sosnowski
2024-06-05 18:34 ` [PATCH 4/9] net/mlx5: store pattern template items Dariusz Sosnowski
2024-06-05 18:34 ` [PATCH 5/9] net/mlx5: store original actions in template Dariusz Sosnowski
2024-06-05 18:34 ` [PATCH 6/9] net/mlx5: store expected type on indirect action Dariusz Sosnowski
2024-06-05 18:34 ` [PATCH 7/9] net/mlx5: store modify field action Dariusz Sosnowski
2024-06-05 18:34 ` [PATCH 8/9] common/mlx5: add debug mode indicator Dariusz Sosnowski
2024-06-05 18:34 ` [PATCH 9/9] net/mlx5: add async flow operation validation Dariusz Sosnowski
2024-06-06  8:50 ` [PATCH 0/9] net/mlx5: flow fast path validation Dariusz Sosnowski
2024-06-12 16:18 ` [PATCH v2] ethdev: support duplicating only item mask Dariusz Sosnowski
2024-06-12 22:28   ` Ferruh Yigit
2024-06-12 16:24 ` [PATCH v2 0/8] net/mlx5: flow fast path validation Dariusz Sosnowski
2024-06-12 16:24   ` [PATCH v2 1/8] net/mlx5: extract target port validation Dariusz Sosnowski
2024-06-12 16:24   ` [PATCH v2 2/8] net/mlx5: extract queue index validation Dariusz Sosnowski
2024-06-12 16:24   ` [PATCH v2 3/8] net/mlx5: store pattern template items Dariusz Sosnowski
2024-06-12 16:24   ` [PATCH v2 4/8] net/mlx5: store original actions in template Dariusz Sosnowski
2024-06-12 16:24   ` [PATCH v2 5/8] net/mlx5: store expected type on indirect action Dariusz Sosnowski
2024-06-12 16:24   ` [PATCH v2 6/8] net/mlx5: store modify field action Dariusz Sosnowski
2024-06-12 16:24   ` [PATCH v2 7/8] common/mlx5: add debug mode indicator Dariusz Sosnowski
2024-06-12 16:24   ` [PATCH v2 8/8] net/mlx5: add async flow operation validation Dariusz Sosnowski
2024-06-26 18:14   ` [PATCH v3 0/8] net/mlx5: flow fast path validation Dariusz Sosnowski
2024-06-26 18:14     ` [PATCH v3 1/8] net/mlx5: extract target port validation Dariusz Sosnowski
2024-06-26 18:14     ` [PATCH v3 2/8] net/mlx5: extract queue index validation Dariusz Sosnowski
2024-06-26 18:14     ` [PATCH v3 3/8] net/mlx5: store pattern template items Dariusz Sosnowski
2024-06-26 18:14     ` [PATCH v3 4/8] net/mlx5: store original actions in template Dariusz Sosnowski
2024-06-26 18:14     ` [PATCH v3 5/8] net/mlx5: store expected type on indirect action Dariusz Sosnowski
2024-06-26 18:14     ` [PATCH v3 6/8] net/mlx5: store modify field action Dariusz Sosnowski
2024-06-26 18:14     ` [PATCH v3 7/8] common/mlx5: add debug mode indicator Dariusz Sosnowski
2024-06-26 18:14     ` [PATCH v3 8/8] net/mlx5: add async flow operation validation Dariusz Sosnowski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).