You need to keep SERIAL_CPU_INIT.<br>
<br>
reason is for AMD K8 cpu_init regarding init_ecc there maybe some conflict on console.<br>
<br>
You can disable it by set it to 0.<br>
<br>
YH<br>
<br><br><div><span class="gmail_quote">On 9/9/05, <b class="gmail_sendername">Steven J. Magnani</b> <<a href="mailto:steve@digidescorp.com">steve@digidescorp.com</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
This patch resolves the issue identified in<br><a href="http://openbios.org/pipermail/linuxbios/2005-July/011903.html">http://openbios.org/pipermail/linuxbios/2005-July/011903.html</a>.<br><br>Changes:<br>* Remove spinlock bracketing of cpu_initialize() call
<br>* Drop SERIAL_CPU_INIT option<br>* (Unrelated) Attempt more descriptive comments for various config<br>options<br><br>PATCH:<br><br>--- src/cpu/x86/lapic/lapic_cpu_init.c.orig     2005-09-09<br>09:29:25.156250000 -0500
<br>+++ src/cpu/x86/lapic/lapic_cpu_init.c  2005-09-09 09:31:59.109375000<br>-0500<br>@@ -230,17 +230,16 @@<br> void secondary_cpu_init(void)<br> {<br>        atomic_inc(&active_cpus);<br>-#if SERIAL_CPU_INIT == 1<br>
-  #if CONFIG_MAX_CPUS>2<br>-       spin_lock(&start_cpu_lock);<br>-  #endif<br>-#endif<br>+<br>+       // NOTE: The call to cpu_initialize() used to be bracketed by<br>+      
//       calls to lock and unlock the
start_cpu_lock spin lock.<br>+      
//       These were removed to resolve a
hang due to nested spin<br>locking<br>+      
//       when secondary CPUs go to
initialize their siblings.<br>+       //       See<br><a href="http://openbios.org/pipermail/linuxbios/2005-July/011903.html">http://openbios.org/pipermail/linuxbios/2005-July/011903.html</a>.<br>+       //       It's possible that some other form of concurrency
<br>control<br>+       //       is needed at this level.<br>        cpu_initialize();<br>-#if SERIAL_CPU_INIT == 1<br>-  #if CONFIG_MAX_CPUS>2<br>-       spin_unlock(&start_cpu_lock);<br>-  #endif<br>-#endif<br>+<br>
        atomic_dec(&active_cpus);<br>        stop_this_cpu();<br> }<br>@@ -265,11 +264,9 @@<br>                        printk_err("CPU  %u
would not start!\n",<br>                                cpu->path.u.apic.apic_id);<br>                }<br>-#if SERIAL_CPU_INIT == 1<br>   #if CONFIG_MAX_CPUS>2<br>                udelay(10);<br>   #endif<br>-#endif
<br>        }<br><br>        /* Now loop until the other cpus have finished initializing */<br>--- src/config/Options.lb.orig  2005-09-09 09:36:27.562500000 -0500<br>+++ src/config/Options.lb       2005-09-09 09:35:17.125000000
 -0500<br>@@ -188,37 +188,37 @@<br>        default 65536<br>        format "0x%x"<br>        export used<br>-       comment "Default fallback image size"<br>+       comment "ROM_SECTION_SIZE to use for the fallback build."
<br> end<br> define ROM_SIZE<br>        default none<br>        format "0x%x"<br>        export used<br>-       comment "Size of your ROM"<br>+       comment "Total number of bytes allocated for normal and fallback
<br>LinuxBIOS images and payloads. Note that the fallback image goes at the<br>end of the ROM, and the normal image at the beginning."<br> end<br> define ROM_IMAGE_SIZE<br>        default 65535<br>        format "0x%x"
<br>        export always<br>-       comment "Default image size"<br>+       comment "Maximum number of bytes allowed for a LinuxBIOS image.<br>Does not include the payload."<br> end<br> define ROM_SECTION_SIZE
<br>        default {FALLBACK_SIZE}<br>        format "0x%x"<br>        export used<br>-       comment "Default rom section size"<br>+       comment "Default rom section size. Normally, this is calculated
<br>in mainboard <a href="http://Config.lb">Config.lb</a> and varies between the normal and fallback<br>builds."<br> end<br> define ROM_SECTION_OFFSET<br>        default {ROM_SIZE - FALLBACK_SIZE}<br>        format "0x%x"
<br>        export used<br>-       comment "Default rom section offset"<br>+       comment "Number of bytes from the beginning of the ROM to the<br>start of the section containing this build (normal or fallback).
<br>Normally, this is calculated in mainboard <a href="http://Config.lb">Config.lb</a>."<br> end<br> define PAYLOAD_SIZE<br>        default {ROM_SECTION_SIZE - ROM_IMAGE_SIZE}<br>        format "0x%x"<br>        export always
<br>-       comment "Default payload size"<br>+       comment "Maximum number of bytes allowed for a payload.<br>Normally, this is calculated as above."<br> end<br> define _ROMBASE<br>        default {PAYLOAD_SIZE}
<br>@@ -479,7 +479,7 @@<br>        export used<br>        comment "System clock frequency in MHz"<br> end<br>-<br>+<br> ###############################################<br> # SMP options<br> ###############################################
<br>@@ -509,11 +509,6 @@<br>        export used<br>        comment "Define to build an MP table"<br> end<br>-define SERIAL_CPU_INIT<br>-        default 1<br>-        export always<br>-        comment "Serialize CPU init"
<br>-end<br><br> ###############################################<br> # Boot options<br>@@ -533,7 +528,7 @@<br>        default {0xffffffff - ROM_SIZE + ROM_SECTION_OFFSET + 1}<br>        format "0x%x"<br>        export always
<br>-       comment "ROM stream start location"<br>+       comment "Memory address of this (normal or fallback) build's<br>payload in ROM. Normally, this is calculated as above."<br> end<br> define CONFIG_FS_STREAM
<br>        default 0<br><br><br>--- src/mainboard/tyan/s2735/Options.lb.orig    2005-09-08<br>13:35:22.453125000 -0500<br>+++ src/mainboard/tyan/s2735/Options.lb 2005-09-09 09:21:21.531250000<br>-0500<br>@@ -8,7 +8,6 @@<br>
 uses CONFIG_MAX_CPUS<br> uses CONFIG_MAX_PHYSICAL_CPUS<br> uses CONFIG_LOGICAL_CPUS<br>-uses SERIAL_CPU_INIT<br> uses CONFIG_IOAPIC<br> uses CONFIG_SMP<br> uses FALLBACK_SIZE<br>@@ -127,8 +126,6 @@<br> default CONFIG_MAX_PHYSICAL_CPUS=2
<br> default CONFIG_LOGICAL_CPUS=1<br><br>-default SERIAL_CPU_INIT=0<br>-<br> #BTEXT Console<br> #default CONFIG_CONSOLE_BTEXT=1<br><br>------------------------------------------------------------------------<br>
Steven J.
Magnani              
"I claim this network for MARS!<br>
<a href="http://www.digidescorp.com">www.digidescorp.com</a>              Earthling,
return my space modulator!"<br><br> #include <standard.disclaimer><br><br><br><br><br><br><br>--<br>LinuxBIOS mailing list<br><a href="mailto:LinuxBIOS@openbios.org">LinuxBIOS@openbios.org</a><br><a href="http://www.openbios.org/mailman/listinfo/linuxbios">
http://www.openbios.org/mailman/listinfo/linuxbios</a><br></blockquote></div><br>