[PATCH v2 0/4] Add Sv57 page table support
Palmer Dabbelt
palmer at dabbelt.com
Tue Feb 22 12:28:56 PST 2022
On Wed, 26 Jan 2022 18:48:40 PST (-0800), panqinglin2020 at iscas.ac.cn wrote:
> From: Qinglin Pan <panqinglin2020 at iscas.ac.cn>
>
> This implements Sv57 support at runtime. The kernel will try to boot with
> 5-level page table firstly , and will fallback to 4-level if the HW does
> not support it. And it will finally fallback to 3-level if the HW alse does
> not support sv48.
>
> Tested on:
> - qemu rv64
> - qemu rv64 with CONFIG_KASAN and CONFIG_KASAN_VMALLOC on.
> - qemu rv32
> - sifive unmatched with CONFIG_KASAN and CONFIG_KASAN_VMALLOC on.
>
> Changes in v2:
> - Fix KASAN for sv57, thanks to Alex
>
> Qinglin Pan (4):
> riscv: mm: Control p4d's folding by pgtable_l5_enabled
> riscv: mm: Prepare pt_ops helper functions for sv57
> riscv: mm: Set sv57 on defaultly
> riscv: mm: Support kasan for sv57
>
> arch/riscv/Kconfig | 4 +-
> arch/riscv/include/asm/csr.h | 1 +
> arch/riscv/include/asm/fixmap.h | 1 +
> arch/riscv/include/asm/page.h | 1 +
> arch/riscv/include/asm/pgalloc.h | 49 ++++++++
> arch/riscv/include/asm/pgtable-64.h | 106 +++++++++++++++++-
> arch/riscv/include/asm/pgtable.h | 6 +-
> arch/riscv/kernel/cpu.c | 4 +-
> arch/riscv/mm/init.c | 166 ++++++++++++++++++++++++----
> arch/riscv/mm/kasan_init.c | 155 +++++++++++++++++++++++---
> 10 files changed, 451 insertions(+), 42 deletions(-)
Thanks, this is on for-next.
More information about the linux-riscv
mailing list