patch-2.4.0-test3 linux/arch/sparc64/mm/ultra.S
Next file: linux/arch/sparc64/prom/misc.c
Previous file: linux/arch/sparc64/mm/modutil.c
Back to the patch index
Back to the overall index
- Lines: 25
- Date:
Sun Jul 9 22:30:37 2000
- Orig file:
v2.4.0-test2/linux/arch/sparc64/mm/ultra.S
- Orig date:
Tue May 23 15:31:34 2000
diff -u --recursive --new-file v2.4.0-test2/linux/arch/sparc64/mm/ultra.S linux/arch/sparc64/mm/ultra.S
@@ -432,4 +432,24 @@
nop
flush %g6
retry
+
+ .globl xcall_call_function
+xcall_call_function:
+ mov TLB_TAG_ACCESS, %g5 ! wheee...
+ stxa %g1, [%g5] ASI_IMMU ! save call_data here for a bit
+ membar #Sync
+ rdpr %pstate, %g2
+ wrpr %g2, PSTATE_IG | PSTATE_AG, %pstate
+ mov TLB_TAG_ACCESS, %g2
+ ldxa [%g2] ASI_IMMU, %g5
+ rdpr %pil, %g2
+ wrpr %g0, 15, %pil
+ sethi %hi(109f), %g7
+ b,pt %xcc, etrap_irq
+109: or %g7, %lo(109b), %g7
+ call smp_call_function_client
+ mov %l5, %o0
+ b,pt %xcc, rtrap
+ clr %l6
+
#endif /* CONFIG_SMP */
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)