• NeilBrown's avatar
    md/raid5: detect and handle replacements during recovery. · 9a3e1101
    NeilBrown authored
    During recovery we want to write to the replacement but not
    the original.  So we have two new flags
     - R5_NeedReplace if this stripe has a replacement that needs to
       be written at some stage
     - R5_WantReplace if NeedReplace, and the data is available, and
       a 'sync' has been requested on this stripe.
    
    We also distinguish between 'sync and replace' which need to read
    all other devices, and 'replace' which only needs to read the
    devices being replaced.
    
    Note that during resync we always write to any replacement device.
    It might not need to be written to, but as we don't read to compare,
    we have to write to be sure.
    Signed-off-by: default avatarNeilBrown <neilb@suse.de>
    9a3e1101
raid5.c 165 KB