From owner-cvs-all Tue Oct 10 11:16:11 2000 Delivered-To: cvs-all@freebsd.org Received: from duke.cs.duke.edu (duke.cs.duke.edu [152.3.140.1]) by hub.freebsd.org (Postfix) with ESMTP id 3CBBA37B66D; Tue, 10 Oct 2000 11:16:05 -0700 (PDT) Received: from grasshopper.cs.duke.edu (grasshopper.cs.duke.edu [152.3.145.30]) by duke.cs.duke.edu (8.9.3/8.9.3) with ESMTP id OAA02479; Tue, 10 Oct 2000 14:16:04 -0400 (EDT) Received: (from gallatin@localhost) by grasshopper.cs.duke.edu (8.11.0/8.9.1) id e9AIG3h70507; Tue, 10 Oct 2000 14:16:03 -0400 (EDT) (envelope-from gallatin@cs.duke.edu) From: Andrew Gallatin MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Date: Tue, 10 Oct 2000 14:16:03 -0400 (EDT) To: mjacob@feral.com Cc: John Baldwin , cvs-all@FreeBSD.org, cvs-committers@FreeBSD.org Subject: Re: cvs commit: src/sys/alpha/alpha ipl_funcs.c In-Reply-To: References: <20001010200606.A8244@freebie.demon.nl> X-Mailer: VM 6.43 under 20.4 "Emerald" XEmacs Lucid Message-ID: <14819.23491.459420.440408@grasshopper.cs.duke.edu> Sender: owner-cvs-all@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Matthew Jacob writes: > > YMMV mucho...I just had done a clean rebuild/reboot, and my PC164 doesn't come > up but instead I get (below)- slowly getting up. This is fascinating. It's > almost as if the ithread scheduler is really broken and only occasionally > let's a thread run: To me, it sounds like what might happen if there was an unmasked interrupt firing all the time. Have you tried John's verbose ktr patch and associated goop? To repost what he said on Friday: jhb> I had this same hang when the PCI interrupts weren't be properly turned off jhb> when we schedule an ithread to run. One easy way to configure is to grab jhb> http://www.FreeBSD.org/~jhb/patches/ktr_verbose.patch and apply it. Then, jhb> disable the CTR0() for the clock interrupt in sys/alpha/alpha/interrupt.c jhb> (it's far too noisy), and add this hack to sys/cam/cam_xpt.c: jhb> jhb> Index: cam_xpt.c jhb> =================================================================== jhb> RCS file: /usr/cvs/src/sys/cam/cam_xpt.c,v jhb> retrieving revision 1.93 jhb> diff -u -r1.93 cam_xpt.c jhb> --- cam_xpt.c 2000/10/05 23:09:50 1.93 jhb> +++ cam_xpt.c 2000/10/06 19:10:59 jhb> @@ -40,6 +40,7 @@ jhb> #include jhb> #include jhb> #include jhb> +#include jhb> jhb> #ifdef PC98 jhb> #include /* geometry translation */ jhb> @@ -6119,6 +6120,7 @@ jhb> printf("Waiting %d seconds for SCSI " jhb> "devices to settle\n", SCSI_DELAY/1000); jhb> } jhb> + ktr_verbose = 1; jhb> xpt_for_all_busses(xptconfigfunc, NULL); jhb> } jhb> } jhb> jhb> This will basically dump the ktr output to the console, and should show jhb> an endless loop of PCI interrupts being scheduled. You will also need jhb> to add the following options to your kernel: jhb> jhb> options KTR jhb> options KTR_ENTRIES=1024 jhb> options KTR_MASK=KTR_INTR jhb> options KTR_COMPILE=0x3fffff jhb> options KTR_EXTEND Drew To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe cvs-all" in the body of the message