From: Lubomir Rintel Date: Fri, 20 Aug 2010 11:37:54 +0000 (+0200) Subject: Don't try to talk to APIC on 486 X-Git-Tag: rel-0.6.1~9 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=22f637848ee1bdc39ef42a3f9a003621fa7a4fef;p=seabios.git Don't try to talk to APIC on 486 It only has one cpuid level, therefore it can't report whether it has an APIC. It probably hasn't; assume that. Without this, SeaBIOS would get stuck on qemu -M isapc. Signed-off-by: Lubomir Rintel --- diff --git a/src/smp.c b/src/smp.c index f989ec1..38e117e 100644 --- a/src/smp.c +++ b/src/smp.c @@ -72,7 +72,7 @@ smp_probe(void) ASSERT32FLAT(); u32 eax, ebx, ecx, cpuid_features; cpuid(1, &eax, &ebx, &ecx, &cpuid_features); - if (! (cpuid_features & CPUID_APIC)) { + if (eax < 1 || !(cpuid_features & CPUID_APIC)) { // No apic - only the main cpu is present. dprintf(1, "No apic - only the main cpu is present.\n"); CountCPUs= 1;