diff mbox series

[3/3] powerpc/mm: Update the memory limit based on direct mapping restrictions

Message ID 20240403083611.172833-3-aneesh.kumar@kernel.org (mailing list archive)
State Under Review
Headers show
Series [1/3] powerpc/mm: Align memory_limit value specified using mem= kernel parameter | expand

Commit Message

Aneesh Kumar K.V April 3, 2024, 8:36 a.m. UTC
memory limit value specified by the user are further updated such that
the value is 16MB aligned. This is because hash translation mode use
16MB as direct mapping page size. Make sure we update the global
variable 'memory_limit' with the 16MB aligned value such that all kernel
components will see the new aligned value of the memory limit.

Signed-off-by: Aneesh Kumar K.V (IBM) <aneesh.kumar@kernel.org>
---
 arch/powerpc/kernel/prom.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)
diff mbox series

Patch

diff --git a/arch/powerpc/kernel/prom.c b/arch/powerpc/kernel/prom.c
index 7451bedad1f4..b8f764453eaa 100644
--- a/arch/powerpc/kernel/prom.c
+++ b/arch/powerpc/kernel/prom.c
@@ -779,7 +779,6 @@  static inline void save_fscr_to_task(void) {}
 
 void __init early_init_devtree(void *params)
 {
-	phys_addr_t limit;
 
 	DBG(" -> early_init_devtree(%px)\n", params);
 
@@ -850,8 +849,8 @@  void __init early_init_devtree(void *params)
 		memory_limit = 0;
 
 	/* Align down to 16 MB which is large page size with hash page translation */
-	limit = ALIGN_DOWN(memory_limit ?: memblock_phys_mem_size(), SZ_16M);
-	memblock_enforce_memory_limit(limit);
+	memory_limit = ALIGN_DOWN(memory_limit ?: memblock_phys_mem_size(), SZ_16M);
+	memblock_enforce_memory_limit(memory_limit);
 
 #if defined(CONFIG_PPC_BOOK3S_64) && defined(CONFIG_PPC_4K_PAGES)
 	if (!early_radix_enabled())