浏览代码

Don't put "linux_banner" in the .init section

It might save a few bytes after bootup, but it causes the string to be
linked in at the end of the final vmlinux image, which defeats the whole
point of doing all this, namely allowing some broken user-space binaries
to search for the kernel version string in the kernel binary.

So just remove the __init specifier.

Cc: Olaf Hering <olaf@aepfle.de>
Cc: Jean Delvare <khali@linux-fr.org>
Cc: Roman Zippel <zippel@linux-m68k.org>
Cc: Andrey Borzenkov <arvidjaar@mail.ru>
Cc: Andrew Morton <akpm@osdl.org>
Acked-by: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Linus Torvalds 18 年之前
父节点
当前提交
c71551ad30
共有 1 个文件被更改,包括 2 次插入2 次删除
  1. 2 2
      init/version.c

+ 2 - 2
init/version.c

@@ -34,8 +34,8 @@ struct uts_namespace init_uts_ns = {
 };
 EXPORT_SYMBOL_GPL(init_uts_ns);
 
-/* FIXED STRING! Don't touch! */
-const char __init linux_banner[] =
+/* FIXED STRINGS! Don't touch! */
+const char linux_banner[] =
 	"Linux version " UTS_RELEASE " (" LINUX_COMPILE_BY "@"
 	LINUX_COMPILE_HOST ") (" LINUX_COMPILER ") " UTS_VERSION "\n";