Introduce new Flow API JUMP_TO_TABLE_INDEX action.
It allows bypassing a hierarchy of groups and going directly
to a specified flow table. That gives a user the flexibility
to jump between different priorities in a group and eliminates
the need to do a table lookup in the group hierarchy.
The JUMP_TO_TABLE_INDEX action forwards a packet to the
specified rule index inside the index-based flow table.

The current index-based flow table doesn't do any matching
on the packet and executes the actions immediately.
Add a new index-based flow table with pattern matching.
The JUMP_TO_TABLE_INDEX can redirect a packet to another
matching criteria at the specified index in this case.

RFC: 
https://patchwork.dpdk.org/project/dpdk/patch/20240822202753.3856703-1-akozy...@nvidia.com/
v2: added trace point to flow insertion by index functions.

Alexander Kozyrev (7):
  ethdev: add insertion by index with pattern
  app/testpmd: add index with pattern insertion type
  ethdev: add flow rule insertion by index with pattern
  app/testpmd: add insertion by index with pattern option
  ethdev: add jump to table index action
  app/testpmd: add jump to table index action
  ethdev: add trace points to flow insertion by index

 app/test-pmd/cmdline_flow.c            | 44 +++++++++++++-
 app/test-pmd/config.c                  | 22 +++++--
 app/test-pmd/testpmd.h                 |  2 +-
 doc/guides/prog_guide/rte_flow.rst     | 20 +++++++
 doc/guides/rel_notes/release_24_11.rst | 13 +++++
 lib/ethdev/ethdev_trace.h              | 44 ++++++++++++++
 lib/ethdev/ethdev_trace_points.c       |  6 ++
 lib/ethdev/rte_flow.c                  | 72 ++++++++++++++++++++++-
 lib/ethdev/rte_flow.h                  | 81 ++++++++++++++++++++++++++
 lib/ethdev/rte_flow_driver.h           | 14 +++++
 lib/ethdev/version.map                 |  1 +
 11 files changed, 309 insertions(+), 10 deletions(-)

-- 
2.18.2

Reply via email to