
Signed-off-by: Dave Hansen <haveblue@us.ibm.com>
---

 arch/i386/mm/discontig.c              |    0 
 memhotplug-dave/drivers/serial/8250.c |    4 ++--
 memhotplug-dave/init/main.c           |    4 ++++
 memhotplug-dave/kernel/printk.c       |    4 ++--
 4 files changed, 8 insertions(+), 4 deletions(-)

diff -puN drivers/serial/8250.c~early-printk drivers/serial/8250.c
--- memhotplug/drivers/serial/8250.c~early-printk	2005-03-18 09:03:02.000000000 -0800
+++ memhotplug-dave/drivers/serial/8250.c	2005-03-18 09:03:02.000000000 -0800
@@ -2185,13 +2185,13 @@ static struct console serial8250_console
 	.data		= &serial8250_reg,
 };
 
-static int __init serial8250_console_init(void)
+int __init serial8250_console_init(void)
 {
 	serial8250_isa_init_ports();
 	register_console(&serial8250_console);
 	return 0;
 }
-console_initcall(serial8250_console_init);
+//console_initcall(serial8250_console_init);
 
 static int __init serial8250_late_console_init(void)
 {
diff -puN init/main.c~early-printk init/main.c
--- memhotplug/init/main.c~early-printk	2005-03-18 09:03:02.000000000 -0800
+++ memhotplug-dave/init/main.c	2005-03-18 09:03:04.000000000 -0800
@@ -429,6 +429,10 @@ asmlinkage void __init start_kernel(void
  * Interrupts are still disabled. Do necessary setups, then
  * enable them
  */
+	console_setup("ttyS0,57600");
+	serial8250_console_init();
+	printk("early printk enabled\n");
+
 	lock_kernel();
 	page_address_init();
 	printk(KERN_NOTICE);
diff -puN kernel/printk.c~early-printk kernel/printk.c
--- memhotplug/kernel/printk.c~early-printk	2005-03-18 09:03:02.000000000 -0800
+++ memhotplug-dave/kernel/printk.c	2005-03-18 09:03:02.000000000 -0800
@@ -118,7 +118,7 @@ static int console_may_schedule;
 /*
  *	Setup a list of consoles. Called from init/main.c
  */
-static int __init console_setup(char *str)
+int __init console_setup(char *str)
 {
 	char name[sizeof(console_cmdline[0].name)];
 	char *s, *options;
@@ -616,7 +616,7 @@ asmlinkage int vprintk(const char *fmt, 
 			log_level_unknown = 1;
 	}
 
-	if (!cpu_online(smp_processor_id()) &&
+	if (0 && !cpu_online(smp_processor_id()) &&
 	    system_state != SYSTEM_RUNNING) {
 		/*
 		 * Some console drivers may assume that per-cpu resources have
diff -puN arch/i386/kernel/setup.c~early-printk arch/i386/kernel/setup.c
diff -puN mm/page_alloc.c~early-printk mm/page_alloc.c
diff -puN arch/i386/mm/discontig.c~early-printk arch/i386/mm/discontig.c
_
