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 <michal.zylowski@xxxxxxxxx> Acked-by: Mariusz Dabrowski <mariusz.dabrowski@xxxxxxxxx> Acked-by: Roman Sobanski <roman.sobanski@xxxxxxxxx> --- mdadm.8.in | 24 ++++++------------------ mdadm.h | 1 - super-intel.c | 3 --- tests/env-imsm-template | 1 - util.c | 10 ---------- 5 files changed, 6 insertions(+), 33 deletions(-) diff --git a/mdadm.8.in b/mdadm.8.in index ea45bbc..d6bb3fa 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 61bc7af..387e681 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 ce08af4..fc5dc75 100644 --- a/super-intel.c +++ b/super-intel.c @@ -11595,9 +11595,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 bc5f585..ea45bae 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 4adbbff..c26cf5f 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 -- 2.7.4 -- To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html