Hi Alexander,

> -----Original Message-----
> From: Alexander Kozyrev <akozy...@nvidia.com>
> Sent: Wednesday, January 13, 2021 7:08 PM
> Subject: [PATCH v4 1/2] ethdev: introduce generic copy rte flow action
> 
> Implement a generic copy flow API to allow copying of an arbitrary
> header field (as well as mark, metadata or tag) to another field.
> 
> This generic copy mechanism removes the necessity to implement a
> separate RTE Flow action every time we need to modify a new packet
> field in the future. A user-provided value can be used from a
> specified tag/metadata/mark or directly copied from another packet field.
> 
> The field ID is used to specify the desired source/destination packet
> field in order to simplify the API for various encapsulation models.
> Specifying the packet field ID with the needed encapsulation level
> is able to quickly get a packet field for any inner packet header.
> 
> Alternatively, the special ID (ITEM_START) can be used to point to the
> very beginning of a packet. This ID in conjunction with the offset
> parameter provides great flexibility to copy/modify any part of a packet
>  as needed.
> 
> The number of bits to copy as well as the offset to start from can
> be specified to allow a partial copy or dividing a big packet field
> into multiple small fields (let's say copying 128 bits of IPv6 to 4 tags).
> 
> RFC:
> https://nam11.safelinks.protection.outlook.com/?url=http%3A%2F%2Fpatches.d
> pdk.org%2Fpatch%2F85384%2F&amp;data=04%7C01%7Corika%40nvidia.com%
> 7C17fcc82431974e7e56f108d8b7e5c877%7C43083d15727340c1b7db39efd9ccc
> 17a%7C0%7C0%7C637461544825998974%7CUnknown%7CTWFpbGZsb3d8eyJW
> IjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C10
> 00&amp;sdata=kTd45BEYhWsYtRuB9r5Y%2BTwa88wnkKgwUhWFFIutcvc%3D&
> amp;reserved=0
> 
> Signed-off-by: Alexander Kozyrev <akozy...@nvidia.com>
> ---
>  doc/guides/prog_guide/rte_flow.rst     | 57 +++++++++++++++++++++++++
>  doc/guides/rel_notes/release_21_02.rst |  5 +++
>  lib/librte_ethdev/rte_flow.c           |  1 +
>  lib/librte_ethdev/rte_flow.h           | 59 ++++++++++++++++++++++++++
>  4 files changed, 122 insertions(+)
> 

Acked-by: Ori Kam <or...@nvidia.com>
Thanks,
Ori

Reply via email to