From owner-freebsd-alpha Wed Aug 30 1:37:44 2000 Delivered-To: freebsd-alpha@freebsd.org Received: from anchor-post-30.mail.demon.net (anchor-post-30.mail.demon.net [194.217.242.88]) by hub.freebsd.org (Postfix) with ESMTP id D841937B43E for ; Wed, 30 Aug 2000 01:37:41 -0700 (PDT) Received: from nlsys.demon.co.uk ([158.152.125.33] helo=herring.nlsystems.com) by anchor-post-30.mail.demon.net with esmtp (Exim 2.12 #1) id 13U3NH-000IHL-0U; Wed, 30 Aug 2000 09:37:36 +0100 Received: from salmon.nlsystems.com (salmon.nlsystems.com [10.0.0.3]) by herring.nlsystems.com (8.9.3/8.8.8) with ESMTP id JAA22669; Wed, 30 Aug 2000 09:39:21 +0100 (BST) (envelope-from dfr@nlsystems.com) Date: Wed, 30 Aug 2000 09:44:32 +0100 (BST) From: Doug Rabson To: Andrew Gallatin Cc: freebsd-alpha@freebsd.org Subject: Re: panic very early in boot In-Reply-To: <14764.7637.838295.31768@grasshopper.cs.duke.edu> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-alpha@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.org On Tue, 29 Aug 2000, Andrew Gallatin wrote: > > I just tried to take my UP1000 to -current. Built the world & used > make buildkernel / make installkernel to build the kernel. Sources > were current as of 4am EDT. Plus version 1.2 of busspace.c > > I'm seeing a KSP not valid halt caused by taking a memory management > fault very early in the boot process. After editing trap to print out > all the faults it takes, I see this as the very first one (and the one > that starts the spiral of faults in trap/vm_fault) > > fatal kernel trap: > > trap entry = 0x2 (memory management fault) > a0 = 0xdeadbeeffeedface > a1 = 0x1 > a2 = 0x0 > pc = 0xfffffc0000628aec > ra = 0xfffffc0000628aa8 > curproc = 0 > > This is coming from: > > (gdb) l *0xfffffc0000628aec > 0xfffffc0000628aec is in siocnattach (../../isa/sio.c:3127). > 3122 * to have the correct value. Also, if we didn't > 3123 * just read the speed from the hardware, then we > 3124 * need to set the speed in hardware so that > 3125 * switching it later is null. > 3126 */ > 3127 cfcr = inb(siocniobase + com_cfcr); > 3128 outb(siocniobase + com_cfcr, CFCR_DLAB | cfcr); > 3129 outb(siocniobase + com_dlbl, > 3130 COMBRD(comdefaultrate) & 0xff); > 3131 outb(siocniobase + com_dlbh, > > > The machine in question is a UP1000 (irongate chipset). Its running > with a serial console.. > > I'm assuming the problem is with the new busspace. Does the > 0xdeadbeeffeedface address mean anything to you? This must be because my blind changes to the irongate chipset driver missed something out. Reading the code, I think the problem is this: Index: irongate.c =================================================================== RCS file: /home/ncvs/src/sys/alpha/pci/irongate.c,v retrieving revision 1.2 diff -u -r1.2 irongate.c --- irongate.c 2000/08/28 21:48:03 1.2 +++ irongate.c 2000/08/30 08:39:10 @@ -119,7 +119,7 @@ irongate_init() { static int initted = 0; - struct bwx_space io_space, mem_space; + static struct bwx_space io_space, mem_space; if (initted) return; initted = 1; -- Doug Rabson Mail: dfr@nlsystems.com Nonlinear Systems Ltd. Phone: +44 20 8348 3944 To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-alpha" in the body of the message