From 9421e599c44cd50d3df4cd019cd3c53d9320e93d Mon Sep 17 00:00:00 2001 From: Dimitri John Ledkov Date: Tue, 26 Jun 2018 15:38:57 +0100 Subject: Cherrypick master patches up to 4th of June 2018. --- ...t-require-MDADM_EXPERIMENTAL-flag-anymore.patch | 124 +++++++++++++++++++++ 1 file changed, 124 insertions(+) create mode 100644 debian/patches/0017-imsm-Do-not-require-MDADM_EXPERIMENTAL-flag-anymore.patch (limited to 'debian/patches/0017-imsm-Do-not-require-MDADM_EXPERIMENTAL-flag-anymore.patch') diff --git a/debian/patches/0017-imsm-Do-not-require-MDADM_EXPERIMENTAL-flag-anymore.patch b/debian/patches/0017-imsm-Do-not-require-MDADM_EXPERIMENTAL-flag-anymore.patch new file mode 100644 index 00000000..e664c2cc --- /dev/null +++ b/debian/patches/0017-imsm-Do-not-require-MDADM_EXPERIMENTAL-flag-anymore.patch @@ -0,0 +1,124 @@ +From 5a5b3a6725ded07697f03ddd05ee537ce289e951 Mon Sep 17 00:00:00 2001 +From: Michal Zylowski +Date: Tue, 29 May 2018 15:47:25 +0200 +Subject: [PATCH 17/26] 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 +--- + 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 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 +-- +2.17.1 + -- cgit v1.2.3