From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wi0-f175.google.com (mail-wi0-f175.google.com [209.85.212.175]) by dpdk.org (Postfix) with ESMTP id 29DDD234 for ; Fri, 30 Jan 2015 14:16:32 +0100 (CET) Received: by mail-wi0-f175.google.com with SMTP id fb4so2983329wid.2 for ; Fri, 30 Jan 2015 05:16:31 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=DOewb0zrWGGRYuNYgxS6rtzKQuA7gLxsec1GUe6a/B4=; b=Vn71GQuqKT5tzFUUx0zkbiHJm6NY+xeHjt+Juv4He4YkZEjz3qbzBk5T0AOCHavocd VCZVl7V0AIFLOTOOnylijNVO+pJ1g5uqQfxygnyHucvf7rV0S/Cj31/+FkVHJQW28/xn nnx3wsXCwcBYnJ3IXGvnFzxMA2bxncFBAbdW/7AetNI2+liOidMq5gcZnc3qN2qubhwF mMbOVkdx9pokiy26IHFIGtFGRXuGnhq2Egdx3zLuxqOhuQA8h7uYajeVAY3Qs9OE/pHE BoeNf1Mibrur4erTDzdX4GDO6PzqPjlNic+SA8O2yRZQ/ZMwEEwnBLQ4a14yu1d6J4Nu L8JQ== X-Gm-Message-State: ALoCoQkBEP65mEaj4zwK/pxRnUKghZca3KqqPGf2LcdvOwosp7nTElpOrvAdjskJhfEbYq+iLIKZ X-Received: by 10.180.74.205 with SMTP id w13mr4892510wiv.1.1422623791768; Fri, 30 Jan 2015 05:16:31 -0800 (PST) Received: from glumotte.dev.6wind.com (6wind.net2.nerim.net. [213.41.180.237]) by mx.google.com with ESMTPSA id li7sm6911300wic.4.2015.01.30.05.16.31 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 30 Jan 2015 05:16:31 -0800 (PST) From: Olivier Matz To: dev@dpdk.org Date: Fri, 30 Jan 2015 14:15:55 +0100 Message-Id: <1422623775-8050-1-git-send-email-olivier.matz@6wind.com> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1421883395-27235-1-git-send-email-olivier.matz@6wind.com> References: <1421883395-27235-1-git-send-email-olivier.matz@6wind.com> Subject: [dpdk-dev] [PATCH 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: Fri, 30 Jan 2015 13:16:32 -0000 The goal of this series is to clarify and simplify the mbuf offload API. - simplify the definitions of PKT_TX_IP_CKSUM and PKT_TX_IPV4, each flag has now only one meaning. No impact on the code. - add a feature flag for OUTER_IP_CHECKSUM (from Jijiang's patches) - 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: - remove the flag and adapt the driver to the API (the choice I made for this series). - remove the flag and stop advertising OUTER_IP_CHECKSUM in i40e - 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. - 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. The series also provide some enhancements and fixes related to this API rework: - new tunnel types to testpmd csum forward engine. - fixes in i40e to adapt to new api and support more tunnel types. [1] http://dpdk.org/ml/archives/dev/2015-January/011127.html Jijiang Liu (2): ethdev: add outer IP offload capability flag i40e: advertise outer IPv4 checksum capability 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 app/test-pmd/cmdline.c | 234 ++++++++++++++------- app/test-pmd/csumonly.c | 417 +++++++++++++++++++++++++------------- 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 | 49 +++-- lib/librte_pmd_i40e/i40e_ethdev.c | 3 +- lib/librte_pmd_i40e/i40e_rxtx.c | 55 +++-- 8 files changed, 519 insertions(+), 250 deletions(-) -- 2.1.4