On Thursday June 7, [EMAIL PROTECTED] wrote:
> Hi Neil;
> 
> I am hoping you are going to tell me this is already solved,
> but here goes...

Almost :-)

> 
> scenario:
>       hda4, hdb4, and hdc4 in a raid 5 with no hotspare.
> 
> 
> With 2.4.3 XFS kernels, it seems that a raid 5 does not come
> up correctly if the first disk is unavailable.  The error message
> that arises in the syslog from the md driver is:
> 
> md: could not lock hda4, zero size?  marking faulty
> md: could not import hda4.
> md: autostart hda4 failed!
> 

Yep. This happens when you use "raidstart".
It doesn't happen if you set the partition type to LINUX_RAID and use
the autodetect functionality.

raidstart just takes one drive, gives it to the kernel, and say "look
in the superblock for the major/minor of the other devices".

This has several failure modes.

It is partly for this reason that I am writting a replacement "md"
management tool - mdctl.

I wasn't going to announce it just yet because it is very incomplete,
but you have pushed me into it :-)

 http://www.cse.unsw.edu.au/~neilb/source/mdctl/mdctl-v0.2.tgz

is a current snapshot.  I compiles (for me) and 
   mdctl --help

works. "mdctl --Assemble" is nearly there.

Comments welcome.

In 2.2, there is no other way to start an array than "give one device
to the kernel and tell it to look for others".  So mdctl will
find the device numbers of the devices in the array and re-write the
super block if necessary to make the array start.

In 2.4, mdctl can use a 
  SET_ARRAY_INFO / ADD_NEW_DISK* / RUN_ARRAY
sequence to start a new array.

If you don't like the name "mdctl" (I don't), please suggest another.

NeilBrown
-
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to [EMAIL PROTECTED]

Reply via email to