2.1.93 uniprocessor with SMP kernel -- partial success

Adam J. Richter (adam@yggdrasil.com)
Wed, 8 Apr 1998 10:55:45 -0700


The following patch apparently enables a 2.1.93 kernel
compiled with SMP to run on a uniprocessor system. However, this
patch is probably not the whole story, because:

1. After booting 2.1.93, I started composing this letter
and editting a file under X windows ( + Xemacs and a couple of
xterm's), and, in the midst of that, my machine locked up hard.

2. printk's seem very slow. There seems to be a pause
every time a new line is printed. The result is somelike
like a 2400 baud console, although the pauses are between
lines rather than between characters.

3. printk's executed earlier in the kernel are apparently
not being exeucted (e.g., "printk(linux_banner);" in
linux/init/main.c). Maybe their executing is being
deferred? I did not check the one time when I did boot
2.1.93.

Anyhow, I hope this information is helpful in developing the
correct fix.

Adam J. Richter __ ______________ 4880 Stevens Creek Blvd, Suite 205
adam@yggdrasil.com \ / San Jose, California 95129-1034
+1 408 261-6630 | g g d r a s i l United States of America
fax +1 408 261-6631 "Free Software For The Rest Of Us."
----------------------CUT HERE-----------------------------------------
--- /tmp/linux/arch/i386/mm/init.c Wed Apr 8 10:42:02 1998
+++ linux/arch/i386/mm/init.c Wed Apr 8 10:42:45 1998
@@ -293,12 +293,13 @@
}

local_flush_tlb();
+#if 0 /* These printk's reboot uniprocessor systems. -adam@yggdrasil.com */
printk("IO APIC ID: %d\n", *(int *)0xFEC00000);
printk("APIC ID: %d\n", *(int *)0xFEE00000);
+#endif /* 0 */
}
#endif
local_flush_tlb();

return free_area_init(start_mem, end_mem);
}

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu