Lines Matching refs:bv
157 void bvec_free(mempool_t *pool, struct bio_vec *bv, unsigned short nr_vecs) in bvec_free() argument
162 mempool_free(bv, pool); in bvec_free()
164 kmem_cache_free(biovec_slab(nr_vecs)->slab, bv); in bvec_free()
531 struct bio_vec bv; in zero_fill_bio() local
534 bio_for_each_segment(bv, bio, iter) in zero_fill_bio()
535 memzero_bvec(&bv); in zero_fill_bio()
551 struct bio_vec bv; in bio_truncate() local
562 bio_for_each_segment(bv, bio, iter) { in bio_truncate()
563 if (done + bv.bv_len > new_size) { in bio_truncate()
570 zero_user(bv.bv_page, offset, bv.bv_len - offset); in bio_truncate()
573 done += bv.bv_len; in bio_truncate()
775 static inline bool page_is_mergeable(const struct bio_vec *bv, in page_is_mergeable() argument
779 size_t bv_end = bv->bv_offset + bv->bv_len; in page_is_mergeable()
780 phys_addr_t vec_end_addr = page_to_phys(bv->bv_page) + bv_end - 1; in page_is_mergeable()
785 if (xen_domain() && !xen_biovec_phys_mergeable(bv, page)) in page_is_mergeable()
791 return (bv->bv_page + bv_end / PAGE_SIZE) == (page + off / PAGE_SIZE); in page_is_mergeable()
803 struct bio_vec *bv = &bio->bi_io_vec[bio->bi_vcnt - 1]; in bio_try_merge_hw_seg() local
805 phys_addr_t addr1 = page_to_phys(bv->bv_page) + bv->bv_offset; in bio_try_merge_hw_seg()
810 if (bv->bv_len + len > queue_max_segment_size(q)) in bio_try_merge_hw_seg()
948 struct bio_vec *bv = &bio->bi_io_vec[bio->bi_vcnt - 1]; in __bio_try_merge_page() local
950 if (page_is_mergeable(bv, page, len, off, same_page)) { in __bio_try_merge_page()
955 bv->bv_len += len; in __bio_try_merge_page()
977 struct bio_vec *bv = &bio->bi_io_vec[bio->bi_vcnt]; in __bio_add_page() local
982 bv->bv_page = page; in __bio_add_page()
983 bv->bv_offset = off; in __bio_add_page()
984 bv->bv_len = len; in __bio_add_page()
1088 struct bio_vec *bv = bio->bi_io_vec + bio->bi_vcnt; in __bio_iov_iter_get_pages() local
1089 struct page **pages = (struct page **)bv; in __bio_iov_iter_get_pages()
1135 struct bio_vec *bv = bio->bi_io_vec + bio->bi_vcnt; in __bio_iov_append_get_pages() local
1136 struct page **pages = (struct page **)bv; in __bio_iov_append_get_pages()