From: Kyle McMartin Date: Mon, 8 Dec 2008 05:15:51 +0000 (+0000) Subject: parisc: fix ipv6 checksum X-Git-Tag: v2.6.29-rc1~38^2~4 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=5fbf6635a951a75870be9874580c55da538fb025;p=linux-2.6-omap-h63xx.git parisc: fix ipv6 checksum ipv6 recently started exhibiting the same symptoms as ipv4 was, add a memory clobber around inline checksum assembly that fribbles memory to ensure gcc doesn't erroneously cache across it. Signed-off-by: Kyle McMartin --- diff --git a/arch/parisc/include/asm/checksum.h b/arch/parisc/include/asm/checksum.h index e9639ccc3fc..c84b2fcb18a 100644 --- a/arch/parisc/include/asm/checksum.h +++ b/arch/parisc/include/asm/checksum.h @@ -182,7 +182,7 @@ static __inline__ __sum16 csum_ipv6_magic(const struct in6_addr *saddr, #endif : "=r" (sum), "=r" (saddr), "=r" (daddr), "=r" (len) : "0" (sum), "1" (saddr), "2" (daddr), "3" (len), "r" (proto) - : "r19", "r20", "r21", "r22"); + : "r19", "r20", "r21", "r22", "memory"); return csum_fold(sum); }