Lines Matching refs:start
133 static void sync_global_pgds_l5(unsigned long start, unsigned long end)
137 for (addr = start; addr <= end; addr = ALIGN(addr + 1, PGDIR_SIZE)) {
142 if (addr < start)
170 static void sync_global_pgds_l4(unsigned long start, unsigned long end)
174 for (addr = start; addr <= end; addr = ALIGN(addr + 1, PGDIR_SIZE)) {
218 static void sync_global_pgds(unsigned long start, unsigned long end)
221 sync_global_pgds_l5(start, end);
223 sync_global_pgds_l4(start, end);
855 unsigned long start = ALIGN_DOWN(addr, PMD_SIZE);
864 return !memchr_inv((void *)start, PAGE_UNUSED, PMD_SIZE);
868 static void __meminit __vmemmap_use_sub_pmd(unsigned long start)
877 memset((void *)start, 0, sizeof(struct page));
880 static void __meminit vmemmap_use_sub_pmd(unsigned long start, unsigned long end)
886 if (unused_pmd_start == start) {
899 __vmemmap_use_sub_pmd(start);
903 static void __meminit vmemmap_use_new_sub_pmd(unsigned long start, unsigned long end)
905 const unsigned long page = ALIGN_DOWN(start, PMD_SIZE);
913 __vmemmap_use_sub_pmd(start);
918 if (!IS_ALIGNED(start, PMD_SIZE))
919 memset((void *)page, PAGE_UNUSED, start - page);
939 static void update_end_of_memory_vars(u64 start, u64 size)
941 unsigned long end_pfn = PFN_UP(start + size);
965 int arch_add_memory(int nid, u64 start, u64 size,
968 unsigned long start_pfn = start >> PAGE_SHIFT;
971 init_memory_mapping(start, start + size, params->pgprot);
1217 /* start and end are both virtual address. */
1219 remove_pagetable(unsigned long start, unsigned long end, bool direct,
1227 for (addr = start; addr < end; addr = next) {
1241 void __ref vmemmap_free(unsigned long start, unsigned long end,
1244 VM_BUG_ON(!PAGE_ALIGNED(start));
1247 remove_pagetable(start, end, false, altmap);
1251 kernel_physical_mapping_remove(unsigned long start, unsigned long end)
1253 start = (unsigned long)__va(start);
1256 remove_pagetable(start, end, true, NULL);
1259 void __ref arch_remove_memory(u64 start, u64 size, struct vmem_altmap *altmap)
1261 unsigned long start_pfn = start >> PAGE_SHIFT;
1265 kernel_physical_mapping_remove(start, start + size);
1373 unsigned long start = PFN_ALIGN(_text);
1381 (end - start) >> 10);
1382 set_memory_ro(start, (end - start) >> PAGE_SHIFT);
1404 printk(KERN_INFO "Testing CPA: undo %lx-%lx\n", start, end);
1405 set_memory_rw(start, (end-start) >> PAGE_SHIFT);
1408 set_memory_ro(start, (end-start) >> PAGE_SHIFT);
1426 /* Amount of ram needed to start using large blocks */
1535 int __meminit vmemmap_populate(unsigned long start, unsigned long end, int node,
1540 VM_BUG_ON(!PAGE_ALIGNED(start));
1543 if (end - start < PAGES_PER_SECTION * sizeof(struct page))
1544 err = vmemmap_populate_basepages(start, end, node, NULL);
1546 err = vmemmap_populate_hugepages(start, end, node, altmap);
1552 err = vmemmap_populate_basepages(start, end, node, NULL);
1554 sync_global_pgds(start, end - 1);