DPDK patches and discussions
 help / color / mirror / Atom feed
From: Ori Kam <orika@nvidia.com>
To: Slava Ovsiienko <viacheslavo@nvidia.com>, "dev@dpdk.org" <dev@dpdk.org>
Cc: "ferruh.yigit@intel.com" <ferruh.yigit@intel.com>,
	"NBU-Contact-Thomas Monjalon (EXTERNAL)" <thomas@monjalon.net>
Subject: RE: [PATCH v3] ethdev: deprecate header fields and metadata flow actions
Date: Wed, 24 Nov 2021 16:21:28 +0000	[thread overview]
Message-ID: <DM8PR12MB5400511EC7F160CE98C4533CD6619@DM8PR12MB5400.namprd12.prod.outlook.com> (raw)
In-Reply-To: <20211124153756.12198-1-viacheslavo@nvidia.com>

Hi Slava,

> -----Original Message-----
> From: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
> Sent: Wednesday, November 24, 2021 5:38 PM
> To: dev@dpdk.org
> Cc: ferruh.yigit@intel.com; NBU-Contact-Thomas Monjalon (EXTERNAL) <thomas@monjalon.net>
> Subject: [PATCH v3] ethdev: deprecate header fields and metadata flow actions
> 
> The generic RTE_FLOW_ACTION_TYPE_MODIFY_FIELD action was
> introduced by [1]. This action provides an unified way
> to perform various arithmetic and transfer operations over
> packet network header fields and packet metadata.
> 
> [1] commit 641dbe4fb053 ("net/mlx5: support modify field flow action")
> 
> On other side there are a bunch of multiple legacy actions,
> that can be superseded by the generic modify field action:
> 
> RTE_FLOW_ACTION_TYPE_OF_SET_MPLS_TTL
> RTE_FLOW_ACTION_TYPE_OF_DEC_MPLS_TTL
> RTE_FLOW_ACTION_TYPE_OF_SET_NW_TTL
> RTE_FLOW_ACTION_TYPE_OF_DEC_NW_TTL      sfc
> RTE_FLOW_ACTION_TYPE_OF_COPY_TTL_OUT
> RTE_FLOW_ACTION_TYPE_OF_COPY_TTL_IN
> RTE_FLOW_ACTION_TYPE_SET_IPV4_SRC       bnxt, cxgbe, mlx5
> RTE_FLOW_ACTION_TYPE_SET_IPV4_DST       bnxt, cxgbe, mlx5
> RTE_FLOW_ACTION_TYPE_SET_IPV6_SRC       cxgbe, mlx5
> RTE_FLOW_ACTION_TYPE_SET_IPV6_DST       cxgbe, mlx5
> RTE_FLOW_ACTION_TYPE_SET_TP_SRC         cxgbe, mlx5
> RTE_FLOW_ACTION_TYPE_SET_TP_DST         cxgbe, mlx5
> RTE_FLOW_ACTION_TYPE_DEC_TTL            mlx5, sfc
> RTE_FLOW_ACTION_TYPE_SET_TTL            mlx5
> RTE_FLOW_ACTION_TYPE_SET_MAC_SRC        cxgbe, mlx5
> RTE_FLOW_ACTION_TYPE_SET_MAC_DST        cxgbe, mlx5
> RTE_FLOW_ACTION_TYPE_INC_TCP_SEQ        mlx5
> RTE_FLOW_ACTION_TYPE_DEC_TCP_SEQ        mlx5
> RTE_FLOW_ACTION_TYPE_INC_TCP_ACK        mlx5
> RTE_FLOW_ACTION_TYPE_DEC_TCP_ACK        mlx5
> RTE_FLOW_ACTION_TYPE_SET_IPV4_DSCP      mlx5
> RTE_FLOW_ACTION_TYPE_SET_IPV6_DSCP      mlx5
> RTE_FLOW_ACTION_TYPE_OF_SET_VLAN_VID    bnxt, cnxk, cxgbe, enic,
>                                         mlx5, octeontx2, sfc
> RTE_FLOW_ACTION_TYPE_OF_SET_VLAN_PCP    bnxt, cnxk, cxgbe, enic,
>                                         mlx5, octeontx2, sfc
> RTE_FLOW_ACTION_TYPE_SET_TAG            mlx5
> RTE_FLOW_ACTION_TYPE_SET_META           mlx5
> 
> This note deprecates the following RTE Flow actions:
> 1. As not supported by any of PMDs:
> 
> RTE_FLOW_ACTION_TYPE_OF_SET_MPLS_TTL
> RTE_FLOW_ACTION_TYPE_OF_DEC_MPLS_TTL
> RTE_FLOW_ACTION_TYPE_OF_SET_NW_TTL
> RTE_FLOW_ACTION_TYPE_OF_COPY_TTL_OUT
> RTE_FLOW_ACTION_TYPE_OF_COPY_TTL_IN
> 
> 2. As supposed to be replaced by generig field modify action:
> RTE_FLOW_ACTION_TYPE_OF_DEC_NW_TTL
> RTE_FLOW_ACTION_TYPE_SET_IPV4_SRC
> RTE_FLOW_ACTION_TYPE_SET_IPV4_DST
> RTE_FLOW_ACTION_TYPE_SET_IPV6_SRC
> RTE_FLOW_ACTION_TYPE_SET_IPV6_DST
> RTE_FLOW_ACTION_TYPE_SET_TP_SRC
> RTE_FLOW_ACTION_TYPE_SET_TP_DST
> RTE_FLOW_ACTION_TYPE_DEC_TTL
> RTE_FLOW_ACTION_TYPE_SET_TTL
> RTE_FLOW_ACTION_TYPE_SET_MAC_SRC
> RTE_FLOW_ACTION_TYPE_SET_MAC_DST
> RTE_FLOW_ACTION_TYPE_INC_TCP_SEQ
> RTE_FLOW_ACTION_TYPE_DEC_TCP_SEQ
> RTE_FLOW_ACTION_TYPE_INC_TCP_ACK
> RTE_FLOW_ACTION_TYPE_DEC_TCP_ACK
> RTE_FLOW_ACTION_TYPE_SET_IPV4_DSCP
> RTE_FLOW_ACTION_TYPE_SET_IPV6_DSCP
> RTE_FLOW_ACTION_TYPE_SET_TAG
> RTE_FLOW_ACTION_TYPE_SET_META
> 
> The VLAN set actions are interrelated to VLAN header insertion/removal
> and supported by multiple PMDs and supposed to be just deprecated but
> not be removed in 22.11.
> 
> Signed-off-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
> 
> --
> v2  - deprecation.rst is updated
> v3  - doc comments addressed
>     - commit message comments addressed
>     - SET_VLAN_VID and SET_VLAN_PCP actions deprecated, but will not
>       be removed in 22.11
> ---
>  doc/guides/prog_guide/rte_flow.rst   |  26 +++++++
>  doc/guides/rel_notes/deprecation.rst |  14 ++++
>  lib/ethdev/rte_flow.h                | 105 +++++++++++++++++++++++++++
>  3 files changed, 145 insertions(+)
> 
> diff --git a/doc/guides/prog_guide/rte_flow.rst b/doc/guides/prog_guide/rte_flow.rst
> index 77de8da973..dbed183b6c 100644
> --- a/doc/guides/prog_guide/rte_flow.rst
> +++ b/doc/guides/prog_guide/rte_flow.rst
> @@ -2238,6 +2238,7 @@ fields in the pattern items.
> 
>  Action: ``OF_SET_MPLS_TTL``
>  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 

Since no PMD support this action why set reference to MODIFY_FIELD_?
Same for all unsupported actions.

>  Implements ``OFPAT_SET_MPLS_TTL`` ("MPLS TTL") as defined by the `OpenFlow
>  Switch Specification`_.
> @@ -2254,6 +2255,7 @@ Switch Specification`_.
> 
>  Action: ``OF_DEC_MPLS_TTL``
>  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Implements ``OFPAT_DEC_MPLS_TTL`` ("decrement MPLS TTL") as defined by the
>  `OpenFlow Switch Specification`_.
> @@ -2270,6 +2272,7 @@ Implements ``OFPAT_DEC_MPLS_TTL`` ("decrement MPLS TTL") as defined
> by the
> 
>  Action: ``OF_SET_NW_TTL``
>  ^^^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Implements ``OFPAT_SET_NW_TTL`` ("IP TTL") as defined by the `OpenFlow
>  Switch Specification`_.
> @@ -2286,6 +2289,7 @@ Switch Specification`_.
> 
>  Action: ``OF_DEC_NW_TTL``
>  ^^^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Implements ``OFPAT_DEC_NW_TTL`` ("decrement IP TTL") as defined by the
>  `OpenFlow Switch Specification`_.
> @@ -2302,6 +2306,7 @@ Implements ``OFPAT_DEC_NW_TTL`` ("decrement IP TTL") as defined by the
> 
>  Action: ``OF_COPY_TTL_OUT``
>  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Implements ``OFPAT_COPY_TTL_OUT`` ("copy TTL "outwards" -- from
>  next-to-outermost to outermost") as defined by the `OpenFlow Switch
> @@ -2319,6 +2324,7 @@ Specification`_.
> 
>  Action: ``OF_COPY_TTL_IN``
>  ^^^^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Implements ``OFPAT_COPY_TTL_IN`` ("copy TTL "inwards" -- from outermost to
>  next-to-outermost") as defined by the `OpenFlow Switch Specification`_.
> @@ -2367,6 +2373,7 @@ Implements ``OFPAT_PUSH_VLAN`` ("push a new VLAN tag") as defined by
> the
> 
>  Action: ``OF_SET_VLAN_VID``
>  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Implements ``OFPAT_SET_VLAN_VID`` ("set the 802.1q VLAN id") as defined by
>  the `OpenFlow Switch Specification`_.
> @@ -2383,6 +2390,7 @@ the `OpenFlow Switch Specification`_.
> 
>  Action: ``OF_SET_VLAN_PCP``
>  ^^^^^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Implements ``OFPAT_SET_LAN_PCP`` ("set the 802.1q priority") as defined by
>  the `OpenFlow Switch Specification`_.
> @@ -2589,6 +2597,7 @@ valid packet.
> 
>  Action: ``SET_IPV4_SRC``
>  ^^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Set a new IPv4 source address in the outermost IPv4 header.
> 
> @@ -2607,6 +2616,7 @@ Otherwise, RTE_FLOW_ERROR_TYPE_ACTION error will be returned.
> 
>  Action: ``SET_IPV4_DST``
>  ^^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Set a new IPv4 destination address in the outermost IPv4 header.
> 
> @@ -2625,6 +2635,7 @@ Otherwise, RTE_FLOW_ERROR_TYPE_ACTION error will be returned.
> 
>  Action: ``SET_IPV6_SRC``
>  ^^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Set a new IPv6 source address in the outermost IPv6 header.
> 
> @@ -2643,6 +2654,7 @@ Otherwise, RTE_FLOW_ERROR_TYPE_ACTION error will be returned.
> 
>  Action: ``SET_IPV6_DST``
>  ^^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Set a new IPv6 destination address in the outermost IPv6 header.
> 
> @@ -2661,6 +2673,7 @@ Otherwise, RTE_FLOW_ERROR_TYPE_ACTION error will be returned.
> 
>  Action: ``SET_TP_SRC``
>  ^^^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Set a new source port number in the outermost TCP/UDP header.
> 
> @@ -2679,6 +2692,7 @@ flow pattern item. Otherwise, RTE_FLOW_ERROR_TYPE_ACTION error will
> be returned.
> 
>  Action: ``SET_TP_DST``
>  ^^^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Set a new destination port number in the outermost TCP/UDP header.
> 
> @@ -2716,6 +2730,7 @@ Otherwise, RTE_FLOW_ERROR_TYPE_ACTION error will be returned.
> 
>  Action: ``DEC_TTL``
>  ^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Decrease TTL value.
> 
> @@ -2734,6 +2749,7 @@ in pattern, Some PMDs will reject rule because behavior will be undefined.
> 
>  Action: ``SET_TTL``
>  ^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Assigns a new TTL value.
> 
> @@ -2752,6 +2768,7 @@ in pattern, Some PMDs will reject rule because behavior will be undefined.
> 
>  Action: ``SET_MAC_SRC``
>  ^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Set source MAC address.
> 
> @@ -2770,6 +2787,7 @@ Otherwise, RTE_FLOW_ERROR_TYPE_ACTION error will be returned.
> 
>  Action: ``SET_MAC_DST``
>  ^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Set destination MAC address.
> 
> @@ -2788,6 +2806,7 @@ Otherwise, RTE_FLOW_ERROR_TYPE_ACTION error will be returned.
> 
>  Action: ``INC_TCP_SEQ``
>  ^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Increase sequence number in the outermost TCP header.
>  Value to increase TCP sequence number by is a big-endian 32 bit integer.
> @@ -2796,6 +2815,7 @@ Using this action on non-matching traffic will result in undefined behavior.
> 
>  Action: ``DEC_TCP_SEQ``
>  ^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Decrease sequence number in the outermost TCP header.
>  Value to decrease TCP sequence number by is a big-endian 32 bit integer.
> @@ -2804,6 +2824,7 @@ Using this action on non-matching traffic will result in undefined behavior.
> 
>  Action: ``INC_TCP_ACK``
>  ^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Increase acknowledgment number in the outermost TCP header.
>  Value to increase TCP acknowledgment number by is a big-endian 32 bit integer.
> @@ -2812,6 +2833,7 @@ Using this action on non-matching traffic will result in undefined behavior.
> 
>  Action: ``DEC_TCP_ACK``
>  ^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Decrease acknowledgment number in the outermost TCP header.
>  Value to decrease TCP acknowledgment number by is a big-endian 32 bit integer.
> @@ -2820,6 +2842,7 @@ Using this action on non-matching traffic will result in undefined behavior.
> 
>  Action: ``SET_TAG``
>  ^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Set Tag.
> 
> @@ -2842,6 +2865,7 @@ application. Multiple tags are supported by specifying index.
> 
>  Action: ``SET_META``
>  ^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Set metadata. Item ``META`` matches metadata.
> 
> @@ -2876,6 +2900,7 @@ used to connect the Rx and Tx flows if it can be propagated from Rx to Tx
> path.
> 
>  Action: ``SET_IPV4_DSCP``
>  ^^^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Set IPv4 DSCP.
> 
> @@ -2896,6 +2921,7 @@ Otherwise, RTE_FLOW_ERROR_TYPE_ACTION error will be returned.
> 
>  Action: ``SET_IPV6_DSCP``
>  ^^^^^^^^^^^^^^^^^^^^^^^^^
> +This action is deprecated. Consider `Action: MODIFY_FIELD`_.
> 
>  Set IPv6 DSCP.
> 
> diff --git a/doc/guides/rel_notes/deprecation.rst b/doc/guides/rel_notes/deprecation.rst
> index 6d087c64ef..d04a606b7d 100644
> --- a/doc/guides/rel_notes/deprecation.rst
> +++ b/doc/guides/rel_notes/deprecation.rst
> @@ -101,6 +101,20 @@ Deprecation Notices
>    is deprecated as ambiguous with respect to the embedded switch. The use of
>    these attributes will become invalid starting from DPDK 22.11.
> 
> +* ethdev: Actions ``OF_SET_MPLS_TTL``, ``OF_DEC_MPLS_TTL``, ``OF_SET_NW_TTL``,
> +  ``OF_COPY_TTL_OUT``, ``OF_COPY_TTL_IN`` are deprecated as not supported by
> +  PMDs, will be removed in DPDK 22.11.
> +
> +* ethdev: Actions ``OF_DEC_NW_TTL``, ``SET_IPV4_SRC``, ``SET_IPV4_DST``,
> +  ``SET_IPV6_SRC``, ``SET_IPV6_DST``, ``SET_TP_SRC``, ``SET_TP_DST``,
> +  ``DEC_TTL``, ``SET_TTL``, ``SET_MAC_SRC``, ``SET_MAC_DST``, ``INC_TCP_SEQ``,
> +  ``DEC_TCP_SEQ``, ``INC_TCP_ACK``, ``DEC_TCP_ACK``, ``SET_IPV4_DSCP``,
> +  ``SET_IPV6_DSCP``, ``SET_TAG``, ``SET_META`` are deprecated as superseded
> +  by generic MODIFY_FIELD action, will be removed in DPDK 22.11.
> +
> +* ethdev: Actions ``OF_SET_VLAN_VID``, ``OF_SET_VLAN_PCP`` are deprecated
> +  as superseded by generic MODIFY_FIELD action.
> +
>  * cryptodev: Hide structures ``rte_cryptodev_sym_session`` and
>    ``rte_cryptodev_asym_session`` to remove unnecessary indirection between
>    session and the private data of session. An opaque pointer can be exposed
> diff --git a/lib/ethdev/rte_flow.h b/lib/ethdev/rte_flow.h
> index 650376c16d..42699b5b03 100644
> --- a/lib/ethdev/rte_flow.h
> +++ b/lib/ethdev/rte_flow.h
> @@ -2363,6 +2363,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_SECURITY,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Implements OFPAT_SET_MPLS_TTL ("MPLS TTL") as defined by the
>  	 * OpenFlow Switch Specification.
>  	 *
> @@ -2371,6 +2374,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_OF_SET_MPLS_TTL,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Implements OFPAT_DEC_MPLS_TTL ("decrement MPLS TTL") as defined
>  	 * by the OpenFlow Switch Specification.
>  	 *
> @@ -2379,6 +2385,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_OF_DEC_MPLS_TTL,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Implements OFPAT_SET_NW_TTL ("IP TTL") as defined by the OpenFlow
>  	 * Switch Specification.
>  	 *
> @@ -2395,6 +2404,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_OF_DEC_NW_TTL,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Implements OFPAT_COPY_TTL_OUT ("copy TTL "outwards" -- from
>  	 * next-to-outermost to outermost") as defined by the OpenFlow
>  	 * Switch Specification.
> @@ -2404,6 +2416,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_OF_COPY_TTL_OUT,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Implements OFPAT_COPY_TTL_IN ("copy TTL "inwards" -- from
>  	 * outermost to next-to-outermost") as defined by the OpenFlow
>  	 * Switch Specification.
> @@ -2429,6 +2444,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_OF_PUSH_VLAN,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Implements OFPAT_SET_VLAN_VID ("set the 802.1q VLAN ID") as
>  	 * defined by the OpenFlow Switch Specification.
>  	 *
> @@ -2437,6 +2455,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_OF_SET_VLAN_VID,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Implements OFPAT_SET_LAN_PCP ("set the 802.1q priority") as
>  	 * defined by the OpenFlow Switch Specification.
>  	 *
> @@ -2509,6 +2530,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_RAW_DECAP,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Modify IPv4 source address in the outermost IPv4 header.
>  	 *
>  	 * If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_IPV4,
> @@ -2519,6 +2543,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_SET_IPV4_SRC,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Modify IPv4 destination address in the outermost IPv4 header.
>  	 *
>  	 * If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_IPV4,
> @@ -2529,6 +2556,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_SET_IPV4_DST,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Modify IPv6 source address in the outermost IPv6 header.
>  	 *
>  	 * If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_IPV6,
> @@ -2539,6 +2569,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_SET_IPV6_SRC,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Modify IPv6 destination address in the outermost IPv6 header.
>  	 *
>  	 * If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_IPV6,
> @@ -2549,6 +2582,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_SET_IPV6_DST,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Modify source port number in the outermost TCP/UDP header.
>  	 *
>  	 * If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_TCP
> @@ -2560,6 +2596,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_SET_TP_SRC,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Modify destination port number in the outermost TCP/UDP header.
>  	 *
>  	 * If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_TCP
> @@ -2582,6 +2621,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_MAC_SWAP,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Decrease TTL value directly
>  	 *
>  	 * No associated configuration structure.
> @@ -2589,6 +2631,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_DEC_TTL,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Set TTL value
>  	 *
>  	 * See struct rte_flow_action_set_ttl
> @@ -2596,6 +2641,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_SET_TTL,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Set source MAC address from matched flow.
>  	 *
>  	 * If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_ETH,
> @@ -2606,6 +2654,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_SET_MAC_SRC,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Set destination MAC address from matched flow.
>  	 *
>  	 * If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_ETH,
> @@ -2616,6 +2667,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_SET_MAC_DST,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Increase sequence number in the outermost TCP header.
>  	 *
>  	 * Action configuration specifies the value to increase
> @@ -2630,6 +2684,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_INC_TCP_SEQ,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Decrease sequence number in the outermost TCP header.
>  	 *
>  	 * Action configuration specifies the value to decrease
> @@ -2644,6 +2701,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_DEC_TCP_SEQ,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Increase acknowledgment number in the outermost TCP header.
>  	 *
>  	 * Action configuration specifies the value to increase
> @@ -2658,6 +2718,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_INC_TCP_ACK,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Decrease acknowledgment number in the outermost TCP header.
>  	 *
>  	 * Action configuration specifies the value to decrease
> @@ -2672,6 +2735,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_DEC_TCP_ACK,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Set Tag.
>  	 *
>  	 * Tag is for internal flow usage only and
> @@ -2682,6 +2748,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_SET_TAG,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Set metadata on ingress or egress path.
>  	 *
>  	 * See struct rte_flow_action_set_meta.
> @@ -2689,6 +2758,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_SET_META,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Modify IPv4 DSCP in the outermost IP header.
>  	 *
>  	 * If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_IPV4,
> @@ -2699,6 +2771,9 @@ enum rte_flow_action_type {
>  	RTE_FLOW_ACTION_TYPE_SET_IPV4_DSCP,
> 
>  	/**
> +	 * @deprecated
> +	 * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> +	 *
>  	 * Modify IPv6 DSCP in the outermost IP header.
>  	 *
>  	 * If flow pattern does not define a valid RTE_FLOW_ITEM_TYPE_IPV6,
> @@ -3069,6 +3144,9 @@ struct rte_flow_action_security {
>  };
> 
>  /**
> + * @deprecated
> + * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> + *

If no PMD support this why do we want to add it to the modify_field?
Same for all of the unsupported actions.

>   * RTE_FLOW_ACTION_TYPE_OF_SET_MPLS_TTL
>   *
>   * Implements OFPAT_SET_MPLS_TTL ("MPLS TTL") as defined by the OpenFlow
> @@ -3079,6 +3157,9 @@ struct rte_flow_action_of_set_mpls_ttl {
>  };
> 
>  /**
> + * @deprecated
> + * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> + *
>   * RTE_FLOW_ACTION_TYPE_OF_SET_NW_TTL
>   *
>   * Implements OFPAT_SET_NW_TTL ("IP TTL") as defined by the OpenFlow Switch
> @@ -3253,6 +3334,9 @@ struct rte_flow_action_raw_decap {
>  };
> 
>  /**
> + * @deprecated
> + * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> + *
>   * @warning
>   * @b EXPERIMENTAL: this structure may change without prior notice
>   *
> @@ -3268,6 +3352,9 @@ struct rte_flow_action_set_ipv4 {
>  };
> 
>  /**
> + * @deprecated
> + * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> + *
>   * @warning
>   * @b EXPERIMENTAL: this structure may change without prior notice
>   *
> @@ -3283,6 +3370,9 @@ struct rte_flow_action_set_ipv6 {
>  };
> 
>  /**
> + * @deprecated
> + * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> + *
>   * @warning
>   * @b EXPERIMENTAL: this structure may change without prior notice
>   *
> @@ -3298,6 +3388,9 @@ struct rte_flow_action_set_tp {
>  };
> 
>  /**
> + * @deprecated
> + * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> + *
>   * RTE_FLOW_ACTION_TYPE_SET_TTL
>   *
>   * Set the TTL value directly for IPv4 or IPv6
> @@ -3307,6 +3400,9 @@ struct rte_flow_action_set_ttl {
>  };
> 
>  /**
> + * @deprecated
> + * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> + *
>   * RTE_FLOW_ACTION_TYPE_SET_MAC
>   *
>   * Set MAC address from the matched flow
> @@ -3316,6 +3412,9 @@ struct rte_flow_action_set_mac {
>  };
> 
>  /**
> + * @deprecated
> + * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> + *
>   * @warning
>   * @b EXPERIMENTAL: this structure may change without prior notice
>   *
> @@ -3331,6 +3430,9 @@ struct rte_flow_action_set_tag {
>  };
> 
>  /**
> + * @deprecated
> + * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> + *
>   * @warning
>   * @b EXPERIMENTAL: this structure may change without prior notice
>   *
> @@ -3355,6 +3457,9 @@ struct rte_flow_action_set_meta {
>  };
> 
>  /**
> + * @deprecated
> + * @see RTE_FLOW_ACTION_TYPE_MODIFY_FIELD
> + *
>   * RTE_FLOW_ACTION_TYPE_SET_IPV4_DSCP
>   * RTE_FLOW_ACTION_TYPE_SET_IPV6_DSCP
>   *
> --
> 2.18.1

Best,
Ori


  parent reply	other threads:[~2021-11-24 16:21 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-23  7:59 [PATCH] " Viacheslav Ovsiienko
2021-11-24  8:06 ` [PATCH v2] " Viacheslav Ovsiienko
2021-11-24 14:56   ` Thomas Monjalon
2021-11-24 15:37 ` [PATCH v3] " Viacheslav Ovsiienko
2021-11-24 15:59   ` Thomas Monjalon
2021-11-24 16:21   ` Ori Kam [this message]
2021-11-24 16:37     ` Slava Ovsiienko
2021-11-24 17:32       ` Thomas Monjalon
2021-11-24 18:09         ` Ori Kam
2021-11-25 11:53   ` Ferruh Yigit
2021-11-25 12:03     ` Somnath Kotur
2021-11-25 13:06     ` Thomas Monjalon
2021-11-25 14:13       ` Slava Ovsiienko
2021-11-25 14:40         ` Ferruh Yigit
2021-11-25 14:52           ` Slava Ovsiienko
2021-11-25 14:15       ` Ferruh Yigit
2021-11-25 13:56     ` Slava Ovsiienko
2021-11-25 15:14       ` Ferruh Yigit
2021-11-25 15:53         ` Thomas Monjalon
2021-11-25 12:18   ` Ferruh Yigit
2021-11-25 12:29     ` Ori Kam
2021-11-25 12:46       ` Ferruh Yigit
2021-11-25 13:56         ` Ori Kam
2021-11-25 14:28           ` Ferruh Yigit
2021-11-25 12:31   ` Ferruh Yigit
2021-11-25 12:50     ` Thomas Monjalon
2021-11-26  9:51 ` [PATCH v4] " Viacheslav Ovsiienko
2021-11-26 12:53   ` Ferruh Yigit
2021-11-26 13:06     ` Thomas Monjalon
2021-11-26 14:52       ` Olivier Matz
2021-11-26 17:07         ` Thomas Monjalon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=DM8PR12MB5400511EC7F160CE98C4533CD6619@DM8PR12MB5400.namprd12.prod.outlook.com \
    --to=orika@nvidia.com \
    --cc=dev@dpdk.org \
    --cc=ferruh.yigit@intel.com \
    --cc=thomas@monjalon.net \
    --cc=viacheslavo@nvidia.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).