Lines Matching refs:bv
163 void bvec_free(mempool_t *pool, struct bio_vec *bv, unsigned short nr_vecs) in bvec_free() argument
168 mempool_free(bv, pool); in bvec_free()
170 kmem_cache_free(biovec_slab(nr_vecs)->slab, bv); in bvec_free()
611 struct bio_vec bv; in zero_fill_bio_iter() local
614 __bio_for_each_segment(bv, bio, iter, start) in zero_fill_bio_iter()
615 memzero_bvec(&bv); in zero_fill_bio_iter()
631 struct bio_vec bv; in bio_truncate() local
642 bio_for_each_segment(bv, bio, iter) { in bio_truncate()
643 if (done + bv.bv_len > new_size) { in bio_truncate()
650 zero_user(bv.bv_page, bv.bv_offset + offset, in bio_truncate()
651 bv.bv_len - offset); in bio_truncate()
654 done += bv.bv_len; in bio_truncate()
906 static bool bvec_try_merge_page(struct bio_vec *bv, struct page *page, in bvec_try_merge_page() argument
909 size_t bv_end = bv->bv_offset + bv->bv_len; in bvec_try_merge_page()
910 phys_addr_t vec_end_addr = page_to_phys(bv->bv_page) + bv_end - 1; in bvec_try_merge_page()
915 if (xen_domain() && !xen_biovec_phys_mergeable(bv, page)) in bvec_try_merge_page()
917 if (!zone_device_pages_have_same_pgmap(bv->bv_page, page)) in bvec_try_merge_page()
924 if (bv->bv_page + bv_end / PAGE_SIZE != page + off / PAGE_SIZE) in bvec_try_merge_page()
928 bv->bv_len += len; in bvec_try_merge_page()
937 bool bvec_try_merge_hw_page(struct request_queue *q, struct bio_vec *bv, in bvec_try_merge_hw_page() argument
942 phys_addr_t addr1 = page_to_phys(bv->bv_page) + bv->bv_offset; in bvec_try_merge_hw_page()
947 if (len > queue_max_segment_size(q) - bv->bv_len) in bvec_try_merge_hw_page()
949 return bvec_try_merge_page(bv, page, len, offset, same_page); in bvec_try_merge_hw_page()
976 struct bio_vec *bv = &bio->bi_io_vec[bio->bi_vcnt - 1]; in bio_add_hw_page() local
978 if (bvec_try_merge_hw_page(q, bv, page, len, offset, in bio_add_hw_page()
992 if (bvec_gap_to_prev(&q->limits, bv, offset)) in bio_add_hw_page()
1240 struct bio_vec *bv = bio->bi_io_vec + bio->bi_vcnt; in __bio_iov_iter_get_pages() local
1241 struct page **pages = (struct page **)bv; in __bio_iov_iter_get_pages()