Lines Matching refs:pvmw

809 	DEFINE_FOLIO_VMA_WALK(pvmw, folio, vma, address, 0);
812 while (page_vma_mapped_walk(&pvmw)) {
813 address = pvmw.address;
820 (!folio_test_large(folio) || !pvmw.pte)) {
822 mlock_vma_folio(folio, vma, !pvmw.pte);
823 page_vma_mapped_walk_done(&pvmw);
828 if (pvmw.pte) {
830 pte_young(ptep_get(pvmw.pte))) {
831 lru_gen_look_around(&pvmw);
836 pvmw.pte))
840 pvmw.pmd))
946 static int page_vma_mkclean_one(struct page_vma_mapped_walk *pvmw)
949 struct vm_area_struct *vma = pvmw->vma;
951 unsigned long address = pvmw->address;
958 vma->vm_mm, address, vma_address_end(pvmw));
961 while (page_vma_mapped_walk(pvmw)) {
964 address = pvmw->address;
965 if (pvmw->pte) {
966 pte_t *pte = pvmw->pte;
980 pmd_t *pmd = pvmw->pmd;
1011 DEFINE_FOLIO_VMA_WALK(pvmw, folio, vma, address, PVMW_SYNC);
1014 *cleaned += page_vma_mkclean_one(&pvmw);
1067 struct page_vma_mapped_walk pvmw = {
1078 pvmw.address = vma_pgoff_address(pgoff, nr_pages, vma);
1079 VM_BUG_ON_VMA(pvmw.address == -EFAULT, vma);
1081 return page_vma_mkclean_one(&pvmw);
1487 DEFINE_FOLIO_VMA_WALK(pvmw, folio, vma, address, 0);
1503 pvmw.flags = PVMW_SYNC;
1516 range.end = vma_address_end(&pvmw);
1532 while (page_vma_mapped_walk(&pvmw)) {
1534 VM_BUG_ON_FOLIO(!pvmw.pte, folio);
1539 page_vma_mapped_walk_done(&pvmw);
1550 page_vma_mapped_walk_done(&pvmw);
1555 pfn = pte_pfn(ptep_get(pvmw.pte));
1557 address = pvmw.address;
1591 page_vma_mapped_walk_done(&pvmw);
1595 if (huge_pmd_unshare(mm, vma, address, pvmw.pte)) {
1609 page_vma_mapped_walk_done(&pvmw);
1614 pteval = huge_ptep_clear_flush(vma, address, pvmw.pte);
1627 pteval = ptep_get_and_clear(mm, address, pvmw.pte);
1631 pteval = ptep_clear_flush(vma, address, pvmw.pte);
1640 pte_install_uffd_wp_if_needed(vma, address, pvmw.pte, pteval);
1653 set_huge_pte_at(mm, address, pvmw.pte, pteval,
1657 set_pte_at(mm, address, pvmw.pte, pteval);
1693 page_vma_mapped_walk_done(&pvmw);
1731 set_pte_at(mm, address, pvmw.pte, pteval);
1734 page_vma_mapped_walk_done(&pvmw);
1739 set_pte_at(mm, address, pvmw.pte, pteval);
1741 page_vma_mapped_walk_done(&pvmw);
1746 set_pte_at(mm, address, pvmw.pte, pteval);
1748 page_vma_mapped_walk_done(&pvmw);
1756 set_pte_at(mm, address, pvmw.pte, pteval);
1758 page_vma_mapped_walk_done(&pvmw);
1776 set_pte_at(mm, address, pvmw.pte, swp_pte);
1849 DEFINE_FOLIO_VMA_WALK(pvmw, folio, vma, address, 0);
1865 pvmw.flags = PVMW_SYNC;
1882 range.end = vma_address_end(&pvmw);
1898 while (page_vma_mapped_walk(&pvmw)) {
1901 if (!pvmw.pte) {
1903 pmd_pfn(*pvmw.pmd) - folio_pfn(folio));
1907 if (set_pmd_migration_entry(&pvmw, subpage)) {
1909 page_vma_mapped_walk_done(&pvmw);
1917 VM_BUG_ON_FOLIO(!pvmw.pte, folio);
1919 pfn = pte_pfn(ptep_get(pvmw.pte));
1937 address = pvmw.address;
1966 page_vma_mapped_walk_done(&pvmw);
1970 if (huge_pmd_unshare(mm, vma, address, pvmw.pte)) {
1985 page_vma_mapped_walk_done(&pvmw);
1991 pteval = huge_ptep_clear_flush(vma, address, pvmw.pte);
2004 pteval = ptep_get_and_clear(mm, address, pvmw.pte);
2008 pteval = ptep_clear_flush(vma, address, pvmw.pte);
2049 set_pte_at(mm, pvmw.address, pvmw.pte, swp_pte);
2050 trace_set_migration_pte(pvmw.address, pte_val(swp_pte),
2060 set_huge_pte_at(mm, address, pvmw.pte, pteval,
2064 set_pte_at(mm, address, pvmw.pte, pteval);
2085 set_huge_pte_at(mm, address, pvmw.pte,
2088 set_pte_at(mm, address, pvmw.pte, pteval);
2090 page_vma_mapped_walk_done(&pvmw);
2100 set_huge_pte_at(mm, address, pvmw.pte,
2103 set_pte_at(mm, address, pvmw.pte, pteval);
2105 page_vma_mapped_walk_done(&pvmw);
2133 set_huge_pte_at(mm, address, pvmw.pte, swp_pte,
2136 set_pte_at(mm, address, pvmw.pte, swp_pte);
2214 DEFINE_FOLIO_VMA_WALK(pvmw, folio, vma, address, 0);
2230 while (page_vma_mapped_walk(&pvmw)) {
2232 VM_BUG_ON_FOLIO(!pvmw.pte, folio);
2234 ptent = ptep_get(pvmw.pte);
2237 page_vma_mapped_walk_done(&pvmw);
2243 address = pvmw.address;
2247 pteval = ptep_clear_flush(vma, address, pvmw.pte);
2278 set_pte_at(mm, address, pvmw.pte, swp_pte);