diff mbox series

[v2] MIPS: fix memory setup for platforms with PHYS_OFFSET != 0

Message ID 20190227094256.7658-1-tbogendoerfer@suse.de (mailing list archive)
State Mainlined
Commit e0bf304e4a00d66d90904a6c5b93141f177cf6d2
Headers show
Series [v2] MIPS: fix memory setup for platforms with PHYS_OFFSET != 0 | expand

Commit Message

Thomas Bogendoerfer Feb. 27, 2019, 9:42 a.m. UTC
For platforms, which use a PHYS_OFFSET != 0, symbol _end also
contains that offset. So when calling memblock_reserve() for
reserving kernel the size argument needs to be adjusted.

Fixes: bcec54bf3118 ("mips: switch to NO_BOOTMEM")
Acked-by: Mike Rapoport <rppt@linux.ibm.com>
Signed-off-by: Thomas Bogendoerfer <tbogendoerfer@suse.de>
---
 arch/mips/kernel/setup.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Paul Burton Feb. 28, 2019, 2:51 a.m. UTC | #1
Hello,

Thomas Bogendoerfer wrote:
> For platforms, which use a PHYS_OFFSET != 0, symbol _end also
> contains that offset. So when calling memblock_reserve() for
> reserving kernel the size argument needs to be adjusted.
> 
> Fixes: bcec54bf3118 ("mips: switch to NO_BOOTMEM")
> Acked-by: Mike Rapoport <rppt@linux.ibm.com>
> Signed-off-by: Thomas Bogendoerfer <tbogendoerfer@suse.de>

Applied to mips-fixes.

Thanks,
    Paul

[ This message was auto-generated; if you believe anything is incorrect
  then please email paul.burton@mips.com to report it. ]
diff mbox series

Patch

diff --git a/arch/mips/kernel/setup.c b/arch/mips/kernel/setup.c
index 8c6c48ed786a..d2e5a5ad0e6f 100644
--- a/arch/mips/kernel/setup.c
+++ b/arch/mips/kernel/setup.c
@@ -384,7 +384,8 @@  static void __init bootmem_init(void)
 	init_initrd();
 	reserved_end = (unsigned long) PFN_UP(__pa_symbol(&_end));
 
-	memblock_reserve(PHYS_OFFSET, reserved_end << PAGE_SHIFT);
+	memblock_reserve(PHYS_OFFSET,
+			 (reserved_end << PAGE_SHIFT) - PHYS_OFFSET);
 
 	/*
 	 * max_low_pfn is not a number of pages. The number of pages