From: Herbert Xu Date: Mon, 26 Jun 2006 06:55:46 +0000 (-0700) Subject: [NET]: Fix CHECKSUM_HW GSO problems. X-Git-Tag: v2.6.18-rc1~614^2~9 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=0718bcc09b3597c51e87f265c72135a4928d3c0b;p=pandora-kernel.git [NET]: Fix CHECKSUM_HW GSO problems. Fix checksum problems in the GSO code path for CHECKSUM_HW packets. The ipv4 TCP pseudo header checksum has to be adjusted for GSO segmented packets. The adjustment is needed because the length field in the pseudo-header changes. However, because we have the inequality oldlen > newlen, we know that delta = (u16)~oldlen + newlen is still a 16-bit quantity. This also means that htonl(delta) + th->check still fits in 32 bits. Therefore we don't have to use csum_add on this operations. This is based on a patch by Michael Chan . Signed-off-by: Herbert Xu Acked-by: Michael Chan Signed-off-by: David S. Miller --- Reading git-diff-tree failed