4ac0f8fa3e
Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com>
44 lines
1.3 KiB
Diff
44 lines
1.3 KiB
Diff
From 6a75c8ca79b4cf89a5d1ac24b484b75e8a7e9fb4 Mon Sep 17 00:00:00 2001
|
|
From: Adam Kwolek <adam.kwolek@intel.com>
|
|
Date: Thu, 9 Feb 2012 12:36:42 +1100
|
|
Subject: [PATCH 09/12] imsm: FIX: use md position to reshape restart
|
|
|
|
When reshape is broken it can occur that metadata is not saved properly.
|
|
This can cause that reshape process is farther in md than metadata states.
|
|
|
|
On restart save checkpoint to store current position /probably farther/
|
|
that can be read from md.
|
|
|
|
Signed-off-by: Adam Kwolek <adam.kwolek@intel.com>
|
|
Signed-off-by: NeilBrown <neilb@suse.de>
|
|
---
|
|
super-intel.c | 12 ++++++++++++
|
|
1 files changed, 12 insertions(+), 0 deletions(-)
|
|
|
|
diff --git a/super-intel.c b/super-intel.c
|
|
index f5762d8..5f451f3 100644
|
|
--- a/super-intel.c
|
|
+++ b/super-intel.c
|
|
@@ -10067,6 +10067,18 @@ static int imsm_manage_reshape(
|
|
"are present in copy area.\n");
|
|
goto abort;
|
|
}
|
|
+ /* Save checkpoint to update migration record for current
|
|
+ * reshape position (in md). It can be farther than current
|
|
+ * reshape position in metadata.
|
|
+ */
|
|
+ if (save_checkpoint_imsm(st, sra, UNIT_SRC_NORMAL) == 1) {
|
|
+ /* ignore error == 2, this can mean end of reshape here
|
|
+ */
|
|
+ dprintf("imsm: Cannot write checkpoint to "
|
|
+ "migration record (UNIT_SRC_NORMAL, "
|
|
+ "initial save)\n");
|
|
+ goto abort;
|
|
+ }
|
|
}
|
|
|
|
/* size for data */
|
|
--
|
|
1.7.4.4
|
|
|