From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ferruh Yigit Subject: Re: [PATCH] net/enic: enable overlay offload for VXLAN and GENEVE Date: Fri, 6 Apr 2018 17:15:40 +0100 Message-ID: References: <20180404235455.17241-1-johndale@cisco.com> <20180404235455.17241-2-johndale@cisco.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Cc: dev@dpdk.org, Hyong Youb Kim , Thomas Monjalon To: John Daley Return-path: Received: from mga04.intel.com (mga04.intel.com [192.55.52.120]) by dpdk.org (Postfix) with ESMTP id 504311D2E5 for ; Fri, 6 Apr 2018 18:15:49 +0200 (CEST) In-Reply-To: <20180404235455.17241-2-johndale@cisco.com> Content-Language: en-US List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 4/5/2018 12:54 AM, John Daley wrote: > From: Hyong Youb Kim > > Recent NIC models support overlay offload. The overlay offload > feature enables the following on the NIC. > - Rx/Tx checksum offloads for both inner and outer packets. > - Rx inner packet type classification. > - TSO. > - Inner RSS. > > TX descriptors do not require any changes, except the header length > for TSO. The NIC parses outer/inner packets and performs offloads on > them as necessary. The header length for tunneled TSO includes both > inner and outer headers. > > The NIC actually parses and performs the above for NVGRE as well. DPDK > currently has no offload flags for NVGRE, and the hardware has no > controls to individually enable tunnel types either. So do nothing for > now. > > Add a config flag to enable overlay offload by default. To disable it, > the user should set it to 'n'. > > CONFIG_RTE_LIBRTE_ENIC_ENABLE_OVERLAY_OFFLOAD=y > > Also update the enic guide doc. > > Signed-off-by: Hyong Youb Kim > Reviewed-by: John Daley > --- > config/common_base | 1 + > doc/guides/nics/enic.rst | 52 ++++++++++++++++++ > drivers/net/enic/base/vnic_dev.c | 33 ++++++++++++ > drivers/net/enic/base/vnic_dev.h | 5 +- > drivers/net/enic/base/vnic_devcmd.h | 12 +++++ > drivers/net/enic/base/vnic_wq.h | 1 + > drivers/net/enic/enic.h | 6 +++ > drivers/net/enic/enic_ethdev.c | 21 ++------ > drivers/net/enic/enic_main.c | 25 +++++++++ > drivers/net/enic/enic_res.c | 23 ++++++++ > drivers/net/enic/enic_rxtx.c | 104 ++++++++++++++++++++++++++++-------- > 11 files changed, 241 insertions(+), 42 deletions(-) > > diff --git a/config/common_base b/config/common_base > index c09c7cf88..964e37b6e 100644 > --- a/config/common_base > +++ b/config/common_base > @@ -205,6 +205,7 @@ CONFIG_RTE_LIBRTE_ENA_COM_DEBUG=n > # Compile burst-oriented Cisco ENIC PMD driver > # > CONFIG_RTE_LIBRTE_ENIC_PMD=y > +CONFIG_RTE_LIBRTE_ENIC_ENABLE_OVERLAY_OFFLOAD=y Hi John, We are trying to reduce config options we have, is overlay offload enabling can be done via runtime argument or dedicated offload flag?