"Wang, Haiyue" <haiyue.w...@intel.com> writes: >> -----Original Message----- >> From: Wang, Haiyue >> Sent: Tuesday, February 2, 2021 20:57 >> To: David Marchand <david.march...@redhat.com> >> Cc: dev <dev@dpdk.org>; pvale...@redhat.com; Aaron Conole >> <acon...@redhat.com>; Zhang, Qi Z >> <qi.z.zh...@intel.com>; Rong, Leyi <leyi.r...@intel.com>; Tu, Lijuan >> <lijuan...@intel.com>; dpdk >> stable <sta...@dpdk.org>; Guo, Jia <jia....@intel.com>; Richardson, Bruce >> <bruce.richard...@intel.com>; >> Ananyev, Konstantin <konstantin.anan...@intel.com>; Jerin Jacob >> Kollanukkaran <jer...@marvell.com>; >> Ruifeng Wang (Arm Technology China) <ruifeng.w...@arm.com> >> Subject: RE: [PATCH v1] net/ixgbe: adjust error for UDP with zero checksum >> >> > -----Original Message----- >> > From: David Marchand <david.march...@redhat.com> >> > Sent: Tuesday, February 2, 2021 20:54 >> > To: Wang, Haiyue <haiyue.w...@intel.com> >> > Cc: dev <dev@dpdk.org>; pvale...@redhat.com; Aaron Conole >> > <acon...@redhat.com>; Zhang, Qi Z >> > <qi.z.zh...@intel.com>; Rong, Leyi <leyi.r...@intel.com>; Tu, Lijuan >> > <lijuan...@intel.com>; dpdk >> > stable <sta...@dpdk.org>; Guo, Jia <jia....@intel.com>; Richardson, Bruce >> <bruce.richard...@intel.com>; >> > Ananyev, Konstantin <konstantin.anan...@intel.com>; Jerin Jacob >> > Kollanukkaran <jer...@marvell.com>; >> > Ruifeng Wang (Arm Technology China) <ruifeng.w...@arm.com> >> > Subject: Re: [PATCH v1] net/ixgbe: adjust error for UDP with zero checksum >> > >> > On Tue, Feb 2, 2021 at 1:42 PM Wang, Haiyue <haiyue.w...@intel.com> wrote: >> > > > If the driver/hw can't report a valid checksum hint, it should >> > > > announce it does not know if the checksum is valid (neither bad, nor >> > > > good). >> > > > >> > > > So the workaround for udp packets (on this hw model) would be to >> > > > report PKT_RX_L4_CKSUM_UNKNOWN. >> > > > The sw application will then have to recompute the checksum itself if >> > > > needed. >> > > > >> > > >> > > Make sense, but not sure the vector path can handle this more easily. >> > > Will try. >> > >> > Refining this a bit. >> > It looks like hw correctly reports "good" checksums, so maybe instead >> > report PKT_RX_L4_CKSUM_UNKNOWN only for reports of "bad" checksums >> > from the hw? >> >> I guess Paolo will complain about the performance drop for zero checksum >> UDP. ;-) >>
:) > > Deep into OVS for detail, 'PKT_RX_L4_CKSUM_UNKNOWN' is a graceful way. ;-) > Will work for this target. yes, validation gets skipped in such case. I'll be happy to test it once posted. > > /* Validation must be skipped if checksum is 0 on IPv4 packets */ > return (udp->udp_csum == 0 && key->dl_type == htons(ETH_TYPE_IP)) > || (validate_checksum ? checksum_valid(key, data, size, l3) : > true); > >> > >> > -- >> > David Marchand