lkml.org 
[lkml]   [2008]   [Aug]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] x86: fix ticket spin lock asm constraints
Hi,

All these ticket lock patches look pretty good to me. Thanks for going over
it so thoroughly.

On Fri, Aug 29, 2008 at 12:54:59PM +0100, Jan Beulich wrote:
> In addition to these changes I doubt the 'volatile' on all the ticket
> lock asm()-s are really necessary.
>
> Signed-off-by: Jan Beulich <jbeulich@novell.com>
> Cc: Nick Piggin <npiggin@suse.de>
>
> ---
> include/asm-x86/spinlock.h | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> --- linux-2.6.27-rc5/include/asm-x86/spinlock.h 2008-08-21 14:37:34.000000000 +0200
> +++ 2.6.27-rc5-x86-spinlock-constraints/include/asm-x86/spinlock.h 2008-08-19 12:43:22.000000000 +0200
> @@ -101,7 +101,7 @@ static __always_inline int __ticket_spin
> "1:"
> "sete %b1\n\t"
> "movzbl %b1,%0\n\t"
> - : "=&a" (tmp), "=Q" (new), "+m" (lock->slock)
> + : "=&a" (tmp), "=&Q" (new), "+m" (lock->slock)
> :
> : "memory", "cc");
>
> @@ -146,7 +146,7 @@ static __always_inline void __ticket_spi
> /* don't need lfence here, because loads are in-order */
> "jmp 1b\n"
> "2:"
> - : "+Q" (inc), "+m" (lock->slock), "=r" (tmp)
> + : "+r" (inc), "+m" (lock->slock), "=&r" (tmp)
> :
> : "memory", "cc");
> }
> @@ -166,7 +166,7 @@ static __always_inline int __ticket_spin
> "1:"
> "sete %b1\n\t"
> "movzbl %b1,%0\n\t"
> - : "=&a" (tmp), "=r" (new), "+m" (lock->slock)
> + : "=&a" (tmp), "=&q" (new), "+m" (lock->slock)
> :
> : "memory", "cc");
>
>
>


\
 
 \ /
  Last update: 2008-08-30 07:31    [W:0.067 / U:0.412 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site