Thread (5 messages) 5 messages, 3 authors, 2011-12-20

RE: [PATCH 3/3] imsm: FIX: UT '08imsm-overlap' fails

From: Kwolek, Adam <hidden>
Date: 2011-12-20 08:02:50

Possibly related (same subject, not in this thread)

-----Original Message-----
From: NeilBrown [mailto:neilb@suse.de]
Sent: Tuesday, December 20, 2011 12:39 AM
To: Kwolek, Adam
Cc: Williams, Dan J; Labun, Marcin; Ciechanowski, Ed; linux-
raid@vger.kernel.org
Subject: Re: [PATCH 3/3] imsm: FIX: UT '08imsm-overlap' fails

On Fri, 16 Dec 2011 08:32:07 +0000 "Kwolek, Adam"
[off-list ref]
wrote:

quoted
I've checked, you are right. OROM check will resolve problem.
Do you post your patch or I should do it? We are short of time
regarding Neil's plans about v3.2.3
I've created a commit myself.  See below.

Thanks :)
quoted hunk ↗ jump to hunk
Thanks,
NeilBrown

From 5fe62b9455b6b43f050f3a52610ce1048a44623c Mon Sep 17 00:00:00
2001
From: "Williams, Dan J" <redacted>
Date: Wed, 14 Dec 2011 18:21:07 -0800
Subject: [PATCH] imsm: FIX: UT '08imsm-overlap' fails

Make test for all sub arrays having the same number of devices dependant
on the option ROM requirements being checked.
08imsm-overlap disables the OROM check but then fails because this test
causes it to.

Reported-by: Adam Kwolek <redacted>
Signed-off-by: NeilBrown <redacted>
diff --git a/super-intel.c b/super-intel.c index 9074485..0e77537 100644
--- a/super-intel.c
+++ b/super-intel.c
@@ -5314,12 +5314,6 @@ static int validate_geometry_imsm_volume(struct
supertype *st, int level,

 	mpb = super->anchor;

-	if (mpb->num_raid_devs > 0 && mpb->num_disks != raiddisks) {
-		fprintf(stderr, Name ": the option-rom requires all "
-			"member disks to be a member of all volumes.\n");
-		return 0;
-	}
-
 	if (!validate_geometry_imsm_orom(super, level, layout, raiddisks,
chunk, verbose)) {
 		fprintf(stderr, Name ": RAID gemetry validation failed. "
 			"Cannot proceed with the action(s).\n"); @@ -5398,6
+5392,11 @@ static int validate_geometry_imsm_volume(struct supertype
*st, int level,
 		fprintf(stderr, Name ": The option-rom requires all member"
 			" disks to be a member of all volumes\n");
 		return 0;
+	} else if (super->orom && mpb->num_raid_devs > 0 &&
+		   mpb->num_disks != raiddisks) {
+		fprintf(stderr, Name ": The option-rom requires all member"
+			" disks to be a member of all volumes\n");
+		return 0;
 	}

 	/* retrieve the largest free space block */
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help