Lines Matching refs:pvmw

200 static bool try_to_map_unused_to_zeropage(struct page_vma_mapped_walk *pvmw,  in try_to_map_unused_to_zeropage()  argument
213 VM_BUG_ON_PAGE(pte_present(*pvmw->pte), page); in try_to_map_unused_to_zeropage()
215 if (folio_test_mlocked(folio) || (pvmw->vma->vm_flags & VM_LOCKED) || in try_to_map_unused_to_zeropage()
216 mm_forbids_zeropage(pvmw->vma->vm_mm)) in try_to_map_unused_to_zeropage()
231 newpte = pte_mkspecial(pfn_pte(my_zero_pfn(pvmw->address), in try_to_map_unused_to_zeropage()
232 pvmw->vma->vm_page_prot)); in try_to_map_unused_to_zeropage()
233 set_pte_at(pvmw->vma->vm_mm, pvmw->address, pvmw->pte, newpte); in try_to_map_unused_to_zeropage()
235 dec_mm_counter(pvmw->vma->vm_mm, mm_counter(folio)); in try_to_map_unused_to_zeropage()
251 DEFINE_FOLIO_VMA_WALK(pvmw, rmap_walk_arg->folio, vma, addr, PVMW_SYNC | PVMW_MIGRATION); in remove_migration_pte()
253 while (page_vma_mapped_walk(&pvmw)) { in remove_migration_pte()
263 idx = linear_page_index(vma, pvmw.address) - pvmw.pgoff; in remove_migration_pte()
268 if (!pvmw.pte) { in remove_migration_pte()
271 remove_migration_pmd(&pvmw, new); in remove_migration_pte()
276 try_to_map_unused_to_zeropage(&pvmw, folio, idx)) in remove_migration_pte()
281 old_pte = ptep_get(pvmw.pte); in remove_migration_pte()
323 hugetlb_add_anon_rmap(folio, vma, pvmw.address, in remove_migration_pte()
327 set_huge_pte_at(vma->vm_mm, pvmw.address, pvmw.pte, pte, in remove_migration_pte()
334 pvmw.address, rmap_flags); in remove_migration_pte()
337 set_pte_at(vma->vm_mm, pvmw.address, pvmw.pte, pte); in remove_migration_pte()
342 trace_remove_migration_pte(pvmw.address, pte_val(pte), in remove_migration_pte()
346 update_mmu_cache(vma, pvmw.address, pvmw.pte); in remove_migration_pte()