On Wed, Jun 20, 2018 at 7:31 AM David Miller <da...@davemloft.net> wrote: > > From: Eric Dumazet <eduma...@google.com> > Date: Tue, 19 Jun 2018 19:18:50 -0700 > > > After commit 88078d98d1bb ("net: pskb_trim_rcsum() and CHECKSUM_COMPLETE > > are friends"), sungem owners reported the infamous "eth0: hw csum failure" > > message. > > > > CHECKSUM_COMPLETE has in fact never worked for this driver, but this > > was masked by the fact that upper stacks had to strip the FCS, and > > therefore skb->ip_summed was set back to CHECKSUM_NONE before > > my recent change. > > > > Driver configures a number of bytes to skip when the chip computes > > the checksum, and for some reason only half of the Ethernet header > > was skipped. > > > > Then a second problem is that we should strip the FCS by default, > > unless the driver is updated to eventually support NETIF_F_RXFCS in > > the future. > > > > Finally, a driver should check if NETIF_F_RXCSUM feature is enabled > > or not, so that the admin can turn off rx checksum if wanted. > > > > Many thanks to Andreas Schwab and Mathieu Malaterre for their > > help in debugging this issue. > > > > Signed-off-by: Eric Dumazet <eduma...@google.com> > > Reported-by: Meelis Roos <mr...@linux.ee> > > Reported-by: Mathieu Malaterre <ma...@debian.org> > > Reported-by: Andreas Schwab <sch...@linux-m68k.org> > > Tested-by: Andreas Schwab <sch...@linux-m68k.org> > > Applied and queued up for -stable, thanks Eric.
Thanks for the stable tag. IMHO the commit message should have also reference commit 7ce5a27f2ef8 ("Revert "net: Handle CHECKSUM_COMPLETE more adequately in pskb_trim_rcsum().""). Which means that commit 88078d98d1bb ("net: pskb_trim_rcsum() and CHECKSUM_COMPLETE are friends") should be ready for stable also, since it seems that the only driver responsible for the revert was sungem. my 2cts