Well here is a problem with only one CPU.
>From linuxbios:
for(i = 0; i < MAX_CPUS; i++) {
smp_write_processor(mc, i, apic_version,
((processor_id == i)? CPU_BOOTPROCESSOR:0) |
CPU_ENABLED,
cpu_features, cpu_feature_flags
);
}
Note the enabled.
>From Linux:
static void __init MP_processor_info (struct mpc_config_processor *m)
{
int ver;
if (!(m->mpc_cpuflag & CPU_ENABLED))
return;
printk("Processor #%d %s APIC version %d\n",
So this is a problem: linuxbios is telling the kernel that CPUs are
enabled that do not even exist. OK that explains that one problem.
Now why won't SMP with two cpu's work? that's next.
ron