summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkarl beldan <karl.beldan@gmail.com>2015-01-29 11:10:22 +0100
committerChanho Park <chanho61.park@samsung.com>2015-12-22 13:44:41 +0900
commita6c42246e38e5772b076f1e745b3dc73b8516e03 (patch)
treed9a0a0ca282fe485ef049aa181ceaeec578b598a
parent16877c097967209d5823d1d444dd2164f32b812d (diff)
downloadlinux-3.10-artik-a6c42246e38e5772b076f1e745b3dc73b8516e03.tar.gz
linux-3.10-artik-a6c42246e38e5772b076f1e745b3dc73b8516e03.tar.bz2
linux-3.10-artik-a6c42246e38e5772b076f1e745b3dc73b8516e03.zip
lib/checksum.c: fix build for generic csum_tcpudp_nofold
commit 9ce357795ef208faa0d59894d9d119a7434e37f3 upstream. Fixed commit added from64to32 under _#ifndef do_csum_ but used it under _#ifndef csum_tcpudp_nofold_, breaking some builds (Fengguang's robot reported TILEGX's). Move from64to32 under the latter. Fixes: 150ae0e94634 ("lib/checksum.c: fix carry in csum_tcpudp_nofold") Reported-by: kbuild test robot <fengguang.wu@intel.com> Signed-off-by: Karl Beldan <karl.beldan@rivierawaves.com> Cc: Eric Dumazet <edumazet@google.com> Cc: David S. Miller <davem@davemloft.net> Signed-off-by: David S. Miller <davem@davemloft.net> Cc: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--lib/checksum.c18
1 files changed, 9 insertions, 9 deletions
diff --git a/lib/checksum.c b/lib/checksum.c
index fcf38943132..8b39e86dbab 100644
--- a/lib/checksum.c
+++ b/lib/checksum.c
@@ -47,15 +47,6 @@ static inline unsigned short from32to16(unsigned int x)
return x;
}
-static inline u32 from64to32(u64 x)
-{
- /* add up 32-bit and 32-bit for 32+c bit */
- x = (x & 0xffffffff) + (x >> 32);
- /* add up carry.. */
- x = (x & 0xffffffff) + (x >> 32);
- return (u32)x;
-}
-
static unsigned int do_csum(const unsigned char *buff, int len)
{
int odd;
@@ -190,6 +181,15 @@ csum_partial_copy(const void *src, void *dst, int len, __wsum sum)
EXPORT_SYMBOL(csum_partial_copy);
#ifndef csum_tcpudp_nofold
+static inline u32 from64to32(u64 x)
+{
+ /* add up 32-bit and 32-bit for 32+c bit */
+ x = (x & 0xffffffff) + (x >> 32);
+ /* add up carry.. */
+ x = (x & 0xffffffff) + (x >> 32);
+ return (u32)x;
+}
+
__wsum csum_tcpudp_nofold(__be32 saddr, __be32 daddr,
unsigned short len,
unsigned short proto,