[dpdk-dev] ixgbe and UDP with zero checksum

Wang, Haiyue haiyue.wang at intel.com
Fri Jan 29 03:02:06 CET 2021


> -----Original Message-----
> From: Paolo Valerio <pvalerio at redhat.com>
> Sent: Thursday, January 28, 2021 05:35
> To: Wang, Haiyue <haiyue.wang at intel.com>
> Cc: Guo, Jia <jia.guo at intel.com>; Aaron Conole <aconole at redhat.com>; dev at dpdk.org
> Subject: RE: ixgbe and UDP with zero checksum
> 
> "Wang, Haiyue" <haiyue.wang at intel.com> writes:
> 
> > Hi Paolo,
> >
> >> -----Original Message-----
> >> From: Paolo Valerio <pvalerio at redhat.com>
> >> Sent: Wednesday, January 27, 2021 21:50
> >> To: dev at dpdk.org
> >> Cc: Guo, Jia <jia.guo at intel.com>; Wang, Haiyue <haiyue.wang at intel.com>; Aaron Conole
> >> <aconole at redhat.com>
> >> Subject: ixgbe and UDP with zero checksum
> >>
> >> Hi,
> >>
> >> performing some tests, I noticed that on ixgbe when receiving UDP
> >> packets with zero checksum (no checksum) over IPv4, the corresponding
> >> ol_flag for the l4 checksum is set to PKT_RX_L4_CKSUM_BAD.
> >>
> >> In particular, this apparently has an impact on OvS using ct() action
> >> where UDP packets with zero checksum are not tracked because of that.
> >
> >
> >>
> >> [1]
> >>
> https://patchwork.ozlabs.org/project/netdev/patch/20090724040031.30202.1531.stgit@localhost.localdomai
> >> n/
> >
> > About 12 years old patch, it is hardware errata. For fixing this,
> > have to always disable vector Rx path for 82599, it seems not a
> > good idea to bring in this workaround. :(
> >
> 
> Thanks for the answer.
> Yes, as I mentioned, the patch is old although still meaningful.
> I linked it mostly because it mentions the hw errata.
> 

What's your PCI device ID ? My worked ixgbe:

86:00.0 Ethernet controller [0200]: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection [8086:10fb] (rev 01)

I'm wondering if people will complain that the patch will mark the real bad checksum UDP as
GOOD. For handling this correctly, looks like driver needs to check the UDP's checksum value,
if zero, then skip the error information, but this makes driver do the network stack things ...





More information about the dev mailing list