Re: [PATCH,TRIVIAL] Fix csum_ipv6_magic asm memory clobber

From: Andrew Morton
Date: Wed Sep 30 2009 - 18:42:19 EST


On Sat, 26 Sep 2009 21:27:48 +0200
Samuel Thibault <samuel.thibault@xxxxxxxxxxxx> wrote:

> 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@xxxxxxxxxxxx>
> Cc: stable@xxxxxxxxxx
>
> 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);
> }

You describe it as "trivial" and also cc stable@xxxxxxxxxxx These things
are contradictory!

Maybe backporting it is a good idea from a sleep-soundly-at-night POV.
I don't know..

--
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/