From owner-freebsd-smp Thu Jul 30 10:07:54 1998 Return-Path: Received: (from majordom@localhost) by hub.freebsd.org (8.8.8/8.8.8) id KAA22283 for freebsd-smp-outgoing; Thu, 30 Jul 1998 10:07:54 -0700 (PDT) (envelope-from owner-freebsd-smp@FreeBSD.ORG) Received: from Ilsa.StevesCafe.com (Ilsa.StevesCafe.com [205.168.119.129]) by hub.freebsd.org (8.8.8/8.8.8) with ESMTP id KAA22278 for ; Thu, 30 Jul 1998 10:07:50 -0700 (PDT) (envelope-from fbsd@Ilsa.StevesCafe.com) Received: from Ilsa.StevesCafe.com (localhost.StevesCafe.com [127.0.0.1]) by Ilsa.StevesCafe.com (8.8.8/8.8.5) with ESMTP id LAA28320; Thu, 30 Jul 1998 11:07:07 -0600 (MDT) Message-Id: <199807301707.LAA28320@Ilsa.StevesCafe.com> X-Mailer: exmh version 2.0.2 2/24/98 From: Steve Passe To: rv@plig.net Cc: mike@smith.net.au (Mike Smith), freebsd-smp@FreeBSD.ORG Subject: Re: SMP on dual porcessor Compaq In-reply-to: Your message of "Thu, 30 Jul 1998 11:49:24 BST." <199807301049.LAA05913@riffraff.plig.net> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Thu, 30 Jul 1998 11:07:07 -0600 Sender: owner-freebsd-smp@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org Hi, > > > My first guess would be this: > > > > Processors: APIC ID Version State Family Model Step Flags > > > > 0 0x10 BSP, usable 6 2 1 0x0381 > > > > 0 0x10 AP, usable 6 3 4 0x80fbff > > > > > > You can't have two processors with the same ID. I'd check to see what > > > the flags mean, too. > > > > I'd also be worried about the model mismatch, and the steppings; Intel > > normally recommend only pairing processors at most one apart from each > > other in stepping numbers. > > Just tried swapping various combinations of processors (we have 2 of > the machines) and I get the exact same result. All 4 processors tested > are PII-266's and there are 2 pairs with each pair from the same > manufacturer and only slight differing serial numbers. The problem is definately the APIC ID of 0 for both CPU's, until you fix that nothing else is going to help. Others have encountered this ID clash between CPU and IO APIC ID's but I have never seen a clash between CPUs before. See section 3.6.6 of the 1.4 MP spec. In this case the OS (ie FreeBSD) MUST reassign one of the CPU IDs to another value. I would assign the AP to value 1. A quick hack could be made in sys/i386/i386/mp_machdep.c:processor_entry(), reprogramming the AP at the point its encountered. A clean fix would be to analyze the list of all APIC IDs immediately after mptable_pass2(), adjusting both parts and table entries as appropriate. -- Steve Passe | powered by smp@csn.net | Symmetric MultiProcessor FreeBSD To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-smp" in the body of the message