]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
DDF: DDF_Missing devices should not be reported as 'working' by getinfo_super_ddf
authorNeilBrown <neilb@suse.de>
Tue, 6 May 2014 01:29:49 +0000 (11:29 +1000)
committerNeilBrown <neilb@suse.de>
Wed, 21 May 2014 01:54:48 +0000 (11:54 +1000)
Signed-off-by: NeilBrown <neilb@suse.de>
super-ddf.c

index da45be9c1c5ea4cc7086efcff951dda4020b9f1d..5a07c46e93f298de5bf71fbe4119b6c066d2d274 100644 (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;