1 /* Exports for assembly files.
2 All C exports should go in the respective C files. */
4 #include <linux/module.h>
7 #include <net/checksum.h>
9 #include <asm/processor.h>
10 #include <asm/pgtable.h>
11 #include <asm/uaccess.h>
13 #include <asm/ftrace.h>
15 #ifdef CONFIG_FUNCTION_TRACER
16 /* mcount and __fentry__ are defined in assembly */
17 #ifdef CC_USING_FENTRY
18 EXPORT_SYMBOL(__fentry__
);
20 EXPORT_SYMBOL(mcount
);
24 EXPORT_SYMBOL(__get_user_1
);
25 EXPORT_SYMBOL(__get_user_2
);
26 EXPORT_SYMBOL(__get_user_4
);
27 EXPORT_SYMBOL(__get_user_8
);
28 EXPORT_SYMBOL(__put_user_1
);
29 EXPORT_SYMBOL(__put_user_2
);
30 EXPORT_SYMBOL(__put_user_4
);
31 EXPORT_SYMBOL(__put_user_8
);
33 EXPORT_SYMBOL(copy_user_generic_string
);
34 EXPORT_SYMBOL(copy_user_generic_unrolled
);
35 EXPORT_SYMBOL(copy_user_enhanced_fast_string
);
36 EXPORT_SYMBOL(__copy_user_nocache
);
37 EXPORT_SYMBOL(_copy_from_user
);
38 EXPORT_SYMBOL(_copy_to_user
);
40 EXPORT_SYMBOL(copy_page
);
41 EXPORT_SYMBOL(clear_page
);
43 EXPORT_SYMBOL(csum_partial
);
46 * Export string functions. We normally rely on gcc builtin for most of these,
47 * but gcc sometimes decides not to inline them.
53 extern void *__memset(void *, int, __kernel_size_t
);
54 extern void *__memcpy(void *, const void *, __kernel_size_t
);
55 extern void *__memmove(void *, const void *, __kernel_size_t
);
56 extern void *memset(void *, int, __kernel_size_t
);
57 extern void *memcpy(void *, const void *, __kernel_size_t
);
58 extern void *memmove(void *, const void *, __kernel_size_t
);
60 EXPORT_SYMBOL(__memset
);
61 EXPORT_SYMBOL(__memcpy
);
62 EXPORT_SYMBOL(__memmove
);
64 EXPORT_SYMBOL(memset
);
65 EXPORT_SYMBOL(memcpy
);
66 EXPORT_SYMBOL(memmove
);
68 #ifndef CONFIG_DEBUG_VIRTUAL
69 EXPORT_SYMBOL(phys_base
);
71 EXPORT_SYMBOL(empty_zero_page
);
72 #ifndef CONFIG_PARAVIRT
73 EXPORT_SYMBOL(native_load_gs_index
);
77 EXPORT_SYMBOL(___preempt_schedule
);
78 EXPORT_SYMBOL(___preempt_schedule_notrace
);