[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 <neilb@suse.de> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
4c2645830e
commit
17115e0388
|
@ -3395,6 +3395,7 @@ static int set_array_info(mddev_t * mddev, mdu_array_info_t *info)
|
||||||
mddev->ctime = get_seconds();
|
mddev->ctime = get_seconds();
|
||||||
|
|
||||||
mddev->level = info->level;
|
mddev->level = info->level;
|
||||||
|
mddev->clevel[0] = 0;
|
||||||
mddev->size = info->size;
|
mddev->size = info->size;
|
||||||
mddev->raid_disks = info->raid_disks;
|
mddev->raid_disks = info->raid_disks;
|
||||||
/* don't set md_minor, it is determined by which /dev/md* was
|
/* don't set md_minor, it is determined by which /dev/md* was
|
||||||
|
|
Loading…
Reference in New Issue