Why __early_initcall_end _initcall_end are declared are array ?
Hi all,
I could find the order of calling of modules from kernal_init() -> do_basic_setup() -> do_initcalls(). Here it traverse through a array of __early_initcall_end till __initcall_end. My questions are 1. The expansion of module_init() macro says to put the .text section of the function called by module_init into specific region in the memory, This initializations routines will be called in the sequence by the INITCALL ( include/asm-generic/vmlinux.lds.h) . It looks like the vmlinux.lds (arch/mips/kernel/vmlinux.lds.S) put the __initcall_start and __initcall_end before and after the INITCALLS. Is my understating correct. 2. Why __early_initcall_end _initcall_end are declared are array, it can be a pointer instead ? Thanks in advance, Reshmi S |
All times are GMT -5. The time now is 06:41 AM. |