• Jonathan Brassow's avatar
    dm raid: support metadata devices · b12d437b
    Jonathan Brassow authored
    Add the ability to parse and use metadata devices to dm-raid.  Although
    not strictly required, without the metadata devices, many features of
    RAID are unavailable.  They are used to store a superblock and bitmap.
    The role, or position in the array, of each device must be recorded in
    its superblock.  This is to help with fault handling, array reshaping,
    and sanity checks.  RAID 4/5/6 devices must be loaded in a specific order:
    in this way, the 'array_position' field helps validate the correctness
    of the mapping when it is loaded.  It can be used during reshaping to
    identify which devices are added/removed.  Fault handling is impossible
    without this field.  For example, when a device fails it is recorded in
    the superblock.  If this is a RAID1 device and the offending device is
    removed from the array, there must be a way during subsequent array
    assembly to determine that the failed device was the one removed.  This
    is done by correlating the 'array_position' field and the bit-field
    variable 'failed_devices'.
    Signed-off-by: default avatarJonathan Brassow <jbrassow@redhat.com>
    Signed-off-by: default avatarAlasdair G Kergon <agk@redhat.com>