patch-2.4.25 linux-2.4.25/arch/ppc64/kernel/misc.S
Next file: linux-2.4.25/arch/ppc64/kernel/mk_defs.c
Previous file: linux-2.4.25/arch/ppc64/kernel/mf_proc.c
Back to the patch index
Back to the overall index
- Lines: 54
- Date:
2004-02-18 05:36:30.000000000 -0800
- Orig file:
linux-2.4.24/arch/ppc64/kernel/misc.S
- Orig date:
2003-08-25 04:44:40.000000000 -0700
diff -urN linux-2.4.24/arch/ppc64/kernel/misc.S linux-2.4.25/arch/ppc64/kernel/misc.S
@@ -69,16 +69,14 @@
_GLOBAL(__no_use_save_flags)
mfspr r4,SPRG3
lbz r3,PACAPROCENABLED(r4)
+ /* shift into position of MSR.EE */
+ sldi r3,r3,15
blr
-/* void __no_use_restore_flags(unsigned long flags) */
+/* void __no_use_restore_flags(unsigned long flags) */
_GLOBAL(__no_use_restore_flags)
-/*
- * Just set/clear the MSR_EE bit through restore/flags but do not
- * change anything else. This is needed by the RT system and makes
- * sense anyway.
- * -- Cort
- */
+ /* shift from position of MSR.EE */
+ srdi r3,r3,15
mfspr r6,SPRG3
lbz r5,PACAPROCENABLED(r6)
/* Check if things are setup the way we want _already_. */
@@ -104,6 +102,8 @@
lbz r3,PACAPROCENABLED(r5)
li r4,0
stb r4,PACAPROCENABLED(r5)
+ /* shift into position of MSR.EE */
+ sldi r3,r3,15
blr /* Done */
_GLOBAL(__no_use_sti)
@@ -505,6 +505,9 @@
* r3 = data offset (not changed)
*/
_GLOBAL(do_cpu_ftr_fixups)
+/* Dummy feature section to make sure section exists */
+BEGIN_FTR_SECTION
+END_FTR_SECTION(0,0)
/* Get CPU 0 features */
LOADADDR(r6,cur_cpu_spec)
sub r6,r6,r3
@@ -578,9 +581,10 @@
bnelr /* return if parent */
li r0,0 /* clear out p->thread.regs */
- std r0,THREAD+PT_REGS(r13) /* since we don't have user ctx */
+ ld r7,PACACURRENT(r13)
+ std r0,THREAD+PT_REGS(r7) /* since we don't have user ctx */
li r0,RUN_FLAG /* Run light on */
- std r0,THREAD+THREAD_FLAGS(r13)
+ std r0,THREAD+THREAD_FLAGS(r7)
ld r2,8(r6)
ld r6,0(r6)
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)