aboutsummaryrefslogtreecommitdiffstats
path: root/arch/sparc64/mm/ultra.S
diff options
context:
space:
mode:
authorDavid S. Miller <davem@sunset.davemloft.net>2006-02-06 01:27:28 -0500
committerDavid S. Miller <davem@sunset.davemloft.net>2006-03-20 04:11:50 -0500
commit45fec05f805a113372c9a7ff4c653ac749f6921c (patch)
tree36fc99d10656775acb8e9442719447d64ac30a03 /arch/sparc64/mm/ultra.S
parent314981ac7177a933319e3c071a5cf0a579205e6e (diff)
[SPARC64]: Sanitize %pstate writes for sun4v.
If we're just switching between different alternate global sets, nop it out on sun4v. Also, get rid of all of the alternate global save/restore in the OBP CIF trampoline code. Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc64/mm/ultra.S')
-rw-r--r--arch/sparc64/mm/ultra.S18
1 files changed, 16 insertions, 2 deletions
diff --git a/arch/sparc64/mm/ultra.S b/arch/sparc64/mm/ultra.S
index cac58d66fca9..5dd86ad0d29f 100644
--- a/arch/sparc64/mm/ultra.S
+++ b/arch/sparc64/mm/ultra.S
@@ -444,8 +444,15 @@ xcall_flush_tlb_kernel_range: /* 22 insns */
444 */ 444 */
445 .globl xcall_sync_tick 445 .globl xcall_sync_tick
446xcall_sync_tick: 446xcall_sync_tick:
447 rdpr %pstate, %g2 447
448661: rdpr %pstate, %g2
448 wrpr %g2, PSTATE_IG | PSTATE_AG, %pstate 449 wrpr %g2, PSTATE_IG | PSTATE_AG, %pstate
450 .section .gl_2insn_patch, "ax"
451 .word 661b
452 nop
453 nop
454 .previous
455
449 rdpr %pil, %g2 456 rdpr %pil, %g2
450 wrpr %g0, 15, %pil 457 wrpr %g0, 15, %pil
451 sethi %hi(109f), %g7 458 sethi %hi(109f), %g7
@@ -468,8 +475,15 @@ xcall_sync_tick:
468 */ 475 */
469 .globl xcall_report_regs 476 .globl xcall_report_regs
470xcall_report_regs: 477xcall_report_regs:
471 rdpr %pstate, %g2 478
479661: rdpr %pstate, %g2
472 wrpr %g2, PSTATE_IG | PSTATE_AG, %pstate 480 wrpr %g2, PSTATE_IG | PSTATE_AG, %pstate
481 .section .gl_2insn_patch, "ax"
482 .word 661b
483 nop
484 nop
485 .previous
486
473 rdpr %pil, %g2 487 rdpr %pil, %g2
474 wrpr %g0, 15, %pil 488 wrpr %g0, 15, %pil
475 sethi %hi(109f), %g7 489 sethi %hi(109f), %g7