1 /* Exports for assembly files. 2 All C exports should go in the respective C files. */ 3 4 #include <linux/module.h> 5 #include <linux/smp.h> 6 7 #include <net/checksum.h> 8 9 #include <asm/processor.h> 10 #include <asm/pgtable.h> 11 #include <asm/uaccess.h> 12 #include <asm/desc.h> 13 #include <asm/ftrace.h> 14 15 #ifdef CONFIG_FUNCTION_TRACER 16 /* mcount is defined in assembly */ 17 EXPORT_SYMBOL(mcount); 18 #endif 19 20 EXPORT_SYMBOL(__get_user_1); 21 EXPORT_SYMBOL(__get_user_2); 22 EXPORT_SYMBOL(__get_user_4); 23 EXPORT_SYMBOL(__get_user_8); 24 EXPORT_SYMBOL(__put_user_1); 25 EXPORT_SYMBOL(__put_user_2); 26 EXPORT_SYMBOL(__put_user_4); 27 EXPORT_SYMBOL(__put_user_8); 28 29 EXPORT_SYMBOL(copy_user_generic_string); 30 EXPORT_SYMBOL(copy_user_generic_unrolled); 31 EXPORT_SYMBOL(__copy_user_nocache); 32 EXPORT_SYMBOL(_copy_from_user); 33 EXPORT_SYMBOL(_copy_to_user); 34 35 EXPORT_SYMBOL(copy_page); 36 EXPORT_SYMBOL(clear_page); 37 38 EXPORT_SYMBOL(csum_partial); 39 40 /* 41 * Export string functions. We normally rely on gcc builtin for most of these, 42 * but gcc sometimes decides not to inline them. 43 */ 44 #undef memcpy 45 #undef memset 46 #undef memmove 47 48 extern void *memset(void *, int, __kernel_size_t); 49 extern void *memcpy(void *, const void *, __kernel_size_t); 50 extern void *__memcpy(void *, const void *, __kernel_size_t); 51 52 EXPORT_SYMBOL(memset); 53 EXPORT_SYMBOL(memcpy); 54 EXPORT_SYMBOL(__memcpy); 55 EXPORT_SYMBOL(memmove); 56 57 EXPORT_SYMBOL(empty_zero_page); 58 #ifndef CONFIG_PARAVIRT 59 EXPORT_SYMBOL(native_load_gs_index); 60 #endif 61