aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/mn10300/kernel/entry.S6
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/mn10300/kernel/entry.S b/arch/mn10300/kernel/entry.S
index 222152a3f751..177d61de51c9 100644
--- a/arch/mn10300/kernel/entry.S
+++ b/arch/mn10300/kernel/entry.S
@@ -171,10 +171,10 @@ ret_from_intr:
171 mov (REG_EPSW,fp),d0 # need to deliver signals before 171 mov (REG_EPSW,fp),d0 # need to deliver signals before
172 # returning to userspace 172 # returning to userspace
173 and EPSW_nSL,d0 173 and EPSW_nSL,d0
174 beq resume_kernel # returning to supervisor mode 174 bne resume_userspace # returning to userspace
175 175
176#ifdef CONFIG_PREEMPT 176#ifdef CONFIG_PREEMPT
177ENTRY(resume_kernel) 177resume_kernel:
178 LOCAL_IRQ_DISABLE 178 LOCAL_IRQ_DISABLE
179 mov (TI_preempt_count,a2),d0 # non-zero preempt_count ? 179 mov (TI_preempt_count,a2),d0 # non-zero preempt_count ?
180 cmp 0,d0 180 cmp 0,d0
@@ -189,6 +189,8 @@ need_resched:
189 bne restore_all 189 bne restore_all
190 call preempt_schedule_irq[],0 190 call preempt_schedule_irq[],0
191 jmp need_resched 191 jmp need_resched
192#else
193 jmp resume_kernel
192#endif 194#endif
193 195
194 196