diff options
Diffstat (limited to 'arch/powerpc')
-rw-r--r-- | arch/powerpc/kernel/setup_64.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/arch/powerpc/kernel/setup_64.c b/arch/powerpc/kernel/setup_64.c index dff6308d1b5e..25e3fd8606ab 100644 --- a/arch/powerpc/kernel/setup_64.c +++ b/arch/powerpc/kernel/setup_64.c | |||
@@ -487,9 +487,12 @@ static void __init emergency_stack_init(void) | |||
487 | */ | 487 | */ |
488 | limit = min(0x10000000UL, lmb.rmo_size); | 488 | limit = min(0x10000000UL, lmb.rmo_size); |
489 | 489 | ||
490 | for_each_possible_cpu(i) | 490 | for_each_possible_cpu(i) { |
491 | paca[i].emergency_sp = | 491 | unsigned long sp; |
492 | __va(lmb_alloc_base(HW_PAGE_SIZE, 128, limit)) + HW_PAGE_SIZE; | 492 | sp = lmb_alloc_base(THREAD_SIZE, THREAD_SIZE, limit); |
493 | sp += THREAD_SIZE; | ||
494 | paca[i].emergency_sp = __va(sp); | ||
495 | } | ||
493 | } | 496 | } |
494 | 497 | ||
495 | /* | 498 | /* |