• Home
  • Raw
  • Download

Lines Matching refs:start_pfn

166 static void register_page_bootmem_info_section(unsigned long start_pfn)  in register_page_bootmem_info_section()  argument
173 section_nr = pfn_to_section_nr(start_pfn); in register_page_bootmem_info_section()
201 static void register_page_bootmem_info_section(unsigned long start_pfn) in register_page_bootmem_info_section() argument
208 section_nr = pfn_to_section_nr(start_pfn); in register_page_bootmem_info_section()
330 unsigned long start_pfn, in find_smallest_section_pfn() argument
333 for (; start_pfn < end_pfn; start_pfn += PAGES_PER_SUBSECTION) { in find_smallest_section_pfn()
334 if (unlikely(!pfn_to_online_page(start_pfn))) in find_smallest_section_pfn()
337 if (unlikely(pfn_to_nid(start_pfn) != nid)) in find_smallest_section_pfn()
340 if (zone && zone != page_zone(pfn_to_page(start_pfn))) in find_smallest_section_pfn()
343 return start_pfn; in find_smallest_section_pfn()
351 unsigned long start_pfn, in find_biggest_section_pfn() argument
358 for (; pfn >= start_pfn; pfn -= PAGES_PER_SUBSECTION) { in find_biggest_section_pfn()
374 static void shrink_zone_span(struct zone *zone, unsigned long start_pfn, in shrink_zone_span() argument
384 if (zone_start_pfn == start_pfn) { in shrink_zone_span()
405 start_pfn); in shrink_zone_span()
425 if (pfn >= start_pfn && pfn < end_pfn) in shrink_zone_span()
469 unsigned long start_pfn, in remove_pfn_range_from_zone() argument
488 shrink_zone_span(zone, start_pfn, start_pfn + nr_pages); in remove_pfn_range_from_zone()
616 static int online_pages_range(unsigned long start_pfn, unsigned long nr_pages, in online_pages_range() argument
619 const unsigned long end_pfn = start_pfn + nr_pages; in online_pages_range()
628 for (pfn = start_pfn; pfn < end_pfn; pfn += 1ul << order) { in online_pages_range()
637 online_mem_sections(start_pfn, end_pfn); in online_pages_range()
675 static void __meminit resize_zone_range(struct zone *zone, unsigned long start_pfn, in resize_zone_range() argument
680 if (zone_is_empty(zone) || start_pfn < zone->zone_start_pfn) in resize_zone_range()
681 zone->zone_start_pfn = start_pfn; in resize_zone_range()
683 zone->spanned_pages = max(start_pfn + nr_pages, old_end_pfn) - zone->zone_start_pfn; in resize_zone_range()
686 static void __meminit resize_pgdat_range(struct pglist_data *pgdat, unsigned long start_pfn, in resize_pgdat_range() argument
691 if (!pgdat->node_spanned_pages || start_pfn < pgdat->node_start_pfn) in resize_pgdat_range()
692 pgdat->node_start_pfn = start_pfn; in resize_pgdat_range()
694 pgdat->node_spanned_pages = max(start_pfn + nr_pages, old_end_pfn) - pgdat->node_start_pfn; in resize_pgdat_range()
702 void __ref move_pfn_range_to_zone(struct zone *zone, unsigned long start_pfn, in move_pfn_range_to_zone() argument
715 init_currently_empty_zone(zone, start_pfn, nr_pages); in move_pfn_range_to_zone()
716 resize_zone_range(zone, start_pfn, nr_pages); in move_pfn_range_to_zone()
718 resize_pgdat_range(pgdat, start_pfn, nr_pages); in move_pfn_range_to_zone()
727 memmap_init_zone(nr_pages, nid, zone_idx(zone), start_pfn, in move_pfn_range_to_zone()
738 static struct zone *default_kernel_zone_for_pfn(int nid, unsigned long start_pfn, in default_kernel_zone_for_pfn() argument
747 if (zone_intersects(zone, start_pfn, nr_pages)) in default_kernel_zone_for_pfn()
754 static inline struct zone *default_zone_for_pfn(int nid, unsigned long start_pfn, in default_zone_for_pfn() argument
757 struct zone *kernel_zone = default_kernel_zone_for_pfn(nid, start_pfn, in default_zone_for_pfn()
760 bool in_kernel = zone_intersects(kernel_zone, start_pfn, nr_pages); in default_zone_for_pfn()
761 bool in_movable = zone_intersects(movable_zone, start_pfn, nr_pages); in default_zone_for_pfn()
779 unsigned long start_pfn, unsigned long nr_pages) in zone_for_pfn_range() argument
782 return default_kernel_zone_for_pfn(nid, start_pfn, nr_pages); in zone_for_pfn_range()
787 return default_zone_for_pfn(nid, start_pfn, nr_pages); in zone_for_pfn_range()
815 arg.start_pfn = pfn; in online_pages()
895 unsigned long start_pfn = PFN_DOWN(start); in hotadd_new_pgdat() local
927 pgdat->node_start_pfn = start_pfn; in hotadd_new_pgdat()
1194 bool is_mem_section_removable(unsigned long start_pfn, unsigned long nr_pages) in is_mem_section_removable() argument
1198 end_pfn = min(start_pfn + nr_pages, in is_mem_section_removable()
1199 zone_end_pfn(page_zone(pfn_to_page(start_pfn)))); in is_mem_section_removable()
1202 for (pfn = start_pfn; pfn < end_pfn; pfn = next_active_pageblock(pfn)) { in is_mem_section_removable()
1216 int test_pages_in_a_zone(unsigned long start_pfn, unsigned long end_pfn, in test_pages_in_a_zone() argument
1224 for (pfn = start_pfn, sec_end_pfn = SECTION_ALIGN_UP(start_pfn + 1); in test_pages_in_a_zone()
1312 do_migrate_range(unsigned long start_pfn, unsigned long end_pfn) in do_migrate_range() argument
1319 for (pfn = start_pfn; pfn < end_pfn; pfn++) { in do_migrate_range()
1404 check_pages_isolated_cb(unsigned long start_pfn, unsigned long nr_pages, in check_pages_isolated_cb() argument
1407 return test_pages_isolated(start_pfn, start_pfn + nr_pages, true); in check_pages_isolated_cb()
1488 static int __ref __offline_pages(unsigned long start_pfn, in __offline_pages() argument
1504 if (!test_pages_in_a_zone(start_pfn, end_pfn, &valid_start, in __offline_pages()
1513 nr_pages = end_pfn - start_pfn; in __offline_pages()
1516 ret = start_isolate_page_range(start_pfn, end_pfn, in __offline_pages()
1525 arg.start_pfn = start_pfn; in __offline_pages()
1537 for (pfn = start_pfn; pfn;) { in __offline_pages()
1562 ret = dissolve_free_huge_pages(start_pfn, end_pfn); in __offline_pages()
1568 ret = walk_system_ram_range(start_pfn, end_pfn - start_pfn, in __offline_pages()
1588 walk_system_ram_range(start_pfn, end_pfn - start_pfn, in __offline_pages()
1601 adjust_managed_page_count(pfn_to_page(start_pfn), -offlined_pages); in __offline_pages()
1626 remove_pfn_range_from_zone(zone, start_pfn, nr_pages); in __offline_pages()
1631 undo_isolate_page_range(start_pfn, end_pfn, MIGRATE_MOVABLE); in __offline_pages()
1635 (unsigned long long) start_pfn << PAGE_SHIFT, in __offline_pages()
1643 int offline_pages(unsigned long start_pfn, unsigned long nr_pages) in offline_pages() argument
1645 return __offline_pages(start_pfn, start_pfn + nr_pages); in offline_pages()