[geeks] freebsd error

Shannon Hendrix shannon at widomaker.com
Fri Dec 21 20:07:37 CST 2007


I just created an embedded image based on FreeBSD, and when booting it  
I get a couple of fatal errors I've not seen before:

...
Error -- unmatched control structure "target"
Consoles: internal video/keyboard
BIOS drive C: is disk0
BIOS drive D: is disk1
BIOS 638kB/260032kB available memory

FreeBSD/i386 bootstrap loader, Revision 1.1
(root at logal.cse.buffalo.edu, Sun Dec 2 15:52:00 UTC 2007)
Can't work out which disk we are booting from.
Guessed BIOS device 0xffffffff not found by probes, defaulting to disk0:

panic: free: guard1 fail @ 0x5c24c from /usr/src/sys/boot/i386/ 
loader/../../common/module.c:959


This happens on VMware (my build system) and the real target hardware.

I do create custom Forth boot code for the third stage, but it is  
unchanged from three other embedded builds I maintain which work  
perfectly.

The only difference is this is a 32-bit FreeBSD 7.x platform, and the  
others are 64-bit.

It's a real simple little box with an IDE flash drive, that's it.

The VM I created boots from a virtual SCSI drive for doing  
development, and I write generated boot images (1GB flash images) to  
the IDE primary master, and then reboot to that drive for testing.

The BIOS has the IDE primary as first BIOS drive, drive C, FreeBSD / 
dev/ad0.

This should be a very simple thing, and I've done it dozens of times,  
and now suddenly it isn't working.

Any ideas appreciated.

People have asked the same question on FreeBSD lists, and no one ever  
answers.

Bashing Forth and C is about all I know how to do, so I don't really  
know where to start in debugging this, and I suck at the Forth part.   
I don't do any drive manipulation in the Forth code, so that shouldn't  
be it any way.  It's just for controlling the boot
menu on these systems.

The kernel panic is occuring in a loader function that handles module  
directories, and the "unmatched..." error comes from the Forth  
interpreter.

I have probably written some bad Forth, and don't know enough to see  
it easily, although it would be nice if the kernel did something  
besides panic as a result.




-- 
"Where some they sell their dreams for small desires."



More information about the geeks mailing list