I was experimenting with disk formats yesterday, and wanted to
see if the BIOS on one of my machines would boot a hard drive
with a boot sector (like on a floppy), but no real MBR (i.e., the "AA55"
magic number is in place at offset 510, but there is no partition
table; more specifically, the "partition table" contains code).
This is what Bruce Evans has called "very dangerously dedicated"
(see
http://www.FreeBSD.org/cgi/getmsg.cgi?fetch=102186+104290+/usr/local/www/db/text/1999/freebsd-current/19990808.freebsd-current).
The BIOS on my machine couldn't deal with it, which didn't surprise
me that much. The surprise came when I booted FreeBSD 3.2 off a
floppy to try to fix my hard disk. The wd driver tries to read
the garbage partition table, and wedges:
wd0: error reading extended partition table reading fsbn 338137092
wd0s1c: hard error reading fsbn 1 (status 51<rdy,seekdon,err> error 4<abort>)
wd0s2c: timeout waiting to give command reading fsbn 1 (status 0 error <abort>)
with the last line being repeated at about 1-second intervals,
ad infinitum.
Now, this strikes me as a bug: sure, the partition table contains
garbage, so go ahead and return ENODEV or ENXIO on access to
wd0s1, but the whole system is unbootable, even if the kernel
is on a floppy.
By the way, I also struck out with DOS fdisk: it took one look
at the garbage partition table, and wedged. I'll be trying a
Linux rescue disk next. If that fails, too, then I seem to
have generated a 1-Gigabyte hockey puck (you didn't think I
was trying this with a new disk, did you)?
Anyway, now you know, my friends, how "very dangerously dedicated mode"
got its name :-).
Jim Shankland
NLynx Systems, Inc.
To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-hackers" in the body of the message