diff options
Diffstat (limited to 'arch/ppc64/kernel')
-rw-r--r-- | arch/ppc64/kernel/entry.S | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/arch/ppc64/kernel/entry.S b/arch/ppc64/kernel/entry.S index b61572eb2a71..bf99b4a92f20 100644 --- a/arch/ppc64/kernel/entry.S +++ b/arch/ppc64/kernel/entry.S | |||
@@ -400,15 +400,14 @@ BEGIN_FTR_SECTION | |||
400 | cmpd cr1,r6,r9 /* or is new ESID the same as current ESID? */ | 400 | cmpd cr1,r6,r9 /* or is new ESID the same as current ESID? */ |
401 | cror eq,4*cr1+eq,eq | 401 | cror eq,4*cr1+eq,eq |
402 | beq 2f /* if yes, don't slbie it */ | 402 | beq 2f /* if yes, don't slbie it */ |
403 | oris r0,r6,0x0800 /* set C (class) bit */ | ||
404 | 403 | ||
405 | /* Bolt in the new stack SLB entry */ | 404 | /* Bolt in the new stack SLB entry */ |
406 | ld r7,KSP_VSID(r4) /* Get new stack's VSID */ | 405 | ld r7,KSP_VSID(r4) /* Get new stack's VSID */ |
407 | oris r6,r6,(SLB_ESID_V)@h | 406 | oris r0,r6,(SLB_ESID_V)@h |
408 | ori r6,r6,(SLB_NUM_BOLTED-1)@l | 407 | ori r0,r0,(SLB_NUM_BOLTED-1)@l |
409 | slbie r0 | 408 | slbie r6 |
410 | slbie r0 /* Workaround POWER5 < DD2.1 issue */ | 409 | slbie r6 /* Workaround POWER5 < DD2.1 issue */ |
411 | slbmte r7,r6 | 410 | slbmte r7,r0 |
412 | isync | 411 | isync |
413 | 412 | ||
414 | 2: | 413 | 2: |