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, 4 insertions, 4 deletions
diff --git a/drivers/md/raid10.c b/drivers/md/raid10.c
index 3f8df2ecbae3..ce729d6daf78 100644
--- a/drivers/md/raid10.c
+++ b/drivers/md/raid10.c
@@ -134,10 +134,10 @@ static void * r10buf_pool_alloc(gfp_t gfp_flags, void *data)
134 134
135out_free_pages: 135out_free_pages:
136 for ( ; i > 0 ; i--) 136 for ( ; i > 0 ; i--)
137 __free_page(bio->bi_io_vec[i-1].bv_page); 137 put_page(bio->bi_io_vec[i-1].bv_page);
138 while (j--) 138 while (j--)
139 for (i = 0; i < RESYNC_PAGES ; i++) 139 for (i = 0; i < RESYNC_PAGES ; i++)
140 __free_page(r10_bio->devs[j].bio->bi_io_vec[i].bv_page); 140 put_page(r10_bio->devs[j].bio->bi_io_vec[i].bv_page);
141 j = -1; 141 j = -1;
142out_free_bio: 142out_free_bio:
143 while ( ++j < nalloc ) 143 while ( ++j < nalloc )
@@ -157,7 +157,7 @@ static void r10buf_pool_free(void *__r10_bio, void *data)
157 struct bio *bio = r10bio->devs[j].bio; 157 struct bio *bio = r10bio->devs[j].bio;
158 if (bio) { 158 if (bio) {
159 for (i = 0; i < RESYNC_PAGES; i++) { 159 for (i = 0; i < RESYNC_PAGES; i++) {
160 __free_page(bio->bi_io_vec[i].bv_page); 160 put_page(bio->bi_io_vec[i].bv_page);
161 bio->bi_io_vec[i].bv_page = NULL; 161 bio->bi_io_vec[i].bv_page = NULL;
162 } 162 }
163 bio_put(bio); 163 bio_put(bio);
@@ -2015,7 +2015,7 @@ static int run(mddev_t *mddev)
2015 * maybe... 2015 * maybe...
2016 */ 2016 */
2017 { 2017 {
2018 int stripe = conf->raid_disks * mddev->chunk_size / PAGE_CACHE_SIZE; 2018 int stripe = conf->raid_disks * mddev->chunk_size / PAGE_SIZE;
2019 stripe /= conf->near_copies; 2019 stripe /= conf->near_copies;
2020 if (mddev->queue->backing_dev_info.ra_pages < 2* stripe) 2020 if (mddev->queue->backing_dev_info.ra_pages < 2* stripe)
2021 mddev->queue->backing_dev_info.ra_pages = 2* stripe; 2021 mddev->queue->backing_dev_info.ra_pages = 2* stripe;