Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 19 Aug 2005 23:02:17 -0600
From:      "Kenneth D. Merry" <ken@FreeBSD.org>
To:        John Baldwin <jhb@FreeBSD.org>
Cc:        freebsd-current@FreeBSD.org
Subject:   Re: BTX problems
Message-ID:  <20050820050217.GA66339@nargothrond.kdm.org>
In-Reply-To: <200508161339.49986.jhb@FreeBSD.org>
References:  <20050813221234.GA23162@nargothrond.kdm.org> <200508161339.49986.jhb@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Aug 16, 2005 at 13:39:48 -0400, John Baldwin wrote:
> On Saturday 13 August 2005 06:12 pm, Kenneth D. Merry wrote:
> > 
> > I just updated a machine from -current as of late March to -current as of
> > last night, and I'm having trouble booting it.
> > 
> > It's a dual 1GHz Pentium III box, Supermicro 370DE6 motherboard.
> > (Serverworks chipset.)  It is booting off of an onboard Adaptec 7899.
> > 
> > When I try to boot it, I get some BTX errors and BTX halts:
> > 
> > http://people.freebsd.org/~ken/btx_halted.20050813/IMG_4943.JPG
> > http://people.freebsd.org/~ken/btx_halted.20050813/IMG_4944.JPG
> > 
> > (Same information, the first one was taken with flash and is a little more
> > washed out, the second one is taken without flash and is therefore a tad 
> > more blurry.)
> > 
> > The loader from March works fine, but the new one fails.  It's 100%
> > repeatable.
> > 
> > Anyone have any ideas what's going on?
> 
> int=00000005  err=00000000  efl=00010a17  eip=36f63583
> eax=00032174  ebx=0384c000  ecx=0005c360  edx=0002e7e6
> esi=32034048  edi=00000022  ebp=000384c0  esp=ca083384
> cs=002b  ds=0033  es=0033    fs=0033  gs=0033  ss=0033
> cs:eip=62 63 2f 6c 6f 63 61 6c-65 2f 6c 6d 6f 6e 65 74
>        61 72 79 2e 63 2c 76 20-31 2e 31 32 2e 32 2e 32
> ss:esp=ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ff
>        ff ff ff ff ff ff ff ff-ff ff ff ff ff ff ff ff
> BTX halted
> 
> Well, your stack is way off in the weeds and so is your instruction pointer, 
> so I'm not sure what else you can do there.  It's executing a string, so 
> little surprise that it eventually faulted:
> 
> 
> > echo " 62 63 2f 6c 6f 63 61 6c-65 2f 6c 6d 6f 6e 65 74 61 72 79 2e 63 2c 76 
> 20-31 2e 31 32 2e 32 2e 32" | tr '-' ' ' | sed -e 's/ / 0x/g' | dh | hd
> 
> 00000000  62 63 2f 6c 6f 63 61 6c  65 2f 6c 6d 6f 6e 65 74  |bc/locale/lmonet|
> 00000010  61 72 79 2e 63 2c 76 20  31 2e 31 32 2e 32 2e 32  |ary.c,v 1.12.2.2|
> 00000020
> 
> There haven't been a whole lot of changes.  My guess would be the recently 
> added smbios support.  You can probably just comment out the call to 
> smbios_detect() in sys/boot/i386/loader/main.c as a simple test for that.  It 
> could also possibly be the multiple console support in which case it would be 
> easiest to just step your sys/boot tree back using CVS.  The good news is 
> that sys/boot is largely self-contained so you can step it back while keeping 
> the rest of the tree up to date for testing purposes at least.

Thanks for the tips!

Commenting out smbios_detect() did the trick.  The loader works fine after
that.

So now what?  Is there a way to fix it so it won't crash on my system?

Ken
-- 
Kenneth Merry
ken@FreeBSD.ORG



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20050820050217.GA66339>