Lines Matching refs:pfn
740 static int memory_bm_find_bit(struct memory_bitmap *bm, unsigned long pfn, in memory_bm_find_bit() argument
749 if (pfn >= zone->start_pfn && pfn < zone->end_pfn) in memory_bm_find_bit()
756 if (pfn >= curr->start_pfn && pfn < curr->end_pfn) { in memory_bm_find_bit()
778 ((pfn - zone->start_pfn) & ~BM_BLOCK_MASK) == bm->cur.node_pfn) in memory_bm_find_bit()
782 block_nr = (pfn - zone->start_pfn) >> BM_BLOCK_SHIFT; in memory_bm_find_bit()
797 bm->cur.node_pfn = (pfn - zone->start_pfn) & ~BM_BLOCK_MASK; in memory_bm_find_bit()
801 *bit_nr = (pfn - zone->start_pfn) & BM_BLOCK_MASK; in memory_bm_find_bit()
806 static void memory_bm_set_bit(struct memory_bitmap *bm, unsigned long pfn) in memory_bm_set_bit() argument
812 error = memory_bm_find_bit(bm, pfn, &addr, &bit); in memory_bm_set_bit()
817 static int mem_bm_set_bit_check(struct memory_bitmap *bm, unsigned long pfn) in mem_bm_set_bit_check() argument
823 error = memory_bm_find_bit(bm, pfn, &addr, &bit); in mem_bm_set_bit_check()
830 static void memory_bm_clear_bit(struct memory_bitmap *bm, unsigned long pfn) in memory_bm_clear_bit() argument
836 error = memory_bm_find_bit(bm, pfn, &addr, &bit); in memory_bm_clear_bit()
849 static int memory_bm_test_bit(struct memory_bitmap *bm, unsigned long pfn) in memory_bm_test_bit() argument
855 error = memory_bm_find_bit(bm, pfn, &addr, &bit); in memory_bm_test_bit()
860 static bool memory_bm_pfn_present(struct memory_bitmap *bm, unsigned long pfn) in memory_bm_pfn_present() argument
865 return !memory_bm_find_bit(bm, pfn, &addr, &bit); in memory_bm_pfn_present()
917 unsigned long bits, pfn, pages; in memory_bm_next_pfn() local
926 pfn = bm->cur.zone->start_pfn + bm->cur.node_pfn + bit; in memory_bm_next_pfn()
928 return pfn; in memory_bm_next_pfn()
1084 unsigned long pfn; in mark_nosave_pages() local
1091 for (pfn = region->start_pfn; pfn < region->end_pfn; pfn++) in mark_nosave_pages()
1092 if (pfn_valid(pfn)) { in mark_nosave_pages()
1099 mem_bm_set_bit_check(bm, pfn); in mark_nosave_pages()
1192 unsigned long pfn; in clear_or_poison_free_pages() local
1199 pfn = memory_bm_next_pfn(bm); in clear_or_poison_free_pages()
1200 while (pfn != BM_END_OF_MAP) { in clear_or_poison_free_pages()
1201 if (pfn_valid(pfn)) in clear_or_poison_free_pages()
1202 clear_or_poison_free_page(pfn_to_page(pfn)); in clear_or_poison_free_pages()
1204 pfn = memory_bm_next_pfn(bm); in clear_or_poison_free_pages()
1260 static struct page *saveable_highmem_page(struct zone *zone, unsigned long pfn) in saveable_highmem_page() argument
1264 if (!pfn_valid(pfn)) in saveable_highmem_page()
1267 page = pfn_to_online_page(pfn); in saveable_highmem_page()
1294 unsigned long pfn, max_zone_pfn; in count_highmem_pages() local
1301 for (pfn = zone->zone_start_pfn; pfn < max_zone_pfn; pfn++) in count_highmem_pages()
1302 if (saveable_highmem_page(zone, pfn)) in count_highmem_pages()
1324 static struct page *saveable_page(struct zone *zone, unsigned long pfn) in saveable_page() argument
1328 if (!pfn_valid(pfn)) in saveable_page()
1331 page = pfn_to_online_page(pfn); in saveable_page()
1344 && (!kernel_page_present(page) || pfn_is_nosave(pfn))) in saveable_page()
1359 unsigned long pfn, max_zone_pfn; in count_data_pages() local
1368 for (pfn = zone->zone_start_pfn; pfn < max_zone_pfn; pfn++) in count_data_pages()
1369 if (saveable_page(zone, pfn)) in count_data_pages()
1407 static inline struct page *page_is_saveable(struct zone *zone, unsigned long pfn) in page_is_saveable() argument
1410 saveable_highmem_page(zone, pfn) : saveable_page(zone, pfn); in page_is_saveable()
1442 #define page_is_saveable(zone, pfn) saveable_page(zone, pfn) argument
1455 unsigned long pfn; in copy_data_pages() local
1462 for (pfn = zone->zone_start_pfn; pfn < max_zone_pfn; pfn++) in copy_data_pages()
1463 if (page_is_saveable(zone, pfn)) in copy_data_pages()
1464 memory_bm_set_bit(orig_bm, pfn); in copy_data_pages()
1469 pfn = memory_bm_next_pfn(orig_bm); in copy_data_pages()
1470 if (unlikely(pfn == BM_END_OF_MAP)) in copy_data_pages()
1472 copy_data_page(memory_bm_next_pfn(copy_bm), pfn); in copy_data_pages()
1666 unsigned long pfn = memory_bm_next_pfn(©_bm); in free_unnecessary_pages() local
1667 struct page *page = pfn_to_page(pfn); in free_unnecessary_pages()
1680 memory_bm_clear_bit(©_bm, pfn); in free_unnecessary_pages()
2185 unsigned long pfn; in duplicate_memory_bitmap() local
2188 pfn = memory_bm_next_pfn(src); in duplicate_memory_bitmap()
2189 while (pfn != BM_END_OF_MAP) { in duplicate_memory_bitmap()
2190 memory_bm_set_bit(dst, pfn); in duplicate_memory_bitmap()
2191 pfn = memory_bm_next_pfn(src); in duplicate_memory_bitmap()
2203 unsigned long pfn; in mark_unsafe_pages() local
2207 pfn = memory_bm_next_pfn(free_pages_map); in mark_unsafe_pages()
2208 while (pfn != BM_END_OF_MAP) { in mark_unsafe_pages()
2210 pfn = memory_bm_next_pfn(free_pages_map); in mark_unsafe_pages()
2302 unsigned long pfn; in count_highmem_image_pages() local
2306 pfn = memory_bm_next_pfn(bm); in count_highmem_image_pages()
2307 while (pfn != BM_END_OF_MAP) { in count_highmem_image_pages()
2308 if (PageHighMem(pfn_to_page(pfn))) in count_highmem_image_pages()
2311 pfn = memory_bm_next_pfn(bm); in count_highmem_image_pages()
2579 unsigned long pfn = memory_bm_next_pfn(bm); in get_buffer() local
2581 if (pfn == BM_END_OF_MAP) in get_buffer()
2584 page = pfn_to_page(pfn); in get_buffer()