Lines Matching defs:pgdat

51 		pg_data_t *pgdat = NODE_DATA(nid);
62 zonelist = &pgdat->node_zonelists[listid];
63 zone = &pgdat->node_zones[zoneid];
653 static inline void pgdat_set_deferred_range(pg_data_t *pgdat)
655 pgdat->first_deferred_pfn = ULONG_MAX;
710 pg_data_t *pgdat;
716 pgdat = NODE_DATA(nid);
719 struct zone *zone = &pgdat->node_zones[zid];
730 static inline void pgdat_set_deferred_range(pg_data_t *pgdat) {}
1078 struct pglist_data *pgdat = zone->zone_pgdat;
1083 int nid = pgdat->node_id;
1258 static void __init reset_memoryless_node_totalpages(struct pglist_data *pgdat)
1262 for (z = pgdat->node_zones; z < pgdat->node_zones + MAX_NR_ZONES; z++) {
1271 pgdat->node_spanned_pages = 0;
1272 pgdat->node_present_pages = 0;
1273 pr_debug("On node %d totalpages: 0\n", pgdat->node_id);
1300 static void __init calculate_node_totalpages(struct pglist_data *pgdat,
1308 struct zone *zone = pgdat->node_zones + i;
1313 spanned = zone_spanned_pages_in_node(pgdat->node_id, i,
1318 absent = zone_absent_pages_in_node(pgdat->node_id, i,
1338 pgdat->node_spanned_pages = totalpages;
1339 pgdat->node_present_pages = realtotalpages;
1340 pr_debug("On node %d totalpages: %lu\n", pgdat->node_id, realtotalpages);
1344 static void pgdat_init_split_queue(struct pglist_data *pgdat)
1346 struct deferred_split *ds_queue = &pgdat->deferred_split_queue;
1353 static void pgdat_init_split_queue(struct pglist_data *pgdat) {}
1357 static void pgdat_init_kcompactd(struct pglist_data *pgdat)
1359 init_waitqueue_head(&pgdat->kcompactd_wait);
1362 static void pgdat_init_kcompactd(struct pglist_data *pgdat) {}
1365 static void __meminit pgdat_init_internals(struct pglist_data *pgdat)
1369 pgdat_resize_init(pgdat);
1370 pgdat_kswapd_lock_init(pgdat);
1372 pgdat_init_split_queue(pgdat);
1373 pgdat_init_kcompactd(pgdat);
1375 init_waitqueue_head(&pgdat->kswapd_wait);
1376 init_waitqueue_head(&pgdat->pfmemalloc_wait);
1379 init_waitqueue_head(&pgdat->reclaim_wait[i]);
1381 pgdat_page_ext_init(pgdat);
1382 lruvec_init(&pgdat->__lruvec);
1414 struct pglist_data *pgdat = zone->zone_pgdat;
1417 if (zone_idx > pgdat->nr_zones)
1418 pgdat->nr_zones = zone_idx;
1424 pgdat->node_id,
1508 * - init pgdat internals
1514 void __ref free_area_init_core_hotplug(struct pglist_data *pgdat)
1516 int nid = pgdat->node_id;
1520 pgdat_init_internals(pgdat);
1522 if (pgdat->per_cpu_nodestats == &boot_nodestats)
1523 pgdat->per_cpu_nodestats = alloc_percpu(struct per_cpu_nodestat);
1530 pgdat->nr_zones = 0;
1531 pgdat->kswapd_order = 0;
1532 pgdat->kswapd_highest_zoneidx = 0;
1533 pgdat->node_start_pfn = 0;
1534 pgdat->node_present_pages = 0;
1539 p = per_cpu_ptr(pgdat->per_cpu_nodestats, cpu);
1549 struct zone *zone = pgdat->node_zones + z;
1557 static void __init free_area_init_core(struct pglist_data *pgdat)
1560 int nid = pgdat->node_id;
1562 pgdat_init_internals(pgdat);
1563 pgdat->per_cpu_nodestats = &boot_nodestats;
1566 struct zone *zone = pgdat->node_zones + j;
1608 static void __init alloc_node_mem_map(struct pglist_data *pgdat)
1614 if (!pgdat->node_spanned_pages)
1617 start = pgdat->node_start_pfn & ~(MAX_ORDER_NR_PAGES - 1);
1618 offset = pgdat->node_start_pfn - start;
1624 end = ALIGN(pgdat_end_pfn(pgdat), MAX_ORDER_NR_PAGES);
1627 pgdat->node_id, false);
1630 size, pgdat->node_id);
1631 pgdat->node_mem_map = map + offset;
1633 pr_debug("%s: node %d, pgdat %08lx, node_mem_map %08lx\n",
1634 __func__, pgdat->node_id, (unsigned long)pgdat,
1635 (unsigned long)pgdat->node_mem_map);
1638 if (pgdat == NODE_DATA(0)) {
1640 if (page_to_pfn(mem_map) != pgdat->node_start_pfn)
1646 static inline void alloc_node_mem_map(struct pglist_data *pgdat) { }
1679 pg_data_t *pgdat = NODE_DATA(nid);
1684 WARN_ON(pgdat->nr_zones || pgdat->kswapd_highest_zoneidx);
1688 pgdat->node_id = nid;
1689 pgdat->node_start_pfn = start_pfn;
1690 pgdat->per_cpu_nodestats = NULL;
1697 calculate_node_totalpages(pgdat, start_pfn, end_pfn);
1701 reset_memoryless_node_totalpages(pgdat);
1704 alloc_node_mem_map(pgdat);
1705 pgdat_set_deferred_range(pgdat);
1707 free_area_init_core(pgdat);
1708 lru_gen_init_pgdat(pgdat);
1712 static void __init check_for_memory(pg_data_t *pgdat)
1717 struct zone *zone = &pgdat->node_zones[zone_type];
1720 node_set_state(pgdat->node_id, N_HIGH_MEMORY);
1722 node_set_state(pgdat->node_id, N_NORMAL_MEMORY);
1842 pg_data_t *pgdat;
1847 pgdat = NODE_DATA(nid);
1855 *memory-less node. The pgdat will get fully initialized by
1858 if (pgdat->node_present_pages) {
1860 check_for_memory(pgdat);
2097 pg_data_t *pgdat = data;
2098 const struct cpumask *cpumask = cpumask_of_node(pgdat->node_id);
2110 pgdat_resize_lock(pgdat, &flags);
2111 first_init_pfn = pgdat->first_deferred_pfn;
2113 pgdat_resize_unlock(pgdat, &flags);
2119 BUG_ON(pgdat->first_deferred_pfn < pgdat->node_start_pfn);
2120 BUG_ON(pgdat->first_deferred_pfn > pgdat_end_pfn(pgdat));
2121 pgdat->first_deferred_pfn = ULONG_MAX;
2128 pgdat_resize_unlock(pgdat, &flags);
2131 zone = pgdat->node_zones + pgdat->nr_zones - 1;
2152 WARN_ON(pgdat->nr_zones < MAX_NR_ZONES && populated_zone(++zone));
2155 pgdat->node_id, jiffies_to_msecs(jiffies - start));
2175 pg_data_t *pgdat = zone->zone_pgdat;
2176 unsigned long first_deferred_pfn = pgdat->first_deferred_pfn;
2182 if (zone_end_pfn(zone) != pgdat_end_pfn(pgdat))
2185 pgdat_resize_lock(pgdat, &flags);
2191 if (first_deferred_pfn != pgdat->first_deferred_pfn) {
2192 pgdat_resize_unlock(pgdat, &flags);
2199 pgdat->first_deferred_pfn = ULONG_MAX;
2200 pgdat_resize_unlock(pgdat, &flags);
2226 pgdat->first_deferred_pfn = spfn;
2227 pgdat_resize_unlock(pgdat, &flags);