From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bruce Richardson Subject: Re: ixgbe tcp cksum offload Date: Mon, 25 May 2015 11:28:48 +0100 Message-ID: <20150525102848.GA8820@bricha3-MOBL3> References: <7b3bcfdc.ee97.14d8a91d9e4.Coremail.dpdkdev@126.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: "dev@dpdk.org" To: Tim Deng Return-path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id 794D5C310 for ; Mon, 25 May 2015 12:28:52 +0200 (CEST) Content-Disposition: inline In-Reply-To: <7b3bcfdc.ee97.14d8a91d9e4.Coremail.dpdkdev@126.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Mon, May 25, 2015 at 06:15:23PM +0800, Tim Deng wrote: > Hi, > > > I am trying to use ixgbe tcp cksum h/w offload by following steps: > - populate pseudo cksum > - set l2_len, l3_len, l4_len > - set ol_flags > > > But I found the pkt doesn't get right h/w checksum by sniffing on recv side, and TCP cksum still leave with the original pseudo cksum. > And I verified those meta are correctly set, e.g. a TCP syn pkt: > l2_len = 14, l3_len = 20, l4_len = 40 (with some tcp options), > and ol_flags = 0x90000000000000 which means PKT_TX_IPV4 | PKT_TX_TCP_CKSUM > > > Did I miss any step? > > > Thanks in advance, > Tim > Check that you have not got TX offloads disabled in your port configuration. If you pass in NULL for the rte_eth_txconf pointer on tx queue setup, then offloads will be disabled. To get offloads such as checksums to work, you need to explicitly set the flags to allow them. (Generally, this means just setting txqflags to 0) Regards, /Bruce