[<prev] [next>] [day] [month] [year] [list]
Message-ID: <alpine.LFD.2.00.0907110636290.2814@localhost>
Date: Sat, 11 Jul 2009 06:39:23 -0400 (EDT)
From: "Robert P. J. Day" <rpjday@...shcourse.ca>
To: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: [PATCH] KERNEL: Conditionally include ramdisk-related code.
Given that BLK_DEV_INITRD defines whether the kernel has any ramdisk
functionality whatsoever, conditionally include ramdisk-related code
in init/main.c.
Signed-off-by: Robert P. J. Day <rpjday@...shcourse.ca>
---
Not a big deal, but there seems to be some precedent in other files
in conditionally whacking out any chunks related to ramdisks if
BLK_DEV_INITRD has not been selected.
Compile tested on x86 with "defconfig", followed by deselecting
BLK_DEV_INITRD.
diff --git a/init/main.c b/init/main.c
index 2c5ade7..d88c7b4 100644
--- a/init/main.c
+++ b/init/main.c
@@ -119,7 +119,9 @@ char *saved_command_line;
static char *static_command_line;
static char *execute_command;
+#ifdef CONFIG_BLK_DEV_INITRD
static char *ramdisk_execute_command;
+#endif
#ifdef CONFIG_SMP
/* Setup configured maximum number of CPUs to activate */
@@ -330,6 +332,8 @@ static int __init init_setup(char *str)
}
__setup("init=", init_setup);
+#ifdef CONFIG_BLK_DEV_INITRD
+
static int __init rdinit_setup(char *str)
{
unsigned int i;
@@ -342,6 +346,9 @@ static int __init rdinit_setup(char *str)
}
__setup("rdinit=", rdinit_setup);
+
+#endif
+
#ifndef CONFIG_SMP
#ifdef CONFIG_X86_LOCAL_APIC
@@ -850,12 +857,16 @@ static noinline int init_post(void)
current->signal->flags |= SIGNAL_UNKILLABLE;
+#ifdef CONFIG_BLK_DEV_INITRD
+
if (ramdisk_execute_command) {
run_init_process(ramdisk_execute_command);
printk(KERN_WARNING "Failed to execute %s\n",
ramdisk_execute_command);
}
+#endif
+
/*
* We try each of these until one succeeds.
*
@@ -909,6 +920,8 @@ static int __init kernel_init(void * unused)
do_basic_setup();
+#ifdef CONFIG_BLK_DEV_INITRD
+
/*
* check if there is an early userspace init. If yes, let it do all
* the work
@@ -922,6 +935,8 @@ static int __init kernel_init(void * unused)
prepare_namespace();
}
+#endif
+
/*
* Ok, we have completed the initial bootup, and
* we're essentially up and running. Get rid of the
========================================================================
Robert P. J. Day Waterloo, Ontario, CANADA
Linux Consulting, Training and Annoying Kernel Pedantry.
Web page: http://crashcourse.ca
Twitter: http://twitter.com/rpjday
"Kernel Newbie Corner" column @ linux.com: http://cli.gs/WG6WYX
========================================================================
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists