Lines Matching refs:pgdat
225 void __init register_page_bootmem_info_node(struct pglist_data *pgdat) in register_page_bootmem_info_node() argument
228 int node = pgdat->node_id; in register_page_bootmem_info_node()
232 page = virt_to_page(pgdat); in register_page_bootmem_info_node()
237 pfn = pgdat->node_start_pfn; in register_page_bootmem_info_node()
238 end_pfn = pgdat_end_pfn(pgdat); in register_page_bootmem_info_node()
439 static void update_pgdat_span(struct pglist_data *pgdat) in update_pgdat_span() argument
444 for (zone = pgdat->node_zones; in update_pgdat_span()
445 zone < pgdat->node_zones + MAX_NR_ZONES; zone++) { in update_pgdat_span()
464 pgdat->node_start_pfn = node_start_pfn; in update_pgdat_span()
465 pgdat->node_spanned_pages = node_end_pfn - node_start_pfn; in update_pgdat_span()
472 struct pglist_data *pgdat = zone->zone_pgdat; in remove_pfn_range_from_zone() local
489 update_pgdat_span(pgdat); in remove_pfn_range_from_zone()
686 static void __meminit resize_pgdat_range(struct pglist_data *pgdat, unsigned long start_pfn, in resize_pgdat_range() argument
689 unsigned long old_end_pfn = pgdat_end_pfn(pgdat); in resize_pgdat_range()
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()
705 struct pglist_data *pgdat = zone->zone_pgdat; in move_pfn_range_to_zone() local
706 int nid = pgdat->node_id; in move_pfn_range_to_zone()
712 pgdat_resize_lock(pgdat, &flags); in move_pfn_range_to_zone()
718 resize_pgdat_range(pgdat, start_pfn, nr_pages); in move_pfn_range_to_zone()
719 pgdat_resize_unlock(pgdat, &flags); in move_pfn_range_to_zone()
741 struct pglist_data *pgdat = NODE_DATA(nid); in default_kernel_zone_for_pfn() local
745 struct zone *zone = &pgdat->node_zones[zid]; in default_kernel_zone_for_pfn()
751 return &pgdat->node_zones[ZONE_NORMAL]; in default_kernel_zone_for_pfn()
881 static void reset_node_present_pages(pg_data_t *pgdat) in reset_node_present_pages() argument
885 for (z = pgdat->node_zones; z < pgdat->node_zones + MAX_NR_ZONES; z++) in reset_node_present_pages()
888 pgdat->node_present_pages = 0; in reset_node_present_pages()
894 struct pglist_data *pgdat; in hotadd_new_pgdat() local
897 pgdat = NODE_DATA(nid); in hotadd_new_pgdat()
898 if (!pgdat) { in hotadd_new_pgdat()
899 pgdat = arch_alloc_nodedata(nid); in hotadd_new_pgdat()
900 if (!pgdat) in hotadd_new_pgdat()
903 pgdat->per_cpu_nodestats = in hotadd_new_pgdat()
905 arch_refresh_nodedata(nid, pgdat); in hotadd_new_pgdat()
913 pgdat->nr_zones = 0; in hotadd_new_pgdat()
914 pgdat->kswapd_order = 0; in hotadd_new_pgdat()
915 pgdat->kswapd_classzone_idx = 0; in hotadd_new_pgdat()
919 p = per_cpu_ptr(pgdat->per_cpu_nodestats, cpu); in hotadd_new_pgdat()
926 pgdat->node_id = nid; in hotadd_new_pgdat()
927 pgdat->node_start_pfn = start_pfn; in hotadd_new_pgdat()
936 build_all_zonelists(pgdat); in hotadd_new_pgdat()
943 reset_node_managed_pages(pgdat); in hotadd_new_pgdat()
944 reset_node_present_pages(pgdat); in hotadd_new_pgdat()
946 return pgdat; in hotadd_new_pgdat()
951 pg_data_t *pgdat = NODE_DATA(nid); in rollback_node_hotadd() local
954 free_percpu(pgdat->per_cpu_nodestats); in rollback_node_hotadd()
955 arch_free_nodedata(pgdat); in rollback_node_hotadd()
973 pg_data_t *pgdat; in __try_online_node() local
979 pgdat = hotadd_new_pgdat(nid, start); in __try_online_node()
980 if (!pgdat) { in __try_online_node()
1425 struct pglist_data *pgdat = zone->zone_pgdat; in node_states_check_changes_offline() local
1442 present_pages += pgdat->node_zones[zt].present_pages; in node_states_check_changes_offline()
1455 present_pages += pgdat->node_zones[ZONE_HIGHMEM].present_pages; in node_states_check_changes_offline()
1470 present_pages += pgdat->node_zones[ZONE_MOVABLE].present_pages; in node_states_check_changes_offline()
1665 static int check_cpu_on_node(pg_data_t *pgdat) in check_cpu_on_node() argument
1670 if (cpu_to_node(cpu) == pgdat->node_id) in check_cpu_on_node()
1704 pg_data_t *pgdat = NODE_DATA(nid); in try_offline_node() local
1712 if (pgdat->node_spanned_pages) in try_offline_node()
1724 if (check_cpu_on_node(pgdat)) in try_offline_node()