>From 252450d28ffc8fbfd5b332d0b97990ae12a207d9 Mon Sep 17 00:00:00 2001 From: Juergen Gross Date: Wed, 5 Sep 2018 11:32:26 +0200 Subject: [PATCH] x86: correct inline asm constraints in __cmpxchg_double() Specifying "=a" for output constraints and "a" for input seems to be wrong. Instead "0" should be used for the input constraint. Fixes: cdcd629869fab ("x86: Fix and improve cmpxchg_double{,_local}()") Cc: stable@vger.kernel.org Signed-off-by: Juergen Gross --- arch/x86/include/asm/cmpxchg.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/x86/include/asm/cmpxchg.h b/arch/x86/include/asm/cmpxchg.h index a55d79b233d3..b3b4d61a8969 100644 --- a/arch/x86/include/asm/cmpxchg.h +++ b/arch/x86/include/asm/cmpxchg.h @@ -245,7 +245,7 @@ extern void __add_wrong_size(void) asm volatile(pfx "cmpxchg%c4b %2; sete %0" \ : "=a" (__ret), "+d" (__old2), \ "+m" (*(p1)), "+m" (*(p2)) \ - : "i" (2 * sizeof(long)), "a" (__old1), \ + : "i" (2 * sizeof(long)), "0" (__old1), \ "b" (__new1), "c" (__new2)); \ __ret; \ }) -- 2.16.4