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

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