]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - include/linux/init.h
Merge branch 'for_linus' of master.kernel.org:/pub/scm/linux/kernel/git/galak/powerpc...
[linux-2.6-omap-h63xx.git] / include / linux / init.h
index e007ae4dc41e7c553fe44aaea3a11dc81f1a9779..56ec4c62eee066d6886ec2f0bfe96fa273368785 100644 (file)
 #define __exitdata     __attribute__ ((__section__(".exit.data")))
 #define __exit_call    __attribute_used__ __attribute__ ((__section__ (".exitcall.exit")))
 
+/* modpost check for section mismatches during the kernel build.
+ * A section mismatch happens when there are references from a
+ * code or data section to an init section (both code or data).
+ * The init sections are (for most archs) discarded by the kernel
+ * when early init has completed so all such references are potential bugs.
+ * For exit sections the same issue exists.
+ * The following markers are used for the cases where the reference to
+ * the init/exit section (code or data) is valid and will teach modpost
+ * not to issue a warning.
+ * The markers follow same syntax rules as __init / __initdata. */
+#define __init_refok     noinline __attribute__ ((__section__ (".text.init.refok")))
+#define __initdata_refok          __attribute__ ((__section__ (".data.init.refok")))
+
 #ifdef MODULE
 #define __exit         __attribute__ ((__section__(".exit.text")))
 #else