From 0ada3164031162b4e1b7ff6b36ba8cc80ff7fe96 Mon Sep 17 00:00:00 2001 From: Glauber Costa Date: Tue, 24 Jun 2008 16:44:39 -0300 Subject: x86: pass argument to putuser_64 functions in ax register. This is consistent with i386 usage. Signed-off-by: Glauber Costa Signed-off-by: H. Peter Anvin Signed-off-by: Ingo Molnar diff --git a/arch/x86/lib/putuser_64.S b/arch/x86/lib/putuser_64.S index 0702885..ce5fcd5 100644 --- a/arch/x86/lib/putuser_64.S +++ b/arch/x86/lib/putuser_64.S @@ -37,7 +37,7 @@ ENTRY(__put_user_1) GET_THREAD_INFO(%rbx) cmpq TI_addr_limit(%rbx),%rcx jae bad_put_user -1: movb %dl,(%rcx) +1: movb %al,(%rcx) xorl %eax,%eax ret CFI_ENDPROC @@ -51,7 +51,7 @@ ENTRY(__put_user_2) cmpq TI_addr_limit(%rbx),%rcx jae 20f decq %rcx -2: movw %dx,(%rcx) +2: movw %ax,(%rcx) xorl %eax,%eax ret 20: decq %rcx @@ -67,7 +67,7 @@ ENTRY(__put_user_4) cmpq TI_addr_limit(%rbx),%rcx jae 30f subq $3,%rcx -3: movl %edx,(%rcx) +3: movl %eax,(%rcx) xorl %eax,%eax ret 30: subq $3,%rcx @@ -83,7 +83,7 @@ ENTRY(__put_user_8) cmpq TI_addr_limit(%rbx),%rcx jae 40f subq $7,%rcx -4: movq %rdx,(%rcx) +4: movq %rax,(%rcx) xorl %eax,%eax ret 40: subq $7,%rcx diff --git a/include/asm-x86/uaccess_64.h b/include/asm-x86/uaccess_64.h index 21fda9e..f822a36 100644 --- a/include/asm-x86/uaccess_64.h +++ b/include/asm-x86/uaccess_64.h @@ -130,7 +130,7 @@ extern void __put_user_bad(void); #define __put_user_x(size, ret, x, ptr) \ asm volatile("call __put_user_" #size \ :"=a" (ret) \ - :"c" (ptr),"d" (x) \ + :"c" (ptr),"a" (x) \ :"ebx") #define put_user(x, ptr) \ -- cgit v0.10.2