The recordmcount script is now robust enough not to process any sections but the .text section. But the gcc compiler still adds a call to mcount. Note: The function mcount looks like: ENTRY(mcount) ret END(mcount) Which means the overhead is just a return. This patch adds notrace to the init sections to not even bother calling mcount (which simply returns). Signed-off-by: Steven Rostedt --- include/linux/init.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) Index: linux-compile.git/include/linux/init.h =================================================================== --- linux-compile.git.orig/include/linux/init.h 2008-10-22 11:49:44.000000000 -0400 +++ linux-compile.git/include/linux/init.h 2008-10-22 12:27:19.000000000 -0400 @@ -75,15 +75,15 @@ #ifdef MODULE -#define __exitused +#define __exitused notrace #else -#define __exitused __used +#define __exitused __used notrace #endif #define __exit __section(.exit.text) __exitused __cold /* Used for HOTPLUG */ -#define __devinit __section(.devinit.text) __cold +#define __devinit __section(.devinit.text) __cold notrace #define __devinitdata __section(.devinit.data) #define __devinitconst __section(.devinit.rodata) #define __devexit __section(.devexit.text) __exitused __cold @@ -91,7 +91,7 @@ #define __devexitconst __section(.devexit.rodata) /* Used for HOTPLUG_CPU */ -#define __cpuinit __section(.cpuinit.text) __cold +#define __cpuinit __section(.cpuinit.text) __cold notrace #define __cpuinitdata __section(.cpuinit.data) #define __cpuinitconst __section(.cpuinit.rodata) #define __cpuexit __section(.cpuexit.text) __exitused __cold @@ -99,7 +99,7 @@ #define __cpuexitconst __section(.cpuexit.rodata) /* Used for MEMORY_HOTPLUG */ -#define __meminit __section(.meminit.text) __cold +#define __meminit __section(.meminit.text) __cold notrace #define __meminitdata __section(.meminit.data) #define __meminitconst __section(.meminit.rodata) #define __memexit __section(.memexit.text) __exitused __cold -- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/