diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c index 810206b9c79a..838cb05f643b 100644 --- a/arch/riscv/mm/init.c +++ b/arch/riscv/mm/init.c @@ -237,7 +237,6 @@ static void __init setup_bootmem(void) dma_contiguous_reserve(dma32_phys_limit); if (IS_ENABLED(CONFIG_64BIT)) hugetlb_cma_reserve(PUD_SHIFT - PAGE_SHIFT); - memblock_allow_resize(); } #ifdef CONFIG_MMU @@ -871,6 +870,9 @@ void __init paging_init(void) { setup_bootmem(); setup_vm_final(); + + /* Depend on that Linear Mapping is ready */ + memblock_allow_resize(); } void __init misc_mem_init(void)