Lines Matching refs:pvmw

842 	DEFINE_FOLIO_VMA_WALK(pvmw, folio, vma, address, 0);
846 while (page_vma_mapped_walk(&pvmw)) {
847 address = pvmw.address;
850 if (!folio_test_large(folio) || !pvmw.pte) {
853 page_vma_mapped_walk_done(&pvmw);
859 * be handled after the pvmw loop.
873 if (pvmw.pte) {
875 pte_young(ptep_get(pvmw.pte))) {
876 lru_gen_look_around(&pvmw);
881 pvmw.pte))
885 pvmw.pmd))
1002 static int page_vma_mkclean_one(struct page_vma_mapped_walk *pvmw)
1005 struct vm_area_struct *vma = pvmw->vma;
1007 unsigned long address = pvmw->address;
1014 vma->vm_mm, address, vma_address_end(pvmw));
1017 while (page_vma_mapped_walk(pvmw)) {
1020 address = pvmw->address;
1021 if (pvmw->pte) {
1022 pte_t *pte = pvmw->pte;
1036 pmd_t *pmd = pvmw->pmd;
1067 DEFINE_FOLIO_VMA_WALK(pvmw, folio, vma, address, PVMW_SYNC);
1070 *cleaned += page_vma_mkclean_one(&pvmw);
1123 struct page_vma_mapped_walk pvmw = {
1134 pvmw.address = vma_address(vma, pgoff, nr_pages);
1135 VM_BUG_ON_VMA(pvmw.address == -EFAULT, vma);
1137 return page_vma_mkclean_one(&pvmw);
1625 DEFINE_FOLIO_VMA_WALK(pvmw, folio, vma, address, 0);
1641 pvmw.flags = PVMW_SYNC;
1654 range.end = vma_address_end(&pvmw);
1670 while (page_vma_mapped_walk(&pvmw)) {
1672 VM_BUG_ON_FOLIO(!pvmw.pte, folio);
1682 page_vma_mapped_walk_done(&pvmw);
1687 pfn = pte_pfn(ptep_get(pvmw.pte));
1689 address = pvmw.address;
1723 page_vma_mapped_walk_done(&pvmw);
1727 if (huge_pmd_unshare(mm, vma, address, pvmw.pte)) {
1741 page_vma_mapped_walk_done(&pvmw);
1746 pteval = huge_ptep_clear_flush(vma, address, pvmw.pte);
1759 pteval = ptep_get_and_clear(mm, address, pvmw.pte);
1763 pteval = ptep_clear_flush(vma, address, pvmw.pte);
1772 pte_install_uffd_wp_if_needed(vma, address, pvmw.pte, pteval);
1785 set_huge_pte_at(mm, address, pvmw.pte, pteval,
1789 set_pte_at(mm, address, pvmw.pte, pteval);
1815 page_vma_mapped_walk_done(&pvmw);
1853 set_pte_at(mm, address, pvmw.pte, pteval);
1856 page_vma_mapped_walk_done(&pvmw);
1861 set_pte_at(mm, address, pvmw.pte, pteval);
1863 page_vma_mapped_walk_done(&pvmw);
1868 set_pte_at(mm, address, pvmw.pte, pteval);
1870 page_vma_mapped_walk_done(&pvmw);
1878 set_pte_at(mm, address, pvmw.pte, pteval);
1880 page_vma_mapped_walk_done(&pvmw);
1898 set_pte_at(mm, address, pvmw.pte, swp_pte);
1974 DEFINE_FOLIO_VMA_WALK(pvmw, folio, vma, address, 0);
1990 pvmw.flags = PVMW_SYNC;
2007 range.end = vma_address_end(&pvmw);
2023 while (page_vma_mapped_walk(&pvmw)) {
2026 if (!pvmw.pte) {
2028 pmd_pfn(*pvmw.pmd) - folio_pfn(folio));
2032 if (set_pmd_migration_entry(&pvmw, subpage)) {
2034 page_vma_mapped_walk_done(&pvmw);
2042 VM_BUG_ON_FOLIO(!pvmw.pte, folio);
2044 pfn = pte_pfn(ptep_get(pvmw.pte));
2062 address = pvmw.address;
2091 page_vma_mapped_walk_done(&pvmw);
2095 if (huge_pmd_unshare(mm, vma, address, pvmw.pte)) {
2110 page_vma_mapped_walk_done(&pvmw);
2116 pteval = huge_ptep_clear_flush(vma, address, pvmw.pte);
2129 pteval = ptep_get_and_clear(mm, address, pvmw.pte);
2133 pteval = ptep_clear_flush(vma, address, pvmw.pte);
2175 set_pte_at(mm, pvmw.address, pvmw.pte, swp_pte);
2176 trace_set_migration_pte(pvmw.address, pte_val(swp_pte),
2186 set_huge_pte_at(mm, address, pvmw.pte, pteval,
2190 set_pte_at(mm, address, pvmw.pte, pteval);
2211 set_huge_pte_at(mm, address, pvmw.pte,
2214 set_pte_at(mm, address, pvmw.pte, pteval);
2216 page_vma_mapped_walk_done(&pvmw);
2226 set_huge_pte_at(mm, address, pvmw.pte,
2229 page_vma_mapped_walk_done(&pvmw);
2234 set_pte_at(mm, address, pvmw.pte, pteval);
2236 page_vma_mapped_walk_done(&pvmw);
2264 set_huge_pte_at(mm, address, pvmw.pte, swp_pte,
2267 set_pte_at(mm, address, pvmw.pte, swp_pte);
2348 DEFINE_FOLIO_VMA_WALK(pvmw, folio, vma, address, 0);
2364 while (page_vma_mapped_walk(&pvmw)) {
2366 VM_BUG_ON_FOLIO(!pvmw.pte, folio);
2368 ptent = ptep_get(pvmw.pte);
2371 page_vma_mapped_walk_done(&pvmw);
2377 address = pvmw.address;
2381 pteval = ptep_clear_flush(vma, address, pvmw.pte);
2412 set_pte_at(mm, address, pvmw.pte, swp_pte);