i386/104709: boot2 -> BTX halted, but loader(8) boots fine

Anton Shterenlikht mexas at bris.ac.uk
Mon Oct 23 04:50:44 PDT 2006

>Number:         104709
>Category:       i386
>Synopsis:       boot2 -> BTX halted, but loader(8) boots fine
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-i386
>State:          open
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Mon Oct 23 11:50:19 GMT 2006
>Originator:     Anton Shterenlikht
>Release:        6.0-RELEASE
Bristol University
FreeBSD 6.0-RELEASE #1: Thu Sep 14 10:40:41 BST 2006     /usr/src/sys/i386/compile/SC  i386
I'm trying to bootstrap the system using boot2 directly (bypassing
loader(8)) as described in the Admin Guide, in the Architecture Guide
and in the boot(8) man page. I have 3 different kernels. However,
no matter which kernel I choose at the boot prompt,
I always get "BTX halted". An example is reporduced below.
FreeBSD/i386 boot
Default 0:ad(0,a)/boot/loader
boot: /boot/kernel/kernel
int=00000006  err=00000000  efl=00010002  eip=c0443c30
eax=c0443c30  ebx=c0a273c4  ecx=c0a273c4  edx=a020001e
esi=00000050  edi=c0443c30  ebp=00002275  esp=0009eaf0
cs:eip=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
ss:esp=69 95 00 00 00 00 00 80-1e 00 20 a0 00 00 00 00
       00 00 00 00 00 00 00 00-a0 dc 00 78 4b 09 00 00
BTX halted

At this point I have to reboot with CTRL+ALT+DEL.

Only the following registers change for 3 different kernels:
eip = eax = edi, ebx = ecx, ebp. All other values do not change from one
kernel to another.

Bootstrapping with loader(8) works fine, I can load any kernel.

I use FreeBSD 6.0-release on compaq armada 1700 laptop with BIOS
dated 11/30/1999. I cannot find a newer BIOS version for this model.

I've read several reports regarding BTX halted issue on old compaq.
Most people report turing off UDMA or DMA in BIOS as a solution.
I cannot see any DMA settings in my BIOS (I used Compaq Computer
Setup for Portables, ver 2.01H dated 24 Jan 1999). I'm also not sure
if it applies in my case as booting with loader(8) works with no
Reboot and hit any key before loader(8) starts. Then load any kernel
from boot2 prompt.
no idea

More information about the freebsd-i386 mailing list