]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
fix: imsm: do not accept too small sizes
authorLukasz Dorau <lukasz.dorau@intel.com>
Fri, 14 Sep 2012 14:20:31 +0000 (16:20 +0200)
committerNeilBrown <neilb@suse.de>
Thu, 20 Sep 2012 02:27:17 +0000 (12:27 +1000)
Inappriopriate error messages (e.g. mdadm: platform does not support
raid5 with 0 disk) have been displayed when too small size was given.
This patch fixes it.

Signed-off-by: Lukasz Dorau <lukasz.dorau@intel.com>
Signed-off-by: NeilBrown <neilb@suse.de>
super-intel.c

index 1d366131cf841be9692e598be19a91d8ed3ce34f..107550fd5d5a9b5841f2b4fb5e189668c0e80ea6 100644 (file)
@@ -9744,6 +9744,13 @@ enum imsm_reshape_type imsm_analyze_change(struct supertype *st,
                                    get_imsm_raid_level(dev->vol.map),
                                    chunk * 1024,
                                    geo->size * 2);
+               if (geo->size == 0) {
+                       pr_err("Error. Size expansion is " \
+                                  "supported only (current size is %llu, " \
+                                  "requested size /rounded/ is 0).\n",
+                                  current_size);
+                       goto analyse_change_exit;
+               }
        }
 
        if ((current_size != geo->size) && (geo->size > 0)) {