patch-2.4.7 linux/arch/mips64/kernel/scall_o32.S

Next file: linux/arch/mips64/kernel/setup.c
Previous file: linux/arch/mips64/kernel/scall_64.S
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.4.6/linux/arch/mips64/kernel/scall_o32.S linux/arch/mips64/kernel/scall_o32.S
@@ -76,8 +76,14 @@
 1:	sd	v0, PT_R2(sp)		# result
 	
 FEXPORT(o32_ret_from_sys_call)
-	lw	t0, irq_stat		# softirq_active
-	lw	t1, irq_stat+4		# softirq_mask.  unused delay slot
+	la	t1, irq_stat		# softirq_active
+#ifdef CONFIG_SMP
+	lwu	t0, TASK_PROCESSOR($28)
+	dsll	t0, t0, 5
+	daddu	t1, t0
+#endif
+	lw	t0, 0(t1)		# softirq_active
+	lw	t1, 4(t1)		# softirq_mask.  unused delay slot
 	and	t0, t1
 	bnez	t0, o32_handle_softirq
 

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)