x86: be more explicit in __put_user_x.
authorGlauber Costa <gcosta@redhat.com>
Wed, 25 Jun 2008 15:59:37 +0000 (12:59 -0300)
committerIngo Molnar <mingo@elte.hu>
Wed, 9 Jul 2008 07:14:25 +0000 (09:14 +0200)
For both __put_user_x and __put_user_8 macros, pass the error
variable explicitly.

Signed-off-by: Glauber Costa <gcosta@redhat.com>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
include/asm-x86/uaccess_32.h

index ebfe6b23ba57272ce249f676d696490efbe4dee3..2c9067324d2cbbed7d094053c65684fa29f84b94 100644 (file)
@@ -31,11 +31,11 @@ extern void __put_user_2(void);
 extern void __put_user_4(void);
 extern void __put_user_8(void);
 
-#define __put_user_x(size, x, ptr)                             \
+#define __put_user_x(size, x, ptr, __ret_pu)                   \
        asm volatile("call __put_user_" #size : "=a" (__ret_pu) \
                     :"0" ((typeof(*(ptr)))(x)), "c" (ptr) : "ebx")
 
-#define __put_user_8(x, ptr)                                   \
+#define __put_user_8(x, ptr, __ret_pu)                         \
        asm volatile("call __put_user_8" : "=a" (__ret_pu)      \
                     : "A" ((typeof(*(ptr)))(x)), "c" (ptr) : "ebx")
 
@@ -66,19 +66,19 @@ extern void __put_user_8(void);
        __pu_val = x;                                           \
        switch (sizeof(*(ptr))) {                               \
        case 1:                                                 \
-               __put_user_x(1, __pu_val, ptr);                 \
+               __put_user_x(1, __pu_val, ptr, __ret_pu);       \
                break;                                          \
        case 2:                                                 \
-               __put_user_x(2, __pu_val, ptr);                 \
+               __put_user_x(2, __pu_val, ptr, __ret_pu);       \
                break;                                          \
        case 4:                                                 \
-               __put_user_x(4, __pu_val, ptr);                 \
+               __put_user_x(4, __pu_val, ptr, __ret_pu);       \
                break;                                          \
        case 8:                                                 \
-               __put_user_8(__pu_val, ptr);                    \
+               __put_user_8(__pu_val, ptr, __ret_pu);          \
                break;                                          \
        default:                                                \
-               __put_user_x(X, __pu_val, ptr);                 \
+               __put_user_x(X, __pu_val, ptr, __ret_pu);       \
                break;                                          \
        }                                                       \
        __ret_pu;                                               \