Messages in this thread |  | | Date | Fri, 24 Jul 2020 22:12:39 -0700 (PDT) | Subject | Re: [PATCH 2/4] RISC-V: Set maximum number of mapped pages correctly | From | Palmer Dabbelt <> |
| |
On Wed, 15 Jul 2020 16:30:07 PDT (-0700), Atish Patra wrote: > Currently, maximum number of mapper pages are set to the pfn calculated > from the memblock size of the memblock containing kernel. This will work > until that memblock spans the entire memory. However, it will be set to > a wrong value if there are multiple memblocks defined in kernel > (e.g. with efi runtime services). > > Set the the maximum value to the pfn calculated from dram size. > > Signed-off-by: Atish Patra <atish.patra@wdc.com> > --- > arch/riscv/mm/init.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/arch/riscv/mm/init.c b/arch/riscv/mm/init.c > index f4adb3684f3d..8d22973bde40 100644 > --- a/arch/riscv/mm/init.c > +++ b/arch/riscv/mm/init.c > @@ -150,9 +150,9 @@ void __init setup_bootmem(void) > /* Reserve from the start of the kernel to the end of the kernel */ > memblock_reserve(vmlinux_start, vmlinux_end - vmlinux_start); > > - set_max_mapnr(PFN_DOWN(mem_size)); > max_pfn = PFN_DOWN(memblock_end_of_DRAM()); > max_low_pfn = max_pfn; > + set_max_mapnr(max_low_pfn); > > #ifdef CONFIG_BLK_DEV_INITRD > setup_initrd();
This one I'm putting on fixes, as there's nothing preventing us from having multiple memory regions in a current boot and this seems very safe.
|  |