Lines Matching refs:iter
29 #define bio_iter_iovec(bio, iter) \ argument
30 bvec_iter_bvec((bio)->bi_io_vec, (iter))
32 #define bio_iter_page(bio, iter) \ argument
33 bvec_iter_page((bio)->bi_io_vec, (iter))
34 #define bio_iter_len(bio, iter) \ argument
35 bvec_iter_len((bio)->bi_io_vec, (iter))
36 #define bio_iter_offset(bio, iter) \ argument
37 bvec_iter_offset((bio)->bi_io_vec, (iter))
46 #define bvec_iter_sectors(iter) ((iter).bi_size >> 9) argument
47 #define bvec_iter_end_sector(iter) ((iter).bi_sector + bvec_iter_sectors((iter))) argument
125 struct bvec_iter_all *iter) in bio_next_segment() argument
127 if (iter->idx >= bio->bi_vcnt) in bio_next_segment()
130 bvec_advance(&bio->bi_io_vec[iter->idx], iter); in bio_next_segment()
138 #define bio_for_each_segment_all(bvl, bio, iter) \ argument
139 for (bvl = bvec_init_iter_all(&iter); bio_next_segment((bio), &iter); )
141 static inline void bio_advance_iter(struct bio *bio, struct bvec_iter *iter, in bio_advance_iter() argument
144 iter->bi_sector += bytes >> 9; in bio_advance_iter()
147 iter->bi_size -= bytes; in bio_advance_iter()
149 bvec_iter_advance(bio->bi_io_vec, iter, bytes); in bio_advance_iter()
153 #define __bio_for_each_segment(bvl, bio, iter, start) \ argument
154 for (iter = (start); \
155 (iter).bi_size && \
156 ((bvl = bio_iter_iovec((bio), (iter))), 1); \
157 bio_advance_iter((bio), &(iter), (bvl).bv_len))
159 #define bio_for_each_segment(bvl, bio, iter) \ argument
160 __bio_for_each_segment(bvl, bio, iter, (bio)->bi_iter)
162 #define __bio_for_each_bvec(bvl, bio, iter, start) \ argument
163 for (iter = (start); \
164 (iter).bi_size && \
165 ((bvl = mp_bvec_iter_bvec((bio)->bi_io_vec, (iter))), 1); \
166 bio_advance_iter((bio), &(iter), (bvl).bv_len))
169 #define bio_for_each_bvec(bvl, bio, iter) \ argument
170 __bio_for_each_bvec(bvl, bio, iter, (bio)->bi_iter)
172 #define bio_iter_last(bvec, iter) ((iter).bi_size == (bvec).bv_len) argument
178 struct bvec_iter iter; in bio_segments() local
196 bio_for_each_segment(bv, bio, iter) in bio_segments()
254 struct bvec_iter iter = bio->bi_iter; in bio_get_last_bvec() local
262 bio_advance_iter(bio, &iter, iter.bi_size); in bio_get_last_bvec()
264 if (!iter.bi_bvec_done) in bio_get_last_bvec()
265 idx = iter.bi_idx - 1; in bio_get_last_bvec()
267 idx = iter.bi_idx; in bio_get_last_bvec()
275 if (iter.bi_bvec_done) in bio_get_last_bvec()
276 bv->bv_len = iter.bi_bvec_done; in bio_get_last_bvec()
442 int bio_iov_iter_get_pages(struct bio *bio, struct iov_iter *iter);
472 void zero_fill_bio_iter(struct bio *bio, struct bvec_iter iter);
742 #define bip_for_each_vec(bvl, bip, iter) \ argument
743 for_each_bvec(bvl, (bip)->bip_vec, iter, (bip)->bip_iter)