<br><br><div class="gmail_quote">On Wed, Jul 13, 2011 at 4:09 AM, nilesh <span dir="ltr">&lt;<a href="mailto:nilesh.tayade@netscout.com">nilesh.tayade@netscout.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Hi Sumeet,<br>
<div><div></div><div class="h5"><br>
On Wednesday 13 July 2011 04:12 PM, sumeet linux wrote:<br>
&gt; Dear friends,<br>
&gt;<br>
&gt; I want to know the basics xx_initcall ( ) in linux kernel. How this function<br>
&gt; works ?<br>
&gt; Observed in kernel code, many places late_initcall ( ), early_initcall ( ),<br>
&gt; arch_initcall ( ), core_initcall ( ) gets called.<br>
&gt; When did all these functions gets call during kernel initialization ?<br>
&gt; I am more interested in what is the sequence of these functions gets called<br>
&gt; one after another.<br>
</div></div>I could get a nice link explaining about *_initcall(). Refer:<br>
<a href="http://book.opensourceproject.org.cn/embedded/embeddedprime/opensource/0136130550/ch05lev1sec4.html" target="_blank">http://book.opensourceproject.org.cn/embedded/embeddedprime/opensource/0136130550/ch05lev1sec4.html</a><br>

<br>
*_initcall() are macros which set the function pointers for subsystem<br>
initialization (typedef int (*initcall_t)(void) : typedef of all such<br>
function pointers).<br>
Also if we look at the source code, the functions are called in below<br>
sequence:<br>
<a href="http://lxr.linux.no/#linux+v2.6.39/init/main.c#L695" target="_blank">http://lxr.linux.no/#linux+v2.6.39/init/main.c#L695</a><br>
<br>
do_basic_setup(void) -&gt; do_initcalls(void) -&gt; do_one_initcall(*fn);<br>
do_one_initcall(*fn) - calls each function. And do_basic_setup() is<br>
called inside the initialization sequence (kernel_init()).<br>
<br>
&gt;<br>
&gt; Thank you.<br>
&gt;<br>
&gt; Regards,<br>
&gt; Sumeet<br>
&gt;<br></blockquote><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
<font color="#888888"><br>
--<br>
Thanks,<br>
Nilesh<br>
<br>
_______________________________________________<br>
Kernelnewbies mailing list<br>
<a href="mailto:Kernelnewbies@kernelnewbies.org">Kernelnewbies@kernelnewbies.org</a><br>
<a href="http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies" target="_blank">http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies</a><br>
</font></blockquote></div><br>  Hi,<div><br></div><div> I hope this will help you to get a basic understanding of init call.</div><div> <a href="http://www.embedded-bits.co.uk/2008/init-call-mechanism/">http://www.embedded-bits.co.uk/2008/init-call-mechanism/</a><br>
-- <br>With Regards<br>Subin Gangadharan<br><br><div>Everything should be made as simple as possible,but not simpler.</div><br>
</div>