Skip to content

Commit

Permalink
md: fix v1.x metadata update when a disk is missing.
Browse files Browse the repository at this point in the history
If an array with 1.x metadata is assembled with the last disk missing,
md doesn't properly record the fact that the disk was missing.

This is unlikely to cause a real problem as the event count will be
different to the count on the missing disk so it won't be included in
the array.  However it could still cause confusion.

So make sure we clear all the relevant slots, not just the early ones.

Signed-off-by: NeilBrown <neilb@suse.de>
  • Loading branch information
NeilBrown committed Sep 17, 2010
1 parent 126925c commit ddcf352
Showing 1 changed file with 3 additions and 1 deletion.
4 changes: 3 additions & 1 deletion drivers/md/md.c
Original file line number Diff line number Diff line change
Expand Up @@ -1643,7 +1643,9 @@ static void super_1_sync(mddev_t *mddev, mdk_rdev_t *rdev)
bmask = queue_logical_block_size(rdev->bdev->bd_disk->queue)-1;
if (rdev->sb_size & bmask)
rdev->sb_size = (rdev->sb_size | bmask) + 1;
}
} else
max_dev = le32_to_cpu(sb->max_dev);

for (i=0; i<max_dev;i++)
sb->dev_roles[i] = cpu_to_le16(0xfffe);

Expand Down

0 comments on commit ddcf352

Please sign in to comment.