• NeilBrown's avatar
    md: Always set RECOVERY_NEEDED when clearing RECOVERY_FROZEN · 45eaf45d
    NeilBrown authored
    md_check_recovery will skip any recovery and also clear
    MD_RECOVERY_NEEDED if MD_RECOVERY_FROZEN is set.
    So when we clear _FROZEN, we must set _NEEDED and ensure that
    md_check_recovery gets run.
    Otherwise we could miss out on something that is needed.
    
    In particular, this can make it impossible to remove a
    failed device from an array is the  'recovery-needed' processing
    didn't happen.
    Suitable for stable kernels since 3.13.
    
    Cc: stable@vger.kernel.org (3.13+)
    Reported-and-tested-by: default avatarJoe Lawrence <joe.lawrence@stratus.com>
    Fixes: 30b8feb7Signed-off-by: default avatarNeilBrown <neilb@suse.de>
    45eaf45d
md.c 222 KB