Messages in this thread Patch in this message | | | Date | Sat, 26 Sep 2009 21:27:48 +0200 | From | Samuel Thibault <> | Subject | [PATCH,TRIVIAL] Fix csum_ipv6_magic asm memory clobber |
| |
Just like ip_fast_csum, the assembly snippet in csum_ipv6_magic needs a memory clobber, as it is only passed the address of the buffer, not a memory reference to the buffer itself.
Signed-Off-By: Samuel Thibault <samuel.thibault@ens-lyon.org> Cc: stable@kernel.org
diff --git a/arch/x86/include/asm/checksum_32.h b/arch/x86/include/asm/checksum_32.h index 7c5ef8b..46fc474 100644 --- a/arch/x86/include/asm/checksum_32.h +++ b/arch/x86/include/asm/checksum_32.h @@ -161,7 +161,8 @@ static inline __sum16 csum_ipv6_magic(const struct in6_addr *saddr, "adcl $0, %0 ;\n" : "=&r" (sum) : "r" (saddr), "r" (daddr), - "r" (htonl(len)), "r" (htonl(proto)), "0" (sum)); + "r" (htonl(len)), "r" (htonl(proto)), "0" (sum) + : "memory"); return csum_fold(sum); }
| |