aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/md/raid10.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/md/raid10.c')
-rw-r--r--drivers/md/raid10.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c
index 4db34edfd87f..7f636283a1ba 100644
--- a/drivers/md/raid10.c
+++ b/drivers/md/raid10.c
@@ -2060,7 +2060,13 @@ static int run(mddev_t *mddev)
2060 /* 2060 /*
2061 * Ok, everything is just fine now 2061 * Ok, everything is just fine now
2062 */ 2062 */
2063 size = conf->stride * conf->raid_disks; 2063 if (conf->far_offset) {
2064 size = mddev->size >> (conf->chunk_shift-1);
2065 size *= conf->raid_disks;
2066 size <<= conf->chunk_shift;
2067 sector_div(size, conf->far_copies);
2068 } else
2069 size = conf->stride * conf->raid_disks;
2064 sector_div(size, conf->near_copies); 2070 sector_div(size, conf->near_copies);
2065 mddev->array_size = size/2; 2071 mddev->array_size = size/2;
2066 mddev->resync_max_sectors = size; 2072 mddev->resync_max_sectors = size;