summaryrefslogtreecommitdiffstats
path: root/drivers/md/md.c
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2012-05-22 05:55:27 +0200
committerNeilBrown <neilb@suse.de>2012-05-22 05:55:27 +0200
commita4a6125a074e1b08ee8ae34f700c5bca19eb9d18 (patch)
tree761a719a7d4f1a53d44349f7bef095368a9ae75a /drivers/md/md.c
parentmd/bitmap: make sure reshape request are reflected in superblock. (diff)
downloadlinux-a4a6125a074e1b08ee8ae34f700c5bca19eb9d18.tar.xz
linux-a4a6125a074e1b08ee8ae34f700c5bca19eb9d18.zip
md: allow array to be resized while bitmap is present.
Now that bitmaps can be resized, we can allow an array to be resized while the bitmap is present. This only covers resizing that involves changing the effective size of member devices, not resizing that changes the number of devices. Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'drivers/md/md.c')
-rw-r--r--drivers/md/md.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/drivers/md/md.c b/drivers/md/md.c
index 9e2336fbbd31..86adf4ac46cf 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
@@ -6153,11 +6153,7 @@ static int update_size(struct mddev *mddev, sector_t num_sectors)
*/
if (mddev->sync_thread)
return -EBUSY;
- if (mddev->bitmap)
- /* Sorry, cannot grow a bitmap yet, just remove it,
- * grow, and re-add.
- */
- return -EBUSY;
+
rdev_for_each(rdev, mddev) {
sector_t avail = rdev->sectors;