Lines Matching refs:newpage

403 		struct page *newpage, struct page *page, int extra_count)  in migrate_page_move_mapping()  argument
416 newpage->index = page->index; in migrate_page_move_mapping()
417 newpage->mapping = page->mapping; in migrate_page_move_mapping()
419 __SetPageSwapBacked(newpage); in migrate_page_move_mapping()
425 newzone = page_zone(newpage); in migrate_page_move_mapping()
442 newpage->index = page->index; in migrate_page_move_mapping()
443 newpage->mapping = page->mapping; in migrate_page_move_mapping()
444 page_ref_add(newpage, thp_nr_pages(page)); /* add cache reference */ in migrate_page_move_mapping()
446 __SetPageSwapBacked(newpage); in migrate_page_move_mapping()
448 SetPageSwapCache(newpage); in migrate_page_move_mapping()
449 set_page_private(newpage, page_private(page)); in migrate_page_move_mapping()
459 SetPageDirty(newpage); in migrate_page_move_mapping()
462 xas_store(&xas, newpage); in migrate_page_move_mapping()
468 xas_store(&xas, newpage); in migrate_page_move_mapping()
524 struct page *newpage, struct page *page) in migrate_huge_page_move_mapping() argument
541 newpage->index = page->index; in migrate_huge_page_move_mapping()
542 newpage->mapping = page->mapping; in migrate_huge_page_move_mapping()
544 get_page(newpage); in migrate_huge_page_move_mapping()
546 xas_store(&xas, newpage); in migrate_huge_page_move_mapping()
606 void migrate_page_states(struct page *newpage, struct page *page) in migrate_page_states() argument
611 SetPageError(newpage); in migrate_page_states()
613 SetPageReferenced(newpage); in migrate_page_states()
615 SetPageUptodate(newpage); in migrate_page_states()
618 SetPageActive(newpage); in migrate_page_states()
620 SetPageUnevictable(newpage); in migrate_page_states()
622 SetPageWorkingset(newpage); in migrate_page_states()
624 SetPageChecked(newpage); in migrate_page_states()
626 SetPageMappedToDisk(newpage); in migrate_page_states()
630 SetPageDirty(newpage); in migrate_page_states()
633 set_page_young(newpage); in migrate_page_states()
635 set_page_idle(newpage); in migrate_page_states()
642 page_cpupid_xchg_last(newpage, cpupid); in migrate_page_states()
644 ksm_migrate_page(newpage, page); in migrate_page_states()
658 if (PageWriteback(newpage)) in migrate_page_states()
659 end_page_writeback(newpage); in migrate_page_states()
667 SetPageReadahead(newpage); in migrate_page_states()
669 copy_page_owner(page, newpage); in migrate_page_states()
672 mem_cgroup_migrate(page, newpage); in migrate_page_states()
676 void migrate_page_copy(struct page *newpage, struct page *page) in migrate_page_copy() argument
679 copy_huge_page(newpage, page); in migrate_page_copy()
681 copy_highpage(newpage, page); in migrate_page_copy()
683 migrate_page_states(newpage, page); in migrate_page_copy()
698 struct page *newpage, struct page *page, in migrate_page() argument
705 rc = migrate_page_move_mapping(mapping, newpage, page, 0); in migrate_page()
711 migrate_page_copy(newpage, page); in migrate_page()
713 migrate_page_states(newpage, page); in migrate_page()
758 struct page *newpage, struct page *page, enum migrate_mode mode, in __buffer_migrate_page() argument
766 return migrate_page(mapping, newpage, page, mode); in __buffer_migrate_page()
804 rc = migrate_page_move_mapping(mapping, newpage, page, 0); in __buffer_migrate_page()
808 attach_page_private(newpage, detach_page_private(page)); in __buffer_migrate_page()
812 set_bh_page(bh, newpage, bh_offset(bh)); in __buffer_migrate_page()
818 migrate_page_copy(newpage, page); in __buffer_migrate_page()
820 migrate_page_states(newpage, page); in __buffer_migrate_page()
842 struct page *newpage, struct page *page, enum migrate_mode mode) in buffer_migrate_page() argument
844 return __buffer_migrate_page(mapping, newpage, page, mode, false); in buffer_migrate_page()
855 struct page *newpage, struct page *page, enum migrate_mode mode) in buffer_migrate_page_norefs() argument
857 return __buffer_migrate_page(mapping, newpage, page, mode, true); in buffer_migrate_page_norefs()
906 struct page *newpage, struct page *page, enum migrate_mode mode) in fallback_migrate_page() argument
928 return migrate_page(mapping, newpage, page, mode); in fallback_migrate_page()
942 static int move_to_new_page(struct page *newpage, struct page *page, in move_to_new_page() argument
950 VM_BUG_ON_PAGE(!PageLocked(newpage), newpage); in move_to_new_page()
956 rc = migrate_page(mapping, newpage, page, mode); in move_to_new_page()
965 rc = mapping->a_ops->migratepage(mapping, newpage, in move_to_new_page()
968 rc = fallback_migrate_page(mapping, newpage, in move_to_new_page()
982 rc = mapping->a_ops->migratepage(mapping, newpage, in move_to_new_page()
1011 if (likely(!is_zone_device_page(newpage))) in move_to_new_page()
1012 flush_dcache_page(newpage); in move_to_new_page()
1019 static int __unmap_and_move(struct page *page, struct page *newpage, in __unmap_and_move() argument
1095 if (unlikely(!trylock_page(newpage))) in __unmap_and_move()
1099 rc = move_to_new_page(newpage, page, mode); in __unmap_and_move()
1131 rc = move_to_new_page(newpage, page, mode); in __unmap_and_move()
1135 rc == MIGRATEPAGE_SUCCESS ? newpage : page, false); in __unmap_and_move()
1138 unlock_page(newpage); in __unmap_and_move()
1156 put_page(newpage); in __unmap_and_move()
1158 putback_lru_page(newpage); in __unmap_and_move()
1175 struct page *newpage = NULL; in unmap_and_move() local
1193 newpage = get_new_page(page, private); in unmap_and_move()
1194 if (!newpage) in unmap_and_move()
1197 rc = __unmap_and_move(page, newpage, force, mode); in unmap_and_move()
1199 set_page_owner_migrate_reason(newpage, reason); in unmap_and_move()
1248 put_new_page(newpage, private); in unmap_and_move()
1250 put_page(newpage); in unmap_and_move()
2013 struct page *newpage; in alloc_misplaced_dst_page() local
2015 newpage = __alloc_pages_node(nid, in alloc_misplaced_dst_page()
2021 return newpage; in alloc_misplaced_dst_page()
2990 struct page *newpage = migrate_pfn_to_page(migrate->dst[i]); in migrate_vma_pages() local
2995 if (!newpage) { in migrate_vma_pages()
3013 migrate_vma_insert_page(migrate, addr, newpage, in migrate_vma_pages()
3021 if (is_zone_device_page(newpage)) { in migrate_vma_pages()
3022 if (is_device_private_page(newpage)) { in migrate_vma_pages()
3041 r = migrate_page(mapping, newpage, page, MIGRATE_SYNC_NO_COPY); in migrate_vma_pages()
3073 struct page *newpage = migrate_pfn_to_page(migrate->dst[i]); in migrate_vma_finalize() local
3077 if (newpage) { in migrate_vma_finalize()
3078 unlock_page(newpage); in migrate_vma_finalize()
3079 put_page(newpage); in migrate_vma_finalize()
3084 if (!(migrate->src[i] & MIGRATE_PFN_MIGRATE) || !newpage) { in migrate_vma_finalize()
3085 if (newpage) { in migrate_vma_finalize()
3086 unlock_page(newpage); in migrate_vma_finalize()
3087 put_page(newpage); in migrate_vma_finalize()
3089 newpage = page; in migrate_vma_finalize()
3092 remove_migration_ptes(page, newpage, false); in migrate_vma_finalize()
3100 if (newpage != page) { in migrate_vma_finalize()
3101 unlock_page(newpage); in migrate_vma_finalize()
3102 if (is_zone_device_page(newpage)) in migrate_vma_finalize()
3103 put_page(newpage); in migrate_vma_finalize()
3105 putback_lru_page(newpage); in migrate_vma_finalize()