• Alexandre Ghiti's avatar
    riscv: Split early kasan mapping to prepare sv48 introduction · 2efad17e
    Alexandre Ghiti authored
    Now that kasan shadow region is next to the kernel, for sv48, this
    region won't be aligned on PGDIR_SIZE and then when populating this
    region, we'll need to get down to lower levels of the page table. So
    instead of reimplementing the page table walk for the early population,
    take advantage of the existing functions used for the final population.
    
    Note that kasan swapper initialization must also be split since memblock
    is not initialized at this point and as the last PGD is shared with the
    kernel, we'd need to allocate a PUD so postpone the kasan final
    population after the kernel population is done.
    Signed-off-by: default avatarAlexandre Ghiti <alexandre.ghiti@canonical.com>
    Signed-off-by: default avatarPalmer Dabbelt <palmer@rivosinc.com>
    2efad17e
init.c 23.9 KB