Loading arch/um/Kconfig.common +1 −0 Original line number Diff line number Diff line Loading @@ -13,6 +13,7 @@ config UML select GENERIC_CLOCKEVENTS select HAVE_GCC_PLUGINS select TTY # Needed for line.c select ARCH_HAS_RAW_COPY_USER config MMU bool Loading arch/um/include/asm/uaccess.h +4 −4 Original line number Diff line number Diff line Loading @@ -21,8 +21,8 @@ #define __addr_range_nowrap(addr, size) \ ((unsigned long) (addr) <= ((unsigned long) (addr) + (size))) extern long __copy_from_user(void *to, const void __user *from, unsigned long n); extern long __copy_to_user(void __user *to, const void *from, unsigned long n); extern unsigned long raw_copy_from_user(void *to, const void __user *from, unsigned long n); extern unsigned long raw_copy_to_user(void __user *to, const void *from, unsigned long n); extern long __strncpy_from_user(char *dst, const char __user *src, long count); extern long __strnlen_user(const void __user *str, long len); extern unsigned long __clear_user(void __user *mem, unsigned long len); Loading @@ -33,8 +33,8 @@ static inline int __access_ok(unsigned long addr, unsigned long size); #define __clear_user __clear_user #define __strnlen_user __strnlen_user #define __strncpy_from_user __strncpy_from_user #define __copy_to_user_inatomic __copy_to_user #define __copy_from_user_inatomic __copy_from_user #define INLINE_COPY_FROM_USER #define INLINE_COPY_TO_USER #include <asm-generic/uaccess.h> Loading arch/um/kernel/skas/uaccess.c +4 −4 Original line number Diff line number Diff line Loading @@ -139,7 +139,7 @@ static int copy_chunk_from_user(unsigned long from, int len, void *arg) return 0; } long __copy_from_user(void *to, const void __user *from, unsigned long n) unsigned long raw_copy_from_user(void *to, const void __user *from, unsigned long n) { if (uaccess_kernel()) { memcpy(to, (__force void*)from, n); Loading @@ -148,7 +148,7 @@ long __copy_from_user(void *to, const void __user *from, unsigned long n) return buffer_op((unsigned long) from, n, 0, copy_chunk_from_user, &to); } EXPORT_SYMBOL(__copy_from_user); EXPORT_SYMBOL(raw_copy_from_user); static int copy_chunk_to_user(unsigned long to, int len, void *arg) { Loading @@ -159,7 +159,7 @@ static int copy_chunk_to_user(unsigned long to, int len, void *arg) return 0; } long __copy_to_user(void __user *to, const void *from, unsigned long n) unsigned long raw_copy_to_user(void __user *to, const void *from, unsigned long n) { if (uaccess_kernel()) { memcpy((__force void *) to, from, n); Loading @@ -168,7 +168,7 @@ long __copy_to_user(void __user *to, const void *from, unsigned long n) return buffer_op((unsigned long) to, n, 1, copy_chunk_to_user, &from); } EXPORT_SYMBOL(__copy_to_user); EXPORT_SYMBOL(raw_copy_to_user); static int strncpy_chunk_from_user(unsigned long from, int len, void *arg) { Loading Loading
arch/um/Kconfig.common +1 −0 Original line number Diff line number Diff line Loading @@ -13,6 +13,7 @@ config UML select GENERIC_CLOCKEVENTS select HAVE_GCC_PLUGINS select TTY # Needed for line.c select ARCH_HAS_RAW_COPY_USER config MMU bool Loading
arch/um/include/asm/uaccess.h +4 −4 Original line number Diff line number Diff line Loading @@ -21,8 +21,8 @@ #define __addr_range_nowrap(addr, size) \ ((unsigned long) (addr) <= ((unsigned long) (addr) + (size))) extern long __copy_from_user(void *to, const void __user *from, unsigned long n); extern long __copy_to_user(void __user *to, const void *from, unsigned long n); extern unsigned long raw_copy_from_user(void *to, const void __user *from, unsigned long n); extern unsigned long raw_copy_to_user(void __user *to, const void *from, unsigned long n); extern long __strncpy_from_user(char *dst, const char __user *src, long count); extern long __strnlen_user(const void __user *str, long len); extern unsigned long __clear_user(void __user *mem, unsigned long len); Loading @@ -33,8 +33,8 @@ static inline int __access_ok(unsigned long addr, unsigned long size); #define __clear_user __clear_user #define __strnlen_user __strnlen_user #define __strncpy_from_user __strncpy_from_user #define __copy_to_user_inatomic __copy_to_user #define __copy_from_user_inatomic __copy_from_user #define INLINE_COPY_FROM_USER #define INLINE_COPY_TO_USER #include <asm-generic/uaccess.h> Loading
arch/um/kernel/skas/uaccess.c +4 −4 Original line number Diff line number Diff line Loading @@ -139,7 +139,7 @@ static int copy_chunk_from_user(unsigned long from, int len, void *arg) return 0; } long __copy_from_user(void *to, const void __user *from, unsigned long n) unsigned long raw_copy_from_user(void *to, const void __user *from, unsigned long n) { if (uaccess_kernel()) { memcpy(to, (__force void*)from, n); Loading @@ -148,7 +148,7 @@ long __copy_from_user(void *to, const void __user *from, unsigned long n) return buffer_op((unsigned long) from, n, 0, copy_chunk_from_user, &to); } EXPORT_SYMBOL(__copy_from_user); EXPORT_SYMBOL(raw_copy_from_user); static int copy_chunk_to_user(unsigned long to, int len, void *arg) { Loading @@ -159,7 +159,7 @@ static int copy_chunk_to_user(unsigned long to, int len, void *arg) return 0; } long __copy_to_user(void __user *to, const void *from, unsigned long n) unsigned long raw_copy_to_user(void __user *to, const void *from, unsigned long n) { if (uaccess_kernel()) { memcpy((__force void *) to, from, n); Loading @@ -168,7 +168,7 @@ long __copy_to_user(void __user *to, const void *from, unsigned long n) return buffer_op((unsigned long) to, n, 1, copy_chunk_to_user, &from); } EXPORT_SYMBOL(__copy_to_user); EXPORT_SYMBOL(raw_copy_to_user); static int strncpy_chunk_from_user(unsigned long from, int len, void *arg) { Loading