• Home
  • Raw
  • Download

Lines Matching refs:page

43 	struct page *page, *next;  in release_freepages()  local
46 list_for_each_entry_safe(page, next, freelist, lru) { in release_freepages()
47 list_del(&page->lru); in release_freepages()
48 __free_page(page); in release_freepages()
57 struct page *page; in map_pages() local
59 list_for_each_entry(page, list, lru) { in map_pages()
60 arch_alloc_page(page, 0); in map_pages()
61 kernel_map_pages(page, 1, 1); in map_pages()
87 static struct page *pageblock_pfn_to_page(unsigned long start_pfn, in pageblock_pfn_to_page()
90 struct page *start_page; in pageblock_pfn_to_page()
91 struct page *end_page; in pageblock_pfn_to_page()
116 struct page *page) in isolation_suitable() argument
121 return !get_pageblock_skip(page); in isolation_suitable()
142 struct page *page; in __reset_isolation_suitable() local
149 page = pfn_to_page(pfn); in __reset_isolation_suitable()
150 if (zone != page_zone(page)) in __reset_isolation_suitable()
153 clear_pageblock_skip(page); in __reset_isolation_suitable()
177 struct page *page, unsigned long nr_isolated, in update_pageblock_skip() argument
186 if (!page) in update_pageblock_skip()
192 set_pageblock_skip(page); in update_pageblock_skip()
194 pfn = page_to_pfn(page); in update_pageblock_skip()
214 struct page *page) in isolation_suitable() argument
220 struct page *page, unsigned long nr_isolated, in update_pageblock_skip() argument
313 static bool suitable_migration_target(struct page *page) in suitable_migration_target() argument
316 if (PageBuddy(page)) { in suitable_migration_target()
322 if (page_order_unsafe(page) >= pageblock_order) in suitable_migration_target()
327 if (migrate_async_suitable(get_pageblock_migratetype(page))) in suitable_migration_target()
346 struct page *cursor, *valid_page = NULL; in isolate_freepages_block()
356 struct page *page = cursor; in isolate_freepages_block() local
373 valid_page = page; in isolate_freepages_block()
381 if (PageCompound(page)) { in isolate_freepages_block()
382 unsigned int comp_order = compound_order(page); in isolate_freepages_block()
392 if (!PageBuddy(page)) in isolate_freepages_block()
417 if (!PageBuddy(page)) in isolate_freepages_block()
422 isolated = split_free_page(page); in isolate_freepages_block()
429 list_add(&page->lru, freelist); in isolate_freepages_block()
430 page++; in isolate_freepages_block()
559 struct page *page; in acct_isolated() local
565 list_for_each_entry(page, &cc->migratepages, lru) in acct_isolated()
566 count[!!page_is_file_cache(page)]++; in acct_isolated()
615 struct page *page = NULL, *valid_page = NULL; in isolate_migratepages_block() local
652 page = pfn_to_page(low_pfn); in isolate_migratepages_block()
655 valid_page = page; in isolate_migratepages_block()
663 if (PageBuddy(page)) { in isolate_migratepages_block()
664 unsigned long freepage_order = page_order_unsafe(page); in isolate_migratepages_block()
681 if (!PageLRU(page)) { in isolate_migratepages_block()
682 if (unlikely(balloon_page_movable(page))) { in isolate_migratepages_block()
683 if (balloon_page_isolate(page)) { in isolate_migratepages_block()
701 if (PageTransHuge(page)) { in isolate_migratepages_block()
706 low_pfn += (1 << compound_order(page)) - 1; in isolate_migratepages_block()
716 if (!page_mapping(page) && in isolate_migratepages_block()
717 page_count(page) > page_mapcount(page)) in isolate_migratepages_block()
728 if (!PageLRU(page)) in isolate_migratepages_block()
730 if (PageTransHuge(page)) { in isolate_migratepages_block()
731 low_pfn += (1 << compound_order(page)) - 1; in isolate_migratepages_block()
736 lruvec = mem_cgroup_page_lruvec(page, zone); in isolate_migratepages_block()
739 if (__isolate_lru_page(page, isolate_mode) != 0) in isolate_migratepages_block()
742 VM_BUG_ON_PAGE(PageTransCompound(page), page); in isolate_migratepages_block()
745 del_page_from_lru_list(page, lruvec, page_lru(page)); in isolate_migratepages_block()
749 list_add(&page->lru, migratelist); in isolate_migratepages_block()
837 struct page *page; in isolate_freepages() local
882 page = pageblock_pfn_to_page(block_start_pfn, block_end_pfn, in isolate_freepages()
884 if (!page) in isolate_freepages()
888 if (!suitable_migration_target(page)) in isolate_freepages()
892 if (!isolation_suitable(cc, page)) in isolate_freepages()
952 static struct page *compaction_alloc(struct page *migratepage, in compaction_alloc()
957 struct page *freepage; in compaction_alloc()
971 freepage = list_entry(cc->freepages.next, struct page, lru); in compaction_alloc()
983 static void compaction_free(struct page *page, unsigned long data) in compaction_free() argument
987 list_add(&page->lru, &cc->freepages); in compaction_free()
1007 struct page *page; in isolate_migratepages() local
1036 page = pageblock_pfn_to_page(low_pfn, end_pfn, zone); in isolate_migratepages()
1037 if (!page) in isolate_migratepages()
1041 if (!isolation_suitable(cc, page)) in isolate_migratepages()
1050 !migrate_async_suitable(get_pageblock_migratetype(page))) in isolate_migratepages()