From owner-freebsd-smp Mon Apr 12 19:16:24 1999 Delivered-To: freebsd-smp@freebsd.org Received: from midten.fast.no (midten.fast.no [195.139.251.11]) by hub.freebsd.org (Postfix) with ESMTP id 4E23A14CEC; Mon, 12 Apr 1999 19:16:20 -0700 (PDT) (envelope-from tegge@fast.no) Received: from fast.no (IDENT:tegge@midten.fast.no [195.139.251.11]) by midten.fast.no (8.9.1/8.9.1) with ESMTP id EAA29557; Tue, 13 Apr 1999 04:13:54 +0200 (CEST) Message-Id: <199904130213.EAA29557@midten.fast.no> To: caesar@starkreality.com Cc: freebsd-smp@FreeBSD.ORG, freebsd-current@FreeBSD.ORG Subject: Re: SMP broken in -CURRENT? From: Tor.Egge@fast.no In-Reply-To: Your message of "Mon, 12 Apr 1999 19:25:31 -0500" References: <4.1.19990412191627.009b3100@imap.colltech.com> X-Mailer: Mew version 1.70 on Emacs 19.34.1 Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Date: Tue, 13 Apr 1999 04:13:53 +0200 Sender: owner-freebsd-smp@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org > I haven't been able to get a working SMP kernel out of -CURRENT recently. > I don't know exactly when it broke, because I usually rebuild on a weekly > basis. The kernel hangs after: > APIC_IO: Testing 8254 interrupt delivery > and doesn't ever come back (panic or otherwise). > > The one thing that I noticed is that on the older kernels, CPU#1 is > launched after the APIC_IO Testing and Routing. On the newer kernels, > CPU#1 is launched far earlier. > > Anybody have any ideas? You might want to try this patch, which disables the early start of CPU#1. Index: mp_machdep.c =================================================================== RCS file: /home/ncvs/src/sys/i386/i386/mp_machdep.c,v retrieving revision 1.96 diff -u -r1.96 mp_machdep.c --- mp_machdep.c 1999/04/11 00:43:43 1.96 +++ mp_machdep.c 1999/04/13 02:08:54 @@ -1930,9 +1930,11 @@ for (i = 0; i < mp_ncpus; i++) { bcopy( (int *) PTD + KPTDI, (int *) IdlePTDS[i] + KPTDI, NKPDE * sizeof (int)); } +#if 0 wait_ap(1000000); if (smp_started == 0) printf("WARNING: Failed to start all APs\n"); +#endif /* number of APs actually started */ return mp_ncpus - 1; To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-smp" in the body of the message