Lines Matching refs:page

922 static bool bvec_try_merge_page(struct bio_vec *bv, struct page *page,  in bvec_try_merge_page()  argument
927 phys_addr_t page_addr = page_to_phys(page); in bvec_try_merge_page()
931 if (xen_domain() && !xen_biovec_phys_mergeable(bv, page)) in bvec_try_merge_page()
937 if (bv->bv_page + bv_end / PAGE_SIZE != page + off / PAGE_SIZE) in bvec_try_merge_page()
954 struct page *page, unsigned len, unsigned offset) in bvec_try_merge_hw_page() argument
958 phys_addr_t addr2 = page_to_phys(page) + offset + len - 1; in bvec_try_merge_hw_page()
964 return bvec_try_merge_page(bv, page, len, offset); in bvec_try_merge_hw_page()
977 void __bio_add_page(struct bio *bio, struct page *page, in __bio_add_page() argument
983 if (is_pci_p2pdma_page(page)) in __bio_add_page()
986 bvec_set_page(&bio->bi_io_vec[bio->bi_vcnt], page, len, off); in __bio_add_page()
1018 int bio_add_page(struct bio *bio, struct page *page, in bio_add_page() argument
1029 if (!zone_device_pages_have_same_pgmap(bv->bv_page, page)) in bio_add_page()
1032 if (bvec_try_merge_page(bv, page, len, offset)) { in bio_add_page()
1040 __bio_add_page(bio, page, len, offset); in bio_add_page()
1166 struct page **pages, unsigned int i, in get_contig_folio_len()
1195 #define PAGE_PTRS_PER_BVEC (sizeof(struct bio_vec) / sizeof(struct page *))
1213 struct page **pages = (struct page **)bv; in __bio_iov_iter_get_pages()
1257 struct page *page = pages[i]; in __bio_iov_iter_get_pages() local
1258 struct folio *folio = page_folio(page); in __bio_iov_iter_get_pages()
1261 folio_offset = ((size_t)folio_page_idx(folio, page) << in __bio_iov_iter_get_pages()