FIX: After discarding array give chance monitor to remove it

When raid0 expansion occurs, takeover operation is used.
After backward takeover monitor remains in memory.

This happens due to remaining just removed active array in mdmon structures.
If there is no other monitored arrays, mdmon has to finish his work.

Problem was introduced in patch (2011.03.22):
    mdmon: Stop keeping track of RAID0 (and LINEAR) arrays.
Prior to this patch mdmon kicking occurs via replace_array() where
wakeup_monitor() was called.

Signed-off-by: Adam Kwolek <adam.kwolek@intel.com>
Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
Adam Kwolek 2011-03-28 13:56:49 +02:00 committed by NeilBrown
parent eb28e119b0
commit 84f3857fec
1 changed files with 1 additions and 0 deletions

View File

@ -462,6 +462,7 @@ static void manage_member(struct mdstat_ent *mdstat,
int level = map_name(pers, mdstat->level);
if (level == 0 || level == LEVEL_LINEAR) {
a->container = NULL;
wakeup_monitor();
return;
}
else if (a->info.array.level != level && level > 0) {