* [dpdk-dev] ixgbe and UDP with zero checksum @ 2021-01-27 13:49 Paolo Valerio 2021-01-27 17:26 ` Wang, Haiyue 0 siblings, 1 reply; 9+ messages in thread From: Paolo Valerio @ 2021-01-27 13:49 UTC (permalink / raw) To: dev; +Cc: jia.guo, haiyue.wang, Aaron Conole 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. I also verified it using testpmd (on 20.11 and using the latest sources): # lshw -businfo -c network Bus info Device Class Description ======================================================= pci@0000:01:00.0 em1 network 82599ES 10-Gigabit SFI/SFP+ Network Connection pci@0000:01:00.1 em2 network 82599ES 10-Gigabit SFI/SFP+ Network Connection testpmd -l 2,4 -w 0000:01:00.0 -- -i --port-topology=chained --enable-rx-cksum testpmd> show device info all ********************* Infos for device 0000:01:00.0 ********************* Bus name: pci Driver name: net_ixgbe Devargs: Connect to socket: 0 Port id: 0 MAC address: EC:F4:BB:DB:FC:18 Device name: 0000:01:00.0 Device speed capability: 1 Gbps 10 Gbps testpmd> set fwd rxonly testpmd> set verbose 1 testpmd> start and sending packets from a tester machine using scapy (w/ non zero and zero checksum): sendp(Ether(src="ec:f4:bb:dc:09:d0",dst="ec:f4:bb:db:fc:18")/IP(src="192.168.30.200", dst="192.168.30.100")/UDP()/Raw("a"*100), iface="em1") sendp(Ether(src="ec:f4:bb:dc:09:d0",dst="ec:f4:bb:db:fc:18")/IP(src="192.168.30.200", dst="192.168.30.100")/UDP(chksum=0)/Raw("a"*100), iface="em1") the results are respectively: port 0/queue 0: received 1 packets src=EC:F4:BB:DC:09:D0 - dst=EC:F4:BB:DB:FC:18 - type=0x0800 - length=142 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4 L4_UDP - sw ptype: L2_ETHER L3_IPV4 L4_UDP - l2_len=14 - l3_len=20 - l4_len=8 - Receive queue=0x0 ol_flags: PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_UNKNOWN port 0/queue 0: received 1 packets src=EC:F4:BB:DC:09:D0 - dst=EC:F4:BB:DB:FC:18 - type=0x0800 - length=142 - nb_segs=1 - hw ptype: L2_ETHER L3_IPV4 L4_UDP - sw ptype: L2_ETHER L3_IPV4 L4_UDP - l2_len=14 - l3_len=20 - l4_len=8 - Receive queue=0x0 ol_flags: PKT_RX_L4_CKSUM_BAD PKT_RX_IP_CKSUM_GOOD PKT_RX_OUTER_L4_CKSUM_UNKNOWN Considering that the checksum for UDP over IPv4 can be optionally disabled by the sender (although usually computed and transmitted), is this behavior expected? For completeness sake, I found an old patch [1] in the ixgbe linux driver that seems to be related to what I'm seeing. The code changed a little, but it's still there. [1] https://patchwork.ozlabs.org/project/netdev/patch/20090724040031.30202.1531.stgit@localhost.localdomain/ Regards, Paolo ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [dpdk-dev] ixgbe and UDP with zero checksum 2021-01-27 13:49 [dpdk-dev] ixgbe and UDP with zero checksum Paolo Valerio @ 2021-01-27 17:26 ` Wang, Haiyue 2021-01-27 18:21 ` Aaron Conole 2021-01-27 21:35 ` Paolo Valerio 0 siblings, 2 replies; 9+ messages in thread From: Wang, Haiyue @ 2021-01-27 17:26 UTC (permalink / raw) To: Paolo Valerio, dev; +Cc: Guo, Jia, Aaron Conole Hi Paolo, > -----Original Message----- > From: Paolo Valerio <pvalerio@redhat.com> > Sent: Wednesday, January 27, 2021 21:50 > To: dev@dpdk.org > Cc: Guo, Jia <jia.guo@intel.com>; Wang, Haiyue <haiyue.wang@intel.com>; Aaron Conole > <aconole@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. :( + /* + * 82599 errata, UDP frames with a 0 checksum can be marked as + * checksum errors. + */ + if ((pkt_info & IXGBE_RXDADV_PKTTYPE_UDP) && + (adapter->hw.mac.type == ixgbe_mac_82599EB)) + return; > > Regards, > Paolo ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [dpdk-dev] ixgbe and UDP with zero checksum 2021-01-27 17:26 ` Wang, Haiyue @ 2021-01-27 18:21 ` Aaron Conole 2021-01-27 21:35 ` Paolo Valerio 1 sibling, 0 replies; 9+ messages in thread From: Aaron Conole @ 2021-01-27 18:21 UTC (permalink / raw) To: Wang, Haiyue; +Cc: Paolo Valerio, dev, Guo, Jia "Wang, Haiyue" <haiyue.wang@intel.com> writes: > Hi Paolo, > >> -----Original Message----- >> From: Paolo Valerio <pvalerio@redhat.com> >> Sent: Wednesday, January 27, 2021 21:50 >> To: dev@dpdk.org >> Cc: Guo, Jia <jia.guo@intel.com>; Wang, Haiyue <haiyue.wang@intel.com>; Aaron Conole >> <aconole@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. :( Just wondering that it means here - there's a user of DPDK who has an ixgbe card exhibiting this behavior. What do DPDK engineers tell them to do? Change the hardware? Upgrade the firmware? > + /* > + * 82599 errata, UDP frames with a 0 checksum can be marked as > + * checksum errors. > + */ > + if ((pkt_info & IXGBE_RXDADV_PKTTYPE_UDP) && > + (adapter->hw.mac.type == ixgbe_mac_82599EB)) > + return; > >> >> Regards, >> Paolo ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [dpdk-dev] ixgbe and UDP with zero checksum 2021-01-27 17:26 ` Wang, Haiyue 2021-01-27 18:21 ` Aaron Conole @ 2021-01-27 21:35 ` Paolo Valerio 2021-01-29 2:02 ` Wang, Haiyue 1 sibling, 1 reply; 9+ messages in thread From: Paolo Valerio @ 2021-01-27 21:35 UTC (permalink / raw) To: Wang, Haiyue; +Cc: Guo, Jia, Aaron Conole, dev "Wang, Haiyue" <haiyue.wang@intel.com> writes: > Hi Paolo, > >> -----Original Message----- >> From: Paolo Valerio <pvalerio@redhat.com> >> Sent: Wednesday, January 27, 2021 21:50 >> To: dev@dpdk.org >> Cc: Guo, Jia <jia.guo@intel.com>; Wang, Haiyue <haiyue.wang@intel.com>; Aaron Conole >> <aconole@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. I would refer to Aaron's questions because they bring up the point. > + /* > + * 82599 errata, UDP frames with a 0 checksum can be marked as > + * checksum errors. > + */ > + if ((pkt_info & IXGBE_RXDADV_PKTTYPE_UDP) && > + (adapter->hw.mac.type == ixgbe_mac_82599EB)) > + return; > >> >> Regards, >> Paolo ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [dpdk-dev] ixgbe and UDP with zero checksum 2021-01-27 21:35 ` Paolo Valerio @ 2021-01-29 2:02 ` Wang, Haiyue 2021-01-29 2:59 ` Wang, Haiyue 0 siblings, 1 reply; 9+ messages in thread From: Wang, Haiyue @ 2021-01-29 2:02 UTC (permalink / raw) To: Paolo Valerio; +Cc: Guo, Jia, Aaron Conole, dev > -----Original Message----- > From: Paolo Valerio <pvalerio@redhat.com> > Sent: Thursday, January 28, 2021 05:35 > To: Wang, Haiyue <haiyue.wang@intel.com> > Cc: Guo, Jia <jia.guo@intel.com>; Aaron Conole <aconole@redhat.com>; dev@dpdk.org > Subject: RE: ixgbe and UDP with zero checksum > > "Wang, Haiyue" <haiyue.wang@intel.com> writes: > > > Hi Paolo, > > > >> -----Original Message----- > >> From: Paolo Valerio <pvalerio@redhat.com> > >> Sent: Wednesday, January 27, 2021 21:50 > >> To: dev@dpdk.org > >> Cc: Guo, Jia <jia.guo@intel.com>; Wang, Haiyue <haiyue.wang@intel.com>; Aaron Conole > >> <aconole@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 ... ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [dpdk-dev] ixgbe and UDP with zero checksum 2021-01-29 2:02 ` Wang, Haiyue @ 2021-01-29 2:59 ` Wang, Haiyue 2021-01-29 14:19 ` Paolo Valerio 0 siblings, 1 reply; 9+ messages in thread From: Wang, Haiyue @ 2021-01-29 2:59 UTC (permalink / raw) To: Paolo Valerio, Yang, Qiming; +Cc: Guo, Jia, Aaron Conole, dev Hi Paolo, > -----Original Message----- > From: Wang, Haiyue > Sent: Friday, January 29, 2021 10:02 > To: Paolo Valerio <pvalerio@redhat.com> > Cc: Guo, Jia <jia.guo@intel.com>; Aaron Conole <aconole@redhat.com>; dev@dpdk.org > Subject: RE: ixgbe and UDP with zero checksum > > > -----Original Message----- > > From: Paolo Valerio <pvalerio@redhat.com> > > Sent: Thursday, January 28, 2021 05:35 > > To: Wang, Haiyue <haiyue.wang@intel.com> > > Cc: Guo, Jia <jia.guo@intel.com>; Aaron Conole <aconole@redhat.com>; dev@dpdk.org > > Subject: RE: ixgbe and UDP with zero checksum > > > > "Wang, Haiyue" <haiyue.wang@intel.com> writes: > > > > > Hi Paolo, > > > > > >> -----Original Message----- > > >> From: Paolo Valerio <pvalerio@redhat.com> > > >> Sent: Wednesday, January 27, 2021 21:50 > > >> To: dev@dpdk.org > > >> Cc: Guo, Jia <jia.guo@intel.com>; Wang, Haiyue <haiyue.wang@intel.com>; Aaron Conole > > >> <aconole@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: > Sorry, I missed the PKT_RX_L4_CKSUM_BAD information, yes, my NIC have the issue. > 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 Zero checksum is more popular case, please file a bug on https://bugs.dpdk.org/ to trace the fix. Thanks for pointing it out. > 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 ... > > ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [dpdk-dev] ixgbe and UDP with zero checksum 2021-01-29 2:59 ` Wang, Haiyue @ 2021-01-29 14:19 ` Paolo Valerio 2021-02-02 7:41 ` Wang, Haiyue 0 siblings, 1 reply; 9+ messages in thread From: Paolo Valerio @ 2021-01-29 14:19 UTC (permalink / raw) To: Wang, Haiyue, Yang, Qiming; +Cc: Guo, Jia, Aaron Conole, dev "Wang, Haiyue" <haiyue.wang@intel.com> writes: > Hi Paolo, > >> -----Original Message----- >> From: Wang, Haiyue >> Sent: Friday, January 29, 2021 10:02 >> To: Paolo Valerio <pvalerio@redhat.com> >> Cc: Guo, Jia <jia.guo@intel.com>; Aaron Conole <aconole@redhat.com>; dev@dpdk.org >> Subject: RE: ixgbe and UDP with zero checksum >> >> > -----Original Message----- >> > From: Paolo Valerio <pvalerio@redhat.com> >> > Sent: Thursday, January 28, 2021 05:35 >> > To: Wang, Haiyue <haiyue.wang@intel.com> >> > Cc: Guo, Jia <jia.guo@intel.com>; Aaron Conole <aconole@redhat.com>; dev@dpdk.org >> > Subject: RE: ixgbe and UDP with zero checksum >> > >> > "Wang, Haiyue" <haiyue.wang@intel.com> writes: >> > >> > > Hi Paolo, >> > > >> > >> -----Original Message----- >> > >> From: Paolo Valerio <pvalerio@redhat.com> >> > >> Sent: Wednesday, January 27, 2021 21:50 >> > >> To: dev@dpdk.org >> > >> Cc: Guo, Jia <jia.guo@intel.com>; Wang, Haiyue <haiyue.wang@intel.com>; Aaron Conole >> > >> <aconole@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: >> > > Sorry, I missed the PKT_RX_L4_CKSUM_BAD information, yes, my NIC have the issue. > >> 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 > > Zero checksum is more popular case, please file a bug on https://bugs.dpdk.org/ to trace the fix. > > Thanks for pointing it out. > ack, I'm going to file it. Thanks, Paolo >> 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 ... >> >> ^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [dpdk-dev] ixgbe and UDP with zero checksum 2021-01-29 14:19 ` Paolo Valerio @ 2021-02-02 7:41 ` Wang, Haiyue 2021-02-02 9:33 ` [dpdk-dev] 回复: " Feifei Wang 0 siblings, 1 reply; 9+ messages in thread From: Wang, Haiyue @ 2021-02-02 7:41 UTC (permalink / raw) To: Feifei Wang, Ruifeng Wang Cc: Guo, Jia, Aaron Conole, dev, Yang, Qiming, Paolo Valerio + ARM experts, Feifei and Ruifeng. Need your further support for ARM NEON path. https://patchwork.dpdk.org/patch/87617/ > -----Original Message----- > From: Paolo Valerio <pvalerio@redhat.com> > Sent: Friday, January 29, 2021 22:20 > To: Wang, Haiyue <haiyue.wang@intel.com>; Yang, Qiming <qiming.yang@intel.com> > Cc: Guo, Jia <jia.guo@intel.com>; Aaron Conole <aconole@redhat.com>; dev@dpdk.org > Subject: RE: ixgbe and UDP with zero checksum > > "Wang, Haiyue" <haiyue.wang@intel.com> writes: > > > Hi Paolo, > > > >> -----Original Message----- > >> From: Wang, Haiyue > >> Sent: Friday, January 29, 2021 10:02 > >> To: Paolo Valerio <pvalerio@redhat.com> > >> Cc: Guo, Jia <jia.guo@intel.com>; Aaron Conole <aconole@redhat.com>; dev@dpdk.org > >> Subject: RE: ixgbe and UDP with zero checksum > >> > >> > -----Original Message----- > >> > From: Paolo Valerio <pvalerio@redhat.com> > >> > Sent: Thursday, January 28, 2021 05:35 > >> > To: Wang, Haiyue <haiyue.wang@intel.com> > >> > Cc: Guo, Jia <jia.guo@intel.com>; Aaron Conole <aconole@redhat.com>; dev@dpdk.org > >> > Subject: RE: ixgbe and UDP with zero checksum > >> > > >> > "Wang, Haiyue" <haiyue.wang@intel.com> writes: > >> > > >> > > Hi Paolo, > >> > > > >> > >> -----Original Message----- > >> > >> From: Paolo Valerio <pvalerio@redhat.com> > >> > >> Sent: Wednesday, January 27, 2021 21:50 > >> > >> To: dev@dpdk.org > >> > >> Cc: Guo, Jia <jia.guo@intel.com>; Wang, Haiyue <haiyue.wang@intel.com>; Aaron Conole > >> > >> <aconole@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: > >> > > > > Sorry, I missed the PKT_RX_L4_CKSUM_BAD information, yes, my NIC have the issue. > > > >> 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 > > > > Zero checksum is more popular case, please file a bug on https://bugs.dpdk.org/ to trace the fix. > > > > Thanks for pointing it out. > > > > ack, I'm going to file it. > > Thanks, > Paolo > > >> 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 ... > >> > >> ^ permalink raw reply [flat|nested] 9+ messages in thread
* [dpdk-dev] 回复: ixgbe and UDP with zero checksum 2021-02-02 7:41 ` Wang, Haiyue @ 2021-02-02 9:33 ` Feifei Wang 0 siblings, 0 replies; 9+ messages in thread From: Feifei Wang @ 2021-02-02 9:33 UTC (permalink / raw) To: Wang, Haiyue, Ruifeng Wang Cc: Guo, Jia, Aaron Conole, dev, Yang, Qiming, Paolo Valerio, nd Hi, Haiyue We will release the patch to support zero checksum in arm neon path later. Best Regards Feifei > -----邮件原件----- > 发件人: Wang, Haiyue <haiyue.wang@intel.com> > 发送时间: 2021年2月2日 15:42 > 收件人: Feifei Wang <Feifei.Wang2@arm.com>; Ruifeng Wang > <Ruifeng.Wang@arm.com> > 抄送: Guo, Jia <jia.guo@intel.com>; Aaron Conole <aconole@redhat.com>; > dev@dpdk.org; Yang, Qiming <qiming.yang@intel.com>; Paolo Valerio > <pvalerio@redhat.com> > 主题: RE: ixgbe and UDP with zero checksum > > + ARM experts, Feifei and Ruifeng. > > Need your further support for ARM NEON path. > > https://patchwork.dpdk.org/patch/87617/ > > > -----Original Message----- > > From: Paolo Valerio <pvalerio@redhat.com> > > Sent: Friday, January 29, 2021 22:20 > > To: Wang, Haiyue <haiyue.wang@intel.com>; Yang, Qiming > > <qiming.yang@intel.com> > > Cc: Guo, Jia <jia.guo@intel.com>; Aaron Conole <aconole@redhat.com>; > > dev@dpdk.org > > Subject: RE: ixgbe and UDP with zero checksum > > > > "Wang, Haiyue" <haiyue.wang@intel.com> writes: > > > > > Hi Paolo, > > > > > >> -----Original Message----- > > >> From: Wang, Haiyue > > >> Sent: Friday, January 29, 2021 10:02 > > >> To: Paolo Valerio <pvalerio@redhat.com> > > >> Cc: Guo, Jia <jia.guo@intel.com>; Aaron Conole > > >> <aconole@redhat.com>; dev@dpdk.org > > >> Subject: RE: ixgbe and UDP with zero checksum > > >> > > >> > -----Original Message----- > > >> > From: Paolo Valerio <pvalerio@redhat.com> > > >> > Sent: Thursday, January 28, 2021 05:35 > > >> > To: Wang, Haiyue <haiyue.wang@intel.com> > > >> > Cc: Guo, Jia <jia.guo@intel.com>; Aaron Conole > > >> > <aconole@redhat.com>; dev@dpdk.org > > >> > Subject: RE: ixgbe and UDP with zero checksum > > >> > > > >> > "Wang, Haiyue" <haiyue.wang@intel.com> writes: > > >> > > > >> > > Hi Paolo, > > >> > > > > >> > >> -----Original Message----- > > >> > >> From: Paolo Valerio <pvalerio@redhat.com> > > >> > >> Sent: Wednesday, January 27, 2021 21:50 > > >> > >> To: dev@dpdk.org > > >> > >> Cc: Guo, Jia <jia.guo@intel.com>; Wang, Haiyue > > >> > >> <haiyue.wang@intel.com>; Aaron Conole <aconole@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: > > >> > > > > > > Sorry, I missed the PKT_RX_L4_CKSUM_BAD information, yes, my NIC > have the issue. > > > > > >> 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 > > > > > > Zero checksum is more popular case, please file a bug on > https://bugs.dpdk.org/ to trace the fix. > > > > > > Thanks for pointing it out. > > > > > > > ack, I'm going to file it. > > > > Thanks, > > Paolo > > > > >> 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 ... > > >> > > >> ^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2021-02-02 9:34 UTC | newest] Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2021-01-27 13:49 [dpdk-dev] ixgbe and UDP with zero checksum Paolo Valerio 2021-01-27 17:26 ` Wang, Haiyue 2021-01-27 18:21 ` Aaron Conole 2021-01-27 21:35 ` Paolo Valerio 2021-01-29 2:02 ` Wang, Haiyue 2021-01-29 2:59 ` Wang, Haiyue 2021-01-29 14:19 ` Paolo Valerio 2021-02-02 7:41 ` Wang, Haiyue 2021-02-02 9:33 ` [dpdk-dev] 回复: " Feifei Wang
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).