瀏覽代碼

x86: uaccess_64: fix return value in __copy_from_user()

__copy_from_user() will return invalid value 16 when it fails to
access user space and the size is 10.

Signed-off-by: Hiroshi Shimamoto <h-shimamoto@ct.jp.nec.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Hiroshi Shimamoto 16 年之前
父節點
當前提交
20a4a236c7
共有 1 個文件被更改,包括 1 次插入1 次删除
  1. 1 1
      arch/x86/include/asm/uaccess_64.h

+ 1 - 1
arch/x86/include/asm/uaccess_64.h

@@ -46,7 +46,7 @@ int __copy_from_user(void *dst, const void __user *src, unsigned size)
 		return ret;
 		return ret;
 	case 10:
 	case 10:
 		__get_user_asm(*(u64 *)dst, (u64 __user *)src,
 		__get_user_asm(*(u64 *)dst, (u64 __user *)src,
-			       ret, "q", "", "=r", 16);
+			       ret, "q", "", "=r", 10);
 		if (unlikely(ret))
 		if (unlikely(ret))
 			return ret;
 			return ret;
 		__get_user_asm(*(u16 *)(8 + (char *)dst),
 		__get_user_asm(*(u16 *)(8 + (char *)dst),