diff options
Diffstat (limited to 'arch/powerpc/kernel/entry_64.S')
-rw-r--r-- | arch/powerpc/kernel/entry_64.S | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/entry_64.S b/arch/powerpc/kernel/entry_64.S index 54d9f5cdaab4..2cd872b5283b 100644 --- a/arch/powerpc/kernel/entry_64.S +++ b/arch/powerpc/kernel/entry_64.S | |||
@@ -375,6 +375,14 @@ BEGIN_FTR_SECTION | |||
375 | ld r7,KSP_VSID(r4) /* Get new stack's VSID */ | 375 | ld r7,KSP_VSID(r4) /* Get new stack's VSID */ |
376 | oris r0,r6,(SLB_ESID_V)@h | 376 | oris r0,r6,(SLB_ESID_V)@h |
377 | ori r0,r0,(SLB_NUM_BOLTED-1)@l | 377 | ori r0,r0,(SLB_NUM_BOLTED-1)@l |
378 | |||
379 | /* Update the last bolted SLB */ | ||
380 | ld r9,PACA_SLBSHADOWPTR(r13) | ||
381 | li r12,0 | ||
382 | std r12,SLBSHADOW_STACKESID(r9) /* Clear ESID */ | ||
383 | std r7,SLBSHADOW_STACKVSID(r9) /* Save VSID */ | ||
384 | std r0,SLBSHADOW_STACKESID(r9) /* Save ESID */ | ||
385 | |||
378 | slbie r6 | 386 | slbie r6 |
379 | slbie r6 /* Workaround POWER5 < DD2.1 issue */ | 387 | slbie r6 /* Workaround POWER5 < DD2.1 issue */ |
380 | slbmte r7,r0 | 388 | slbmte r7,r0 |