md: raid0: fix error return from create_stripe_zones.
[deliverable/linux.git] / drivers / md / raid0.c
index 24b359717a7e8917a4955e36651e6eb4009dc393..d9babda582b913caaf1260bd0c0fe625dcee1b9f 100644 (file)
@@ -289,7 +289,7 @@ abort:
        kfree(conf->strip_zone);
        kfree(conf->devlist);
        kfree(conf);
-       *private_conf = NULL;
+       *private_conf = ERR_PTR(err);
        return err;
 }
 
@@ -411,7 +411,8 @@ static sector_t raid0_size(struct mddev *mddev, sector_t sectors, int raid_disks
                  "%s does not support generic reshape\n", __func__);
 
        rdev_for_each(rdev, mddev)
-               array_sectors += rdev->sectors;
+               array_sectors += (rdev->sectors &
+                                 ~(sector_t)(mddev->chunk_sectors-1));
 
        return array_sectors;
 }
This page took 0.024537 seconds and 5 git commands to generate.