diff options
Diffstat (limited to 'arch/sparc64/mm/ultra.S')
-rw-r--r-- | arch/sparc64/mm/ultra.S | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/sparc64/mm/ultra.S b/arch/sparc64/mm/ultra.S index 4c8ca131ffaf..77ba88597cc5 100644 --- a/arch/sparc64/mm/ultra.S +++ b/arch/sparc64/mm/ultra.S | |||
@@ -531,6 +531,13 @@ xcall_fetch_glob_regs: | |||
531 | stx %g7, [%g1 + GR_SNAP_TNPC] | 531 | stx %g7, [%g1 + GR_SNAP_TNPC] |
532 | stx %o7, [%g1 + GR_SNAP_O7] | 532 | stx %o7, [%g1 + GR_SNAP_O7] |
533 | stx %i7, [%g1 + GR_SNAP_I7] | 533 | stx %i7, [%g1 + GR_SNAP_I7] |
534 | /* Don't try this at home kids... */ | ||
535 | rdpr %cwp, %g2 | ||
536 | sub %g2, 1, %g7 | ||
537 | wrpr %g7, %cwp | ||
538 | mov %i7, %g7 | ||
539 | wrpr %g2, %cwp | ||
540 | stx %g7, [%g1 + GR_SNAP_RPC] | ||
534 | sethi %hi(trap_block), %g7 | 541 | sethi %hi(trap_block), %g7 |
535 | or %g7, %lo(trap_block), %g7 | 542 | or %g7, %lo(trap_block), %g7 |
536 | sllx %g2, TRAP_BLOCK_SZ_SHIFT, %g2 | 543 | sllx %g2, TRAP_BLOCK_SZ_SHIFT, %g2 |