Vinum starting at boot for root filesystem - 5.3-RELEASE

Karl Denninger karl at
Tue Jan 18 11:56:05 PST 2005

I've done this before with 4.x, but am running into a problem with 5.3-RELEASE
in an attempt to move over production machines to the 5.x branch.

I have done the following:

1. Set up a "dummy" root slice, containing the root (this was used to
   load the operating system.)  No problems here.

2. Set up the rest of both SATA disks as a "vinum" slice, and set up
   the mirrored plexes and subdisks within it.  No problems there; all 
   plexes and subdisks are shown as 'up'.  Newfs'd appropriately, mounting 
   all the vinum'd filesystems work fine.  I/O tests to these file systems 
   show no problems.

3. Copied the root slice to /dev/vinum/root (using dump/restore), while booted 
   on the "old" root.  No problem there either.

4. Fixed the label on the boot device to move the "old" root under
   the 'd' slice, and created the 'dummy root' slice entry as slice
   'a'.  Validation with "fsck -n" passes - I can "see" the "faked" root 
   slice properly when mounted read-only, and when FSCKing it, so the label
   is ok.

5. Stuck 'vinum.autostart="YES"' and 'vinum_load="YES"' in the 
   /boot/loader.conf file on the VINUM'd root filesystem, to cause the
   vinum KLD to be loaded and started on boot, as stated in
   as the proper procedure for 5.3-RELEASE.

The system boots off the VINUM'd "faked" root slice ok, and comes up normally
UNTIL it reaches the end of the device probe.  

I then get:

vinum: loaded
vinum: no drives found

followed by (of course) a failure to mount the root filesystem.

But the two id lines for the SATA drives are directly above the VINUM
banner!  The disks are definitely there, otherwise I couldn't have booted
from one of them.

Attempting to do this the "old" way (compatable with 4.x) by explicitly 
naming the disk devices involved in the /boot/loader.conf file also fails
with identical results.

If I specify /dev/ad4s1d (the old root filesystem) I can get into the 
system with THAT as the root - but that's the old, pre-VINUM'd root

Typing "vinum list" from there shows no drives or plexes.

HOWEVER, a "vinum start" reads both drive VINUM configuration tables, loads 
all plexes, and the filesystems are there!  I can then mount them and all is
well - well, ok, except that I'm on the "wrong", non-redundant root.

It appears that "autostart" is failing to read the disk devices for the
vinum configuration tables, even though (from the above) it appears that
it is indeed being executed at the appropriate time.

Is this broken in 5.3 and/or is there a workaround?  

PS: Attempting to "vinum start" without first remounting the root device
    read/write results in an immediate panic with a "dangling vnode"
    message as well.  Since I never get far enough to boot "automatically"
    into the vinum'd root filesystem I have no idea if that would nail me
    if I solved the original problem or not....

Karl Denninger (karl at Internet Consultant & Kids Rights Activist	My home on the net - links to everything I do!		Your UNCENSORED place to talk about DIVING!		SPAM FREE mailboxes - FREE FOR A LIMITED TIME!	Musings Of A Sentient Mind

More information about the freebsd-questions mailing list