X-Git-Url: http://git.monstr.eu/?a=blobdiff_plain;f=block%2Fblk-map.c;h=1ffef782fcf2dd96487d398e0499c871cb497c03;hb=701c09c988bd60d950d49c48993b6c06efbfba7f;hp=21630dccac628c3fac3131c5d900fc144ea962e1;hpb=643e69aff89a2d0abc53979acc441b68ce86139b;p=linux-2.6-microblaze.git diff --git a/block/blk-map.c b/block/blk-map.c index 21630dccac62..1ffef782fcf2 100644 --- a/block/blk-map.c +++ b/block/blk-map.c @@ -150,9 +150,7 @@ static int bio_copy_user_iov(struct request *rq, struct rq_map_data *map_data, bmd->is_our_pages = !map_data; bmd->is_null_mapped = (map_data && map_data->null_mapped); - nr_pages = DIV_ROUND_UP(offset + len, PAGE_SIZE); - if (nr_pages > BIO_MAX_PAGES) - nr_pages = BIO_MAX_PAGES; + nr_pages = bio_max_segs(DIV_ROUND_UP(offset + len, PAGE_SIZE)); ret = -ENOMEM; bio = bio_kmalloc(gfp_mask, nr_pages); @@ -251,7 +249,7 @@ static int bio_map_user_iov(struct request *rq, struct iov_iter *iter, if (!iov_iter_count(iter)) return -EINVAL; - bio = bio_kmalloc(gfp_mask, iov_iter_npages(iter, BIO_MAX_PAGES)); + bio = bio_kmalloc(gfp_mask, iov_iter_npages(iter, BIO_MAX_VECS)); if (!bio) return -ENOMEM; bio->bi_opf |= req_op(rq);