From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail1.windriver.com (mail1.windriver.com [147.11.146.13]) by dpdk.org (Postfix) with ESMTP id 8932B58DB for ; Sun, 26 Jan 2014 03:45:38 +0100 (CET) Received: from ALA-HCA.corp.ad.wrs.com (ala-hca.corp.ad.wrs.com [147.11.189.40]) by mail1.windriver.com (8.14.5/8.14.5) with ESMTP id s0Q2ksdL015263 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL); Sat, 25 Jan 2014 18:46:54 -0800 (PST) Received: from ALA-MBA.corp.ad.wrs.com ([169.254.2.104]) by ALA-HCA.corp.ad.wrs.com ([147.11.189.40]) with mapi id 14.02.0347.000; Sat, 25 Jan 2014 18:46:55 -0800 From: "Wiles, Roger Keith" To: Banashankar KV Thread-Topic: [dpdk-dev] pktgen offload checksum flag not able to make it work with pacp packets. Thread-Index: AQHPGiBduY6drgWGDEeenzA1rzqHaJqW05iA Date: Sun, 26 Jan 2014 02:46:54 +0000 Message-ID: <7B58AC42-4409-4448-A748-BADA7F37E32C@windriver.com> References: <4FE91E82-8097-451E-A36D-2F1254573A89@windriver.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [172.25.40.168] MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Cc: "" Subject: Re: [dpdk-dev] pktgen offload checksum flag not able to make it work with pacp packets. 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, 26 Jan 2014 02:45:39 -0000 Hi Banashankar, The tx_conf is used in the pktgen_config_ports() with the rte_eth_tx_queue_= setup() and I am not sure why it matters that tx_conf is disable. The value= s are mostly zero, but some type of interaction must be going on. It may be= the txq_flags being set to IXGBE_SIMPLE_FLAGS and it is overriding the th= e per packet flag later. You will need to look at the driver to determine t= he real reason. The checksum should not be wrong unless the hardware registers are not setu= p correctly, but I would not think that is the case. You may want to verify= the checksum is correct another way, because I can not see the hardware do= ing the checksum wrong. Thanks ++Keith Keith Wiles, Principal Technologist for Networking member of the CTO office= , Wind River mobile 940.213.5533 [Powering 30 Years of Innovation] On Jan 25, 2014, at 4:53 PM, Banashankar KV > wrote: Hi, Thanks a lot for the reply ! Yes I have checked those examples and had set all those flags. But IP check= sum started working after commenting off the txq_flags from the pktgen.c file's tx_conf . And I added the following flag to calculate the tcp checksum. m->ol_flags |=3D PKT_TX_TCP_CKSUM its calculating the TCP checksum but turning out to be wrong checksum. Thanks Banashankar On Fri, Jan 24, 2014 at 11:44 AM, Wiles, Roger Keith > wrote: I have not enabled that feature myself, but I would expect it to work as lo= ng as the hardware does. What does the docs say about enabling hardware off= load support? Did you look at the following files: ip_reassembly/ipv4_rsmbl.h: m->ol_flags |=3D PKT_TX_IP_CKSUM; ipv4_frag/rte_ipv4_frag.h: out_pkt->ol_flags |=3D PKT_TX_IP_CK= SUM; Thanks ++Keith Keith Wiles, Principal Technologist for Networking member of the CTO office= , Wind River mobile 940.213.5533 [Powering 30 Years of Innovation] On Jan 24, 2014, at 12:54 PM, Banashankar KV > wrote: I was modifying a packet in pktgen_pcap_mbuf_ctor() and after modifying I wanted to offload the checksum calculation to h/w so I am setting these flags in pktgen_pcap_mbuf_ctor function. m->pkt.vlan_macip.f.l2_len =3D sizeof(struct ether_hdr); m->pkt.vlan_macip.f.l3_len =3D sizeof(struct ipv4_hdr); m->ol_flags =3D PKT_TX_IP_CKSUM I even tried with setting .txq_flags =3D 0 in rte_eth_txconf struct in pktg= en.c. But still not able to get the h/w checksum. Am I missing anything ? Thanks Banashankar