Blame SOURCES/0068-Fix-update-subarray-on-active-volume.patch

37f2b0
From db10eab68e652f141169b7240e057d110d626c3d Mon Sep 17 00:00:00 2001
37f2b0
From: Mateusz Kusiak <mateusz.kusiak@intel.com>
37f2b0
Date: Mon, 2 Jan 2023 09:35:16 +0100
37f2b0
Subject: [PATCH 68/83] Fix --update-subarray on active volume
37f2b0
37f2b0
Options: bitmap, ppl and name should not be updated when array is active.
37f2b0
Those features are mutually exclusive and share the same data area in IMSM (danger of overwriting by kernel).
37f2b0
Remove check for active subarrays from super-intel.
37f2b0
Since ddf is not supported, apply it globally for all options.
37f2b0
37f2b0
Signed-off-by: Mateusz Kusiak <mateusz.kusiak@intel.com>
37f2b0
Signed-off-by: Jes Sorensen <jes@trained-monkey.org>
37f2b0
---
37f2b0
 Manage.c      | 7 +++++++
37f2b0
 super-intel.c | 5 -----
37f2b0
 2 files changed, 7 insertions(+), 5 deletions(-)
37f2b0
37f2b0
diff --git a/Manage.c b/Manage.c
37f2b0
index b1d0e630..5a9ea316 100644
37f2b0
--- a/Manage.c
37f2b0
+++ b/Manage.c
37f2b0
@@ -1745,6 +1745,13 @@ int Update_subarray(char *dev, char *subarray, char *update, struct mddev_ident
37f2b0
 		goto free_super;
37f2b0
 	}
37f2b0
 
37f2b0
+	if (is_subarray_active(subarray, st->devnm)) {
37f2b0
+		if (verbose >= 0)
37f2b0
+			pr_err("Subarray %s in %s is active, cannot update %s\n",
37f2b0
+			       subarray, dev, update);
37f2b0
+		goto free_super;
37f2b0
+	}
37f2b0
+
37f2b0
 	if (mdmon_running(st->devnm))
37f2b0
 		st->update_tail = &st->updates;
37f2b0
 
37f2b0
diff --git a/super-intel.c b/super-intel.c
37f2b0
index b0565610..5f93f3d3 100644
37f2b0
--- a/super-intel.c
37f2b0
+++ b/super-intel.c
37f2b0
@@ -7914,11 +7914,6 @@ static int update_subarray_imsm(struct supertype *st, char *subarray,
37f2b0
 		char *ep;
37f2b0
 		int vol;
37f2b0
 
37f2b0
-		if (is_subarray_active(subarray, st->devnm)) {
37f2b0
-			pr_err("Unable to update name of active subarray\n");
37f2b0
-			return 2;
37f2b0
-		}
37f2b0
-
37f2b0
 		if (!check_name(super, name, 0))
37f2b0
 			return 2;
37f2b0
 
37f2b0
-- 
37f2b0
2.38.1
37f2b0