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)
committerZefan Li <lizefan@huawei.com>
Tue, 14 Apr 2015 09:33:59 +0000 (17:33 +0800)
commitbd3ccdba19b80e736b7844b6800fa9836fbca5af
tree7e6bc3f5f8c579f099c204ee34d6c8ab4516dac5
parent574b59db6504ed3867c2f566f167f764e97ee402
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: Zefan Li <lizefan@huawei.com>
lib/checksum.c