[patch v3 36/36] Add extra arch overrides to asm-generic/checksum.h

From: Richard Kuo
Date: Thu Sep 08 2011 - 21:12:16 EST


There are plausible reasons for architectures to provide their own
versions of csum_partial_copy_nocheck and csum_tcpudp_magic.
By protecting these, the architecture can still re-use the
asm-generic checksum.h, instead of copying it.

Signed-off-by: Linas Vepstas <linas@xxxxxxxxxxxxxx>
Acked-by: Arnd Bergmann <arnd@xxxxxxxx>

---
include/asm-generic/checksum.h | 4 ++++
1 file changed, 4 insertions(+)

Index: linux-hexagon-kernel/include/asm-generic/checksum.h
===================================================================
--- linux-hexagon-kernel.orig/include/asm-generic/checksum.h 2011-09-03 20:14:46.214943511 -0500
+++ linux-hexagon-kernel/include/asm-generic/checksum.h 2011-09-03 20:14:59.874981811 -0500
@@ -33,8 +33,10 @@
extern __wsum csum_partial_copy_from_user(const void __user *src, void *dst,
int len, __wsum sum, int *csum_err);

+#ifndef csum_partial_copy_nocheck
#define csum_partial_copy_nocheck(src, dst, len, sum) \
csum_partial_copy((src), (dst), (len), (sum))
+#endif

/*
* This is a version of ip_compute_csum() optimized for IP headers,
@@ -63,12 +65,14 @@
unsigned short proto, __wsum sum);
#endif

+#ifndef csum_tcpudp_magic
static inline __sum16
csum_tcpudp_magic(__be32 saddr, __be32 daddr, unsigned short len,
unsigned short proto, __wsum sum)
{
return csum_fold(csum_tcpudp_nofold(saddr, daddr, len, proto, sum));
}
+#endif

/*
* this routine is used for miscellaneous IP-like checksums, mainly

--

Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/