From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 1713EA0C45; Thu, 25 Nov 2021 13:04:13 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 97BF140DF5; Thu, 25 Nov 2021 13:04:11 +0100 (CET) Received: from mail-yb1-f182.google.com (mail-yb1-f182.google.com [209.85.219.182]) by mails.dpdk.org (Postfix) with ESMTP id CC25340140 for ; Thu, 25 Nov 2021 13:04:10 +0100 (CET) Received: by mail-yb1-f182.google.com with SMTP id x32so11042015ybi.12 for ; Thu, 25 Nov 2021 04:04:10 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=broadcom.com; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=xeUe2LU1cIDxmRbXBMhdjJdLLk7+ULBAQ8zHpc6nRT0=; b=hfl3YFihWaCrBKiw8FXRfV3x3m5jwqPf0tfzywj3nsOigN6uHHobBFOEqJPAcBjWsy 7YACrtPMQ4x0DUpR/EmVQ0Ig3mLcb49OrXbOxbN158ypD4g68P8gB1CZTDgsNUcJpYB5 ry7OypivZ6piMruJ0xxXOGR+Cxp1ylZJB6n3Y= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=xeUe2LU1cIDxmRbXBMhdjJdLLk7+ULBAQ8zHpc6nRT0=; b=M2G9yryTpQgGkI5oKs+Riyca9iumUYYbl1AFUdBHp4xnpbe0Cocl9IqhLtMdqdBwmg BDIyGQe4HR+dnTEN3d6sTc9OjiO1oBCOEHrCqoZCTq2pAMYGVZxEt9agCI6a/mido0Gr 4sqypocwGOPzY2RUNHrBfyC2CcLWkBNq8XDr5BcqgqLwyWj/txk9diqXVGFAPcdInajU 5djjxEEAjTb74fFC4luxJI1cruLJntndGJ3gwZZtRl2jywFX7G/bhhV6Je2YFCDHy3Br /hhQz/MEZfozFOOfdalQ0Zd58zm/8jsdoTdAuXRGMk5mqee3/Dl5CoQ2h3WRhOZmToIo ZakQ== X-Gm-Message-State: AOAM532Y59gkOX1Y+cpva+YT9V2V42g8qA7/8LI/GDBYsYaikNhKyXtB iYxvJW9rxjZsJvIBfFkRx0fxaU1rQKRJfViEyTdj5Q== X-Google-Smtp-Source: ABdhPJxEtdRRZNQmEKlwjDqDX0pbGjkgysAEBw3eG6QIOKSey4R8SlRdYON1KxoTtPU0LKetJcA/j2lolWO0UsPj+kM= X-Received: by 2002:a25:54d:: with SMTP id 74mr5609046ybf.307.1637841849962; Thu, 25 Nov 2021 04:04:09 -0800 (PST) MIME-Version: 1.0 References: <20211123075940.5521-1-viacheslavo@nvidia.com> <20211124153756.12198-1-viacheslavo@nvidia.com> <0e5753c9-85c3-1dc1-69d8-460cb0a7b5a4@intel.com> In-Reply-To: <0e5753c9-85c3-1dc1-69d8-460cb0a7b5a4@intel.com> From: Somnath Kotur Date: Thu, 25 Nov 2021 17:33:58 +0530 Message-ID: Subject: Re: [PATCH v3] ethdev: deprecate header fields and metadata flow actions To: Ferruh Yigit Cc: Andrew Rybchenko , Ajit Khaparde , Rahul Lakkireddy , Viacheslav Ovsiienko , Thomas Monjalon , dev Content-Type: text/plain; charset="UTF-8" X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org On Thu, Nov 25, 2021 at 5:23 PM Ferruh Yigit wrote: > > On 11/24/2021 3:37 PM, Viacheslav Ovsiienko wrote: > > 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. > > > > Why not remove them for v22.11? Do you think PMDs can't change the > existing implementation until 22.11? > > > Signed-off-by: Viacheslav Ovsiienko > > > > -- > > 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 > > Deprecated symbols are to prevent new code using them, but for this case > there is no alternative, since PMDs still don't support > 'RTE_FLOW_ACTION_TYPE_MODIFY_FIELD' yet. > This patch is forcing users to use deprecated actions (except from mlx). > > What about a slight change: > 1- In this release, update header/document as 'RTE_FLOW_ACTION_TYPE_MODIFY_FIELD' > is preferred way if supported. Instead of deprecating old ones. > > 2- Have an agreement with PMD maintainers to switch to new action before v22.11, > and don't accept old action implementation in PMDs anymore. > Based on agreement update 'deprecation.rst' in this release to note that > old actions will be removed on v22.11. > (It would be good to have a check to prevent old actions merged during that time.) > > 3- In v22.11, remove old actions, the PMDs that don't support MODIFY_FIELD > action will lose the feature. > > What do you think? > > > Andrew, Ajit, Somnath, Rahul, > > We need your confirmation for item (2) above, do you have any objection? I'm okay with item (2) i.e have an agreement to switch to the new action by 22.11