From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wg0-f44.google.com (mail-wg0-f44.google.com [74.125.82.44]) by dpdk.org (Postfix) with ESMTP id 765C95A6D for ; Wed, 28 Jan 2015 15:57:38 +0100 (CET) Received: by mail-wg0-f44.google.com with SMTP id z12so21104081wgg.3 for ; Wed, 28 Jan 2015 06:57:37 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=J2sE/6nDoI3egnvxNYaapPpNOgXxPVHs+2qkwTpX9Vc=; b=I8Wwms0pC9ublchIJ3wLYYvzS+LJg7vtXBW6FVf3JAMDkg1NVS3I3PGgfyFxRcCVPx LEfunD3LnzwCKoN+ZZxMirIsRJwX8hzFNWZPcP4iPOljbh74sRrJspMvYWuk5sv6xhZ/ zWXQmHtK4JB/oHSoe+tispC+u3PilBsx+ybmX9NIZ4AXxvpph1Wh53vTf217Gc4E1clv ol6OeMQPT1M31gyp02V+FPYQvLvIKoDAx8JubaCmK6SrH22L1emO4tqFXIWxBJFop4eq v4bg2WjMyCH9RpP0t4rlXFHzlMureZVK2uA2IQO65NP7j51tUoBdzzMhTATeQnsh73JJ ouEA== MIME-Version: 1.0 X-Received: by 10.180.74.109 with SMTP id s13mr7649857wiv.33.1422457057573; Wed, 28 Jan 2015 06:57:37 -0800 (PST) Received: by 10.194.2.10 with HTTP; Wed, 28 Jan 2015 06:57:37 -0800 (PST) In-Reply-To: <54C8DDF3.2000802@6wind.com> References: <54C8DDF3.2000802@6wind.com> Date: Wed, 28 Jan 2015 20:27:37 +0530 Message-ID: From: Prashant Upadhyaya To: Olivier MATZ Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Cc: dev@dpdk.org Subject: Re: [dpdk-dev] Regarding UDP checksum offload 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: Wed, 28 Jan 2015 14:57:38 -0000 On Wed, Jan 28, 2015 at 6:32 PM, Olivier MATZ wrote: > Hi Prashant, > > > On 01/28/2015 12:25 PM, Prashant Upadhyaya wrote: > >> Hi, >> >> I am aware that this topic has been discussed several times before, but I >> am somehow still stuck with this. >> >> I am using dpdk 1.6r1, intel 82599 NIC. >> I have an mbuf, I have hand-constructed a UDP packet (IPv4) in the data >> portion, filled the relevant fields of the headers and I do a tx burst. No >> problems, the destination gets the packet. I filled UDP checksum as zero >> and there was no checksum offloaded in ol_flags. >> >> Now in the same usecase, I want to offload UDP checksum. >> I am aware that the checksum field in UDP header has to be filled with the >> pseudo header checksum, I did that, duly added the PKT_TX_UDP_CKSUM flag >> in >> ol_flags, did a tx_burst and the packet does not reach the destination. >> >> I realized that I have to fill the following fields as well (my packet >> does >> not have vlan tag) >> mbuf->pkt.vlan_macip.f.l2_len >> mbuf->pkt.vlan_macip.f.l3_len >> >> so I filled the l2_len as 14 and l3_len as 20 (IP header with no options) >> Yet the packet did not reach the destination. >> >> So my question is -- am I filling the l2_len and l3_len properly ? >> Is there anything else to be done before I can get this UDP checksum >> offload to work properly for me. >> > > > As far as I remember, this should be working on 1.6r1. > When you say "did not reach the destination", do you mean that the > packet is not transmitted at all? Or is it transmitted with a wrong > checksum? > The packet is not transmitted to destination. I cannot see it in tcpdump at wireshark. If I don't do the offload and fill UDP checksum as zero, then destination shows the packet in tcpdump If I don't do the offload and just fill the pseudo header checksum in UDP header (clearly the wrong checksum), then the destination shows the packet in tcpdump and wireshark decodes it to complain of wrong UDP checksum as expected. Let me add further, I am _just_ doing the UDP checksum offload and not the IP hdr checksum offload. I calculate and set IP header checksum by my own code. I hope that this is acceptable and does not interfere with UDP checksum offload > > I think you should try to reproduce the issue with the latest DPDK > which is known to work with test-pmd (csum forward engine). > > Regards, > Olivier > >