4ac0f8fa3e
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
36 lines
1.2 KiB
Diff
36 lines
1.2 KiB
Diff
From 5d1c7cdaca575d8a32a7a82517d88e2099f6a213 Mon Sep 17 00:00:00 2001
|
|
From: Adam Kwolek <adam.kwolek@intel.com>
|
|
Date: Thu, 12 Jan 2012 08:12:39 +0100
|
|
Subject: [PATCH] FIX: External metadata sometimes is not updated
|
|
|
|
External metadata sometimes is not updated.
|
|
It can be observed during 2 raid0 arrays Capacity Expansion.
|
|
New array size is not set, because metadata is not updated and on the reshape
|
|
end mdadm doesn't read new array size from metadata.
|
|
This happens when mdmon finishes his work (due to takeover to raid0),
|
|
before all metadata updates are processed.
|
|
|
|
Make sure that all updates are flushed to disk before executing takeover.
|
|
|
|
Signed-off-by: Adam Kwolek <adam.kwolek@intel.com>
|
|
Signed-off-by: NeilBrown <neilb@suse.de>
|
|
---
|
|
Grow.c | 1 +
|
|
1 files changed, 1 insertions(+), 0 deletions(-)
|
|
|
|
diff --git a/Grow.c b/Grow.c
|
|
index b2c1360..89f563c 100644
|
|
--- a/Grow.c
|
|
+++ b/Grow.c
|
|
@@ -2396,6 +2396,7 @@ started:
|
|
/* Re-load the metadata as much could have changed */
|
|
int cfd = open_dev(st->container_dev);
|
|
if (cfd >= 0) {
|
|
+ ping_manager(container);
|
|
ping_monitor(container);
|
|
st->ss->free_super(st);
|
|
st->ss->load_container(st, cfd, container);
|
|
--
|
|
1.7.4.4
|
|
|