MIPS: Export string functions alongside their definitions
Now that EXPORT_SYMBOL can be used from assembly source, move the EXPORT_SYMBOL invocations for the strlen*, strnlen* & strncpy* functions to be alongside their definitions. Signed-off-by: Paul Burton <paul.burton@imgtec.com> Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/14513/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
This commit is contained in:
parent
231300423a
commit
d6cb671589
@ -19,20 +19,6 @@
|
||||
|
||||
extern void *__bzero_kernel(void *__s, size_t __count);
|
||||
extern void *__bzero(void *__s, size_t __count);
|
||||
extern long __strncpy_from_kernel_nocheck_asm(char *__to,
|
||||
const char *__from, long __len);
|
||||
extern long __strncpy_from_kernel_asm(char *__to, const char *__from,
|
||||
long __len);
|
||||
extern long __strncpy_from_user_nocheck_asm(char *__to,
|
||||
const char *__from, long __len);
|
||||
extern long __strncpy_from_user_asm(char *__to, const char *__from,
|
||||
long __len);
|
||||
extern long __strlen_kernel_asm(const char *s);
|
||||
extern long __strlen_user_asm(const char *s);
|
||||
extern long __strnlen_kernel_nocheck_asm(const char *s);
|
||||
extern long __strnlen_kernel_asm(const char *s);
|
||||
extern long __strnlen_user_nocheck_asm(const char *s);
|
||||
extern long __strnlen_user_asm(const char *s);
|
||||
|
||||
/*
|
||||
* String functions
|
||||
@ -60,13 +46,3 @@ EXPORT_SYMBOL(__copy_user_inatomic_eva);
|
||||
EXPORT_SYMBOL(__bzero_kernel);
|
||||
#endif
|
||||
EXPORT_SYMBOL(__bzero);
|
||||
EXPORT_SYMBOL(__strncpy_from_kernel_nocheck_asm);
|
||||
EXPORT_SYMBOL(__strncpy_from_kernel_asm);
|
||||
EXPORT_SYMBOL(__strncpy_from_user_nocheck_asm);
|
||||
EXPORT_SYMBOL(__strncpy_from_user_asm);
|
||||
EXPORT_SYMBOL(__strlen_kernel_asm);
|
||||
EXPORT_SYMBOL(__strlen_user_asm);
|
||||
EXPORT_SYMBOL(__strnlen_kernel_nocheck_asm);
|
||||
EXPORT_SYMBOL(__strnlen_kernel_asm);
|
||||
EXPORT_SYMBOL(__strnlen_user_nocheck_asm);
|
||||
EXPORT_SYMBOL(__strnlen_user_asm);
|
||||
|
@ -9,6 +9,7 @@
|
||||
*/
|
||||
#include <asm/asm.h>
|
||||
#include <asm/asm-offsets.h>
|
||||
#include <asm/export.h>
|
||||
#include <asm/regdef.h>
|
||||
|
||||
#define EX(insn,reg,addr,handler) \
|
||||
@ -24,6 +25,7 @@
|
||||
*/
|
||||
.macro __BUILD_STRLEN_ASM func
|
||||
LEAF(__strlen_\func\()_asm)
|
||||
EXPORT_SYMBOL(__strlen_\func\()_asm)
|
||||
LONG_L v0, TI_ADDR_LIMIT($28) # pointer ok?
|
||||
and v0, a0
|
||||
bnez v0, .Lfault\@
|
||||
|
@ -9,6 +9,7 @@
|
||||
#include <linux/errno.h>
|
||||
#include <asm/asm.h>
|
||||
#include <asm/asm-offsets.h>
|
||||
#include <asm/export.h>
|
||||
#include <asm/regdef.h>
|
||||
|
||||
#define EX(insn,reg,addr,handler) \
|
||||
@ -30,11 +31,13 @@
|
||||
|
||||
.macro __BUILD_STRNCPY_ASM func
|
||||
LEAF(__strncpy_from_\func\()_asm)
|
||||
EXPORT_SYMBOL(__strncpy_from_\func\()_asm)
|
||||
LONG_L v0, TI_ADDR_LIMIT($28) # pointer ok?
|
||||
and v0, a1
|
||||
bnez v0, .Lfault\@
|
||||
|
||||
FEXPORT(__strncpy_from_\func\()_nocheck_asm)
|
||||
EXPORT_SYMBOL(__strncpy_from_\func\()_nocheck_asm)
|
||||
move t0, zero
|
||||
move v1, a1
|
||||
.ifeqs "\func","kernel"
|
||||
@ -72,6 +75,8 @@ FEXPORT(__strncpy_from_\func\()_nocheck_asm)
|
||||
.global __strncpy_from_user_nocheck_asm
|
||||
.set __strncpy_from_user_asm, __strncpy_from_kernel_asm
|
||||
.set __strncpy_from_user_nocheck_asm, __strncpy_from_kernel_nocheck_asm
|
||||
EXPORT_SYMBOL(__strncpy_from_user_asm)
|
||||
EXPORT_SYMBOL(__strncpy_from_user_nocheck_asm)
|
||||
#endif
|
||||
|
||||
__BUILD_STRNCPY_ASM kernel
|
||||
|
@ -8,6 +8,7 @@
|
||||
*/
|
||||
#include <asm/asm.h>
|
||||
#include <asm/asm-offsets.h>
|
||||
#include <asm/export.h>
|
||||
#include <asm/regdef.h>
|
||||
|
||||
#define EX(insn,reg,addr,handler) \
|
||||
@ -27,11 +28,13 @@
|
||||
*/
|
||||
.macro __BUILD_STRNLEN_ASM func
|
||||
LEAF(__strnlen_\func\()_asm)
|
||||
EXPORT_SYMBOL(__strnlen_\func\()_asm)
|
||||
LONG_L v0, TI_ADDR_LIMIT($28) # pointer ok?
|
||||
and v0, a0
|
||||
bnez v0, .Lfault\@
|
||||
|
||||
FEXPORT(__strnlen_\func\()_nocheck_asm)
|
||||
EXPORT_SYMBOL(__strnlen_\func\()_nocheck_asm)
|
||||
move v0, a0
|
||||
PTR_ADDU a1, a0 # stop pointer
|
||||
1:
|
||||
|
Loading…
Reference in New Issue
Block a user