From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga11.intel.com (mga11.intel.com [192.55.52.93]) by dpdk.org (Postfix) with ESMTP id 51C02B55B for ; Sun, 15 Feb 2015 07:22:22 +0100 (CET) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by fmsmga102.fm.intel.com with ESMTP; 14 Feb 2015 22:22:20 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.09,579,1418112000"; d="scan'208";a="527743106" Received: from pgsmsx108.gar.corp.intel.com ([10.221.44.103]) by orsmga003.jf.intel.com with ESMTP; 14 Feb 2015 22:13:55 -0800 Received: from shsmsx104.ccr.corp.intel.com (10.239.4.70) by PGSMSX108.gar.corp.intel.com (10.221.44.103) with Microsoft SMTP Server (TLS) id 14.3.195.1; Sun, 15 Feb 2015 14:22:18 +0800 Received: from shsmsx101.ccr.corp.intel.com ([169.254.1.192]) by SHSMSX104.ccr.corp.intel.com ([169.254.5.161]) with mapi id 14.03.0195.001; Sun, 15 Feb 2015 14:22:17 +0800 From: "Liu, Jijiang" To: Olivier Matz , "dev@dpdk.org" Thread-Topic: [PATCH v3 00/20] enhance tx checksum offload API Thread-Index: AQHQR27CZCUzpuM2BEq3HUWKiyAdL5zxP5NA Date: Sun, 15 Feb 2015 06:22:17 +0000 Message-ID: <1ED644BD7E0A5F4091CF203DAFB8E4CC01DDC8F1@SHSMSX101.ccr.corp.intel.com> References: <1423041925-26956-1-git-send-email-olivier.matz@6wind.com> <1423819371-24222-1-git-send-email-olivier.matz@6wind.com> In-Reply-To: <1423819371-24222-1-git-send-email-olivier.matz@6wind.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v3 00/20] enhance tx checksum offload API X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 15 Feb 2015 06:22:22 -0000 > -----Original Message----- > From: Olivier Matz [mailto:olivier.matz@6wind.com] > Sent: Friday, February 13, 2015 5:23 PM > To: dev@dpdk.org > Cc: Ananyev, Konstantin; Liu, Jijiang; Zhang, Helin; olivier.matz@6wind.c= om > Subject: [PATCH v3 00/20] enhance tx checksum offload API >=20 > The goal of this series is to clarify and simplify the mbuf offload API. >=20 > - simplify the definitions of PKT_TX_IP_CKSUM and PKT_TX_IPV4, each > flag has now only one meaning. No impact on the code. >=20 > - add a feature flag for OUTER_IP_CHECKSUM (from Jijiang's patches) >=20 > - remove the PKT_TX_UDP_TUNNEL_PKT flag: it is useless from an API point > of view. It was added because i40e need this info for some reason. We > have 3 solutions: >=20 > - remove the flag and adapt the driver to the API (the choice I made > for this series). >=20 > - remove the flag and stop advertising OUTER_IP_CHECKSUM in i40e >=20 > - keep this flag, penalizing performance of drivers that do not > require the flag. It would also mean that drivers won't support > outer IP checksum for all tunnel types, but only for the tunnel > types having a flag. >=20 > - a side effect of this API clarification is that there is only one > way for doing one operation. If the hardware has several ways to > do the same operation, a choice has to be made in the driver. >=20 > The series also provide some enhancements and fixes related to this API r= ework: >=20 > - new tunnel types to testpmd csum forward engine. > - fixes in i40e to adapt to new api and support more tunnel types. >=20 > [1] http://dpdk.org/ml/archives/dev/2015-January/011127.html >=20 > Changes in v2: > - fix test of rx offload flag in parse_vlan() pointed out by Jijiang >=20 > Changes in v3: > - more detailed API comments for PKT_TX_IPV4 and PKT_TX_IPV6 > - do not calculate the outer UDP checksum if packet is not UDP > - add a likely() in i40e > - remove a unlikely() in i40e > - fix a patch split issue > - rebase on head >=20 > Jijiang Liu (2): > ethdev: add outer IP offload capability flag > i40e: advertise outer IPv4 checksum capability >=20 > Olivier Matz (18): > mbuf: remove PKT_TX_IPV4_CSUM > mbuf: enhance the API documentation of offload flags > i40e: call i40e_txd_enable_checksum only for offloaded packets > i40e: remove the use of PKT_TX_UDP_TUNNEL_PKT flag > mbuf: remove PKT_TX_UDP_TUNNEL_PKT flag > testpmd: replace tx_checksum command by csum > testpmd: move csum_show in a function > testpmd: add csum parse_tunnel command > testpmd: rename vxlan in outer_ip in csum commands > testpmd: introduce parse_ipv* in csum fwd engine > testpmd: use a structure to store offload info in csum fwd engine > testpmd: introduce parse_vxlan in csum fwd engine > testpmd: support gre tunnels in csum fwd engine > testpmd: support ipip tunnel in csum forward engine > testpmd: add a warning if outer ip cksum requested but not supported > testpmd: fix TSO when using outer checksum offloads > i40e: fix offloading of outer checksum for ip in ip tunnels > i40e: add debug logs for tx context descriptors >=20 > app/test-pmd/cmdline.c | 234 ++++++++++++++------- > app/test-pmd/csumonly.c | 425 ++++++++++++++++++++++++++------= --- > --- > app/test-pmd/testpmd.h | 9 +- > lib/librte_ether/rte_ethdev.h | 1 + > lib/librte_mbuf/rte_mbuf.c | 1 - > lib/librte_mbuf/rte_mbuf.h | 51 +++-- > lib/librte_pmd_i40e/i40e_ethdev.c | 3 +- > lib/librte_pmd_i40e/i40e_rxtx.c | 55 +++-- > 8 files changed, 529 insertions(+), 250 deletions(-) >=20 > -- > 2.1.4 Acked-by: Jijiang Liu < Jijiang.liu@intel.com>