]> git.baikalelectronics.ru Git - kernel.git/commit
FRV: ip_fast_csum() requires a memory clobber on its inline asm
authorDavid Howells <dhowells@redhat.com>
Thu, 5 Jun 2008 16:07:35 +0000 (17:07 +0100)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 5 Jun 2008 17:31:21 +0000 (10:31 -0700)
commit26732b49c57b41a99b4f8b6e8cce4ed677322488
treea9d9268d5a517001f2895de9a0a85f7050fbcee8
parent9e1c0f96e5944a53d26cb30c4bdb1f33036c0617
FRV: ip_fast_csum() requires a memory clobber on its inline asm

ip_fast_csum() requires a memory clobber on its inline asm as it accesses
memory in a fashion that gcc can't predict.

The GCC manual says:

 If your assembler instructions access memory in an unpredictable
 fashion, add `memory' to the list of clobbered registers.  This will
 cause GCC to not keep memory values cached in registers across the
 assembler instruction and not optimize stores or loads to that memory.

The bug hasn't been noticed in FRV, but it has been seen in PA-RISC.

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
include/asm-frv/checksum.h