lib/checksum.c: fix carry in csum_tcpudp_nofold
authorkarl beldan <karl.beldan@gmail.com>
Wed, 28 Jan 2015 09:58:11 +0000 (10:58 +0100)
committerBen Hutchings <ben@decadent.org.uk>
Fri, 6 Mar 2015 00:39:18 +0000 (00:39 +0000)
commitc544b4bf9ad9f10d48ac0bd720a4c0124a9c6d41
tree496a36b9210786d8e4790ce1a106d5a22cb0ca9d
parent5c8edb8faee3068348fa040c22568f132e3643fa
lib/checksum.c: fix carry in csum_tcpudp_nofold

commit 150ae0e94634714b23919f0c333fee28a5b199d5 upstream.

The carry from the 64->32bits folding was dropped, e.g with:
saddr=0xFFFFFFFF daddr=0xFF0000FF len=0xFFFF proto=0 sum=1,
csum_tcpudp_nofold returned 0 instead of 1.

Signed-off-by: Karl Beldan <karl.beldan@rivierawaves.com>
Cc: Al Viro <viro@ZenIV.linux.org.uk>
Cc: Eric Dumazet <eric.dumazet@gmail.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: netdev@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
lib/checksum.c