• NeilBrown's avatar
    md: Keep /proc/mdstat reporting recovery until fully DONE. · f7851be7
    NeilBrown authored
    Currently when a recovery completes, mdstat shows that it has finished
    before the new device is marked as a full member.  Because of this it
    can appear to a script that the recovery finished but the array isn't
    in sync.
    
    So while MD_RECOVERY_DONE is still set, keep mdstat reporting "recovery".
    Once md_reap_sync_thread() completes, the spare will be active and then
    MD_RECOVERY_DONE will be cleared.
    
    To ensure this is race-free, set MD_RECOVERY_DONE before clearning
    curr_resync.
    Signed-off-by: default avatarNeilBrown <neilb@suse.com>
    f7851be7
md.c 233 KB