/Linux-v5.4/mm/ |
D | memory_hotplug.c | 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() [all …]
|
D | page_isolation.c | 39 arg.start_pfn = pfn; in set_migratetype_isolate() 193 int start_isolate_page_range(unsigned long start_pfn, unsigned long end_pfn, in start_isolate_page_range() argument 201 BUG_ON(!IS_ALIGNED(start_pfn, pageblock_nr_pages)); in start_isolate_page_range() 204 for (pfn = start_pfn; in start_isolate_page_range() 218 for (pfn = start_pfn; in start_isolate_page_range() 233 void undo_isolate_page_range(unsigned long start_pfn, unsigned long end_pfn, in undo_isolate_page_range() argument 239 BUG_ON(!IS_ALIGNED(start_pfn, pageblock_nr_pages)); in undo_isolate_page_range() 242 for (pfn = start_pfn; in undo_isolate_page_range() 288 int test_pages_isolated(unsigned long start_pfn, unsigned long end_pfn, in test_pages_isolated() argument 300 for (pfn = start_pfn; pfn < end_pfn; pfn += pageblock_nr_pages) { in test_pages_isolated() [all …]
|
D | page_ext.c | 286 static int __meminit online_page_ext(unsigned long start_pfn, in online_page_ext() argument 293 start = SECTION_ALIGN_DOWN(start_pfn); in online_page_ext() 294 end = SECTION_ALIGN_UP(start_pfn + nr_pages); in online_page_ext() 302 nid = pfn_to_nid(start_pfn); in online_page_ext() 321 static int __meminit offline_page_ext(unsigned long start_pfn, in offline_page_ext() argument 326 start = SECTION_ALIGN_DOWN(start_pfn); in offline_page_ext() 327 end = SECTION_ALIGN_UP(start_pfn + nr_pages); in offline_page_ext() 343 ret = online_page_ext(mn->start_pfn, in page_ext_callback() 347 offline_page_ext(mn->start_pfn, in page_ext_callback() 351 offline_page_ext(mn->start_pfn, in page_ext_callback() [all …]
|
D | sparse.c | 156 void __meminit mminit_validate_memmodel_limits(unsigned long *start_pfn, in mminit_validate_memmodel_limits() argument 165 if (*start_pfn > max_sparsemem_pfn) { in mminit_validate_memmodel_limits() 168 *start_pfn, *end_pfn, max_sparsemem_pfn); in mminit_validate_memmodel_limits() 170 *start_pfn = max_sparsemem_pfn; in mminit_validate_memmodel_limits() 175 *start_pfn, *end_pfn, max_sparsemem_pfn); in mminit_validate_memmodel_limits() 609 void online_mem_sections(unsigned long start_pfn, unsigned long end_pfn) in online_mem_sections() argument 613 for (pfn = start_pfn; pfn < end_pfn; pfn += PAGES_PER_SECTION) { in online_mem_sections() 628 void offline_mem_sections(unsigned long start_pfn, unsigned long end_pfn) in offline_mem_sections() argument 632 for (pfn = start_pfn; pfn < end_pfn; pfn += PAGES_PER_SECTION) { in offline_mem_sections() 860 int __meminit sparse_add_section(int nid, unsigned long start_pfn, in sparse_add_section() argument [all …]
|
D | page_alloc.c | 566 unsigned long sp, start_pfn; in page_outside_zone_boundaries() local 570 start_pfn = zone->zone_start_pfn; in page_outside_zone_boundaries() 579 start_pfn, start_pfn + sp); in page_outside_zone_boundaries() 1399 unsigned long start_pfn = PFN_DOWN(start); in reserve_bootmem_region() local 1402 for (; start_pfn < end_pfn; start_pfn++) { in reserve_bootmem_region() 1403 if (pfn_valid(start_pfn)) { in reserve_bootmem_region() 1404 struct page *page = pfn_to_page(start_pfn); in reserve_bootmem_region() 1406 init_reserved_page(start_pfn); in reserve_bootmem_region() 1522 struct page *__pageblock_pfn_to_page(unsigned long start_pfn, in __pageblock_pfn_to_page() argument 1531 if (!pfn_valid(start_pfn) || !pfn_valid(end_pfn)) in __pageblock_pfn_to_page() [all …]
|
D | internal.h | 147 extern struct page *__pageblock_pfn_to_page(unsigned long start_pfn, 150 static inline struct page *pageblock_pfn_to_page(unsigned long start_pfn, in pageblock_pfn_to_page() argument 154 return pfn_to_page(start_pfn); in pageblock_pfn_to_page() 156 return __pageblock_pfn_to_page(start_pfn, end_pfn, zone); in pageblock_pfn_to_page() 219 unsigned long start_pfn, unsigned long end_pfn); 441 extern void mminit_validate_memmodel_limits(unsigned long *start_pfn, 444 static inline void mminit_validate_memmodel_limits(unsigned long *start_pfn, in mminit_validate_memmodel_limits() argument
|
/Linux-v5.4/arch/mips/loongson64/loongson-3/ |
D | numa.c | 123 u64 node_id, node_psize, start_pfn, end_pfn, mem_start, mem_size; in szmem() local 137 start_pfn = ((node_id << 44) + mem_start) >> PAGE_SHIFT; in szmem() 139 end_pfn = start_pfn + node_psize; in szmem() 144 start_pfn, end_pfn, num_physpages); in szmem() 145 memblock_add_node(PFN_PHYS(start_pfn), in szmem() 146 PFN_PHYS(end_pfn - start_pfn), node); in szmem() 149 start_pfn = ((node_id << 44) + mem_start) >> PAGE_SHIFT; in szmem() 151 end_pfn = start_pfn + node_psize; in szmem() 156 start_pfn, end_pfn, num_physpages); in szmem() 157 memblock_add_node(PFN_PHYS(start_pfn), in szmem() [all …]
|
/Linux-v5.4/arch/x86/mm/ |
D | init.c | 262 unsigned long start_pfn, unsigned long end_pfn, in save_mr() argument 265 if (start_pfn < end_pfn) { in save_mr() 268 mr[nr_range].start = start_pfn<<PAGE_SHIFT; in save_mr() 340 unsigned long start_pfn, end_pfn, limit_pfn; in split_mem_range() local 347 pfn = start_pfn = PFN_DOWN(start); in split_mem_range() 364 if (start_pfn < end_pfn) { in split_mem_range() 365 nr_range = save_mr(mr, nr_range, start_pfn, end_pfn, 0); in split_mem_range() 370 start_pfn = round_up(pfn, PFN_DOWN(PMD_SIZE)); in split_mem_range() 379 if (start_pfn < end_pfn) { in split_mem_range() 380 nr_range = save_mr(mr, nr_range, start_pfn, end_pfn, in split_mem_range() [all …]
|
/Linux-v5.4/arch/sparc/mm/ |
D | init_32.c | 66 unsigned long start_pfn = sp_banks[i].base_addr >> PAGE_SHIFT; in calc_highpages() local 72 if (start_pfn < max_low_pfn) in calc_highpages() 73 start_pfn = max_low_pfn; in calc_highpages() 75 nr += end_pfn - start_pfn; in calc_highpages() 135 unsigned long start_pfn, bytes_avail, size; in bootmem_init() local 173 start_pfn = (unsigned long)__pa(PAGE_ALIGN((unsigned long) &_end)); in bootmem_init() 176 start_pfn >>= PAGE_SHIFT; in bootmem_init() 194 size = (start_pfn << PAGE_SHIFT) - phys_base; in bootmem_init() 233 static void map_high_region(unsigned long start_pfn, unsigned long end_pfn) in map_high_region() argument 238 printk("mapping high region %08lx - %08lx\n", start_pfn, end_pfn); in map_high_region() [all …]
|
/Linux-v5.4/arch/x86/xen/ |
D | setup.c | 94 static void __init xen_add_extra_mem(unsigned long start_pfn, in xen_add_extra_mem() argument 106 xen_extra_mem[i].start_pfn = start_pfn; in xen_add_extra_mem() 111 if (xen_extra_mem[i].start_pfn + xen_extra_mem[i].n_pfns == in xen_add_extra_mem() 112 start_pfn) { in xen_add_extra_mem() 120 memblock_reserve(PFN_PHYS(start_pfn), PFN_PHYS(n_pfns)); in xen_add_extra_mem() 123 static void __init xen_del_extra_mem(unsigned long start_pfn, in xen_del_extra_mem() argument 130 start_r = xen_extra_mem[i].start_pfn; in xen_del_extra_mem() 134 if (start_r == start_pfn) { in xen_del_extra_mem() 136 xen_extra_mem[i].start_pfn += n_pfns; in xen_del_extra_mem() 141 if (start_r + size_r == start_pfn + n_pfns) { in xen_del_extra_mem() [all …]
|
/Linux-v5.4/include/trace/events/ |
D | page_isolation.h | 13 unsigned long start_pfn, 17 TP_ARGS(start_pfn, end_pfn, fin_pfn), 20 __field(unsigned long, start_pfn) 26 __entry->start_pfn = start_pfn; 32 __entry->start_pfn, __entry->end_pfn, __entry->fin_pfn,
|
D | compaction.h | 17 unsigned long start_pfn, 22 TP_ARGS(start_pfn, end_pfn, nr_scanned, nr_taken), 25 __field(unsigned long, start_pfn) 32 __entry->start_pfn = start_pfn; 39 __entry->start_pfn, 48 unsigned long start_pfn, 53 TP_ARGS(start_pfn, end_pfn, nr_scanned, nr_taken) 59 unsigned long start_pfn, 64 TP_ARGS(start_pfn, end_pfn, nr_scanned, nr_taken)
|
/Linux-v5.4/arch/alpha/mm/ |
D | numa.c | 50 i, cluster->usage, cluster->start_pfn, in show_mem_layout() 51 cluster->start_pfn + cluster->numpages); in show_mem_layout() 86 start = cluster->start_pfn; in setup_memory_node() 97 i, cluster->usage, cluster->start_pfn, in setup_memory_node() 98 cluster->start_pfn + cluster->numpages); in setup_memory_node() 219 unsigned long start_pfn = NODE_DATA(nid)->node_start_pfn; in paging_init() local 220 unsigned long end_pfn = start_pfn + NODE_DATA(nid)->node_present_pages; in paging_init() 222 if (dma_local_pfn >= end_pfn - start_pfn) in paging_init() 223 zones_size[ZONE_DMA] = end_pfn - start_pfn; in paging_init() 226 zones_size[ZONE_NORMAL] = (end_pfn - start_pfn) - dma_local_pfn; in paging_init() [all …]
|
/Linux-v5.4/arch/sh/mm/ |
D | init.c | 201 unsigned long start_pfn, end_pfn; in allocate_pgdat() local 203 get_pfn_range_for_nid(nid, &start_pfn, &end_pfn); in allocate_pgdat() 214 NODE_DATA(nid)->node_start_pfn = start_pfn; in allocate_pgdat() 215 NODE_DATA(nid)->node_spanned_pages = end_pfn - start_pfn; in allocate_pgdat() 224 unsigned long start_pfn, end_pfn; in do_init_bootmem() local 225 start_pfn = memblock_region_memory_base_pfn(reg); in do_init_bootmem() 227 __add_active_range(0, start_pfn, end_pfn); in do_init_bootmem() 247 unsigned long start_pfn; in early_reserve_mem() local 255 start_pfn = PFN_UP(__pa(_end)); in early_reserve_mem() 263 memblock_reserve(start, (PFN_PHYS(start_pfn) + PAGE_SIZE - 1) - start); in early_reserve_mem() [all …]
|
D | numa.c | 28 unsigned long start_pfn, end_pfn; in setup_bootmem_node() local 33 start_pfn = PFN_DOWN(start); in setup_bootmem_node() 41 __add_active_range(nid, start_pfn, end_pfn); in setup_bootmem_node() 51 NODE_DATA(nid)->node_start_pfn = start_pfn; in setup_bootmem_node() 52 NODE_DATA(nid)->node_spanned_pages = end_pfn - start_pfn; in setup_bootmem_node()
|
/Linux-v5.4/include/linux/ |
D | memory_hotplug.h | 98 extern int test_pages_in_a_zone(unsigned long start_pfn, unsigned long end_pfn, 100 extern unsigned long __offline_isolated_pages(unsigned long start_pfn, 128 extern void __remove_pages(struct zone *zone, unsigned long start_pfn, 132 extern int __add_pages(int nid, unsigned long start_pfn, unsigned long nr_pages, 136 static inline int add_pages(int nid, unsigned long start_pfn, in add_pages() argument 139 return __add_pages(nid, start_pfn, nr_pages, restrictions); in add_pages() 142 int add_pages(int nid, unsigned long start_pfn, unsigned long nr_pages, 316 extern int offline_pages(unsigned long start_pfn, unsigned long nr_pages); 329 static inline int offline_pages(unsigned long start_pfn, unsigned long nr_pages) in offline_pages() argument 346 extern void move_pfn_range_to_zone(struct zone *zone, unsigned long start_pfn, [all …]
|
D | node.h | 102 extern int link_mem_sections(int nid, unsigned long start_pfn, 105 static inline int link_mem_sections(int nid, unsigned long start_pfn, in link_mem_sections() argument 124 unsigned long start_pfn = pgdat->node_start_pfn; in register_one_node() local 125 unsigned long end_pfn = start_pfn + pgdat->node_spanned_pages; in register_one_node() 131 error = link_mem_sections(nid, start_pfn, end_pfn); in register_one_node()
|
D | page-isolation.h | 46 start_isolate_page_range(unsigned long start_pfn, unsigned long end_pfn, 54 undo_isolate_page_range(unsigned long start_pfn, unsigned long end_pfn, 60 int test_pages_isolated(unsigned long start_pfn, unsigned long end_pfn,
|
/Linux-v5.4/drivers/hv/ |
D | hv_balloon.c | 432 unsigned long start_pfn; member 445 unsigned long start_pfn; member 583 if ((pfn >= gap->start_pfn) && (pfn < gap->end_pfn)) in has_pfn_is_backed() 590 static unsigned long hv_page_offline_check(unsigned long start_pfn, in hv_page_offline_check() argument 593 unsigned long pfn = start_pfn, count = 0; in hv_page_offline_check() 597 while (pfn < start_pfn + nr_pages) { in hv_page_offline_check() 604 while ((pfn >= has->start_pfn) && in hv_page_offline_check() 606 (pfn < start_pfn + nr_pages)) { in hv_page_offline_check() 643 pfn_count = hv_page_offline_check(mem->start_pfn, in hv_memory_notifier() 692 unsigned long start_pfn, unsigned long size) in hv_bring_pgs_online() argument [all …]
|
/Linux-v5.4/drivers/base/ |
D | memory.c | 191 static bool pages_correctly_probed(unsigned long start_pfn) in pages_correctly_probed() argument 193 unsigned long section_nr = pfn_to_section_nr(start_pfn); in pages_correctly_probed() 195 unsigned long pfn = start_pfn; in pages_correctly_probed() 233 unsigned long start_pfn; in memory_block_action() local 237 start_pfn = section_nr_to_pfn(start_section_nr); in memory_block_action() 241 if (!pages_correctly_probed(start_pfn)) in memory_block_action() 244 ret = online_pages(start_pfn, nr_pages, online_type); in memory_block_action() 247 ret = offline_pages(start_pfn, nr_pages); in memory_block_action() 382 static void print_allowed_zone(char *buf, int nid, unsigned long start_pfn, in print_allowed_zone() argument 388 zone = zone_for_pfn_range(online_type, nid, start_pfn, nr_pages); in print_allowed_zone() [all …]
|
/Linux-v5.4/arch/parisc/mm/ |
D | init.c | 138 if (pmem_ranges[j-1].start_pfn < in setup_bootmem() 139 pmem_ranges[j].start_pfn) { in setup_bootmem() 156 if (pmem_ranges[i].start_pfn - in setup_bootmem() 157 (pmem_ranges[i-1].start_pfn + in setup_bootmem() 162 pmem_ranges[i].start_pfn - in setup_bootmem() 163 (pmem_ranges[i-1].start_pfn + in setup_bootmem() 179 start = (pmem_ranges[i].start_pfn << PAGE_SHIFT); in setup_bootmem() 233 end_pfn = pmem_ranges[0].start_pfn + pmem_ranges[0].pages; in setup_bootmem() 236 hole_pages = pmem_ranges[i].start_pfn - end_pfn; in setup_bootmem() 238 pmem_holes[npmem_holes].start_pfn = end_pfn; in setup_bootmem() [all …]
|
/Linux-v5.4/arch/s390/numa/ |
D | numa.c | 103 unsigned long start_pfn, end_pfn; in numa_setup_memory() local 107 start_pfn = ULONG_MAX; in numa_setup_memory() 110 if (t_start < start_pfn) in numa_setup_memory() 111 start_pfn = t_start; in numa_setup_memory() 115 NODE_DATA(nid)->node_spanned_pages = end_pfn - start_pfn; in numa_setup_memory()
|
/Linux-v5.4/arch/s390/mm/ |
D | init.c | 250 mem_data.start = arg->start_pfn << PAGE_SHIFT; in s390_cma_mem_notifier() 272 unsigned long start_pfn = PFN_DOWN(start); in arch_add_memory() local 283 rc = __add_pages(nid, start_pfn, size_pages, restrictions); in arch_add_memory() 292 unsigned long start_pfn = start >> PAGE_SHIFT; in arch_remove_memory() local 296 zone = page_zone(pfn_to_page(start_pfn)); in arch_remove_memory() 297 __remove_pages(zone, start_pfn, nr_pages, altmap); in arch_remove_memory()
|
/Linux-v5.4/arch/powerpc/platforms/powernv/ |
D | memtrace.c | 71 static bool memtrace_offline_pages(u32 nid, u64 start_pfn, u64 nr_pages) in memtrace_offline_pages() argument 73 const unsigned long start = PFN_PHYS(start_pfn); in memtrace_offline_pages() 82 if (offline_pages(start_pfn, nr_pages)) { in memtrace_offline_pages() 97 u64 start_pfn, end_pfn, nr_pages, pfn; in memtrace_alloc_node() local 104 start_pfn = node_start_pfn(nid); in memtrace_alloc_node() 112 for (base_pfn = end_pfn; base_pfn > start_pfn; base_pfn -= nr_pages) { in memtrace_alloc_node()
|
/Linux-v5.4/arch/arm64/mm/ |
D | numa.c | 218 static void __init setup_node_data(int nid, u64 start_pfn, u64 end_pfn) in setup_node_data() argument 225 if (start_pfn >= end_pfn) in setup_node_data() 245 NODE_DATA(nid)->node_start_pfn = start_pfn; in setup_node_data() 246 NODE_DATA(nid)->node_spanned_pages = end_pfn - start_pfn; in setup_node_data() 363 unsigned long start_pfn, end_pfn; in numa_register_nodes() local 365 get_pfn_range_for_nid(nid, &start_pfn, &end_pfn); in numa_register_nodes() 366 setup_node_data(nid, start_pfn, end_pfn); in numa_register_nodes()
|