"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

Reply via email to