From: Richard Purdie Date: Wed, 1 Feb 2006 19:26:00 +0000 (+0000) Subject: [ARM] 3292/1: Fix memory corruption in asm-arm/checksum.h: ip_fast_csum() X-Git-Tag: v2.6.16-rc3~208^2~6 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=62500d1f8eadff078cca462dc4df035a29180383;p=~emulex%2Finfiniband.git [ARM] 3292/1: Fix memory corruption in asm-arm/checksum.h: ip_fast_csum() Patch from Richard Purdie ip_fast_csum() accesses memory via a pointer (iph) within an asm function. To prevent memory corruption when the function is inlined, it needs "memory" on the clobber list. This fixes ip checksum errors reported by a Zaurus user. Signed-off-by: Richard Purdie Signed-off-by: Russell King --- diff --git a/include/asm-arm/checksum.h b/include/asm-arm/checksum.h index d4256d5f3a7..747bdd31a74 100644 --- a/include/asm-arm/checksum.h +++ b/include/asm-arm/checksum.h @@ -77,7 +77,7 @@ ip_fast_csum(unsigned char * iph, unsigned int ihl) mov %0, %0, lsr #16" : "=r" (sum), "=r" (iph), "=r" (ihl), "=r" (tmp1) : "1" (iph), "2" (ihl) - : "cc"); + : "cc", "memory"); return sum; }