Lines Matching refs:nr_vecs
34 int nr_vecs; member
38 { .nr_vecs = 16, .name = "biovec-16" },
39 { .nr_vecs = 64, .name = "biovec-64" },
40 { .nr_vecs = 128, .name = "biovec-128" },
41 { .nr_vecs = BIO_MAX_VECS, .name = "biovec-max" },
44 static struct biovec_slab *biovec_slab(unsigned short nr_vecs) in biovec_slab() argument
46 switch (nr_vecs) { in biovec_slab()
158 void bvec_free(mempool_t *pool, struct bio_vec *bv, unsigned short nr_vecs) in bvec_free() argument
160 BUG_ON(nr_vecs > BIO_MAX_VECS); in bvec_free()
162 if (nr_vecs == BIO_MAX_VECS) in bvec_free()
164 else if (nr_vecs > BIO_INLINE_VECS) in bvec_free()
165 kmem_cache_free(biovec_slab(nr_vecs)->slab, bv); in bvec_free()
178 struct bio_vec *bvec_alloc(mempool_t *pool, unsigned short *nr_vecs, in bvec_alloc() argument
181 struct biovec_slab *bvs = biovec_slab(*nr_vecs); in bvec_alloc()
190 *nr_vecs = bvs->nr_vecs; in bvec_alloc()
197 if (*nr_vecs < BIO_MAX_VECS) { in bvec_alloc()
203 *nr_vecs = BIO_MAX_VECS; in bvec_alloc()
1697 struct bio *bio_alloc_kiocb(struct kiocb *kiocb, unsigned short nr_vecs, in bio_alloc_kiocb() argument
1703 if (!(kiocb->ki_flags & IOCB_ALLOC_CACHE) || nr_vecs > BIO_INLINE_VECS) in bio_alloc_kiocb()
1704 return bio_alloc_bioset(GFP_KERNEL, nr_vecs, bs); in bio_alloc_kiocb()
1711 bio_init(bio, nr_vecs ? bio->bi_inline_vecs : NULL, nr_vecs); in bio_alloc_kiocb()
1717 bio = bio_alloc_bioset(GFP_KERNEL, nr_vecs, bs); in bio_alloc_kiocb()
1733 bvs->nr_vecs * sizeof(struct bio_vec), 0, in init_bio()