diff options
| -rw-r--r-- | drivers/md/faulty.c | 2 | ||||
| -rw-r--r-- | drivers/md/linear.c | 4 | ||||
| -rw-r--r-- | drivers/md/md.c | 6 | ||||
| -rw-r--r-- | drivers/md/md.h | 1 | ||||
| -rw-r--r-- | drivers/md/multipath.c | 2 | ||||
| -rw-r--r-- | drivers/md/raid0.c | 2 | ||||
| -rw-r--r-- | drivers/md/raid1.c | 4 | ||||
| -rw-r--r-- | drivers/md/raid10.c | 2 | ||||
| -rw-r--r-- | drivers/md/raid5.c | 8 | 
9 files changed, 20 insertions, 11 deletions
diff --git a/drivers/md/faulty.c b/drivers/md/faulty.c index d76c87f2a83..8695809b24b 100644 --- a/drivers/md/faulty.c +++ b/drivers/md/faulty.c @@ -312,7 +312,7 @@ static int run(mddev_t *mddev)  	list_for_each_entry(rdev, &mddev->disks, same_set)  		conf->rdev = rdev; -	mddev->array_sectors = faulty_size(mddev, 0, 0); +	md_set_array_sectors(mddev, faulty_size(mddev, 0, 0));  	mddev->private = conf;  	reconfig(mddev, mddev->layout, -1); diff --git a/drivers/md/linear.c b/drivers/md/linear.c index b6bb976123d..7a36e38393a 100644 --- a/drivers/md/linear.c +++ b/drivers/md/linear.c @@ -263,7 +263,7 @@ static int linear_run (mddev_t *mddev)  	if (!conf)  		return 1;  	mddev->private = conf; -	mddev->array_sectors = linear_size(mddev, 0, 0); +	md_set_array_sectors(mddev, linear_size(mddev, 0, 0));  	blk_queue_merge_bvec(mddev->queue, linear_mergeable_bvec);  	mddev->queue->unplug_fn = linear_unplug; @@ -297,7 +297,7 @@ static int linear_add(mddev_t *mddev, mdk_rdev_t *rdev)  	newconf->prev = mddev_to_conf(mddev);  	mddev->private = newconf;  	mddev->raid_disks++; -	mddev->array_sectors = linear_size(mddev, 0, 0); +	md_set_array_sectors(mddev, linear_size(mddev, 0, 0));  	set_capacity(mddev->gendisk, mddev->array_sectors);  	return 0;  } diff --git a/drivers/md/md.c b/drivers/md/md.c index 0689d89d263..76ba69b31d6 100644 --- a/drivers/md/md.c +++ b/drivers/md/md.c @@ -4977,6 +4977,12 @@ static int set_array_info(mddev_t * mddev, mdu_array_info_t *info)  	return 0;  } +void md_set_array_sectors(mddev_t *mddev, sector_t array_sectors) +{ +	mddev->array_sectors = array_sectors; +} +EXPORT_SYMBOL(md_set_array_sectors); +  static int update_size(mddev_t *mddev, sector_t num_sectors)  {  	mdk_rdev_t *rdev; diff --git a/drivers/md/md.h b/drivers/md/md.h index d2c50da1ae7..ce89dda2407 100644 --- a/drivers/md/md.h +++ b/drivers/md/md.h @@ -430,3 +430,4 @@ extern void md_do_sync(mddev_t *mddev);  extern void md_new_event(mddev_t *mddev);  extern int md_allow_write(mddev_t *mddev);  extern void md_wait_for_blocked_rdev(mdk_rdev_t *rdev, mddev_t *mddev); +extern void md_set_array_sectors(mddev_t *mddev, sector_t array_sectors); diff --git a/drivers/md/multipath.c b/drivers/md/multipath.c index a3f6d8668bb..41ced0cbe82 100644 --- a/drivers/md/multipath.c +++ b/drivers/md/multipath.c @@ -510,7 +510,7 @@ static int multipath_run (mddev_t *mddev)  	/*  	 * Ok, everything is just fine now  	 */ -	mddev->array_sectors = multipath_size(mddev, 0, 0); +	md_set_array_sectors(mddev, multipath_size(mddev, 0, 0));  	mddev->queue->unplug_fn = multipath_unplug;  	mddev->queue->backing_dev_info.congested_fn = multipath_congested; diff --git a/drivers/md/raid0.c b/drivers/md/raid0.c index bb0df6a1844..6f7e538c876 100644 --- a/drivers/md/raid0.c +++ b/drivers/md/raid0.c @@ -306,7 +306,7 @@ static int raid0_run (mddev_t *mddev)  		goto out_free_conf;  	/* calculate array device size */ -	mddev->array_sectors = raid0_size(mddev, 0, 0); +	md_set_array_sectors(mddev, raid0_size(mddev, 0, 0));  	printk(KERN_INFO "raid0 : md_size is %llu sectors.\n",  		(unsigned long long)mddev->array_sectors); diff --git a/drivers/md/raid1.c b/drivers/md/raid1.c index a2a83b0d5a9..044116b53f7 100644 --- a/drivers/md/raid1.c +++ b/drivers/md/raid1.c @@ -2059,7 +2059,7 @@ static int run(mddev_t *mddev)  	/*  	 * Ok, everything is just fine now  	 */ -	mddev->array_sectors = raid1_size(mddev, 0, 0); +	md_set_array_sectors(mddev, raid1_size(mddev, 0, 0));  	mddev->queue->unplug_fn = raid1_unplug;  	mddev->queue->backing_dev_info.congested_fn = raid1_congested; @@ -2124,7 +2124,7 @@ static int raid1_resize(mddev_t *mddev, sector_t sectors)  	 * any io in the removed space completes, but it hardly seems  	 * worth it.  	 */ -	mddev->array_sectors = raid1_size(mddev, sectors, 0); +	md_set_array_sectors(mddev, raid1_size(mddev, sectors, 0));  	set_capacity(mddev->gendisk, mddev->array_sectors);  	mddev->changed = 1;  	if (mddev->array_sectors > mddev->dev_sectors && diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c index 5bf1b24ae80..ad153b24ea0 100644 --- a/drivers/md/raid10.c +++ b/drivers/md/raid10.c @@ -2193,7 +2193,7 @@ static int run(mddev_t *mddev)  	/*  	 * Ok, everything is just fine now  	 */ -	mddev->array_sectors = raid10_size(mddev, 0, 0); +	md_set_array_sectors(mddev, raid10_size(mddev, 0, 0));  	mddev->resync_max_sectors = mddev->array_sectors;  	mddev->queue->unplug_fn = raid10_unplug; diff --git a/drivers/md/raid5.c b/drivers/md/raid5.c index 2cd619ff076..2930fc26a85 100644 --- a/drivers/md/raid5.c +++ b/drivers/md/raid5.c @@ -4474,7 +4474,7 @@ static int run(mddev_t *mddev)  	mddev->queue->backing_dev_info.congested_data = mddev;  	mddev->queue->backing_dev_info.congested_fn = raid5_congested; -	mddev->array_sectors = raid5_size(mddev, 0, 0); +	md_set_array_sectors(mddev, raid5_size(mddev, 0, 0));  	blk_queue_merge_bvec(mddev->queue, raid5_mergeable_bvec); @@ -4698,7 +4698,8 @@ static int raid5_resize(mddev_t *mddev, sector_t sectors)  	 * worth it.  	 */  	sectors &= ~((sector_t)mddev->chunk_size/512 - 1); -	mddev->array_sectors = raid5_size(mddev, sectors, mddev->raid_disks); +	md_set_array_sectors(mddev, raid5_size(mddev, sectors, +					       mddev->raid_disks));  	set_capacity(mddev->gendisk, mddev->array_sectors);  	mddev->changed = 1;  	if (sectors > mddev->dev_sectors && mddev->recovery_cp == MaxSector) { @@ -4836,7 +4837,8 @@ static void end_reshape(raid5_conf_t *conf)  	if (!test_bit(MD_RECOVERY_INTR, &conf->mddev->recovery)) {  		mddev_t *mddev = conf->mddev; -		mddev->array_sectors = raid5_size(mddev, 0, conf->raid_disks); +		md_set_array_sectors(mddev, raid5_size(mddev, 0, +						       conf->raid_disks));  		set_capacity(mddev->gendisk, mddev->array_sectors);  		mddev->changed = 1;  		conf->previous_raid_disks = conf->raid_disks;  |