Loading arch/unicore32/Kconfig +1 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ config UNICORE32 select ARCH_WANT_FRAME_POINTERS select GENERIC_IOMAP select MODULES_USE_ELF_REL select ARCH_HAS_RAW_COPY_USER help UniCore-32 is 32-bit Instruction Set Architecture, including a series of low-power-consumption RISC chip Loading arch/unicore32/include/asm/uaccess.h +4 −2 Original line number Diff line number Diff line Loading @@ -24,15 +24,17 @@ #define __access_ok(addr, size) (__kernel_ok || __user_ok((addr), (size))) extern unsigned long __must_check __copy_from_user(void *to, const void __user *from, unsigned long n); raw_copy_from_user(void *to, const void __user *from, unsigned long n); extern unsigned long __must_check __copy_to_user(void __user *to, const void *from, unsigned long n); raw_copy_to_user(void __user *to, const void *from, unsigned long n); extern unsigned long __must_check __clear_user(void __user *addr, unsigned long n); extern unsigned long __must_check __strncpy_from_user(char *to, const char __user *from, unsigned long count); extern unsigned long __strnlen_user(const char __user *s, long n); #define INLINE_COPY_FROM_USER #define INLINE_COPY_TO_USER #include <asm-generic/uaccess.h> Loading arch/unicore32/kernel/ksyms.c +2 −2 Original line number Diff line number Diff line Loading @@ -46,8 +46,8 @@ EXPORT_SYMBOL(__strncpy_from_user); EXPORT_SYMBOL(copy_page); EXPORT_SYMBOL(__copy_from_user); EXPORT_SYMBOL(__copy_to_user); EXPORT_SYMBOL(raw_copy_from_user); EXPORT_SYMBOL(raw_copy_to_user); EXPORT_SYMBOL(__clear_user); EXPORT_SYMBOL(__ashldi3); Loading arch/unicore32/lib/copy_from_user.S +6 −10 Original line number Diff line number Diff line Loading @@ -16,7 +16,7 @@ /* * Prototype: * * size_t __copy_from_user(void *to, const void *from, size_t n) * size_t raw_copy_from_user(void *to, const void *from, size_t n) * * Purpose: * Loading Loading @@ -87,22 +87,18 @@ .text ENTRY(__copy_from_user) ENTRY(raw_copy_from_user) #include "copy_template.S" ENDPROC(__copy_from_user) ENDPROC(raw_copy_from_user) .pushsection .fixup,"ax" .align 0 copy_abort_preamble ldm.w (r1, r2), [sp]+ sub r3, r0, r1 rsub r2, r3, r2 stw r2, [sp] mov r1, #0 b.l memset ldw.w r0, [sp]+, #4 ldm.w (r1, r2, r3), [sp]+ sub r0, r0, r1 rsub r0, r0, r2 copy_abort_end .popsection arch/unicore32/lib/copy_to_user.S +3 −3 Original line number Diff line number Diff line Loading @@ -16,7 +16,7 @@ /* * Prototype: * * size_t __copy_to_user(void *to, const void *from, size_t n) * size_t raw_copy_to_user(void *to, const void *from, size_t n) * * Purpose: * Loading Loading @@ -79,11 +79,11 @@ .text WEAK(__copy_to_user) WEAK(raw_copy_to_user) #include "copy_template.S" ENDPROC(__copy_to_user) ENDPROC(raw_copy_to_user) .pushsection .fixup,"ax" .align 0 Loading Loading
arch/unicore32/Kconfig +1 −0 Original line number Diff line number Diff line Loading @@ -18,6 +18,7 @@ config UNICORE32 select ARCH_WANT_FRAME_POINTERS select GENERIC_IOMAP select MODULES_USE_ELF_REL select ARCH_HAS_RAW_COPY_USER help UniCore-32 is 32-bit Instruction Set Architecture, including a series of low-power-consumption RISC chip Loading
arch/unicore32/include/asm/uaccess.h +4 −2 Original line number Diff line number Diff line Loading @@ -24,15 +24,17 @@ #define __access_ok(addr, size) (__kernel_ok || __user_ok((addr), (size))) extern unsigned long __must_check __copy_from_user(void *to, const void __user *from, unsigned long n); raw_copy_from_user(void *to, const void __user *from, unsigned long n); extern unsigned long __must_check __copy_to_user(void __user *to, const void *from, unsigned long n); raw_copy_to_user(void __user *to, const void *from, unsigned long n); extern unsigned long __must_check __clear_user(void __user *addr, unsigned long n); extern unsigned long __must_check __strncpy_from_user(char *to, const char __user *from, unsigned long count); extern unsigned long __strnlen_user(const char __user *s, long n); #define INLINE_COPY_FROM_USER #define INLINE_COPY_TO_USER #include <asm-generic/uaccess.h> Loading
arch/unicore32/kernel/ksyms.c +2 −2 Original line number Diff line number Diff line Loading @@ -46,8 +46,8 @@ EXPORT_SYMBOL(__strncpy_from_user); EXPORT_SYMBOL(copy_page); EXPORT_SYMBOL(__copy_from_user); EXPORT_SYMBOL(__copy_to_user); EXPORT_SYMBOL(raw_copy_from_user); EXPORT_SYMBOL(raw_copy_to_user); EXPORT_SYMBOL(__clear_user); EXPORT_SYMBOL(__ashldi3); Loading
arch/unicore32/lib/copy_from_user.S +6 −10 Original line number Diff line number Diff line Loading @@ -16,7 +16,7 @@ /* * Prototype: * * size_t __copy_from_user(void *to, const void *from, size_t n) * size_t raw_copy_from_user(void *to, const void *from, size_t n) * * Purpose: * Loading Loading @@ -87,22 +87,18 @@ .text ENTRY(__copy_from_user) ENTRY(raw_copy_from_user) #include "copy_template.S" ENDPROC(__copy_from_user) ENDPROC(raw_copy_from_user) .pushsection .fixup,"ax" .align 0 copy_abort_preamble ldm.w (r1, r2), [sp]+ sub r3, r0, r1 rsub r2, r3, r2 stw r2, [sp] mov r1, #0 b.l memset ldw.w r0, [sp]+, #4 ldm.w (r1, r2, r3), [sp]+ sub r0, r0, r1 rsub r0, r0, r2 copy_abort_end .popsection
arch/unicore32/lib/copy_to_user.S +3 −3 Original line number Diff line number Diff line Loading @@ -16,7 +16,7 @@ /* * Prototype: * * size_t __copy_to_user(void *to, const void *from, size_t n) * size_t raw_copy_to_user(void *to, const void *from, size_t n) * * Purpose: * Loading Loading @@ -79,11 +79,11 @@ .text WEAK(__copy_to_user) WEAK(raw_copy_to_user) #include "copy_template.S" ENDPROC(__copy_to_user) ENDPROC(raw_copy_to_user) .pushsection .fixup,"ax" .align 0 Loading