Thread (8 messages) 8 messages, 2 authors, 2011-06-14

[PATCH 2/4] FIX: Cannot create volume

flat view
STALE5598d

From: Adam Kwolek <hidden>
Date: 2011-06-09 16:29:21
Subsystem: the rest · Maintainer: Linus Torvalds

getinfo_super() can clear entire 'inf' structure before filling with new
information. Disk number required later is lost.

Restore disk number information after getinfo_super() call.

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

 Create.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/Create.c b/Create.c
index 7b4d0fe..d01dea7 100644
--- a/Create.c
+++ b/Create.c
@@ -805,7 +805,6 @@ int Create(struct supertype *st, char *mddev,
 			switch(pass) {
 			case 1:
 				*inf = info;
-
 				inf->disk.number = dnum;
 				inf->disk.raid_disk = dnum;
 				if (inf->disk.raid_disk < raiddisks)
@@ -856,12 +855,13 @@ int Create(struct supertype *st, char *mddev,
 					/* getinfo_super might have lost these ... */
 					inf->disk.major = major(stb.st_rdev);
 					inf->disk.minor = minor(stb.st_rdev);
+					inf->disk.number = dnum;
+					inf->disk.raid_disk = dnum;
 				}
 				break;
 			case 2:
 				inf->errors = 0;
 				rv = 0;
-
 				rv = add_disk(mdfd, st, &info, inf);
 
 				if (rv) {
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help