[PATCH 1/7] PowerPC64: Not to insert EA=0 entry at initializing SLB
From: Ishizaki Kou <hidden>
Date: 2007-09-26 04:20:47
This is a workaround NOT to insert EA=0 entry at initializing SLB. Without this patch, you can see /sbin/init hanging at a machine which has less or equal than 256MB memory. Signed-off-by: Kou Ishizaki <redacted> --- Index: linux-powerpc-git/arch/powerpc/kernel/setup_64.c ===================================================================
--- linux-powerpc-git.orig/arch/powerpc/kernel/setup_64.c
+++ linux-powerpc-git/arch/powerpc/kernel/setup_64.c@@ -195,6 +195,12 @@ void __init early_setup(unsigned long dt get_paca()->stab_real = __pa((u64)&initial_stab); get_paca()->stab_addr = (u64)&initial_stab; + /* XXX: It's a hack! + * kstack must be set properly or slb_initialize() go mad to set + * ESID=0 entry in bolted area of SLB. + * TODO: Set correct value */ + get_paca()->kstack = (u64)__builtin_frame_address(0); + /* Probe the machine type */ probe_machine();