From: NeilBrown Date: Wed, 6 Aug 2014 06:34:27 +0000 (+1000) Subject: md/raid0: check for bitmap compatability when changing raid levels. X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=a8461a61c241a25afedbe493c13d98a6e0cf4246;p=GitHub%2FLineageOS%2FG12%2Fandroid_kernel_amlogic_linux-4.9.git 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 --- 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);