From owner-freebsd-sparc Mon Dec 31 1:58:11 2001 Delivered-To: freebsd-sparc@freebsd.org Received: from lukla.Sun.COM (lukla.Sun.COM [192.18.98.31]) by hub.freebsd.org (Postfix) with ESMTP id 63F0937B41D for ; Mon, 31 Dec 2001 01:58:08 -0800 (PST) Received: from esunmail ([129.147.58.121]) by lukla.Sun.COM (8.9.3+Sun/8.9.3) with ESMTP id CAA03080 for ; Mon, 31 Dec 2001 02:59:06 -0700 (MST) Received: from smi.sun.com ([127.0.0.1]) by esunmail.central.sun.com (iPlanet Messaging Server 5.1 (built Sep 5 2001)) with ESMTP id <0GP70029FCWPC9@esunmail.central.sun.com> for freebsd-sparc@FreeBSD.ORG; Mon, 31 Dec 2001 02:55:37 -0700 (MST) Received: from [192.18.102.130] by esunmail.central.sun.com (mshttpd); Mon, 31 Dec 2001 01:55:37 -0800 Date: Mon, 31 Dec 2001 01:55:37 -0800 From: Jamey Wood Subject: Re: compiling a sparc64 kernel? To: freebsd-sparc@FreeBSD.ORG Message-id: <14b5819239.1923914b58@smi.sun.com> MIME-version: 1.0 X-Mailer: iPlanet Webmail Content-type: text/plain; charset=us-ascii Content-language: en Content-transfer-encoding: 7BIT Content-disposition: inline X-Accept-Language: en Sender: owner-freebsd-sparc@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.org > Hmmm, I must have overlooked something. Can you please decode the > tpc addresses (using gdb from the s64-toolchain archive or nm)? > If they are not making sense, please comment out all instructions that > modify %tl in exception.s and look at the addresses again (this will > break things later on, but for early crashes it makes debugging a lot > easier because the original trap registers are preserved). Sorry, the results I showed before were the result of an error on my part in applying your patch. Now that I (hopefully) have it applied right to a cvs tree from 12/24, I get: sparc64_init: mdp=0xc01ba000 kmdp=0xc01ba000 boothowto=0 envp=0xc01b8000 end=0x0 stray interrupt 2033 Copyright (c) 1992-2001 The FreeBSD Project. Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 The Regents of the University of California. All rights reserved. FreeBSD 5.0-CURRENT #1: Mon Dec 31 02:29:25 GMT 2001 woodjr@buddy:/usr/src/sys_12_24_2001/sparc64/compile/sparc64 Preloaded elf kernel "/kernel" at 0xc01ba000. Timecounter "tick" frequency 166987562 Hz CPU: unknown; please e-mail the following value together with the exact name of your processor to . version register: <0x22001040000507> nexus0: nexus0: , type (unknown) (no driver attached) nexus0: , type sbus (no driver attached) rn_init: radix functions require max_keylen be set Mounting root from ufs:/dev/md0c Root mount failed: 22 Manual root filesystem specification: : Mount using filesystem eg. ufs:da0a ? List valid disk boot devices Abort manual input mountroot> RED State Exception TL=0000.0000.0000.0005 TT=0000.0000.0000.0080 TPC=0000.0000.c002.4d5c TnPC=0000.0000.c002.4d60 TSTATE=0000.0099.5800.1501 TL=0000.0000.0000.0004 TT=0000.0000.0000.0068 TPC=0000.0000.c002.8798 TnPC=0000.0000.c002.879c TSTATE=0000.0044.5800.1501 TL=0000.0000.0000.0003 TT=0000.0000.0000.0010 TPC=0000.0000.c002.49c0 TnPC=0000.0000.c002.49c4 TSTATE=0000.0044.5800.1500 TL=0000.0000.0000.0002 TT=0000.0000.0000.004e TPC=0000.0000.c002.87c0 TnPC=0000.0000.c002.87c4 TSTATE=0000.0044.5800.1600 TL=0000.0000.0000.0001 TT=0000.0000.0000.004e TPC=0000.0000.c00d.7138 TnPC=0000.0000.c00d.713c TSTATE=0000.0000.0000.1603 So I do get through to the mountroot and see a "Stray interrupt 2033" message. But the RED state exception happens a second or two after getting to the mountroot (even with no input from me). If it helps, I tried to decode the TPC's in that trace and get: (gdb) x/a 0xc0024d5c 0xc0024d5c : 0x9de3bf409c23a018 (gdb) x/a 0xc0028798 0xc0028798 : 0xe073a957a3500000 (gdb) x/a 0xc00249c0 0xc00249c0 : 0x9de3bf4095520000 (gdb) x/a 0xc00287c0 0xc00287c0 : 0xd073a95fd273a96f (gdb) x/a 0xc00d7138 0xc00d7138 : 0xc0722018106ffff9 --Jamey To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-sparc" in the body of the message