From mboxrd@z Thu Jan 1 00:00:00 1970 From: tobias@gambas-buch.de (Tobias Boege) Date: Sun, 17 Mar 2013 16:11:54 +0100 Subject: do_initcalls In-Reply-To: <20130317144118.GA3086@debian.localdomain> References: <20130317144118.GA3086@debian.localdomain> Message-ID: <20130317151154.GC1280@aurora> To: kernelnewbies@lists.kernelnewbies.org List-Id: kernelnewbies.lists.kernelnewbies.org On Sun, 17 Mar 2013, ishare wrote: > > for (call = &__initcall_start; call < &__initcall_end; call++) > (*call)(); > > I want to know where are these function point assigned by specified function ? > > thanks! As per include/asm-generic/vmlinux.lds.h and your arch's vmlinux.lds.S (I actually only looked at x86's), the __initcall_{start,end} variables are the start and end of the __initcall ELF section which contains all the sub-level sections. Functions can be put into these sections when they are given to one of the *_initcall macros from include/linux/init.h. Regards, Tobi