summaryrefslogtreecommitdiffstats
path: root/arch/ia64/include/asm/futex.h
diff options
context:
space:
mode:
authorArnd Bergmann2012-05-02 17:07:03 +0200
committerArnd Bergmann2012-05-02 17:07:03 +0200
commitced62c33fc434b9d44118c9f35803af8088cc3fe (patch)
tree34d1145899e0e5853c4d5b45162f86bbe46941ea /arch/ia64/include/asm/futex.h
parentMerge tag 'arm-imx-cleanup' of git://git.pengutronix.de/git/imx/linux-2.6 int... (diff)
parentARM: mx53: fix pad definitions for MX53_PAD_EIM_D28__I2C1_SDA and MX53_PAD_GP... (diff)
downloadkernel-qcow2-linux-ced62c33fc434b9d44118c9f35803af8088cc3fe.tar.gz
kernel-qcow2-linux-ced62c33fc434b9d44118c9f35803af8088cc3fe.tar.xz
kernel-qcow2-linux-ced62c33fc434b9d44118c9f35803af8088cc3fe.zip
Merge tag 'imx-cleanup' of git://git.pengutronix.de/git/imx/linux-2.6 into next/cleanup
From: Sascha Hauer <s.hauer@pengutronix.de> ARM: i.MX cleanups for 3.5 * tag 'imx-cleanup' of git://git.pengutronix.de/git/imx/linux-2.6: (5 commits) ARM: mx53: fix pad definitions for MX53_PAD_EIM_D28__I2C1_SDA and MX53_PAD_GPIO_8__CAN1_RXCAN ARM: imx/eukrea_mbimx27-baseboard: fix typo in error message ARM: i.MX51 iomux: add missed definitions for SION-bit and mode for some pads arm: imx: add missing select IMX_HAVE_PLATFORM for MACH_MX35_3DS in Kconfig arm: imx: make various struct sys_timer static Includes an update to 3.4-rc4 Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/ia64/include/asm/futex.h')
-rw-r--r--arch/ia64/include/asm/futex.h9
1 files changed, 5 insertions, 4 deletions
diff --git a/arch/ia64/include/asm/futex.h b/arch/ia64/include/asm/futex.h
index 0ab82cc2dc8f..d2bf1fd5e44f 100644
--- a/arch/ia64/include/asm/futex.h
+++ b/arch/ia64/include/asm/futex.h
@@ -106,15 +106,16 @@ futex_atomic_cmpxchg_inatomic(u32 *uval, u32 __user *uaddr,
return -EFAULT;
{
- register unsigned long r8 __asm ("r8") = 0;
+ register unsigned long r8 __asm ("r8");
unsigned long prev;
__asm__ __volatile__(
" mf;; \n"
- " mov ar.ccv=%3;; \n"
- "[1:] cmpxchg4.acq %0=[%1],%2,ar.ccv \n"
+ " mov %0=r0 \n"
+ " mov ar.ccv=%4;; \n"
+ "[1:] cmpxchg4.acq %1=[%2],%3,ar.ccv \n"
" .xdata4 \"__ex_table\", 1b-., 2f-. \n"
"[2:]"
- : "=r" (prev)
+ : "=r" (r8), "=r" (prev)
: "r" (uaddr), "r" (newval),
"rO" ((long) (unsigned) oldval)
: "memory");