lkml.org 
[lkml]   [2005]   [Oct]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[PATCH] mark __init code noinline to stop erroneous inclusions
Make __init also have the noinline attribute attached
to it, to stop code marked as __init being included
into non __init code. This not only wastes space, but
also makes it impossible to track down any calls from
non-init code as differing compilers and optimisations
make differing decisions on what to inline.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
--- linux-2.6.14-rc4-git4-bjd2/include/linux/init.h 2005-09-01 21:02:39.000000000 +0100
+++ linux-2.6.14-rc4-git4-bjd3/include/linux/init.h 2005-10-17 22:26:48.000000000 +0100
@@ -41,7 +41,7 @@

/* These are for everybody (although not all archs will actually
discard it in modules) */
-#define __init __attribute__ ((__section__ (".init.text")))
+#define __init noinline __attribute__ ((__section__ (".init.text")))
#define __initdata __attribute__ ((__section__ (".init.data")))
#define __exitdata __attribute__ ((__section__(".exit.data")))
#define __exit_call __attribute_used__ __attribute__ ((__section__ (".exitcall.exit")))
\
 
 \ /
  Last update: 2005-10-17 23:40    [W:0.071 / U:0.108 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site