Lines Matching refs:bvec
98 #define __bvec_iter_bvec(bvec, iter) (&(bvec)[(iter).bi_idx]) argument
101 #define mp_bvec_iter_page(bvec, iter) \ argument
102 (__bvec_iter_bvec((bvec), (iter))->bv_page)
104 #define mp_bvec_iter_len(bvec, iter) \ argument
106 __bvec_iter_bvec((bvec), (iter))->bv_len - (iter).bi_bvec_done)
108 #define mp_bvec_iter_offset(bvec, iter) \ argument
109 (__bvec_iter_bvec((bvec), (iter))->bv_offset + (iter).bi_bvec_done)
111 #define mp_bvec_iter_page_idx(bvec, iter) \ argument
112 (mp_bvec_iter_offset((bvec), (iter)) / PAGE_SIZE)
114 #define mp_bvec_iter_bvec(bvec, iter) \ argument
116 .bv_page = mp_bvec_iter_page((bvec), (iter)), \
117 .bv_len = mp_bvec_iter_len((bvec), (iter)), \
118 .bv_offset = mp_bvec_iter_offset((bvec), (iter)), \
122 #define bvec_iter_offset(bvec, iter) \ argument
123 (mp_bvec_iter_offset((bvec), (iter)) % PAGE_SIZE)
125 #define bvec_iter_len(bvec, iter) \ argument
126 min_t(unsigned, mp_bvec_iter_len((bvec), (iter)), \
127 PAGE_SIZE - bvec_iter_offset((bvec), (iter)))
129 #define bvec_iter_page(bvec, iter) \ argument
130 (mp_bvec_iter_page((bvec), (iter)) + \
131 mp_bvec_iter_page_idx((bvec), (iter)))
133 #define bvec_iter_bvec(bvec, iter) \ argument
135 .bv_page = bvec_iter_page((bvec), (iter)), \
136 .bv_len = bvec_iter_len((bvec), (iter)), \
137 .bv_offset = bvec_iter_offset((bvec), (iter)), \
204 static inline void bvec_advance(const struct bio_vec *bvec, in bvec_advance() argument
213 bv->bv_page = bvec->bv_page + (bvec->bv_offset >> PAGE_SHIFT); in bvec_advance()
214 bv->bv_offset = bvec->bv_offset & ~PAGE_MASK; in bvec_advance()
217 bvec->bv_len - iter_all->done); in bvec_advance()
220 if (iter_all->done == bvec->bv_len) { in bvec_advance()
233 static inline void *bvec_kmap_local(struct bio_vec *bvec) in bvec_kmap_local() argument
235 return kmap_local_page(bvec->bv_page) + bvec->bv_offset; in bvec_kmap_local()
244 static inline void memcpy_from_bvec(char *to, struct bio_vec *bvec) in memcpy_from_bvec() argument
246 memcpy_from_page(to, bvec->bv_page, bvec->bv_offset, bvec->bv_len); in memcpy_from_bvec()
255 static inline void memcpy_to_bvec(struct bio_vec *bvec, const char *from) in memcpy_to_bvec() argument
257 memcpy_to_page(bvec->bv_page, bvec->bv_offset, from, bvec->bv_len); in memcpy_to_bvec()
266 static inline void memzero_bvec(struct bio_vec *bvec) in memzero_bvec() argument
268 memzero_page(bvec->bv_page, bvec->bv_offset, bvec->bv_len); in memzero_bvec()
277 static inline void *bvec_virt(struct bio_vec *bvec) in bvec_virt() argument
279 WARN_ON_ONCE(PageHighMem(bvec->bv_page)); in bvec_virt()
280 return page_address(bvec->bv_page) + bvec->bv_offset; in bvec_virt()