Lines Matching refs:nr_pages

227 	unsigned long i, pfn, end_pfn, nr_pages;  in register_page_bootmem_info_node()  local
231 nr_pages = PAGE_ALIGN(sizeof(struct pglist_data)) >> PAGE_SHIFT; in register_page_bootmem_info_node()
234 for (i = 0; i < nr_pages; i++, page++) in register_page_bootmem_info_node()
254 static int check_pfn_span(unsigned long pfn, unsigned long nr_pages, in check_pfn_span() argument
273 || !IS_ALIGNED(nr_pages, min_align)) { in check_pfn_span()
275 reason, pfn, pfn + nr_pages - 1); in check_pfn_span()
287 int __ref __add_pages(int nid, unsigned long pfn, unsigned long nr_pages, in __add_pages() argument
299 || vmem_altmap_offset(altmap) > nr_pages) { in __add_pages()
306 err = check_pfn_span(pfn, nr_pages, "add"); in __add_pages()
311 end_sec = pfn_to_section_nr(pfn + nr_pages - 1); in __add_pages()
315 pfns = min(nr_pages, PAGES_PER_SECTION in __add_pages()
321 nr_pages -= pfns; in __add_pages()
469 unsigned long nr_pages) in __remove_zone() argument
485 shrink_zone_span(zone, start_pfn, start_pfn + nr_pages); in __remove_zone()
491 unsigned long nr_pages, unsigned long map_offset, in __remove_section() argument
499 __remove_zone(zone, pfn, nr_pages); in __remove_section()
500 sparse_remove_section(ms, pfn, nr_pages, map_offset, altmap); in __remove_section()
516 unsigned long nr_pages, struct vmem_altmap *altmap) in __remove_pages() argument
525 if (check_pfn_span(pfn, nr_pages, "remove")) in __remove_pages()
529 end_sec = pfn_to_section_nr(pfn + nr_pages - 1); in __remove_pages()
534 pfns = min(nr_pages, PAGES_PER_SECTION in __remove_pages()
538 nr_pages -= pfns; in __remove_pages()
611 static int online_pages_range(unsigned long start_pfn, unsigned long nr_pages, in online_pages_range() argument
614 const unsigned long end_pfn = start_pfn + nr_pages; in online_pages_range()
634 *(unsigned long *)arg += nr_pages; in online_pages_range()
639 static void node_states_check_changes_online(unsigned long nr_pages, in node_states_check_changes_online() argument
671 unsigned long nr_pages) in resize_zone_range() argument
678 zone->spanned_pages = max(start_pfn + nr_pages, old_end_pfn) - zone->zone_start_pfn; in resize_zone_range()
682 unsigned long nr_pages) in resize_pgdat_range() argument
689 pgdat->node_spanned_pages = max(start_pfn + nr_pages, old_end_pfn) - pgdat->node_start_pfn; in resize_pgdat_range()
698 unsigned long nr_pages, struct vmem_altmap *altmap) in move_pfn_range_to_zone() argument
710 init_currently_empty_zone(zone, start_pfn, nr_pages); in move_pfn_range_to_zone()
711 resize_zone_range(zone, start_pfn, nr_pages); in move_pfn_range_to_zone()
713 resize_pgdat_range(pgdat, start_pfn, nr_pages); in move_pfn_range_to_zone()
722 memmap_init_zone(nr_pages, nid, zone_idx(zone), start_pfn, in move_pfn_range_to_zone()
734 unsigned long nr_pages) in default_kernel_zone_for_pfn() argument
742 if (zone_intersects(zone, start_pfn, nr_pages)) in default_kernel_zone_for_pfn()
750 unsigned long nr_pages) in default_zone_for_pfn() argument
753 nr_pages); in default_zone_for_pfn()
755 bool in_kernel = zone_intersects(kernel_zone, start_pfn, nr_pages); in default_zone_for_pfn()
756 bool in_movable = zone_intersects(movable_zone, start_pfn, nr_pages); in default_zone_for_pfn()
774 unsigned long nr_pages) in zone_for_pfn_range() argument
777 return default_kernel_zone_for_pfn(nid, start_pfn, nr_pages); in zone_for_pfn_range()
782 return default_zone_for_pfn(nid, start_pfn, nr_pages); in zone_for_pfn_range()
785 int __ref online_pages(unsigned long pfn, unsigned long nr_pages, int online_type) in online_pages() argument
807 zone = zone_for_pfn_range(online_type, nid, pfn, nr_pages); in online_pages()
808 move_pfn_range_to_zone(zone, pfn, nr_pages, NULL); in online_pages()
811 arg.nr_pages = nr_pages; in online_pages()
812 node_states_check_changes_online(nr_pages, zone, &arg); in online_pages()
829 ret = walk_system_ram_range(pfn, nr_pages, &onlined_pages, in online_pages()
868 (((unsigned long long) pfn + nr_pages) << PAGE_SHIFT) - 1); in online_pages()
1187 bool is_mem_section_removable(unsigned long start_pfn, unsigned long nr_pages) in is_mem_section_removable() argument
1191 end_pfn = min(start_pfn + nr_pages, in is_mem_section_removable()
1384 offline_isolated_pages_cb(unsigned long start, unsigned long nr_pages, in offline_isolated_pages_cb() argument
1389 *offlined_pages += __offline_isolated_pages(start, start + nr_pages); in offline_isolated_pages_cb()
1397 check_pages_isolated_cb(unsigned long start_pfn, unsigned long nr_pages, in check_pages_isolated_cb() argument
1400 return test_pages_isolated(start_pfn, start_pfn + nr_pages, true); in check_pages_isolated_cb()
1415 static void node_states_check_changes_offline(unsigned long nr_pages, in node_states_check_changes_offline() argument
1436 if (zone_idx(zone) <= ZONE_NORMAL && nr_pages >= present_pages) in node_states_check_changes_offline()
1449 if (zone_idx(zone) <= ZONE_HIGHMEM && nr_pages >= present_pages) in node_states_check_changes_offline()
1465 if (nr_pages >= present_pages) in node_states_check_changes_offline()
1484 unsigned long pfn, nr_pages; in __offline_pages() local
1506 nr_pages = end_pfn - start_pfn; in __offline_pages()
1519 arg.nr_pages = nr_pages; in __offline_pages()
1520 node_states_check_changes_offline(nr_pages, zone, &arg); in __offline_pages()
1621 int offline_pages(unsigned long start_pfn, unsigned long nr_pages) in offline_pages() argument
1623 return __offline_pages(start_pfn, start_pfn + nr_pages); in offline_pages()