From: David Miller [mailto:da...@davemloft.net] Sent: 10 listopada 2016 18:01 To: Rafal Ozieblo Cc: nicolas.fe...@atmel.com; net...@vger.kernel.org; linux-kernel@vger.kernel.org Subject: Re: [PATCH net-next v5]] cadence: Add LSO support.
From: Rafal Ozieblo <raf...@cadence.com> Date: Wed, 9 Nov 2016 13:41:02 +0000 > First, please remove the spurious closing bracket in your Subject line in > future submittions. > >> + if (is_udp) /* is_udp is only set when (is_lso) is checked */ >> + /* zero UDP checksum, not calculated by h/w for UFO */ >> + udp_hdr(skb)->check = 0; > > This is really not ok. > > If UFO is in use it should not silently disable UDP checksums. > > If you cannot support UFO with proper checksumming, then you cannot enable > support for that feature. According Cadence Gigabit Ethernet MAC documentation: "Hardware will not calculate the UDP checksum or modify the UDP checksum field. Therefore software must set a value of zero in the checksum field in the UDP header (in the first payload buffer) to indicate to the receiver that the UDP datagram does not include a checksum." It is hardware requirement.