Thread (9 messages) 9 messages, 3 authors, 2011-04-14
STALE5564d

[PATCH 2/2] imsm: FIX: Be more patient during loading matadata

From: Adam Kwolek <hidden>
Date: 2011-04-12 12:51:28
Subsystem: the rest · Maintainer: Linus Torvalds

Sometimes occurs that metadata cannot be loaded e.g. wrong check sum
It can happen due to metadata update racing with mdmon condition.
If mpb loading is tried again, it is loaded successfully.
Try to load metadata again before really giving up.

Signed-off-by: Adam Kwolek <redacted>
---

 super-intel.c |   10 ++++++++--
 1 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/super-intel.c b/super-intel.c
index dc5e34e..d23267a 100644
--- a/super-intel.c
+++ b/super-intel.c
@@ -2773,8 +2773,14 @@ load_and_parse_mpb(int fd, struct intel_super *super, char *devname, int keep_fd
 	int err;
 
 	err = load_imsm_mpb(fd, super, devname);
-	if (err)
-		return err;
+	if (err) {
+		/* try to load mpb again,
+		 * in case of mdmon race we could have more luck...
+		 */
+		err = load_imsm_mpb(fd, super, devname);
+		if (err)
+			return err;
+	}
 	err = load_imsm_disk(fd, super, devname, keep_fd);
 	if (err)
 		return err;
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help