DDF: DDF_Missing devices should not be reported as 'working' by getinfo_super_ddf

Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
NeilBrown 2014-05-06 11:29:49 +10:00
parent 25532b88a0
commit 4fe903aa8b
1 changed files with 2 additions and 1 deletions

View File

@ -2014,7 +2014,8 @@ static void getinfo_super_ddf(struct supertype *st, struct mdinfo *info, char *m
if (info->disk.raid_disk >= 0)
pde = ddf->phys->entries + info->disk.raid_disk;
if (pde &&
!(be16_to_cpu(pde->state) & DDF_Failed))
!(be16_to_cpu(pde->state) & DDF_Failed) &&
!(be16_to_cpu(pde->state) & DDF_Missing))
info->disk.state = (1 << MD_DISK_SYNC) | (1 << MD_DISK_ACTIVE);
else
info->disk.state = 1 << MD_DISK_FAULTY;