From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dispatch1-us1.ppe-hosted.com (dispatch1-us1.ppe-hosted.com [148.163.129.52]) by dpdk.org (Postfix) with ESMTP id C04231BC3F for ; Wed, 11 Apr 2018 15:06:51 +0200 (CEST) X-Virus-Scanned: Proofpoint Essentials engine Received: from webmail.solarflare.com (uk.solarflare.com [193.34.186.16]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1-us1.ppe-hosted.com (Proofpoint Essentials ESMTP Server) with ESMTPS id 94488940075; Wed, 11 Apr 2018 13:06:49 +0000 (UTC) Received: from [192.168.38.17] (84.52.114.114) by ukex01.SolarFlarecom.com (10.17.10.4) with Microsoft SMTP Server (TLS) id 15.0.1044.25; Wed, 11 Apr 2018 14:06:40 +0100 To: Adrien Mazarguil , Thomas Monjalon , Ferruh Yigit , CC: Xueming Li , Wenzhuo Lu , Jingjing Wu , Beilei Xing , "Qi Zhang" , Konstantin Ananyev , Nelio Laranjeiro , Yongseok Koh , Pascal Mazon , Radu Nicolau , Akhil Goyal References: <20180406131736.19145-1-adrien.mazarguil@6wind.com> <20180410162022.9101-1-adrien.mazarguil@6wind.com> <20180410162022.9101-8-adrien.mazarguil@6wind.com> From: Andrew Rybchenko Message-ID: Date: Wed, 11 Apr 2018 16:06:36 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: <20180410162022.9101-8-adrien.mazarguil@6wind.com> Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit Content-Language: en-GB X-Originating-IP: [84.52.114.114] X-ClientProxiedBy: ocex03.SolarFlarecom.com (10.20.40.36) To ukex01.SolarFlarecom.com (10.17.10.4) X-TM-AS-Product-Ver: SMEX-11.0.0.1191-8.100.1062-23776.003 X-TM-AS-Result: No--14.737000-0.000000-31 X-TM-AS-User-Approved-Sender: Yes X-TM-AS-User-Blocked-Sender: No X-MDID: 1523452010-F2e5FBA9DTVW Subject: Re: [dpdk-dev] [PATCH v3 07/16] ethdev: flatten RSS configuration in flow API X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 11 Apr 2018 13:06:52 -0000 On 04/10/2018 07:36 PM, Adrien Mazarguil wrote: > Since its inception, the rte_flow RSS action has been relying in part on > external struct rte_eth_rss_conf for compatibility with the legacy RSS API. > This structure lacks parameters such as the hash algorithm to use, and more > recently, a method to tell which layer RSS should be performed on [1]. > > Given struct rte_eth_rss_conf will never be flexible enough to represent a > complete RSS configuration (e.g. RETA table), this patch supersedes it by > extending the rte_flow RSS action directly. > > A subsequent patch will add a field to use a non-default RSS hash > algorithm. To that end, a field named "types" replaces the field formerly > known as "rss_hf" and standing for "RSS hash functions" as it was > confusing. Actual RSS hash function types are defined by enum > rte_eth_hash_function. > > This patch updates all PMDs and example applications accordingly. > > It breaks ABI compatibility for the following public functions: > > - rte_flow_copy() > - rte_flow_create() > - rte_flow_query() > - rte_flow_validate() > > [1] commit 676b605182a5 ("doc: announce ethdev API change for RSS > configuration") > > Signed-off-by: Adrien Mazarguil > Cc: Xueming Li > Cc: Ferruh Yigit > Cc: Thomas Monjalon > Cc: Wenzhuo Lu > Cc: Jingjing Wu > Cc: Beilei Xing > Cc: Qi Zhang > Cc: Konstantin Ananyev > Cc: Nelio Laranjeiro > Cc: Yongseok Koh > Cc: Andrew Rybchenko > Cc: Pascal Mazon > Cc: Radu Nicolau > Cc: Akhil Goyal > > --- > > v3 changes: > > Documentation update regarding the meaning of a 0 value for RSS types in > flow rules. > > It used to implicitly mean "no RSS" but is redefined as requesting a kind > of "best-effort" mode from PMDs, i.e. anything ranging from empty to > all-inclusive RSS; what matters is it provides safe defaults that will work > regardless of PMD capabilities. > --- > app/test-pmd/cmdline_flow.c | 48 +++--- > app/test-pmd/config.c | 39 ++--- > doc/guides/prog_guide/rte_flow.rst | 28 ++-- > doc/guides/testpmd_app_ug/testpmd_funcs.rst | 6 +- > drivers/net/e1000/e1000_ethdev.h | 13 +- > drivers/net/e1000/igb_ethdev.c | 4 +- > drivers/net/e1000/igb_flow.c | 31 ++-- > drivers/net/e1000/igb_rxtx.c | 51 +++++- > drivers/net/i40e/i40e_ethdev.c | 53 +++++-- > drivers/net/i40e/i40e_ethdev.h | 15 +- > drivers/net/i40e/i40e_flow.c | 57 ++++--- > drivers/net/ixgbe/ixgbe_ethdev.c | 4 +- > drivers/net/ixgbe/ixgbe_ethdev.h | 13 +- > drivers/net/ixgbe/ixgbe_flow.c | 30 ++-- > drivers/net/ixgbe/ixgbe_rxtx.c | 51 +++++- > drivers/net/mlx4/mlx4.c | 2 +- > drivers/net/mlx4/mlx4_flow.c | 61 +++---- > drivers/net/mlx4/mlx4_flow.h | 2 +- > drivers/net/mlx4/mlx4_rxq.c | 2 +- > drivers/net/mlx4/mlx4_rxtx.h | 2 +- > drivers/net/mlx5/mlx5_flow.c | 193 +++++++++++------------ > drivers/net/mlx5/mlx5_rxq.c | 22 +-- > drivers/net/mlx5/mlx5_rxtx.h | 26 +-- > drivers/net/sfc/sfc_flow.c | 21 ++- > drivers/net/tap/tap_flow.c | 8 +- > examples/ipsec-secgw/ipsec.c | 10 +- > lib/librte_ether/rte_flow.c | 39 ++--- > lib/librte_ether/rte_flow.h | 12 +- > 28 files changed, 484 insertions(+), 359 deletions(-) Generic and net/sfc; Acked-by: Andrew Rybchenko