diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2017-03-28 01:11:14 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2017-03-28 18:23:28 -0400 |
commit | 86944ee1581f4be6af0126e80877b8069e177739 (patch) | |
tree | 267ed6d11de6e6a7a171650ddfdd15f0c53b4641 | |
parent | dcecd9369e3dcbb5da3ecdc9e0b5021d6ee6f879 (diff) | |
download | linux-stable-86944ee1581f4be6af0126e80877b8069e177739.tar.gz linux-stable-86944ee1581f4be6af0126e80877b8069e177739.tar.bz2 linux-stable-86944ee1581f4be6af0126e80877b8069e177739.zip |
c6x: switch to RAW_COPY_USER
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
-rw-r--r-- | arch/c6x/Kconfig | 1 | ||||
-rw-r--r-- | arch/c6x/include/asm/uaccess.h | 12 |
2 files changed, 7 insertions, 6 deletions
diff --git a/arch/c6x/Kconfig b/arch/c6x/Kconfig index 5aa8ea8bad2d..3c7bd9a29f90 100644 --- a/arch/c6x/Kconfig +++ b/arch/c6x/Kconfig @@ -18,6 +18,7 @@ config C6X select GENERIC_CLOCKEVENTS select MODULES_USE_ELF_RELA select ARCH_NO_COHERENT_DMA_MMAP + select ARCH_HAS_RAW_COPY_USER config MMU def_bool n diff --git a/arch/c6x/include/asm/uaccess.h b/arch/c6x/include/asm/uaccess.h index 174f3bd811b2..ba6756879f00 100644 --- a/arch/c6x/include/asm/uaccess.h +++ b/arch/c6x/include/asm/uaccess.h @@ -14,12 +14,10 @@ #include <linux/string.h> /* - * __copy_from_user/copy_to_user are based on ones in asm-generic/uaccess.h - * * C6X supports unaligned 32 and 64 bit loads and stores. */ -static inline __must_check long __copy_from_user(void *to, - const void __user *from, unsigned long n) +static inline __must_check unsigned long +raw_copy_from_user(void *to, const void __user *from, unsigned long n) { u32 tmp32; u64 tmp64; @@ -54,8 +52,8 @@ static inline __must_check long __copy_from_user(void *to, return 0; } -static inline __must_check long __copy_to_user(void __user *to, - const void *from, unsigned long n) +static inline __must_check unsigned long +raw_copy_to_user(void __user *to, const void *from, unsigned long n) { u32 tmp32; u64 tmp64; @@ -89,6 +87,8 @@ static inline __must_check long __copy_to_user(void __user *to, memcpy((void __force *)to, from, n); return 0; } +#define INLINE_COPY_FROM_USER +#define INLINE_COPY_TO_USER extern int _access_ok(unsigned long addr, unsigned long size); #ifdef CONFIG_ACCESS_CHECK |