Messages in this thread Patch in this message | | | From | Jun Yao <> | Subject | [PATCH v4 4/6] arm64/mm: Make swapper_pg_dir smaller | Date | Tue, 17 Jul 2018 17:56:06 +0800 |
| |
We setup final page tables in swapper_pg_dir, which just contains PGD. And the PUD/PMD are allocated dynamically. So we can make it smaller.
Signed-off-by: Jun Yao <yaojun8558363@gmail.com> --- arch/arm64/kernel/vmlinux.lds.S | 2 +- arch/arm64/mm/mmu.c | 8 -------- 2 files changed, 1 insertion(+), 9 deletions(-)
diff --git a/arch/arm64/kernel/vmlinux.lds.S b/arch/arm64/kernel/vmlinux.lds.S index 61d7cee3eaa6..2446911f4262 100644 --- a/arch/arm64/kernel/vmlinux.lds.S +++ b/arch/arm64/kernel/vmlinux.lds.S @@ -237,7 +237,7 @@ SECTIONS . += RESERVED_TTBR0_SIZE; #endif swapper_pg_dir = .; - . += SWAPPER_DIR_SIZE; + . += PAGE_SIZE; swapper_pg_end = .; __pecoff_data_size = ABSOLUTE(. - __initdata_begin); diff --git a/arch/arm64/mm/mmu.c b/arch/arm64/mm/mmu.c index cdce3ec4c7bb..d24be05ec1d4 100644 --- a/arch/arm64/mm/mmu.c +++ b/arch/arm64/mm/mmu.c @@ -633,14 +633,6 @@ void __init paging_init(void) map_mem(swapper_pg_dir); cpu_replace_ttbr1(swapper_pg_dir); init_mm.pgd = swapper_pg_dir; - - /* - * We only reuse the PGD from the swapper_pg_dir, not the pud + pmd - * allocated with it. - */ - memblock_free(__pa_symbol(swapper_pg_dir) + PAGE_SIZE, - __pa_symbol(swapper_pg_end) - __pa_symbol(swapper_pg_dir) - - PAGE_SIZE); } /* -- 2.17.1
| |