ddf: Don't consider 'dl' entries with state_fd < 0

These have been marked as invalid (recently failed) so
don't trust the major/minor associated with them.

Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
NeilBrown 2011-03-15 14:53:00 +11:00
parent 0c4f6e378b
commit 77632af906
1 changed files with 2 additions and 1 deletions

View File

@ -3191,7 +3191,8 @@ static void ddf_set_disk(struct active_array *a, int n, int state)
/* and find the 'dl' entry corresponding to that. */
for (dl = ddf->dlist; dl; dl = dl->next)
if (mdi->disk.major == dl->major &&
if (mdi->state_fd >= 0 &&
mdi->disk.major == dl->major &&
mdi->disk.minor == dl->minor)
break;
if (!dl)