For external metadata parameters has to be changed via sysfs.
i.e. change of raid_disks requires handshake mdmon<->md (md_allow_write())
Signed-off-by: Adam Kwolek <redacted>
---
Grow.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/Grow.c b/Grow.c
index c72b89f..dae9bbf 100644
--- a/Grow.c
+++ b/Grow.c
@@ -1896,7 +1896,8 @@ static int reshape_array(char *container, int fd, char *devname,
sync_metadata(st);
if (info->array.chunk_size == info->new_chunk &&
- reshape.before.layout == reshape.after.layout) {
+ reshape.before.layout == reshape.after.layout &&
+ st->ss->external == 0) {
array.raid_disks = reshape.after.raid_disks;
if (ioctl(fd, SET_ARRAY_INFO, &array) != 0) {
int err = errno;