Messages in this thread Patch in this message | | | Subject | Re: [BUG] i386 2.6.18 cpu_up: attempt to bring up CPU 4 failed : kernel BUG at mm/slab.c:2698! | From | keith mannthey <> | Date | Fri, 22 Sep 2006 12:44:18 -0700 |
| |
On Thu, 2006-09-21 at 21:09 -0700, David Rientjes wrote: > On Thu, 21 Sep 2006, Andrew Morton wrote:
Well I think there is 3 bug total exposed my unique situation. I think all 3 issues are generic mainline bugs that have been around for awhile.
1. SRAT not being mapped (patch submitted to fix boot_ioremap code) This caused cpus to fail to be borough on line and panicked the box.
2. The panic is bad. I have so far tested the patch David submitted.... It allowed the cpu_up calls to fail without panicking the box. Andrew do you want me to test yours or ???
3. Flat mode i386 numa on a real numa system is broken. If there is only 1 node in the system cpus should think they are apart of some other node. Patch below.
If cases where a real numa system boots the Flat numa option make sure the cpus don't claim to be apart on a non-existent node.
Signed-off-by: Keith Mannthey <kmannth@us.ibm.com>
--- linux-2.6.18/arch/i386/kernel/smpboot.c 2006-09-19 20:42:06.000000000 -0700 +++ linux-2.6.18-workes/arch/i386/kernel/smpboot.c 2006-09-21 21:57:55.000000000 -0700 @@ -642,9 +642,13 @@ { int cpu = smp_processor_id(); int apicid = logical_smp_processor_id(); - + int node = apicid_to_node(apicid); + + if (!node_online(node)) + node = first_online_node; + cpu_2_logical_apicid[cpu] = apicid; - map_cpu_to_node(cpu, apicid_to_node(apicid)); + map_cpu_to_node(cpu, node); } static void unmap_cpu_to_logical_apicid(int cpu)
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |