1 #ifndef _ASM_GENERIC_SECTIONS_H_ 2 #define _ASM_GENERIC_SECTIONS_H_ 3 4 /* References to section boundaries */ 5 6 extern char _text[], _stext[], _etext[]; 7 extern char _data[], _sdata[], _edata[]; 8 extern char __bss_start[], __bss_stop[]; 9 extern char __init_begin[], __init_end[]; 10 extern char _sinittext[], _einittext[]; 11 extern char _end[]; 12 extern char __per_cpu_load[], __per_cpu_start[], __per_cpu_end[]; 13 extern char __kprobes_text_start[], __kprobes_text_end[]; 14 extern char __initdata_begin[], __initdata_end[]; 15 extern char __start_rodata[], __end_rodata[]; 16 17 /* Start and end of .ctors section - used for constructor calls. */ 18 extern char __ctors_start[], __ctors_end[]; 19 20 /* function descriptor handling (if any). Override 21 * in asm/sections.h */ 22 #ifndef dereference_function_descriptor 23 #define dereference_function_descriptor(p) (p) 24 #endif 25 26 /* random extra sections (if any). Override 27 * in asm/sections.h */ 28 #ifndef arch_is_kernel_text 29 static inline int arch_is_kernel_text(unsigned long addr) 30 { 31 return 0; 32 } 33 #endif 34 35 #ifndef arch_is_kernel_data 36 static inline int arch_is_kernel_data(unsigned long addr) 37 { 38 return 0; 39 } 40 #endif 41 42 #endif /* _ASM_GENERIC_SECTIONS_H_ */ 43