Degraded raid handling

Phillip Susi psusi at cfl.rr.com
Fri May 18 15:21:55 UTC 2007


Heinz Mauelshagen wrote:
> Sure. The current code tries activating degraded mirrors with a
> linear mapping. If that needs enhancement, please send patches.

Ok, so to be sure: if dmraid finds only one disk in the mirror, it will 
activate it in a degraded state, and update the on disk metadata to 
indicate the state of the set is inconsistent?  And there is no option 
to ask it not to degrade the set?

Could you suggest a part of the source I might start looking at to add 
such an option?

>>> Use "dmraid -r -c... device-path".
>> I don't think this will do what I need it to.  This will just read the 
>> metadata of the disk and report if that metadata says the set is ok or 
>> inconsistent.  Presumably it will say it is ok because up until now it 
>> has been, but now we can't find the second disk to build the set so the 
>> state of the set needs changed to inconsistent.
> 
> Well, you gotta find 2 drives for the mirror; if you only
> discover one you can react on it.

Huh?  The -r option combined with the device-path argument tells dmraid 
to only look at that specific device, does it not?  So it will read the 
metadata from that device and report what it says.  Since the last time 
the raid set was active, it was ok, so the metadata on that disk will 
say the set is ok, but if you were to ask dmraid to activate the set, it 
would be degraded to inconsistent because one of the disks is missing.

So what I need is a way to ask dmraid to assemble the raid set 
information from all discovered devices, and tell me if the set would be 
  changed to degraded if activated now.

> dmraid -tay ?

Hrm... the man page does not explain the -t flag.  Would -tay not also 
activate it?  Or just test activating it?  What sort of output would 
result if say, one of the disks is missing in the mirror?

>> If the mirror IS activated by dmraid with one disk missing, does dmraid 
>> update the metadata to indicate that the set is inconsistent?
> 
> Not yet. You'ld need to use the BIOS management util to do that for now.

Whoa, that sounds like a data loosing bug.  If dmraid activates the 
mirror in a degraded state, then the missing disk will become out of 
sync.  Without marking the disk as inconsistent, if the other disk 
reappears when you reboot, the bios will activate the set thinking it is 
consistent when it really is not, which can lead to incorrect operation 
and data loss.





More information about the Ataraid-list mailing list