From: Michal Zylowski Date: Tue, 29 May 2018 13:47:25 +0000 (+0200) Subject: imsm: Do not require MDADM_EXPERIMENTAL flag anymore X-Git-Tag: mdadm-4.1-rc2~27 X-Git-Url: http://git.ipfire.org/?p=thirdparty%2Fmdadm.git;a=commitdiff_plain;h=5a5b3a6725ded07697f03ddd05ee537ce289e951 imsm: Do not require MDADM_EXPERIMENTAL flag anymore Grow feature for IMSM metadata is currently fully supported and tested. Reshape operation is not in experimental state anymore, so usage of this flag is unnecessary. Do not require MDADM_EXPERIMENTAL flag and remove obsolete information from manual. Signed-off-by: Michal Zylowski Acked-by: Mariusz Dabrowski Acked-by: Roman Sobanski Signed-off-by: Jes Sorensen --- diff --git a/mdadm.8.in b/mdadm.8.in index ea45bbc8..d6bb3fae 100644 --- a/mdadm.8.in +++ b/mdadm.8.in @@ -2718,27 +2718,15 @@ above. Resizing arrays in an IMSM container with .B "--grow --size" is not yet supported. -Grow functionality (e.g. expand a number of raid devices) for Intel's -IMSM container format has an experimental status. It is guarded by the -.B MDADM_EXPERIMENTAL -environment variable which must be set to '1' for a GROW command to -succeed. -This is for the following reasons: - -.IP 1. -Intel's native IMSM check-pointing is not fully tested yet. -This can causes IMSM incompatibility during the grow process: an array -which is growing cannot roam between Microsoft Windows(R) and Linux -systems. - -.IP 2. -Interrupting a grow operation is not recommended, because it -has not been fully tested for Intel's IMSM container format yet. - .PP -Note: Intel's native checkpointing doesn't use +Notes: +.IP \(bu 4 +Intel's native checkpointing doesn't use .B --backup-file option and it is transparent for assembly feature. +.IP \(bu 4 +Roaming between Windows(R) and Linux systems for IMSM metadata is not +supported during grow process. .SS SIZE CHANGES Normally when an array is built the "size" is taken from the smallest diff --git a/mdadm.h b/mdadm.h index 61bc7afe..387e681a 100644 --- a/mdadm.h +++ b/mdadm.h @@ -1485,7 +1485,6 @@ extern struct mddev_ident *conf_match(struct supertype *st, struct mdinfo *info, char *devname, int verbose, int *rvp); -extern int experimental(void); extern void free_line(char *line); extern int match_oneof(char *devices, char *devname); diff --git a/super-intel.c b/super-intel.c index 12f60f65..a01be132 100644 --- a/super-intel.c +++ b/super-intel.c @@ -11607,9 +11607,6 @@ static int imsm_reshape_super(struct supertype *st, unsigned long long size, dprintf("for level : %i\n", geo.level); dprintf("for raid_disks : %i\n", geo.raid_disks); - if (experimental() == 0) - return ret_val; - if (strcmp(st->container_devnm, st->devnm) == 0) { /* On container level we can only increase number of devices. */ dprintf("imsm: info: Container operation\n"); diff --git a/tests/env-imsm-template b/tests/env-imsm-template index bc5f5852..ea45bae9 100644 --- a/tests/env-imsm-template +++ b/tests/env-imsm-template @@ -65,7 +65,6 @@ imsm_check() { export IMSM_NO_PLATFORM=1 export IMSM_DEVNAME_AS_SERIAL=1 export IMSM_TEST_OROM=1 -export MDADM_EXPERIMENTAL=1 container=/dev/md/container member0=/dev/md/vol0 member1=/dev/md/vol1 diff --git a/util.c b/util.c index 4adbbff0..c26cf5f3 100644 --- a/util.c +++ b/util.c @@ -2149,16 +2149,6 @@ void append_metadata_update(struct supertype *st, void *buf, int len) unsigned int __invalid_size_argument_for_IOC = 0; #endif -int experimental(void) -{ - if (check_env("MDADM_EXPERIMENTAL")) - return 1; - else { - pr_err("To use this feature MDADM_EXPERIMENTAL environment variable has to be defined.\n"); - return 0; - } -} - /* Pick all spares matching given criteria from a container * if min_size == 0 do not check size * if domlist == NULL do not check domains