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.