Lines Matching refs:newpage

398 		struct page *newpage, struct page *page, int extra_count)  in migrate_page_move_mapping()  argument
411 newpage->index = page->index; in migrate_page_move_mapping()
412 newpage->mapping = page->mapping; in migrate_page_move_mapping()
414 __SetPageSwapBacked(newpage); in migrate_page_move_mapping()
420 newzone = page_zone(newpage); in migrate_page_move_mapping()
437 newpage->index = page->index; in migrate_page_move_mapping()
438 newpage->mapping = page->mapping; in migrate_page_move_mapping()
439 page_ref_add(newpage, hpage_nr_pages(page)); /* add cache reference */ in migrate_page_move_mapping()
441 __SetPageSwapBacked(newpage); in migrate_page_move_mapping()
443 SetPageSwapCache(newpage); in migrate_page_move_mapping()
444 set_page_private(newpage, page_private(page)); in migrate_page_move_mapping()
454 SetPageDirty(newpage); in migrate_page_move_mapping()
457 xas_store(&xas, newpage); in migrate_page_move_mapping()
463 xas_store(&xas, newpage); in migrate_page_move_mapping()
512 struct page *newpage, struct page *page) in migrate_huge_page_move_mapping() argument
529 newpage->index = page->index; in migrate_huge_page_move_mapping()
530 newpage->mapping = page->mapping; in migrate_huge_page_move_mapping()
532 get_page(newpage); in migrate_huge_page_move_mapping()
534 xas_store(&xas, newpage); in migrate_huge_page_move_mapping()
594 void migrate_page_states(struct page *newpage, struct page *page) in migrate_page_states() argument
599 SetPageError(newpage); in migrate_page_states()
601 SetPageReferenced(newpage); in migrate_page_states()
603 SetPageUptodate(newpage); in migrate_page_states()
606 SetPageActive(newpage); in migrate_page_states()
608 SetPageUnevictable(newpage); in migrate_page_states()
610 SetPageWorkingset(newpage); in migrate_page_states()
612 SetPageChecked(newpage); in migrate_page_states()
614 SetPageMappedToDisk(newpage); in migrate_page_states()
618 SetPageDirty(newpage); in migrate_page_states()
621 set_page_young(newpage); in migrate_page_states()
623 set_page_idle(newpage); in migrate_page_states()
630 page_cpupid_xchg_last(newpage, cpupid); in migrate_page_states()
632 ksm_migrate_page(newpage, page); in migrate_page_states()
646 if (PageWriteback(newpage)) in migrate_page_states()
647 end_page_writeback(newpage); in migrate_page_states()
649 copy_page_owner(page, newpage); in migrate_page_states()
651 mem_cgroup_migrate(page, newpage); in migrate_page_states()
655 void migrate_page_copy(struct page *newpage, struct page *page) in migrate_page_copy() argument
658 copy_huge_page(newpage, page); in migrate_page_copy()
660 copy_highpage(newpage, page); in migrate_page_copy()
662 migrate_page_states(newpage, page); in migrate_page_copy()
677 struct page *newpage, struct page *page, in migrate_page() argument
684 rc = migrate_page_move_mapping(mapping, newpage, page, 0); in migrate_page()
690 migrate_page_copy(newpage, page); in migrate_page()
692 migrate_page_states(newpage, page); in migrate_page()
737 struct page *newpage, struct page *page, enum migrate_mode mode, in __buffer_migrate_page() argument
745 return migrate_page(mapping, newpage, page, mode); in __buffer_migrate_page()
783 rc = migrate_page_move_mapping(mapping, newpage, page, 0); in __buffer_migrate_page()
788 set_page_private(newpage, page_private(page)); in __buffer_migrate_page()
791 get_page(newpage); in __buffer_migrate_page()
795 set_bh_page(bh, newpage, bh_offset(bh)); in __buffer_migrate_page()
800 SetPagePrivate(newpage); in __buffer_migrate_page()
803 migrate_page_copy(newpage, page); in __buffer_migrate_page()
805 migrate_page_states(newpage, page); in __buffer_migrate_page()
827 struct page *newpage, struct page *page, enum migrate_mode mode) in buffer_migrate_page() argument
829 return __buffer_migrate_page(mapping, newpage, page, mode, false); in buffer_migrate_page()
840 struct page *newpage, struct page *page, enum migrate_mode mode) in buffer_migrate_page_norefs() argument
842 return __buffer_migrate_page(mapping, newpage, page, mode, true); in buffer_migrate_page_norefs()
891 struct page *newpage, struct page *page, enum migrate_mode mode) in fallback_migrate_page() argument
913 return migrate_page(mapping, newpage, page, mode); in fallback_migrate_page()
927 static int move_to_new_page(struct page *newpage, struct page *page, in move_to_new_page() argument
935 VM_BUG_ON_PAGE(!PageLocked(newpage), newpage); in move_to_new_page()
941 rc = migrate_page(mapping, newpage, page, mode); in move_to_new_page()
950 rc = mapping->a_ops->migratepage(mapping, newpage, in move_to_new_page()
953 rc = fallback_migrate_page(mapping, newpage, in move_to_new_page()
967 rc = mapping->a_ops->migratepage(mapping, newpage, in move_to_new_page()
996 if (likely(!is_zone_device_page(newpage))) in move_to_new_page()
997 flush_dcache_page(newpage); in move_to_new_page()
1004 static int __unmap_and_move(struct page *page, struct page *newpage, in __unmap_and_move() argument
1080 if (unlikely(!trylock_page(newpage))) in __unmap_and_move()
1084 rc = move_to_new_page(newpage, page, mode); in __unmap_and_move()
1116 rc = move_to_new_page(newpage, page, mode); in __unmap_and_move()
1120 rc == MIGRATEPAGE_SUCCESS ? newpage : page, false); in __unmap_and_move()
1123 unlock_page(newpage); in __unmap_and_move()
1141 put_page(newpage); in __unmap_and_move()
1143 putback_lru_page(newpage); in __unmap_and_move()
1171 struct page *newpage; in unmap_and_move() local
1176 newpage = get_new_page(page, private); in unmap_and_move()
1177 if (!newpage) in unmap_and_move()
1191 put_new_page(newpage, private); in unmap_and_move()
1193 put_page(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()
1254 put_new_page(newpage, private); in unmap_and_move()
1256 put_page(newpage); in unmap_and_move()
1877 struct page *newpage; in alloc_misplaced_dst_page() local
1879 newpage = __alloc_pages_node(nid, in alloc_misplaced_dst_page()
1885 return newpage; in alloc_misplaced_dst_page()
2819 struct page *newpage = migrate_pfn_to_page(migrate->dst[i]); in migrate_vma_pages() local
2824 if (!newpage) { in migrate_vma_pages()
2843 migrate_vma_insert_page(migrate, addr, newpage, in migrate_vma_pages()
2851 if (is_zone_device_page(newpage)) { in migrate_vma_pages()
2852 if (is_device_private_page(newpage)) { in migrate_vma_pages()
2871 r = migrate_page(mapping, newpage, page, MIGRATE_SYNC_NO_COPY); in migrate_vma_pages()
2903 struct page *newpage = migrate_pfn_to_page(migrate->dst[i]); in migrate_vma_finalize() local
2907 if (newpage) { in migrate_vma_finalize()
2908 unlock_page(newpage); in migrate_vma_finalize()
2909 put_page(newpage); in migrate_vma_finalize()
2914 if (!(migrate->src[i] & MIGRATE_PFN_MIGRATE) || !newpage) { in migrate_vma_finalize()
2915 if (newpage) { in migrate_vma_finalize()
2916 unlock_page(newpage); in migrate_vma_finalize()
2917 put_page(newpage); in migrate_vma_finalize()
2919 newpage = page; in migrate_vma_finalize()
2922 remove_migration_ptes(page, newpage, false); in migrate_vma_finalize()
2931 if (newpage != page) { in migrate_vma_finalize()
2932 unlock_page(newpage); in migrate_vma_finalize()
2933 if (is_zone_device_page(newpage)) in migrate_vma_finalize()
2934 put_page(newpage); in migrate_vma_finalize()
2936 putback_lru_page(newpage); in migrate_vma_finalize()