Lines Matching refs:bv
21 static inline void bio_get_first_bvec(struct bio *bio, struct bio_vec *bv) in bio_get_first_bvec() argument
23 *bv = mp_bvec_iter_bvec(bio->bi_io_vec, bio->bi_iter); in bio_get_first_bvec()
26 static inline void bio_get_last_bvec(struct bio *bio, struct bio_vec *bv) in bio_get_last_bvec() argument
31 bio_get_first_bvec(bio, bv); in bio_get_last_bvec()
32 if (bv->bv_len == bio->bi_iter.bi_size) in bio_get_last_bvec()
42 *bv = bio->bi_io_vec[idx]; in bio_get_last_bvec()
49 bv->bv_len = iter.bi_bvec_done; in bio_get_last_bvec()
270 const struct bio_vec *bv, unsigned *nsegs, unsigned *bytes, in bvec_split_segs() argument
274 unsigned len = min(bv->bv_len, max_len); in bvec_split_segs()
279 seg_size = get_max_segment_size(lim, bvec_phys(bv) + total_len, len); in bvec_split_segs()
285 if ((bv->bv_offset + total_len) & lim->virt_boundary_mask) in bvec_split_segs()
292 return len > 0 || bv->bv_len > max_len; in bvec_split_segs()
318 struct bio_vec bv, bvprv, *bvprvp = NULL; in bio_split_rw_at() local
322 bio_for_each_bvec(bv, bio, iter) { in bio_split_rw_at()
327 if (bvprvp && bvec_gap_to_prev(lim, bvprvp, bv.bv_offset)) in bio_split_rw_at()
331 bytes + bv.bv_len <= max_bytes && in bio_split_rw_at()
332 bv.bv_offset + bv.bv_len <= lim->min_segment_size) { in bio_split_rw_at()
334 bytes += bv.bv_len; in bio_split_rw_at()
336 if (bvec_split_segs(lim, &bv, &nsegs, &bytes, in bio_split_rw_at()
341 bvprv = bv; in bio_split_rw_at()
448 struct bio_vec bv; in blk_recalc_rq_segments() local
470 rq_for_each_bvec(bv, rq, iter) in blk_recalc_rq_segments()
471 bvec_split_segs(&rq->q->limits, &bv, &nr_phys_segs, &bytes, in blk_recalc_rq_segments()
485 struct bio_vec bv; in blk_map_iter_next() local
499 bv = mp_bvec_iter_bvec(iter->bio->bi_io_vec, iter->iter); in blk_map_iter_next()
500 vec->paddr = bvec_phys(&bv); in blk_map_iter_next()
502 bv.bv_len = min(bv.bv_len, max_size); in blk_map_iter_next()
503 bio_advance_iter_single(iter->bio, &iter->iter, bv.bv_len); in blk_map_iter_next()
521 if (bv.bv_len + next.bv_len > max_size || in blk_map_iter_next()
522 !biovec_phys_mergeable(req->q, &bv, &next)) in blk_map_iter_next()
525 bv.bv_len += next.bv_len; in blk_map_iter_next()
529 vec->len = bv.bv_len; in blk_map_iter_next()