Lines Matching refs:bvec
26 struct z_erofs_bvec bvec[total]; \
150 unsigned long base = (unsigned long)((struct z_erofs_bvset *)0)->bvec; in z_erofs_bvset_flip()
182 struct z_erofs_bvec *bvec, in z_erofs_bvec_enqueue() argument
203 iter->bvset->bvec[iter->cur++] = *bvec; in z_erofs_bvec_enqueue()
208 struct z_erofs_bvec *bvec, in z_erofs_bvec_dequeue() argument
215 *bvec = iter->bvset->bvec[iter->cur++]; in z_erofs_bvec_dequeue()
621 struct z_erofs_bvec *bvec = pcl->compressed_bvecs; in z_erofs_cache_release_folio() local
622 struct z_erofs_bvec *end = bvec + z_erofs_pclusterpages(pcl); in z_erofs_cache_release_folio()
632 for (; bvec < end; ++bvec) { in z_erofs_cache_release_folio()
633 if (bvec->page && page_folio(bvec->page) == folio) { in z_erofs_cache_release_folio()
634 bvec->page = NULL; in z_erofs_cache_release_folio()
691 struct z_erofs_bvec *bvec, bool exclusive) in z_erofs_attach_page() argument
705 pcl->compressed_bvecs[fe->icur] = *bvec; in z_erofs_attach_page()
715 fe->candidate_bvpage = bvec->page; in z_erofs_attach_page()
717 ret = z_erofs_bvec_enqueue(&fe->biter, bvec, &fe->candidate_bvpage, in z_erofs_attach_page()
1123 struct z_erofs_bvec bvec; member
1128 struct z_erofs_bvec *bvec) in z_erofs_do_decompressed_bvec() argument
1130 int poff = bvec->offset + be->pcl->pageofs_out; in z_erofs_do_decompressed_bvec()
1134 if (!(poff & ~PAGE_MASK) && (bvec->end == PAGE_SIZE || in z_erofs_do_decompressed_bvec()
1135 bvec->offset + bvec->end == be->pcl->length)) { in z_erofs_do_decompressed_bvec()
1139 *page = bvec->page; in z_erofs_do_decompressed_bvec()
1148 item->bvec = *bvec; in z_erofs_do_decompressed_bvec()
1163 cur = bvi->bvec.offset < 0 ? -bvi->bvec.offset : 0; in z_erofs_fill_other_copies()
1164 end = min_t(unsigned int, be->pcl->length - bvi->bvec.offset, in z_erofs_fill_other_copies()
1165 bvi->bvec.end); in z_erofs_fill_other_copies()
1166 dst = kmap_local_page(bvi->bvec.page); in z_erofs_fill_other_copies()
1170 pgnr = (bvi->bvec.offset + cur + off0) >> PAGE_SHIFT; in z_erofs_fill_other_copies()
1173 scur = bvi->bvec.offset + cur - in z_erofs_fill_other_copies()
1187 erofs_onlinefolio_end(page_folio(bvi->bvec.page), err, true); in z_erofs_fill_other_copies()
1202 struct z_erofs_bvec bvec; in z_erofs_parse_out_bvecs() local
1204 z_erofs_bvec_dequeue(&biter, &bvec, &old_bvpage); in z_erofs_parse_out_bvecs()
1209 DBG_BUGON(z_erofs_page_is_invalidated(bvec.page)); in z_erofs_parse_out_bvecs()
1210 z_erofs_do_decompressed_bvec(be, &bvec); in z_erofs_parse_out_bvecs()
1226 struct z_erofs_bvec *bvec = &pcl->compressed_bvecs[i]; in z_erofs_parse_in_bvecs() local
1227 struct page *page = bvec->page; in z_erofs_parse_in_bvecs()
1231 bvec->page = NULL; /* clear the failure reason */ in z_erofs_parse_in_bvecs()
1247 z_erofs_do_decompressed_bvec(be, bvec); in z_erofs_parse_in_bvecs()
1483 static void z_erofs_fill_bio_vec(struct bio_vec *bvec, in z_erofs_fill_bio_vec() argument
1498 bvec->bv_offset = 0; in z_erofs_fill_bio_vec()
1499 bvec->bv_len = PAGE_SIZE; in z_erofs_fill_bio_vec()
1507 bvec->bv_page = zbv.page; in z_erofs_fill_bio_vec()
1508 DBG_BUGON(z_erofs_is_shortlived_page(bvec->bv_page)); in z_erofs_fill_bio_vec()
1524 bvec->bv_offset = round_up(-zbv.offset, bs); in z_erofs_fill_bio_vec()
1525 bvec->bv_len = round_up(zbv.end, bs) - bvec->bv_offset; in z_erofs_fill_bio_vec()
1544 bvec->bv_page = NULL; in z_erofs_fill_bio_vec()
1571 bvec->bv_page = page; in z_erofs_fill_bio_vec()
1688 struct bio_vec bvec; in z_erofs_submit_queue() local
1709 bvec.bv_page = NULL; in z_erofs_submit_queue()
1727 if (!bvec.bv_page) { in z_erofs_submit_queue()
1728 z_erofs_fill_bio_vec(&bvec, f, pcl, i++, mc); in z_erofs_submit_queue()
1729 if (!bvec.bv_page) in z_erofs_submit_queue()
1731 if (cur + bvec.bv_len > end) in z_erofs_submit_queue()
1732 bvec.bv_len = end - cur; in z_erofs_submit_queue()
1733 DBG_BUGON(bvec.bv_len < sb->s_blocksize); in z_erofs_submit_queue()
1736 if (unlikely(PageWorkingset(bvec.bv_page)) && in z_erofs_submit_queue()
1759 if (!bio_add_page(bio, bvec.bv_page, bvec.bv_len, in z_erofs_submit_queue()
1760 bvec.bv_offset)) in z_erofs_submit_queue()
1762 last_pa = cur + bvec.bv_len; in z_erofs_submit_queue()
1764 } while ((cur += bvec.bv_len) < end); in z_erofs_submit_queue()