Re: [Ltt-dev] [PATCH 10/10] local_t : x86_64 : local_add_return
Mathieu Desnoyers <[email protected]>
| Newsgroups | gmane.linux.systemtap,gmane.linux.kernel,gmane.linux.kernel.tracing |
|---|---|
| Message-ID | <20061221194652.GC25249@Krystal> |
local_add_return should also deal with the removed volatile from local_t. Inspired from atomic_t modifications : it must use the local_t both as input and output. Signed-off-by: Mathieu Desnoyers <[email protected]> --- a/include/asm-x86_64/local.h +++ b/include/asm-x86_64/local.h @@ -136,8 +136,8 @@ static __inline__ long local_add_return( long __i = i; __asm__ __volatile__( "xaddq %0, %1;" - :"=r"(i) - :"m"(l->a.counter), "0"(i)); + :"+r" (i), "+m" (l->a.counter) + : : "memory"); return i + __i; } -- OpenPGP public key: http://krystal.dyndns.org:8080/key/compudj.gpg Key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68