Date: Tue, 10 May 2005 16:57:47 +0100 From: Pete French <petefrench@ticketswitch.com> To: freebsd-stable@freebsd.org Subject: HTT/SMP does not start 2nd processor Message-ID: <E1DVX7D-0000gc-Oq@dilbert.firstcallgroup.co.uk>
next in thread | raw e-mail | index | archive | help
I have two P4 machines here, both with processors supporting hyperthreading, and running identical SMP kernels from 5.4-RELEASE. One runs with two logical processors and the oother doesn't. This has been puzlling me all day. On the machine where the second CPU does not start up, HTTP is enabled in the BIOS, and I get the following in dmesg: CPU: Intel(R) Pentium(R) 4 CPU 3.00GHz (2992.52-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0xf29 Stepping = 9 Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,C MOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE> Hyperthreading: 2 logical CPUs real memory = 536739840 (511 MB) avail memory = 515579904 (491 MB) MPTable: <COMPAQ Workstation > ioapic0: Changing APIC ID to 1 ioapic0: Assuming intbase of 0 ioapic0 <Version 2.0> irqs 0-23 on motherboard On the one which starts up the 2nd CPU the equivalent part is: CPU: Intel(R) Xeon(TM) CPU 2.40GHz (2392.04-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0xf29 Stepping = 9 Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,C MOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE> Hyperthreading: 2 logical CPUs real memory = 536301568 (511 MB) avail memory = 515137536 (491 MB) ACPI APIC Table: <DELL WS 450 > FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs cpu0 (BSP): APIC ID: 0 cpu1 (AP): APIC ID: 1 ioapic0: Changing APIC ID to 8 ioapic1: Changing APIC ID to 9 ioapic2: Changing APIC ID to 10 ioapic0 <Version 2.0> irqs 0-23 on motherboard ioapic1 <Version 2.0> irqs 24-47 on motherboard ioapic2 <Version 2.0> irqs 48-71 on motherboard So both are reporting 2 logical CPU's, but only the second is then detecting this as a multiprocessor system. I notice that one syas it is using an ACPI APIC table and the other (that does not start) is just finding an MPTable. That seems to be the difference between them. Does anyone have any suggestions ? I dont really understand how this stuff is detected, so I am not sure how to sart digging into this. It is obviously finding a dual CPU processor, so why isn't it then detecting it as a multiprocessor system ? *puzzled* -pcf.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E1DVX7D-0000gc-Oq>