From a8461a61c241a25afedbe493c13d98a6e0cf4246 Mon Sep 17 00:00:00 2001 From: NeilBrown Date: Wed, 6 Aug 2014 16:34:27 +1000 Subject: [PATCH] md/raid0: check for bitmap compatability when changing raid levels. If an array has a bitmap, then it cannot be converted to raid0. Reported-by: Xiao Ni Signed-off-by: NeilBrown --- drivers/md/raid0.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/md/raid0.c b/drivers/md/raid0.c index 407a99e46f69..cf91f5910c7c 100644 --- a/drivers/md/raid0.c +++ b/drivers/md/raid0.c @@ -685,6 +685,12 @@ static void *raid0_takeover(struct mddev *mddev) * raid10 - assuming we have all necessary active disks * raid1 - with (N -1) mirror drives faulty */ + + if (mddev->bitmap) { + printk(KERN_ERR "md/raid0: %s: cannot takeover array with bitmap\n", + mdname(mddev)); + return ERR_PTR(-EBUSY); + } if (mddev->level == 4) return raid0_takeover_raid45(mddev);