Monitor: Report NewArray when an array the disappeared, reappears.
Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
parent
9dad51d418
commit
0f760384eb
|
@ -513,6 +513,13 @@ static int check_array(struct state *st, struct mdstat_ent *mdstat,
|
||||||
* just make sure it is always different. */
|
* just make sure it is always different. */
|
||||||
array.utime = st->utime + 1;;
|
array.utime = st->utime + 1;;
|
||||||
|
|
||||||
|
if (st->err) {
|
||||||
|
/* New array appeared where previously had and error */
|
||||||
|
st->err = 0;
|
||||||
|
st->percent = RESYNC_NONE;
|
||||||
|
alert("NewArray", st->devname, NULL, ainfo);
|
||||||
|
}
|
||||||
|
|
||||||
if (st->utime == array.utime &&
|
if (st->utime == array.utime &&
|
||||||
st->failed == array.failed_disks &&
|
st->failed == array.failed_disks &&
|
||||||
st->working == array.working_disks &&
|
st->working == array.working_disks &&
|
||||||
|
@ -521,7 +528,6 @@ static int check_array(struct state *st, struct mdstat_ent *mdstat,
|
||||||
mse->percent == st->percent
|
mse->percent == st->percent
|
||||||
))) {
|
))) {
|
||||||
close(fd);
|
close(fd);
|
||||||
st->err = 0;
|
|
||||||
if ((st->active < st->raid) && st->spare == 0)
|
if ((st->active < st->raid) && st->spare == 0)
|
||||||
return 1;
|
return 1;
|
||||||
else
|
else
|
||||||
|
@ -714,7 +720,6 @@ static int add_new_arrays(struct mdstat_ent *mdstat, struct state **statelist,
|
||||||
*statelist = st;
|
*statelist = st;
|
||||||
if (test)
|
if (test)
|
||||||
alert("TestMessage", st->devname, NULL, info);
|
alert("TestMessage", st->devname, NULL, info);
|
||||||
alert("NewArray", st->devname, NULL, info);
|
|
||||||
new_found = 1;
|
new_found = 1;
|
||||||
}
|
}
|
||||||
return new_found;
|
return new_found;
|
||||||
|
|
Loading…
Reference in New Issue