From 17115e0388ece8d7141c0282c88e7dfc61953f92 Mon Sep 17 00:00:00 2001 From: NeilBrown Date: Mon, 16 Jan 2006 22:14:57 -0800 Subject: [PATCH] [PATCH] md: Clear clevel whenever level is set. The 'level' of an md array can be set as either a number of a string. When one is set, the other must be marked 'undefined'. This wasn't being done in one place: where new arrays are created. Result: if md1 is a raid1, it is stopped and a raid5 is created there, it might still appear to be a raid1. Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- drivers/md/md.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/md/md.c b/drivers/md/md.c index 1778104e106c..7145cd150f7b 100644 --- a/drivers/md/md.c +++ b/drivers/md/md.c @@ -3395,6 +3395,7 @@ static int set_array_info(mddev_t * mddev, mdu_array_info_t *info) mddev->ctime = get_seconds(); mddev->level = info->level; + mddev->clevel[0] = 0; mddev->size = info->size; mddev->raid_disks = info->raid_disks; /* don't set md_minor, it is determined by which /dev/md* was -- 2.30.2