]> git.ipfire.org Git - thirdparty/mdadm.git/blobdiff - super-intel.c
Create: improve messages from validate_geometry.
[thirdparty/mdadm.git] / super-intel.c
index f1c924f094b903755ccb4a3b196ba280f81852c2..e9d9af80343a3b7d4fb3d31632c9839d021504a2 100644 (file)
@@ -5070,6 +5070,12 @@ static int validate_geometry_imsm_volume(struct supertype *st, int level,
        if (!super)
                return 0;
 
+       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");
@@ -5363,7 +5369,8 @@ static int validate_geometry_imsm(struct supertype *st, int level, int layout,
                        return validate_geometry_imsm_volume(st, level, layout,
                                                             raiddisks, chunk,
                                                             size, dev,
-                                                            freesize, verbose);
+                                                            freesize, 1)
+                               ? 1 : -1;
                }
        }