[PATCH] bio: make use of bvec_nr_vecs

Previous thread: How to get a sense of VM pressure by Jeremy Fitzhardinge on Friday, July 25, 2008 - 10:55 am. (7 messages)

Next thread: cpuset build error: cpuset_mems_nr() missing by Randy Dunlap on Friday, July 25, 2008 - 11:21 am. (2 messages)
From: Denis ChengRq
Date: Friday, July 25, 2008 - 11:11 am

Since introduced in 7ba1ba12eee, it should be made use of.

Signed-off-by: Denis ChengRq <crquan@gmail.com>
---
Additionally, I think it maybe better if inlined in <linux/bio.h>

 fs/bio.c |    9 +++------
 1 files changed, 3 insertions(+), 6 deletions(-)

diff --git a/fs/bio.c b/fs/bio.c
index 88322b0..7ed91d3 100644
--- a/fs/bio.c
+++ b/fs/bio.c
@@ -77,11 +77,8 @@ struct bio_vec *bvec_alloc_bs(gfp_t gfp_mask, int nr, unsigned long *idx, struct
 	 */
 
 	bvl = mempool_alloc(bs->bvec_pools[*idx], gfp_mask);
-	if (bvl) {
-		struct biovec_slab *bp = bvec_slabs + *idx;
-
-		memset(bvl, 0, bp->nr_vecs * sizeof(struct bio_vec));
-	}
+	if (bvl)
+		memset(bvl, 0, bvec_nr_vecs(*idx) * sizeof(struct bio_vec));
 
 	return bvl;
 }
@@ -149,7 +146,7 @@ struct bio *bio_alloc_bioset(gfp_t gfp_mask, int nr_iovecs, struct bio_set *bs)
 				goto out;
 			}
 			bio->bi_flags |= idx << BIO_POOL_OFFSET;
-			bio->bi_max_vecs = bvec_slabs[idx].nr_vecs;
+			bio->bi_max_vecs = bvec_nr_vecs(idx);
 		}
 		bio->bi_io_vec = bvl;
 	}
-- 
1.5.6.3

--

From: rae l
Date: Friday, July 25, 2008 - 9:22 pm

and if we have a mempool_zalloc, this can be more simplified,

there was no mempool_zalloc yet, should we create it inlined with
__GFP_ZERO, for this and further use?
--

From: Jens Axboe
Date: Monday, August 4, 2008 - 2:57 am

Submit a patch :-)

-- 
Jens Axboe

--

Previous thread: How to get a sense of VM pressure by Jeremy Fitzhardinge on Friday, July 25, 2008 - 10:55 am. (7 messages)

Next thread: cpuset build error: cpuset_mems_nr() missing by Randy Dunlap on Friday, July 25, 2008 - 11:21 am. (2 messages)