From owner-freebsd-stable@FreeBSD.ORG Tue May 10 15:57:51 2005 Return-Path: Delivered-To: freebsd-stable@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D7EA616A4CE for ; Tue, 10 May 2005 15:57:51 +0000 (GMT) Received: from mail.ticketswitch.com (mail.ticketswitch.com [194.200.93.188]) by mx1.FreeBSD.org (Postfix) with ESMTP id 73E5443D49 for ; Tue, 10 May 2005 15:57:51 +0000 (GMT) (envelope-from petefrench@ticketswitch.com) Received: from [172.16.1.6] (helo=dilbert.firstcallgroup.co.uk) by mail.ticketswitch.com with esmtp (Exim 4.50 (FreeBSD)) id 1DVX7G-0003Z3-5O for freebsd-stable@freebsd.org; Tue, 10 May 2005 16:57:50 +0100 Received: from petefrench by dilbert.firstcallgroup.co.uk with local (Exim 4.50 (FreeBSD)) id 1DVX7D-0000gc-Oq for freebsd-stable@freebsd.org; Tue, 10 May 2005 16:57:47 +0100 To: freebsd-stable@freebsd.org Message-Id: From: Pete French Date: Tue, 10 May 2005 16:57:47 +0100 Subject: HTT/SMP does not start 2nd processor X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 10 May 2005 15:57:52 -0000 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 Hyperthreading: 2 logical CPUs real memory = 536739840 (511 MB) avail memory = 515579904 (491 MB) MPTable: ioapic0: Changing APIC ID to 1 ioapic0: Assuming intbase of 0 ioapic0 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 Hyperthreading: 2 logical CPUs real memory = 536301568 (511 MB) avail memory = 515137536 (491 MB) ACPI APIC Table: 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 irqs 0-23 on motherboard ioapic1 irqs 24-47 on motherboard ioapic2 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.