Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 17 Nov 2001 17:41:25 -0800
From:      Peter Wemm <peter@wemm.org>
To:        Doug White <dwhite@resnet.uoregon.edu>
Cc:        Sandeep Joshi <sandeepj@research.bell-labs.com>, hackers@FreeBSD.ORG
Subject:   Re: Tracking down "BTX halted" 
Message-ID:  <20011118014125.B5EDA38CC@overcee.netplex.com.au>
In-Reply-To: <Pine.BSF.4.33.0111161133390.44246-100000@resnet.uoregon.edu> 

next in thread | previous in thread | raw e-mail | index | archive | help
Doug White wrote:
> On Fri, 16 Nov 2001, Sandeep Joshi wrote:
> 
> > I changed the disklabels on a few SCSI disks and now
> > I keep getting these "BTX halted" messages every time
> > I reboot.
> 
> Lemme guess, you're running them in 'dangerously dedicated' mode.
> 
> There is a bug in Adaptec BIOSen that they will not tolerate DD disks.
> 
> Put proper partition tables on them and they should behave.

It's not so much a BIOS bug but the fact that we specify an illegal
geometry in the fake fdisk table.  This can cause bios's that are
about to use the fdisk table to emulate C/H/S geometry to do a divide by
zero.  This is usually what shows up in the BTX faults.

Both of the posted BTX faults have "int=00000000" which is a divide-by-zero.
see i386/i386/machdep.c for identifying the int values:
  setidt(0, &IDTVEC(div),  SDT_SYS386TGT, SEL_KPL, GSEL(GCODE_SEL, SEL_KPL));
         ^^^  int 0 => 'div' (divide by zero)

The specific problem is that the fake fdisk table specifies 256 heads, which
is not possible to represent in the int13 interface.  The maximum allowed
is 255 heads.  (hint: 256 in an 8-bit register rounds to 0, hence the
divide-by-zero).

This is the cause of EFI (ia64) hangs, the infamous Thinkpad T20/A20 series
system lockups, countless bios crashes, etc.

The problem is that you cant *not* get dangerously-dedicated mode.  Our
boot1 has got a dangerously-dedicated fdisk table unconditionally compiled
in.  You can fix it so that it doesn't crash stuff, but we still shouldn't
be forcing it on people like that.

Cheers,
-Peter
--
Peter Wemm - peter@FreeBSD.org; peter@yahoo-inc.com; peter@netplex.com.au
"All of this is for nothing if we don't go to the stars" - JMS/B5


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




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