From: David Marchand <david.marchand@redhat.com> To: Haiyue Wang <haiyue.wang@intel.com> Cc: dev <dev@dpdk.org>, pvalerio@redhat.com, Aaron Conole <aconole@redhat.com>, Qi Zhang <qi.z.zhang@intel.com>, Leyi Rong <leyi.rong@intel.com>, "Tu, Lijuan" <Lijuan.Tu@intel.com>, dpdk stable <stable@dpdk.org>, Jeff Guo <jia.guo@intel.com>, Bruce Richardson <bruce.richardson@intel.com>, Konstantin Ananyev <konstantin.ananyev@intel.com>, Jerin Jacob Kollanukkaran <jerinj@marvell.com>, "Ruifeng Wang (Arm Technology China)" <ruifeng.wang@arm.com> Subject: Re: [dpdk-stable] [PATCH v1] net/ixgbe: adjust error for UDP with zero checksum Date: Tue, 2 Feb 2021 10:45:21 +0100 Message-ID: <CAJFAV8zG0kOCZdFkmfYNVOR6ryLqetmA3dWZjA516o7acGMG2g@mail.gmail.com> (raw) In-Reply-To: <20210202070652.145861-1-haiyue.wang@intel.com> Hello Haiyue, Thanks for working on it quickly. Cc: ARM maintainers. On Tue, Feb 2, 2021 at 8:23 AM Haiyue Wang <haiyue.wang@intel.com> wrote: > > There is an 82599 errata that UDP frames with a zero checksum are > incorrectly marked as checksum invalid by the hardware. This was Maybe add a reference to the 82599 hw errata, is this listed in the datasheet? > leading to misleading PKT_RX_L4_CKSUM_BAD flag. This patch adds a > test around this checksum error flag set for this condition. > > 1. UDP Test > sendp(Ether()/IP()/UDP(chksum=0)/Raw("a"*100), iface="ens802f0") > port 0/queue 0: received 1 packets > ol_flags: PKT_RX_L4_CKSUM_GOOD PKT_RX_IP_CKSUM_GOOD > > 2. TCP Test > sendp(Ether()/IP()/TCP(chksum=0)/Raw("a"*100), iface="ens802f0") > port 0/queue 0: received 1 packets > ol_flags: PKT_RX_L4_CKSUM_BAD PKT_RX_IP_CKSUM_GOOD > > Bugzilla ID: 629 The problem has always been present, so I would flag: Fixes: af75078fece3 ("first public release") > Cc: stable@dpdk.org > Reported-by: Paolo Valerio <pvalerio@redhat.com> > Signed-off-by: Haiyue Wang <haiyue.wang@intel.com> > --- > doc/guides/nics/ixgbe.rst | 6 ++++ > drivers/net/ixgbe/ixgbe_rxtx.c | 27 +++++++++++--- > drivers/net/ixgbe/ixgbe_rxtx.h | 2 ++ > drivers/net/ixgbe/ixgbe_rxtx_vec_sse.c | 49 ++++++++++++++++++++------ > 4 files changed, 70 insertions(+), 14 deletions(-) > > diff --git a/doc/guides/nics/ixgbe.rst b/doc/guides/nics/ixgbe.rst > index 696cbd93b..de210b7b8 100644 > --- a/doc/guides/nics/ixgbe.rst > +++ b/doc/guides/nics/ixgbe.rst > @@ -287,6 +287,12 @@ the VFs which are required.:: > Currently hot-plugging of representor ports is not supported so all required > representors must be specified on the creation of the PF. > > +Limitations or Known issues > +--------------------------- > +The 82599 hardware errata: UDP frames with a zero checksum can be marked as > +checksum errors. To support zero checksum, the UDP checksum is always marked > +as good. > + 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. -- David Marchand
next prev parent reply other threads:[~2021-02-02 9:45 UTC|newest] Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-02-02 7:06 Haiyue Wang 2021-02-02 9:45 ` David Marchand [this message] 2021-02-02 12:42 ` Wang, Haiyue 2021-02-02 12:53 ` David Marchand 2021-02-02 12:56 ` Wang, Haiyue 2021-02-02 14:28 ` Wang, Haiyue 2021-02-02 17:42 ` Paolo Valerio 2021-02-02 12:54 ` Wang, Haiyue 2021-02-03 2:19 ` [dpdk-stable] [PATCH v2] net/ixgbe: fix UDP zero checksum error Haiyue Wang 2021-02-03 8:07 ` Zhang, Qi Z 2021-02-03 8:32 ` David Marchand 2021-02-04 7:45 ` Zhang, Qi Z 2021-02-04 14:39 ` [dpdk-stable] [PATCH v3] " Haiyue Wang 2021-02-05 17:50 ` Paolo Valerio 2021-02-07 18:40 ` Paolo Valerio 2021-02-08 13:48 ` Ananyev, Konstantin 2021-02-09 1:23 ` Zhang, Qi Z 2021-02-25 10:54 ` David Marchand 2021-04-07 11:53 ` David Marchand 2021-04-08 1:12 ` Wang, Haiyue
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=CAJFAV8zG0kOCZdFkmfYNVOR6ryLqetmA3dWZjA516o7acGMG2g@mail.gmail.com \ --to=david.marchand@redhat.com \ --cc=Lijuan.Tu@intel.com \ --cc=aconole@redhat.com \ --cc=bruce.richardson@intel.com \ --cc=dev@dpdk.org \ --cc=haiyue.wang@intel.com \ --cc=jerinj@marvell.com \ --cc=jia.guo@intel.com \ --cc=konstantin.ananyev@intel.com \ --cc=leyi.rong@intel.com \ --cc=pvalerio@redhat.com \ --cc=qi.z.zhang@intel.com \ --cc=ruifeng.wang@arm.com \ --cc=stable@dpdk.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
patches for DPDK stable branches This inbox may be cloned and mirrored by anyone: git clone --mirror https://inbox.dpdk.org/stable/0 stable/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 stable stable/ https://inbox.dpdk.org/stable \ stable@dpdk.org public-inbox-index stable Example config snippet for mirrors. Newsgroup available over NNTP: nntp://inbox.dpdk.org/inbox.dpdk.stable AGPL code for this site: git clone https://public-inbox.org/public-inbox.git