Blame SOURCES/0017-imsm-Do-not-require-MDADM_EXPERIMENTAL-flag-anymore.patch

59ea72
From 5a5b3a6725ded07697f03ddd05ee537ce289e951 Mon Sep 17 00:00:00 2001
59ea72
From: Michal Zylowski <michal.zylowski@intel.com>
59ea72
Date: Tue, 29 May 2018 15:47:25 +0200
59ea72
Subject: [RHEL7.5 PATCH 17/26] imsm: Do not require MDADM_EXPERIMENTAL flag
59ea72
 anymore
59ea72
59ea72
Grow feature for IMSM metadata is currently fully supported and tested.
59ea72
Reshape operation is not in experimental state anymore, so usage of this
59ea72
flag is unnecessary.
59ea72
59ea72
Do not require MDADM_EXPERIMENTAL flag and remove obsolete information
59ea72
from manual.
59ea72
59ea72
Signed-off-by: Michal Zylowski <michal.zylowski@intel.com>
59ea72
Acked-by: Mariusz Dabrowski <mariusz.dabrowski@intel.com>
59ea72
Acked-by: Roman Sobanski <roman.sobanski@intel.com>
59ea72
Signed-off-by: Jes Sorensen <jsorensen@fb.com>
59ea72
---
59ea72
 mdadm.8.in              | 24 ++++++------------------
59ea72
 mdadm.h                 |  1 -
59ea72
 super-intel.c           |  3 ---
59ea72
 tests/env-imsm-template |  1 -
59ea72
 util.c                  | 10 ----------
59ea72
 5 files changed, 6 insertions(+), 33 deletions(-)
59ea72
59ea72
diff --git a/mdadm.8.in b/mdadm.8.in
59ea72
index ea45bbc..d6bb3fa 100644
59ea72
--- a/mdadm.8.in
59ea72
+++ b/mdadm.8.in
59ea72
@@ -2718,27 +2718,15 @@ above.  Resizing arrays in an IMSM container with
59ea72
 .B "--grow --size"
59ea72
 is not yet supported.
59ea72
 
59ea72
-Grow functionality (e.g. expand a number of raid devices) for Intel's
59ea72
-IMSM container format has an experimental status. It is guarded by the
59ea72
-.B MDADM_EXPERIMENTAL
59ea72
-environment variable which must be set to '1' for a GROW command to
59ea72
-succeed.
59ea72
-This is for the following reasons:
59ea72
-
59ea72
-.IP 1.
59ea72
-Intel's native IMSM check-pointing is not fully tested yet.
59ea72
-This can causes IMSM incompatibility during the grow process: an array
59ea72
-which is growing cannot roam between Microsoft Windows(R) and Linux
59ea72
-systems.
59ea72
-
59ea72
-.IP 2.
59ea72
-Interrupting a grow operation is not recommended, because it
59ea72
-has not been fully tested for Intel's IMSM container format yet.
59ea72
-
59ea72
 .PP
59ea72
-Note: Intel's native checkpointing doesn't use
59ea72
+Notes:
59ea72
+.IP \(bu 4
59ea72
+Intel's native checkpointing doesn't use
59ea72
 .B --backup-file
59ea72
 option and it is transparent for assembly feature.
59ea72
+.IP \(bu 4
59ea72
+Roaming between Windows(R) and Linux systems for IMSM metadata is not
59ea72
+supported during grow process.
59ea72
 
59ea72
 .SS SIZE CHANGES
59ea72
 Normally when an array is built the "size" is taken from the smallest
59ea72
diff --git a/mdadm.h b/mdadm.h
59ea72
index 61bc7af..387e681 100644
59ea72
--- a/mdadm.h
59ea72
+++ b/mdadm.h
59ea72
@@ -1485,7 +1485,6 @@ extern struct mddev_ident *conf_match(struct supertype *st,
59ea72
 				      struct mdinfo *info,
59ea72
 				      char *devname,
59ea72
 				      int verbose, int *rvp);
59ea72
-extern int experimental(void);
59ea72
 
59ea72
 extern void free_line(char *line);
59ea72
 extern int match_oneof(char *devices, char *devname);
59ea72
diff --git a/super-intel.c b/super-intel.c
59ea72
index 12f60f6..a01be13 100644
59ea72
--- a/super-intel.c
59ea72
+++ b/super-intel.c
59ea72
@@ -11607,9 +11607,6 @@ static int imsm_reshape_super(struct supertype *st, unsigned long long size,
59ea72
 	dprintf("for level      : %i\n", geo.level);
59ea72
 	dprintf("for raid_disks : %i\n", geo.raid_disks);
59ea72
 
59ea72
-	if (experimental() == 0)
59ea72
-		return ret_val;
59ea72
-
59ea72
 	if (strcmp(st->container_devnm, st->devnm) == 0) {
59ea72
 		/* On container level we can only increase number of devices. */
59ea72
 		dprintf("imsm: info: Container operation\n");
59ea72
diff --git a/tests/env-imsm-template b/tests/env-imsm-template
59ea72
index bc5f585..ea45bae 100644
59ea72
--- a/tests/env-imsm-template
59ea72
+++ b/tests/env-imsm-template
59ea72
@@ -65,7 +65,6 @@ imsm_check() {
59ea72
 export IMSM_NO_PLATFORM=1
59ea72
 export IMSM_DEVNAME_AS_SERIAL=1
59ea72
 export IMSM_TEST_OROM=1
59ea72
-export MDADM_EXPERIMENTAL=1
59ea72
 container=/dev/md/container
59ea72
 member0=/dev/md/vol0
59ea72
 member1=/dev/md/vol1
59ea72
diff --git a/util.c b/util.c
59ea72
index 4adbbff..c26cf5f 100644
59ea72
--- a/util.c
59ea72
+++ b/util.c
59ea72
@@ -2149,16 +2149,6 @@ void append_metadata_update(struct supertype *st, void *buf, int len)
59ea72
 unsigned int __invalid_size_argument_for_IOC = 0;
59ea72
 #endif
59ea72
 
59ea72
-int experimental(void)
59ea72
-{
59ea72
-	if (check_env("MDADM_EXPERIMENTAL"))
59ea72
-		return 1;
59ea72
-	else {
59ea72
-		pr_err("To use this feature MDADM_EXPERIMENTAL environment variable has to be defined.\n");
59ea72
-		return 0;
59ea72
-	}
59ea72
-}
59ea72
-
59ea72
 /* Pick all spares matching given criteria from a container
59ea72
  * if min_size == 0 do not check size
59ea72
  * if domlist == NULL do not check domains
59ea72
-- 
59ea72
2.7.4
59ea72