riscv: Make sure the linear mapping does not use the kernel mapping
authorAlexandre Ghiti <alex@ghiti.fr>
Tue, 29 Jun 2021 09:13:47 +0000 (11:13 +0200)
committerPalmer Dabbelt <palmerdabbelt@google.com>
Fri, 23 Jul 2021 03:48:04 +0000 (20:48 -0700)
commitc99127c452484ac89c75af39c3c865174ce2de99
treed46bc59f44a7d801862c553f8364325a9da4224a
parentc09dc9e1cd3c205f66b2505d742e819735c0eb6f
riscv: Make sure the linear mapping does not use the kernel mapping

For 64-bit kernel, the end of the address space is occupied by the
kernel mapping and currently, the functions to populate the kernel page
tables (i.e. create_p*d_mapping) do not override existing mapping so we
must make sure the linear mapping does not map memory in the kernel mapping
by clipping the memory above the memory limit.

Signed-off-by: Alexandre Ghiti <alex@ghiti.fr>
Fixes: c9811e379b21 ("riscv: Add mem kernel parameter support")
Signed-off-by: Palmer Dabbelt <palmerdabbelt@google.com>
arch/riscv/mm/init.c