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 and __fentry__ are defined in assembly */ 17#ifdef CC_USING_FENTRY 18EXPORT_SYMBOL(__fentry__); 19#else 20EXPORT_SYMBOL(mcount); 21#endif 22#endif 23 24EXPORT_SYMBOL(__get_user_1); 25EXPORT_SYMBOL(__get_user_2); 26EXPORT_SYMBOL(__get_user_4); 27EXPORT_SYMBOL(__get_user_8); 28EXPORT_SYMBOL(__put_user_1); 29EXPORT_SYMBOL(__put_user_2); 30EXPORT_SYMBOL(__put_user_4); 31EXPORT_SYMBOL(__put_user_8); 32 33EXPORT_SYMBOL(copy_user_generic_string); 34EXPORT_SYMBOL(copy_user_generic_unrolled); 35EXPORT_SYMBOL(copy_user_enhanced_fast_string); 36EXPORT_SYMBOL(__copy_user_nocache); 37EXPORT_SYMBOL(_copy_from_user); 38EXPORT_SYMBOL(_copy_to_user); 39 40EXPORT_SYMBOL(copy_page); 41EXPORT_SYMBOL(clear_page); 42 43EXPORT_SYMBOL(csum_partial); 44 45/* 46 * Export string functions. We normally rely on gcc builtin for most of these, 47 * but gcc sometimes decides not to inline them. 48 */ 49#undef memcpy 50#undef memset 51#undef memmove 52 53extern void *__memset(void *, int, __kernel_size_t); 54extern void *__memcpy(void *, const void *, __kernel_size_t); 55extern void *__memmove(void *, const void *, __kernel_size_t); 56extern void *memset(void *, int, __kernel_size_t); 57extern void *memcpy(void *, const void *, __kernel_size_t); 58extern void *memmove(void *, const void *, __kernel_size_t); 59 60EXPORT_SYMBOL(__memset); 61EXPORT_SYMBOL(__memcpy); 62EXPORT_SYMBOL(__memmove); 63 64EXPORT_SYMBOL(memset); 65EXPORT_SYMBOL(memcpy); 66EXPORT_SYMBOL(memmove); 67 68#ifndef CONFIG_DEBUG_VIRTUAL 69EXPORT_SYMBOL(phys_base); 70#endif 71EXPORT_SYMBOL(empty_zero_page); 72#ifndef CONFIG_PARAVIRT 73EXPORT_SYMBOL(native_load_gs_index); 74#endif 75 76#ifdef CONFIG_PREEMPT 77EXPORT_SYMBOL(___preempt_schedule); 78EXPORT_SYMBOL(___preempt_schedule_notrace); 79#endif 80