Loader broken in Head?
mpp at mail.mppsystems.com
Thu Nov 1 19:42:15 PDT 2007
On Thu, Nov 01, 2007 at 11:23:35AM -0400, John Baldwin wrote:
> On Wednesday 31 October 2007 09:37:48 pm Mike Pritchard wrote:
> > I was seeing a similar problem. Booting from a floppy disk twice would
> > probably be faster than booting off the hard disk. I had just done
> > a makeworld, and updated the boot blocks on the disk (it previously had
> > a pretty old install on it). But the system would eventually boot, and
> > not hang up. I noticed that Red Necks boot loader build date was the
> > same as the version I was having problems with.
> > Fortunately, I have a 2nd HD in the machine with a 7.0 install,
> > and installed the boot blocks from that HD to the one I was having
> > problems with, and copied over /boot/loader from that HD.
> > No more problems. System boots as fast as ever.
> > So yes, I think there is something wrong with the current loader.
> Did you get the latest loader? For example, do you have this fix which might
> result in significantly slower disk I/O since w/o it every disk I/O is
> attempted 3 times with 2 drive resets in between:
> jhb 2007-10-25 16:53:35 UTC
> FreeBSD src repository
> Modified files:
> sys/boot/i386/libi386 biosdisk.c
> Break out of the I/O retry loop as soon as an I/O operation succeeds rather
> than always retrying operations three times.
> Submitted by: nyan
> Revision Changes Path
> 1.53 +2 -0 src/sys/boot/i386/libi386/biosdisk.c
I'd be glad to try, if you could tell me how to build the loader...
or if I'm building it correctly, if someone could fix this compile
error I see (see below). And the couple of warnings I see compiling make
me nervous too. I don't want to mess around too much until I'm sure
I'm building it correctly, because I'd like to leave this machine bootable :)
Other than that, if a fresh -current loader still doesn't fix my
problem, I'm more than willing to start backing out recent commits
to find which commit might be the problem.
With 8.0-current sources as of a couple of hours ago, I
get the same compile error trying any of these:
cd /usr/src/sys && make
cd /usr/src/sys && make boot
cd /usr/src/sys/boot && make
cd /usr/src/sys/boot/i386 && make
all fail with:
===> i386/gptboot (all)
===> i386/kgzldr (all)
===> i386/libi386 (all)
cc -O2 -fno-strict-aliasing -pipe -DLOADER_NFS_SUPPORT -DCOMPORT=0x3f8 -DCOMSPEED=9600 -DSMBIOS_SERIAL_NUMBERS -DTERM_EMU -Dalloca=__builtin_alloca -I/shared/src/sys/boot/i386/libi386/../../common -I/shared/src/sys/boot/i386/libi386/../btx/lib -I/shared/src/sys/boot/i386/libi386/../../../contrib/dev/acpica -I/shared/src/sys/boot/i386/libi386/../../.. -I. -I/shared/src/sys/boot/i386/libi386/../../../../lib/libstand/ -ffreestanding -mpreferred-stack-boundary=2 -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -c /shared/src/sys/boot/i386/libi386/biosmem.c
/shared/src/sys/boot/i386/libi386/biosmem.c: In function 'bios_getmem':
/shared/src/sys/boot/i386/libi386/biosmem.c:61: error: 'SMAP_TYPE_MEMORY' undeclared (first use in this function)
/shared/src/sys/boot/i386/libi386/biosmem.c:61: error: (Each undeclared identifier is reported only once
/shared/src/sys/boot/i386/libi386/biosmem.c:61: error: for each function it appears in.)
*** Error code 1
Stop in /shared/src/sys/boot/i386/libi386.
*** Error code 1
Stop in /shared/src/sys/boot/i386.
*** Error code 1
Stop in /shared/src/sys/boot.
mpp @ FreeBSD.org
"If tyranny and oppression come to this land, it will be in the guise
of fighting a foreign enemy." - James Madison (1787)
More information about the freebsd-current