[PATCH 4/4] asm-generic: optimize generic uaccess for 8-byte loads and stores

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 64-bit architectures we can also use the direct load/store trick for
8-byte values.

Signed-off-by: Christoph Hellwig <hch@xxxxxx>
---
 include/asm-generic/uaccess.h | 10 ++++++++++
 1 file changed, 10 insertions(+)

diff --git a/include/asm-generic/uaccess.h b/include/asm-generic/uaccess.h
index 3dcabfceb21e..e935318804f8 100644
--- a/include/asm-generic/uaccess.h
+++ b/include/asm-generic/uaccess.h
@@ -24,6 +24,11 @@ raw_copy_from_user(void *to, const void __user * from, unsigned long n)
 		case 4:
 			*(u32 *)to = *(u32 __force *)from;
 			return 0;
+#ifdef CONFIG_64BIT
+		case 8:
+			*(u64 *)to = *(u64 __force *)from;
+			return 0;
+#endif
 		}
 	}
 
@@ -45,6 +50,11 @@ raw_copy_to_user(void __user *to, const void *from, unsigned long n)
 		case 4:
 			*(u32 __force *)to = *(u32 *)from;
 			return 0;
+#ifdef CONFIG_64BIT
+		case 8:
+			*(u64 __force *)to = *(u64 *)from;
+			return 0;
+#endif
 		default:
 			break;
 		}
-- 
2.20.1




[Index of Archives]     [Linux Kernel]     [Kernel Newbies]     [x86 Platform Driver]     [Netdev]     [Linux Wireless]     [Netfilter]     [Bugtraq]     [Linux Filesystems]     [Yosemite Discussion]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Device Mapper]

  Powered by Linux