| /linux/arch/x86/mm/ |
| H A D | init.c | 328 unsigned long start_pfn, unsigned long end_pfn, in save_mr() argument 331 if (start_pfn < end_pfn) { in save_mr() 335 mr[nr_range].end = end_pfn<<PAGE_SHIFT; in save_mr() 406 unsigned long start_pfn, end_pfn, limit_pfn; in split_mem_range() local 422 end_pfn = PFN_DOWN(PMD_SIZE); in split_mem_range() 424 end_pfn = round_up(pfn, PFN_DOWN(PMD_SIZE)); in split_mem_range() 426 end_pfn = round_up(pfn, PFN_DOWN(PMD_SIZE)); in split_mem_range() 428 if (end_pfn > limit_pfn) in split_mem_range() 429 end_pfn = limit_pfn; in split_mem_range() 430 if (start_pfn < end_pfn) { in split_mem_range() [all …]
|
| /linux/mm/ |
| H A D | mm_init.c | 317 unsigned long start_pfn, end_pfn; in early_calculate_totalpages() local 320 for_each_mem_pfn_range(i, MAX_NUMNODES, &start_pfn, &end_pfn, &nid) { in early_calculate_totalpages() 321 unsigned long pages = end_pfn - start_pfn; in early_calculate_totalpages() 479 unsigned long start_pfn, end_pfn; in find_zone_movable_pfns_for_nodes() local 497 for_each_mem_pfn_range(i, nid, &start_pfn, &end_pfn, NULL) { in find_zone_movable_pfns_for_nodes() 501 if (start_pfn >= end_pfn) in find_zone_movable_pfns_for_nodes() 507 kernel_pages = min(end_pfn, usable_startpfn) in find_zone_movable_pfns_for_nodes() 516 if (end_pfn <= usable_startpfn) { in find_zone_movable_pfns_for_nodes() 524 zone_movable_pfn[nid] = end_pfn; in find_zone_movable_pfns_for_nodes() 535 size_pages = end_pfn - start_pfn; in find_zone_movable_pfns_for_nodes() [all …]
|
| H A D | page_isolation.c | 33 static struct page *has_unmovable_pages(unsigned long start_pfn, unsigned long end_pfn, in has_unmovable_pages() argument 41 pageblock_start_pfn(end_pfn - 1)); in has_unmovable_pages() 55 for (pfn = start_pfn; pfn < end_pfn; pfn++) { in has_unmovable_pages() 155 unsigned long start_pfn, unsigned long end_pfn) in set_migratetype_isolate() argument 186 end_pfn); in set_migratetype_isolate() 475 int start_isolate_page_range(unsigned long start_pfn, unsigned long end_pfn, in start_isolate_page_range() argument 482 unsigned long isolate_end = pageblock_align(end_pfn); in start_isolate_page_range() 508 end_pfn)) { in start_isolate_page_range() 525 void undo_isolate_page_range(unsigned long start_pfn, unsigned long end_pfn) in undo_isolate_page_range() argument 530 unsigned long isolate_end = pageblock_align(end_pfn); in undo_isolate_page_range() [all …]
|
| H A D | page_idle.c | 125 unsigned long pfn, end_pfn; in page_idle_bitmap_read() local 135 end_pfn = pfn + count * BITS_PER_BYTE; in page_idle_bitmap_read() 136 if (end_pfn > max_pfn) in page_idle_bitmap_read() 137 end_pfn = max_pfn; in page_idle_bitmap_read() 139 for (; pfn < end_pfn; pfn++) { in page_idle_bitmap_read() 170 unsigned long pfn, end_pfn; in page_idle_bitmap_write() local 180 end_pfn = pfn + count * BITS_PER_BYTE; in page_idle_bitmap_write() 181 if (end_pfn > max_pfn) in page_idle_bitmap_write() 182 end_pfn = max_pfn; in page_idle_bitmap_write() 184 for (; pfn < end_pfn; pfn++) { in page_idle_bitmap_write()
|
| H A D | memory_hotplug.c | 392 const unsigned long end_pfn = pfn + nr_pages; in __add_pages() local 419 for (; pfn < end_pfn; pfn += cur_nr_pages) { in __add_pages() 421 cur_nr_pages = min(end_pfn - pfn, in __add_pages() 436 unsigned long end_pfn) in find_smallest_section_pfn() argument 438 for (; start_pfn < end_pfn; start_pfn += PAGES_PER_SUBSECTION) { in find_smallest_section_pfn() 457 unsigned long end_pfn) in find_biggest_section_pfn() argument 462 pfn = end_pfn - 1; in find_biggest_section_pfn() 480 unsigned long end_pfn) in shrink_zone_span() argument 492 pfn = find_smallest_section_pfn(nid, zone, end_pfn, in shrink_zone_span() 501 } else if (zone_end_pfn(zone) == end_pfn) { in shrink_zone_span() [all …]
|
| H A D | compaction.c | 558 unsigned long end_pfn, in isolate_freepages_block() argument 577 for (; blockpfn < end_pfn; blockpfn += stride, page += stride) { in isolate_freepages_block() 602 (blockpfn + (1UL << order) <= end_pfn)) { in isolate_freepages_block() 657 if (unlikely(blockpfn > end_pfn)) in isolate_freepages_block() 658 blockpfn = end_pfn; in isolate_freepages_block() 671 if (strict && blockpfn < end_pfn) in isolate_freepages_block() 696 unsigned long start_pfn, unsigned long end_pfn) in isolate_freepages_range() argument 710 for (; pfn < end_pfn; pfn += isolated, in isolate_freepages_range() 726 block_end_pfn = min(block_end_pfn, end_pfn); in isolate_freepages_range() 750 if (pfn < end_pfn) { in isolate_freepages_range() [all …]
|
| H A D | sparse.c | 130 unsigned long *end_pfn) in mminit_validate_memmodel_limits() argument 141 *start_pfn, *end_pfn, max_sparsemem_pfn); in mminit_validate_memmodel_limits() 144 *end_pfn = max_sparsemem_pfn; in mminit_validate_memmodel_limits() 145 } else if (*end_pfn > max_sparsemem_pfn) { in mminit_validate_memmodel_limits() 148 *start_pfn, *end_pfn, max_sparsemem_pfn); in mminit_validate_memmodel_limits() 150 *end_pfn = max_sparsemem_pfn; in mminit_validate_memmodel_limits() 630 void online_mem_sections(unsigned long start_pfn, unsigned long end_pfn) in online_mem_sections() argument 634 for (pfn = start_pfn; pfn < end_pfn; pfn += PAGES_PER_SECTION) { in online_mem_sections() 648 void offline_mem_sections(unsigned long start_pfn, unsigned long end_pfn) in offline_mem_sections() argument 652 for (pfn = start_pfn; pfn < end_pfn; pfn += PAGES_PER_SECTION) { in offline_mem_sections()
|
| H A D | bootmem_info.c | 107 unsigned long i, pfn, end_pfn, nr_pages; in register_page_bootmem_info_node() local 118 end_pfn = pgdat_end_pfn(pgdat); in register_page_bootmem_info_node() 121 for (; pfn < end_pfn; pfn += PAGES_PER_SECTION) { in register_page_bootmem_info_node()
|
| /linux/include/trace/events/ |
| H A D | page_isolation.h | 14 unsigned long end_pfn, 17 TP_ARGS(start_pfn, end_pfn, fin_pfn), 21 __field(unsigned long, end_pfn) 27 __entry->end_pfn = end_pfn; 32 __entry->start_pfn, __entry->end_pfn, __entry->fin_pfn, 33 __entry->end_pfn <= __entry->fin_pfn ? "success" : "fail")
|
| H A D | compaction.h | 18 unsigned long end_pfn, 22 TP_ARGS(start_pfn, end_pfn, nr_scanned, nr_taken), 26 __field(unsigned long, end_pfn) 33 __entry->end_pfn = end_pfn; 40 __entry->end_pfn, 49 unsigned long end_pfn, 53 TP_ARGS(start_pfn, end_pfn, nr_scanned, nr_taken) 60 unsigned long end_pfn, 64 TP_ARGS(start_pfn, end_pfn, nr_scanned, nr_taken) 71 unsigned long end_pfn, [all …]
|
| /linux/arch/sh/mm/ |
| H A D | numa.c | 25 unsigned long start_pfn, end_pfn; in setup_bootmem_node() local 31 end_pfn = PFN_DOWN(end); in setup_bootmem_node() 38 __add_active_range(nid, start_pfn, end_pfn); in setup_bootmem_node() 49 NODE_DATA(nid)->node_spanned_pages = end_pfn - start_pfn; in setup_bootmem_node()
|
| H A D | init.c | 204 unsigned long start_pfn, end_pfn; in allocate_pgdat() local 206 get_pfn_range_for_nid(nid, &start_pfn, &end_pfn); in allocate_pgdat() 213 NODE_DATA(nid)->node_spanned_pages = end_pfn - start_pfn; in allocate_pgdat() 218 unsigned long start_pfn, end_pfn; in do_init_bootmem() local 222 for_each_mem_pfn_range(i, MAX_NUMNODES, &start_pfn, &end_pfn, NULL) in do_init_bootmem() 223 __add_active_range(0, start_pfn, end_pfn); in do_init_bootmem()
|
| /linux/arch/mips/loongson64/ |
| H A D | numa.c | 85 unsigned long start_pfn, end_pfn; in node_mem_init() local 91 get_pfn_range_for_nid(node, &start_pfn, &end_pfn); in node_mem_init() 93 node, start_pfn, end_pfn); in node_mem_init() 98 NODE_DATA(node)->node_spanned_pages = end_pfn - start_pfn; in node_mem_init() 108 max_low_pfn = end_pfn; in node_mem_init()
|
| /linux/drivers/base/ |
| H A D | arch_numa.c | 195 static void __init setup_node_data(int nid, u64 start_pfn, u64 end_pfn) in setup_node_data() argument 197 if (start_pfn >= end_pfn) in setup_node_data() 204 NODE_DATA(nid)->node_spanned_pages = end_pfn - start_pfn; in setup_node_data() 217 unsigned long start_pfn, end_pfn; in numa_register_nodes() local 219 get_pfn_range_for_nid(nid, &start_pfn, &end_pfn); in numa_register_nodes() 220 setup_node_data(nid, start_pfn, end_pfn); in numa_register_nodes()
|
| /linux/include/linux/ |
| H A D | page-isolation.h | 63 int start_isolate_page_range(unsigned long start_pfn, unsigned long end_pfn, 66 void undo_isolate_page_range(unsigned long start_pfn, unsigned long end_pfn); 68 int test_pages_isolated(unsigned long start_pfn, unsigned long end_pfn,
|
| /linux/arch/x86/xen/ |
| H A D | setup.c | 215 unsigned long end_pfn) in xen_set_identity_and_release_chunk() argument 220 WARN_ON(start_pfn > end_pfn); in xen_set_identity_and_release_chunk() 223 end = min(end_pfn, ini_nr_pages); in xen_set_identity_and_release_chunk() 242 set_phys_range_identity(start_pfn, end_pfn); in xen_set_identity_and_release_chunk() 344 unsigned long start_pfn, unsigned long end_pfn, unsigned long remap_pfn) in xen_set_identity_and_remap_chunk() argument 348 unsigned long n = end_pfn - start_pfn; in xen_set_identity_and_remap_chunk() 390 for (pfn = start_pfn; pfn <= max_pfn_mapped && pfn < end_pfn; pfn++) in xen_set_identity_and_remap_chunk() 399 unsigned long start_pfn, unsigned long end_pfn, in xen_count_remap_pages() argument 405 return remap_pages + min(end_pfn, ini_nr_pages) - start_pfn; in xen_count_remap_pages() 409 unsigned long (*func)(unsigned long start_pfn, unsigned long end_pfn, in xen_foreach_remap_area() argument [all …]
|
| /linux/drivers/gpu/drm/imagination/ |
| H A D | pvr_vm_mips.c | 156 s32 end_pfn; in pvr_vm_mips_map() local 172 end_pfn = (end & fw_dev->fw_heap_info.offset_mask) >> ROGUE_MIPSFW_LOG2_PAGE_SIZE_4K; in pvr_vm_mips_map() 181 for (pfn = start_pfn; pfn <= end_pfn; pfn++) { in pvr_vm_mips_map() 229 const u32 end_pfn = (end & fw_dev->fw_heap_info.offset_mask) >> in pvr_vm_mips_unmap() local 232 for (u32 pfn = start_pfn; pfn < end_pfn; pfn++) in pvr_vm_mips_unmap()
|
| /linux/arch/x86/platform/efi/ |
| H A D | efi_32.c | 38 u64 start_pfn, end_pfn, end; in efi_map_region() local 45 end_pfn = PFN_UP(end); in efi_map_region() 47 if (pfn_range_is_mapped(start_pfn, end_pfn)) { in efi_map_region()
|
| /linux/arch/sh/kernel/ |
| H A D | swsusp.c | 22 unsigned long end_pfn = PAGE_ALIGN(__pa(&__nosave_end)) >> PAGE_SHIFT; in pfn_is_nosave() local 24 return (pfn >= begin_pfn) && (pfn < end_pfn); in pfn_is_nosave()
|
| H A D | setup.c | 194 unsigned long end_pfn) in __add_active_range() argument 202 end = end_pfn << PAGE_SHIFT; in __add_active_range() 211 start_pfn, end_pfn); in __add_active_range() 235 memblock_set_node(PFN_PHYS(start_pfn), PFN_PHYS(end_pfn - start_pfn), in __add_active_range()
|
| /linux/arch/powerpc/mm/ |
| H A D | numa.c | 89 static int __init fake_numa_create_new_node(unsigned long end_pfn, in fake_numa_create_new_node() argument 120 if ((end_pfn << PAGE_SHIFT) > mem) { in fake_numa_create_new_node() 1041 unsigned long start_pfn, end_pfn; in setup_nonnuma() local 1048 for_each_mem_pfn_range(i, MAX_NUMNODES, &start_pfn, &end_pfn, NULL) { in setup_nonnuma() 1049 fake_numa_create_new_node(end_pfn, &nid); in setup_nonnuma() 1051 PFN_PHYS(end_pfn - start_pfn), in setup_nonnuma() 1093 static void __init setup_node_data(int nid, u64 start_pfn, u64 end_pfn) in setup_node_data() argument 1095 u64 spanned_pages = end_pfn - start_pfn; in setup_node_data() 1210 unsigned long start_pfn, end_pfn; in initmem_init() local 1212 get_pfn_range_for_nid(nid, &start_pfn, &end_pfn); in initmem_init() [all …]
|
| /linux/drivers/hv/ |
| H A D | hv_balloon.c | 429 unsigned long end_pfn; member 439 unsigned long end_pfn; member 593 if (pfn >= gap->start_pfn && pfn < gap->end_pfn) in has_pfn_is_backed() 615 (pfn < has->end_pfn) && in hv_page_offline_check() 773 (pfn + (1UL << order) > has->end_pfn)) in hv_online_page() 796 if (start_pfn < has->start_pfn || start_pfn >= has->end_pfn) in pfn_covered() 812 gap->end_pfn = start_pfn; in pfn_covered() 822 if ((start_pfn + pfn_cnt) > has->end_pfn) { in pfn_covered() 824 residual = (start_pfn + pfn_cnt - has->end_pfn); in pfn_covered() 825 has->end_pfn += ALIGN(residual, ha_pages_in_chunk); in pfn_covered() [all …]
|
| /linux/arch/s390/kernel/ |
| H A D | early.c | 79 unsigned long end_pfn, init_pfn; in init_kernel_storage_key() local 81 end_pfn = PFN_UP(__pa(_end)); in init_kernel_storage_key() 83 for (init_pfn = 0 ; init_pfn < end_pfn; init_pfn++) in init_kernel_storage_key()
|
| /linux/include/asm-generic/ |
| H A D | memory_model.h | 35 #define for_each_valid_pfn(pfn, start_pfn, end_pfn) \ argument 37 (pfn) < min_t(unsigned long, (end_pfn), \
|
| /linux/arch/x86/virt/vmx/tdx/ |
| H A D | tdx.c | 192 unsigned long end_pfn, int nid) in add_tdx_memblock() argument 202 tmb->end_pfn = end_pfn; in add_tdx_memblock() 230 unsigned long start_pfn, end_pfn; in build_tdx_memlist() local 233 for_each_mem_pfn_range(i, MAX_NUMNODES, &start_pfn, &end_pfn, &nid) { in build_tdx_memlist() 241 if (start_pfn >= end_pfn) in build_tdx_memlist() 249 ret = add_tdx_memblock(tmb_list, start_pfn, end_pfn, nid); in build_tdx_memlist() 391 end = TDMR_ALIGN_UP(PFN_PHYS(tmb->end_pfn)); in fill_out_tdmrs() 490 if (tmb->end_pfn > PHYS_PFN(tdmr->base)) in tdmr_get_nid() 747 end = PFN_PHYS(tmb->end_pfn); in tdmr_populate_rsvd_holes() 1346 static bool is_tdx_memory(unsigned long start_pfn, unsigned long end_pfn) in is_tdx_memory() argument [all …]
|