Grow: Frozen array can't be idle
When array is frozen but there is no recovery/reshape in mdstat, check_idle() will not return error but grow countinue can still working. Check is array frozen. Do not use sysfs sync_action parameter because it doesn't exist for Raid0, simply check metadata_version in mdstat. Signed-off-by: Mariusz Tkaczyk <mariusz.tkaczyk@intel.com> Signed-off-by: Jes Sorensen <jsorensen@fb.com>
This commit is contained in:
parent
18552ef041
commit
84d88fd885
3
Grow.c
3
Grow.c
|
@ -754,7 +754,8 @@ static int check_idle(struct supertype *st)
|
||||||
for (e = ent ; e; e = e->next) {
|
for (e = ent ; e; e = e->next) {
|
||||||
if (!is_container_member(e, container))
|
if (!is_container_member(e, container))
|
||||||
continue;
|
continue;
|
||||||
if (e->percent >= 0) {
|
/* frozen array is not idle*/
|
||||||
|
if (e->percent >= 0 || e->metadata_version[9] == '-') {
|
||||||
is_idle = 0;
|
is_idle = 0;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue