Home
last modified time | relevance | path

Searched refs:pgdat (Results 1 – 32 of 32) sorted by relevance

/linux-4.4.14/include/linux/
Dmemory_hotplug.h42 void pgdat_resize_lock(struct pglist_data *pgdat, unsigned long *flags) in pgdat_resize_lock() argument
44 spin_lock_irqsave(&pgdat->node_size_lock, *flags); in pgdat_resize_lock()
47 void pgdat_resize_unlock(struct pglist_data *pgdat, unsigned long *flags) in pgdat_resize_unlock() argument
49 spin_unlock_irqrestore(&pgdat->node_size_lock, *flags); in pgdat_resize_unlock()
52 void pgdat_resize_init(struct pglist_data *pgdat) in pgdat_resize_init() argument
54 spin_lock_init(&pgdat->node_size_lock); in pgdat_resize_init()
134 extern void arch_free_nodedata(pg_data_t *pgdat);
135 extern void arch_refresh_nodedata(int nid, pg_data_t *pgdat);
140 #define arch_free_nodedata(pgdat) generic_free_nodedata(pgdat) argument
157 #define generic_free_nodedata(pgdat) kfree(pgdat) argument
[all …]
Dbootmem.h42 extern unsigned long init_bootmem_node(pg_data_t *pgdat,
49 extern void reset_node_managed_pages(pg_data_t *pgdat);
52 extern void free_bootmem_node(pg_data_t *pgdat,
72 extern int reserve_bootmem_node(pg_data_t *pgdat,
83 extern void *__alloc_bootmem_node(pg_data_t *pgdat,
87 void *__alloc_bootmem_node_high(pg_data_t *pgdat,
91 extern void *__alloc_bootmem_node_nopanic(pg_data_t *pgdat,
95 void *___alloc_bootmem_node_nopanic(pg_data_t *pgdat,
106 extern void *__alloc_bootmem_low_node(pg_data_t *pgdat,
128 #define alloc_bootmem_node(pgdat, x) \ argument
[all …]
Dmmzone.h697 #define pgdat_page_nr(pgdat, pagenr) ((pgdat)->node_mem_map + (pagenr)) argument
699 #define pgdat_page_nr(pgdat, pagenr) pfn_to_page((pgdat)->node_start_pfn + (pagenr)) argument
706 static inline unsigned long pgdat_end_pfn(pg_data_t *pgdat) in pgdat_end_pfn() argument
708 return pgdat->node_start_pfn + pgdat->node_spanned_pages; in pgdat_end_pfn()
711 static inline bool pgdat_is_empty(pg_data_t *pgdat) in pgdat_is_empty() argument
713 return !pgdat->node_start_pfn && !pgdat->node_spanned_pages; in pgdat_is_empty()
718 struct pglist_data *pgdat = zone->zone_pgdat; in zone_id() local
720 return zone - pgdat->node_zones; in zone_id()
738 void build_all_zonelists(pg_data_t *pgdat, struct zone *zone);
861 extern struct pglist_data *next_online_pgdat(struct pglist_data *pgdat);
[all …]
Dcompaction.h44 extern void compact_pgdat(pg_data_t *pgdat, int order);
45 extern void reset_isolation_suitable(pg_data_t *pgdat);
64 static inline void compact_pgdat(pg_data_t *pgdat, int order) in compact_pgdat() argument
68 static inline void reset_isolation_suitable(pg_data_t *pgdat) in reset_isolation_suitable() argument
Dpage_ext.h52 extern void pgdat_page_ext_init(struct pglist_data *pgdat);
71 static inline void pgdat_page_ext_init(struct pglist_data *pgdat) in pgdat_page_ext_init() argument
Dvmstat.h199 void set_pgdat_percpu_threshold(pg_data_t *pgdat,
248 #define set_pgdat_percpu_threshold(pgdat, callback) { } argument
/linux-4.4.14/mm/
Dnobootmem.c161 void reset_node_managed_pages(pg_data_t *pgdat) in reset_node_managed_pages() argument
165 for (z = pgdat->node_zones; z < pgdat->node_zones + MAX_NR_ZONES; z++) in reset_node_managed_pages()
171 struct pglist_data *pgdat; in reset_all_zones_managed_pages() local
176 for_each_online_pgdat(pgdat) in reset_all_zones_managed_pages()
177 reset_node_managed_pages(pgdat); in reset_all_zones_managed_pages()
214 void __init free_bootmem_node(pg_data_t *pgdat, unsigned long physaddr, in free_bootmem_node() argument
316 void * __init ___alloc_bootmem_node_nopanic(pg_data_t *pgdat, in ___alloc_bootmem_node_nopanic() argument
325 ptr = __alloc_memory_core_early(pgdat->node_id, size, align, in ___alloc_bootmem_node_nopanic()
343 void * __init __alloc_bootmem_node_nopanic(pg_data_t *pgdat, unsigned long size, in __alloc_bootmem_node_nopanic() argument
347 return kzalloc_node(size, GFP_NOWAIT, pgdat->node_id); in __alloc_bootmem_node_nopanic()
[all …]
Dmemory_hotplug.c245 void register_page_bootmem_info_node(struct pglist_data *pgdat) in register_page_bootmem_info_node() argument
248 int node = pgdat->node_id; in register_page_bootmem_info_node()
253 page = virt_to_page(pgdat); in register_page_bootmem_info_node()
258 zone = &pgdat->node_zones[0]; in register_page_bootmem_info_node()
259 for (; zone < pgdat->node_zones + MAX_NR_ZONES - 1; zone++) { in register_page_bootmem_info_node()
271 pfn = pgdat->node_start_pfn; in register_page_bootmem_info_node()
272 end_pfn = pgdat_end_pfn(pgdat); in register_page_bootmem_info_node()
431 static void __meminit grow_pgdat_span(struct pglist_data *pgdat, unsigned long start_pfn, in grow_pgdat_span() argument
434 unsigned long old_pgdat_end_pfn = pgdat_end_pfn(pgdat); in grow_pgdat_span()
436 if (!pgdat->node_spanned_pages || start_pfn < pgdat->node_start_pfn) in grow_pgdat_span()
[all …]
Dmmzone.c17 struct pglist_data *next_online_pgdat(struct pglist_data *pgdat) in next_online_pgdat() argument
19 int nid = next_online_node(pgdat->node_id); in next_online_pgdat()
31 pg_data_t *pgdat = zone->zone_pgdat; in next_zone() local
33 if (zone < pgdat->node_zones + MAX_NR_ZONES - 1) in next_zone()
36 pgdat = next_online_pgdat(pgdat); in next_zone()
37 if (pgdat) in next_zone()
38 zone = pgdat->node_zones; in next_zone()
Dbootmem.c128 unsigned long __init init_bootmem_node(pg_data_t *pgdat, unsigned long freepfn, in init_bootmem_node() argument
131 return init_bootmem_core(pgdat->bdata, freepfn, startpfn, endpfn); in init_bootmem_node()
248 void reset_node_managed_pages(pg_data_t *pgdat) in reset_node_managed_pages() argument
252 for (z = pgdat->node_zones; z < pgdat->node_zones + MAX_NR_ZONES; z++) in reset_node_managed_pages()
258 struct pglist_data *pgdat; in reset_all_zones_managed_pages() local
263 for_each_online_pgdat(pgdat) in reset_all_zones_managed_pages()
264 reset_node_managed_pages(pgdat); in reset_all_zones_managed_pages()
400 void __init free_bootmem_node(pg_data_t *pgdat, unsigned long physaddr, in free_bootmem_node() argument
410 mark_bootmem_node(pgdat->bdata, start, end, 0, 0); in free_bootmem_node()
445 int __init reserve_bootmem_node(pg_data_t *pgdat, unsigned long physaddr, in reserve_bootmem_node() argument
[all …]
Dvmstat.c196 void set_pgdat_percpu_threshold(pg_data_t *pgdat, in set_pgdat_percpu_threshold() argument
204 for (i = 0; i < pgdat->nr_zones; i++) { in set_pgdat_percpu_threshold()
205 zone = &pgdat->node_zones[i]; in set_pgdat_percpu_threshold()
879 pg_data_t *pgdat; in frag_start() local
882 for (pgdat = first_online_pgdat(); in frag_start()
883 pgdat && node; in frag_start()
884 pgdat = next_online_pgdat(pgdat)) in frag_start()
887 return pgdat; in frag_start()
892 pg_data_t *pgdat = (pg_data_t *)arg; in frag_next() local
895 return next_online_pgdat(pgdat); in frag_next()
[all …]
Dvmscan.c2699 static bool pfmemalloc_watermark_ok(pg_data_t *pgdat) in pfmemalloc_watermark_ok() argument
2708 zone = &pgdat->node_zones[i]; in pfmemalloc_watermark_ok()
2724 if (!wmark_ok && waitqueue_active(&pgdat->kswapd_wait)) { in pfmemalloc_watermark_ok()
2725 pgdat->classzone_idx = min(pgdat->classzone_idx, in pfmemalloc_watermark_ok()
2727 wake_up_interruptible(&pgdat->kswapd_wait); in pfmemalloc_watermark_ok()
2747 pg_data_t *pgdat = NULL; in throttle_direct_reclaim() local
2786 pgdat = zone->zone_pgdat; in throttle_direct_reclaim()
2787 if (pfmemalloc_watermark_ok(pgdat)) in throttle_direct_reclaim()
2793 if (!pgdat) in throttle_direct_reclaim()
2808 wait_event_interruptible_timeout(pgdat->pfmemalloc_wait, in throttle_direct_reclaim()
[all …]
Dpage_alloc.c270 static inline void reset_deferred_meminit(pg_data_t *pgdat) in reset_deferred_meminit() argument
272 pgdat->first_deferred_pfn = ULONG_MAX; in reset_deferred_meminit()
296 static inline bool update_defer_init(pg_data_t *pgdat, in update_defer_init() argument
301 if (zone_end < pgdat_end_pfn(pgdat)) in update_defer_init()
308 pgdat->first_deferred_pfn = pfn; in update_defer_init()
315 static inline void reset_deferred_meminit(pg_data_t *pgdat) in reset_deferred_meminit() argument
329 static inline bool update_defer_init(pg_data_t *pgdat, in update_defer_init() argument
925 pg_data_t *pgdat; in init_reserved_page() local
932 pgdat = NODE_DATA(nid); in init_reserved_page()
935 struct zone *zone = &pgdat->node_zones[zid]; in init_reserved_page()
[all …]
Dpage_owner.c214 static void init_pages_in_zone(pg_data_t *pgdat, struct zone *zone) in init_pages_in_zone() argument
272 pgdat->node_id, zone->name, count); in init_pages_in_zone()
275 static void init_zones_in_node(pg_data_t *pgdat) in init_zones_in_node() argument
278 struct zone *node_zones = pgdat->node_zones; in init_zones_in_node()
286 init_pages_in_zone(pgdat, zone); in init_zones_in_node()
293 pg_data_t *pgdat; in init_early_allocated_pages() local
296 for_each_online_pgdat(pgdat) in init_early_allocated_pages()
297 init_zones_in_node(pgdat); in init_early_allocated_pages()
Dsparse.c264 sparse_early_usemaps_alloc_pgdat_section(struct pglist_data *pgdat, in sparse_early_usemaps_alloc_pgdat_section() argument
280 goal = __pa(pgdat) & (PAGE_SECTION_MASK << PAGE_SHIFT); in sparse_early_usemaps_alloc_pgdat_section()
299 struct pglist_data *pgdat = NODE_DATA(nid); in check_usemap_section_nr() local
303 pgdat_snr = pfn_to_section_nr(__pa(pgdat) >> PAGE_SHIFT); in check_usemap_section_nr()
334 sparse_early_usemaps_alloc_pgdat_section(struct pglist_data *pgdat, in sparse_early_usemaps_alloc_pgdat_section() argument
337 return memblock_virt_alloc_node_nopanic(size, pgdat->node_id); in sparse_early_usemaps_alloc_pgdat_section()
696 struct pglist_data *pgdat = zone->zone_pgdat; in sparse_add_one_section() local
707 ret = sparse_index_init(section_nr, pgdat->node_id); in sparse_add_one_section()
710 memmap = kmalloc_section_memmap(section_nr, pgdat->node_id); in sparse_add_one_section()
719 pgdat_resize_lock(pgdat, &flags); in sparse_add_one_section()
[all …]
Dmigrate.c1552 static bool migrate_balanced_pgdat(struct pglist_data *pgdat, in migrate_balanced_pgdat() argument
1556 for (z = pgdat->nr_zones - 1; z >= 0; z--) { in migrate_balanced_pgdat()
1557 struct zone *zone = pgdat->node_zones + z; in migrate_balanced_pgdat()
1601 static bool numamigrate_update_ratelimit(pg_data_t *pgdat, in numamigrate_update_ratelimit() argument
1609 if (time_after(jiffies, pgdat->numabalancing_migrate_next_window)) { in numamigrate_update_ratelimit()
1610 spin_lock(&pgdat->numabalancing_migrate_lock); in numamigrate_update_ratelimit()
1611 pgdat->numabalancing_migrate_nr_pages = 0; in numamigrate_update_ratelimit()
1612 pgdat->numabalancing_migrate_next_window = jiffies + in numamigrate_update_ratelimit()
1614 spin_unlock(&pgdat->numabalancing_migrate_lock); in numamigrate_update_ratelimit()
1616 if (pgdat->numabalancing_migrate_nr_pages > ratelimit_pages) { in numamigrate_update_ratelimit()
[all …]
Dmm_init.c33 pg_data_t *pgdat = NODE_DATA(nid); in mminit_verify_zonelist() local
45 zonelist = &pgdat->node_zonelists[listid]; in mminit_verify_zonelist()
46 zone = &pgdat->node_zones[zoneid]; in mminit_verify_zonelist()
Dhighmem.c115 pg_data_t *pgdat; in nr_free_highpages() local
118 for_each_online_pgdat(pgdat) { in nr_free_highpages()
119 pages += zone_page_state(&pgdat->node_zones[ZONE_HIGHMEM], in nr_free_highpages()
123 &pgdat->node_zones[ZONE_MOVABLE], in nr_free_highpages()
Dpage_ext.c97 void __meminit pgdat_page_ext_init(struct pglist_data *pgdat) in pgdat_page_ext_init() argument
99 pgdat->node_page_ext = NULL; in pgdat_page_ext_init()
403 void __meminit pgdat_page_ext_init(struct pglist_data *pgdat) in pgdat_page_ext_init() argument
Dcompaction.c238 void reset_isolation_suitable(pg_data_t *pgdat) in reset_isolation_suitable() argument
243 struct zone *zone = &pgdat->node_zones[zoneid]; in reset_isolation_suitable()
1624 static void __compact_pgdat(pg_data_t *pgdat, struct compact_control *cc) in __compact_pgdat() argument
1631 zone = &pgdat->node_zones[zoneid]; in __compact_pgdat()
1664 void compact_pgdat(pg_data_t *pgdat, int order) in compact_pgdat() argument
1674 __compact_pgdat(pgdat, &cc); in compact_pgdat()
/linux-4.4.14/arch/avr32/mm/
Dinit.c76 pg_data_t *pgdat = NODE_DATA(nid); in paging_init() local
80 start_pfn = pgdat->bdata->node_min_pfn; in paging_init()
81 low = pgdat->bdata->node_low_pfn; in paging_init()
92 pgdat->node_id, pgdat->node_mem_map); in paging_init()
103 pg_data_t *pgdat; in mem_init() local
106 for_each_online_pgdat(pgdat) in mem_init()
108 __va(pgdat_end_pfn(pgdat) << PAGE_SHIFT)); in mem_init()
/linux-4.4.14/arch/m68k/include/asm/
Dpage_mm.h160 struct pglist_data *pgdat; \
161 pgdat = __virt_to_node((unsigned long)pfn_to_virt(__pfn)); \
162 pgdat->node_mem_map + (__pfn - pgdat->node_start_pfn); \
166 struct pglist_data *pgdat; \
167 pgdat = &pg_data_map[page_to_nid(__p)]; \
168 ((__p) - pgdat->node_mem_map) + pgdat->node_start_pfn; \
/linux-4.4.14/lib/
Dshow_mem.c14 pg_data_t *pgdat; in show_mem() local
20 for_each_online_pgdat(pgdat) { in show_mem()
24 pgdat_resize_lock(pgdat, &flags); in show_mem()
26 struct zone *zone = &pgdat->node_zones[zoneid]; in show_mem()
36 pgdat_resize_unlock(pgdat, &flags); in show_mem()
/linux-4.4.14/arch/ia64/mm/
Dinit.c380 pg_data_t *pgdat = NODE_DATA(node); in vmemmap_find_next_valid_pfn() local
382 end_address = (unsigned long) &vmem_map[pgdat->node_start_pfn + i]; in vmemmap_find_next_valid_pfn()
384 stop_address = (unsigned long) &vmem_map[pgdat_end_pfn(pgdat)]; in vmemmap_find_next_valid_pfn()
427 return hole_next_pfn - pgdat->node_start_pfn; in vmemmap_find_next_valid_pfn()
650 pg_data_t *pgdat; in arch_add_memory() local
656 pgdat = NODE_DATA(nid); in arch_add_memory()
658 zone = pgdat->node_zones + in arch_add_memory()
698 pg_data_t *pgdat; in show_mem() local
703 for_each_online_pgdat(pgdat) { in show_mem()
707 int nid = pgdat->node_id; in show_mem()
[all …]
Ddiscontig.c743 void arch_free_nodedata(pg_data_t *pgdat) in arch_free_nodedata() argument
745 kfree(pgdat); in arch_free_nodedata()
/linux-4.4.14/arch/sh/mm/
Dinit.c382 pg_data_t *pgdat = NODE_DATA(nid); in paging_init() local
385 start_pfn = pgdat->bdata->node_min_pfn; in paging_init()
386 low = pgdat->bdata->node_low_pfn; in paging_init()
410 pg_data_t *pgdat; in mem_init() local
415 for_each_online_pgdat(pgdat) in mem_init()
417 __va(pgdat_end_pfn(pgdat) << PAGE_SHIFT)); in mem_init()
490 pg_data_t *pgdat; in arch_add_memory() local
495 pgdat = NODE_DATA(nid); in arch_add_memory()
498 ret = __add_pages(nid, pgdat->node_zones + in arch_add_memory()
/linux-4.4.14/arch/ia64/include/asm/
Dnodedata.h57 #define LOCAL_DATA_ADDR(pgdat) \ argument
58 ((struct ia64_node_data *)((u64)(pgdat) + \
/linux-4.4.14/arch/c6x/mm/
Dinit.c38 struct pglist_data *pgdat = NODE_DATA(0); in paging_init() local
53 pgdat->node_zones[ZONE_NORMAL].zone_start_pfn = in paging_init()
/linux-4.4.14/arch/metag/mm/
Dinit.c358 pg_data_t *pgdat = NODE_DATA(nid); in paging_init() local
361 start_pfn = pgdat->bdata->node_min_pfn; in paging_init()
362 low = pgdat->bdata->node_low_pfn; in paging_init()
/linux-4.4.14/arch/unicore32/mm/
Dinit.c137 pg_data_t *pgdat; in uc32_bootmem_init() local
152 pgdat = NODE_DATA(0); in uc32_bootmem_init()
153 init_bootmem_node(pgdat, __phys_to_pfn(bitmap), start_pfn, end_pfn); in uc32_bootmem_init()
/linux-4.4.14/arch/parisc/mm/
Dinit.c659 pg_data_t *pgdat; in show_mem() local
664 for_each_online_pgdat(pgdat) { in show_mem()
668 pgdat_resize_lock(pgdat, &flags); in show_mem()
670 struct zone *zone = &pgdat->node_zones[zoneid]; in show_mem()
677 pgdat_resize_unlock(pgdat, &flags); in show_mem()
/linux-4.4.14/arch/x86/mm/
Dinit_64.c692 struct pglist_data *pgdat = NODE_DATA(nid); in arch_add_memory() local
693 struct zone *zone = pgdat->node_zones + in arch_add_memory()