From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id F293658F0 for ; Sun, 7 Dec 2014 12:36:08 +0100 (CET) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga101.fm.intel.com with ESMTP; 07 Dec 2014 03:36:07 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.07,533,1413270000"; d="scan'208";a="633964362" Received: from shvmail01.sh.intel.com ([10.239.29.42]) by fmsmga001.fm.intel.com with ESMTP; 07 Dec 2014 03:36:07 -0800 Received: from shecgisg004.sh.intel.com (shecgisg004.sh.intel.com [10.239.29.89]) by shvmail01.sh.intel.com with ESMTP id sB7Ba61h018333 for ; Sun, 7 Dec 2014 19:36:06 +0800 Received: from shecgisg004.sh.intel.com (localhost [127.0.0.1]) by shecgisg004.sh.intel.com (8.13.6/8.13.6/SuSE Linux 0.8) with ESMTP id sB7Ba4oh012662 for ; Sun, 7 Dec 2014 19:36:06 +0800 Received: (from jijiangl@localhost) by shecgisg004.sh.intel.com (8.13.6/8.13.6/Submit) id sB7Ba4WR012657 for dev@dpdk.org; Sun, 7 Dec 2014 19:36:04 +0800 From: Jijiang Liu To: dev@dpdk.org Date: Sun, 7 Dec 2014 19:36:01 +0800 Message-Id: <1417952164-12626-1-git-send-email-jijiang.liu@intel.com> X-Mailer: git-send-email 1.7.12.2 Subject: [dpdk-dev] [PATCH 0/3] enhance TX checksum command and csum forwarding engine 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, 07 Dec 2014 11:36:09 -0000 In the current codes, the "tx_checksum set (ip|udp|tcp|sctp|vxlan) (hw|sw) (port-id)" command is not easy to understand and extend, so the patch set enhances the tx_checksum command and reworks csum forwarding engine due to the change of tx_checksum command. The main changes of the tx_checksum command are listed below, 1> add "tx_checksum set tunnel (hw|sw|none) (port-id)" command The command is used to set/clear tunnel flag that is used to tell the NIC that the packetg is a tunneing packet and application want hardware TX checksum offload for outer layer, or inner layer, or both. 2> add "tx_checksum set outer-ip (hw|sw) (port-id)" command The command is used to set/clear outer IP flag that is used to tell the NIC that application want hardware offload for outer layer. 3> remove the vxlan option from the "tx_checksum set (ip|udp|tcp|sctp|vxlan) (hw|sw) (port-id)" command The command is used to set IP, UDP, TCP and SCTP TX checksum flag. In the case of tunneling packet, the IP, UDP, TCP and SCTP flags always concern inner layer. Moreover, replace the TESTPMD_TX_OFFLOAD_VXLAN_CKSUM flag with TESTPMD_TX_OFFLOAD_TUNNEL_CKSUM flag and add the TESTPMD_TX_OFFLOAD_OUTER_IP_CKSUM flagin test-pmd application. Jijiang Liu (3): add outer IP offload capability in librte_ether. add outer IP checksum capability in i40e PMD testpmd command lines of the tx_checksum and csum forwarding rework app/test-pmd/cmdline.c | 201 +++++++++++++++++++++++++++++++++++-- app/test-pmd/csumonly.c | 35 ++++--- app/test-pmd/testpmd.h | 6 +- lib/librte_ether/rte_ethdev.h | 1 + lib/librte_pmd_i40e/i40e_ethdev.c | 3 +- 5 files changed, 218 insertions(+), 28 deletions(-) -- 1.7.7.6