[PATCH v5 0/5] ethdev: modify field API for multiple headers
Michael Baum
michaelba at nvidia.com
Tue May 23 23:31:52 CEST 2023
This patch-set extend the modify field action API to support both
multiple MPLS and GENEVE option headers.
In current API, the header type is provided by rte_flow_field_id
enumeration and the encapsulation level (inner/outer/tunnel) is
specified by data.level field.
However, there is no way to specify header inside encapsulation level.
For example, for this packet:
eth / mpls / mpls / mpls / ipv4 / udp
the both second and third MPLS headers cannot be modified using this
API.
RFC:
https://patchwork.dpdk.org/project/dpdk/cover/20230420092145.522389-1-michaelba@nvidia.com/
v2:
- Change "sub_level" name to "tag_index".
- Squash PMD changes into API changes patch.
- Remove PMD private patch from the patch-set.
v3:
- Add TAG array API change to release notes.
- Improve comment and documentation.
v4:
- Add "Acked-by" labels.
- Add PMD adjustment for TAG array API change.
v5:
- Fix location of level validation.
Michael Baum (5):
doc: fix blank lines in modify field action description
doc: fix blank line in asynchronous operations description
doc: fix wrong indentation in RSS action description
ethdev: add GENEVE TLV option modification support
ethdev: add MPLS header modification support
app/test-pmd/cmdline_flow.c | 70 +++++++++++++++-
doc/guides/prog_guide/rte_flow.rst | 59 ++++++++++---
doc/guides/rel_notes/release_23_07.rst | 7 ++
drivers/net/mlx5/mlx5_flow.c | 34 ++++++++
drivers/net/mlx5/mlx5_flow.h | 23 ++++++
drivers/net/mlx5/mlx5_flow_dv.c | 110 +++++++++++--------------
drivers/net/mlx5/mlx5_flow_hw.c | 43 ++++++----
lib/ethdev/rte_flow.h | 73 +++++++++++++++-
8 files changed, 325 insertions(+), 94 deletions(-)
--
2.25.1
More information about the dev
mailing list