Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 25 May 2008 19:05:13 +1200
From:      Mark Kirkwood <markir@paradise.net.nz>
To:        John Baldwin <jhb@freebsd.org>
Cc:        Kostik Belousov <kostikbel@gmail.com>, freebsd-stable@freebsd.org, James Seward <jamesoff@gmail.com>
Subject:   Re: BTX loader hangs after version info
Message-ID:  <48390FA9.5080503@paradise.net.nz>
In-Reply-To: <200805231811.01936.jhb@freebsd.org>
References:  <720051dc0805220159n23eb6205yfcf9450be7af5c77@mail.gmail.com> <200805230829.09524.jhb@freebsd.org> <20080523132645.GO29770@deviant.kiev.zoral.com.ua> <200805231811.01936.jhb@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
John Baldwin wrote:
>
> Try this patch.  I'm not 100% certain this will fix it as I can't reproduce
> the issue, but I think it might help.  Specifically, when the boot code makes
> a v86 call, the loader/boot2/whatever swaps in/out a new set of registers via
> the v86 structure including the eflags register.  However, none of the boot
> programs actually initialized the v86 structure.   Thus, the BIOS routines
> would start off running with whatever garbage was in v86.efl when each boot
> program started.  This meant that we could end up invoking BIOS routines with
> interrupts disabled, and I think this might explain a hard hang (if a BIOS
> routine was waiting for an interrupt the interrupt would never fire).  The
> patch fixes all the boot programs to initialize v86 to a better known state. 
> At the least it sets v86.efl to a sane value (0x202) rather than random.  (The
> random might have always been 0x0 BTW, not sure on that one.)
>
>   
Thanks John,

Unfortunately this patch does *not* cure the issue for my old Supermicro 
P3TDDE, it still hangs just before presenting the menu. I had to boot 
off the livefs and copy /boot/loader.old -> /boot/loader to get back to 
being bootable again - but at least the old fella is on a more 
up-to-date 7-STABLE now :-)

Cheers

Mark




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