[dpdk-dev] [PATCH 0/3] i40e VXLAN TX checksum rework

Liu, Jijiang jijiang.liu at intel.com
Thu Nov 27 13:07:49 CET 2014



> -----Original Message-----
> From: Olivier MATZ [mailto:olivier.matz at 6wind.com]
> Sent: Thursday, November 27, 2014 5:45 PM
> To: Liu, Jijiang; dev at dpdk.org
> Subject: Re: [dpdk-dev] [PATCH 0/3] i40e VXLAN TX checksum rework
> 
> Hi Jijiang,
> 
> Please find below some comments about the specifications. The global picture
> looks fine to me.
> 
> I've not reviewed the patch right now, but it's in the pipe.
> 
> On 11/27/2014 09:18 AM, Jijiang Liu wrote:
> > We have got some feedback about backward compatibility of VXLAN TX
> checksum offload API with 1G/10G NIC after the i40e VXLAN TX checksum codes
> were applied, so we have to rework the APIs on i40e, including the changes of
> mbuf, i40e PMD and csum engine.
> >
> > The main changes in mbuf are as follows, In place of removing
> > PKT_TX_VXLAN_CKSUM, we introducing 2 new flags: PKT_TX_OUT_IP_CKSUM,
> PKT_TX_UDP_TUNNEL_PKT, and a new field: l4_tun_len.
> 
> What about PKT_TX_OUT_UDP_CKSUM instead of PKT_TX_UDP_TUNNEL_PKT?
> It's maybe more coherent with the other names.
> 
> 
> > Replace the inner_l2_len and the inner_l3_len field with the outer_l2_len and
> outer_l3_len field.
> >
> > The existing flags are listed below,
> > PKT_TX_IP_CKSUM:     HW IPv4 checksum for non-tunnelling packet/ HW inner
> IPv4 checksum for tunnelling packet
> > PKT_TX_TCP_CKSUM:    HW TCP checksum for non-tunnelling packet/ HW inner
> TCP checksum for tunnelling packet
> > PKT_TX_SCTP_CKSUM:   HW SCTP checksum for non-tunnelling packet/ HW
> inner SCTP checksum for tunnelling packet
> > PKT_TX_UDP_CKSUM:    HW SCTP checksum for non-tunnelling packet/ HW
> inner SCTP checksum for tunnelling packet
> > PKT_TX_IPV4:        IPv4 with no HW checksum offload for non-tunnelling
> packet/inner IPv4 with no HW checksum offload for tunnelling packet
> > PKT_TX_IPV6:        IPv6 non-tunnelling packet/ inner IPv6 with no HW checksum
> offload for tunnelling packet
> 
> As I suggested in the TSO thread, I think the following semantics is easier to
> understand for the user:
> 
>    - PKT_TX_IP_CKSUM: tell the NIC to compute IP cksum
> 
>    - PKT_TX_IPV4: tell the NIC it's an IPv4 packet. Required for L4
>      checksum offload or TSO.
> 
>    - PKT_TX_IPV6: tell the NIC it's an IPv6 packet. Required for L4
>      checksum offload or TSO.
> 
> I think it won't make a big difference in the FVL driver.
> 
Ok.


More information about the dev mailing list