diff options
Diffstat (limited to 'arch/sh/kernel/entry-common.S')
-rw-r--r-- | arch/sh/kernel/entry-common.S | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/sh/kernel/entry-common.S b/arch/sh/kernel/entry-common.S index 700477601c6f..68d9223b145e 100644 --- a/arch/sh/kernel/entry-common.S +++ b/arch/sh/kernel/entry-common.S | |||
@@ -98,8 +98,9 @@ need_resched: | |||
98 | 98 | ||
99 | mov #OFF_SR, r0 | 99 | mov #OFF_SR, r0 |
100 | mov.l @(r0,r15), r0 ! get status register | 100 | mov.l @(r0,r15), r0 ! get status register |
101 | and #0xf0, r0 ! interrupts off (exception path)? | 101 | shlr r0 |
102 | cmp/eq #0xf0, r0 | 102 | and #(0xf0>>1), r0 ! interrupts off (exception path)? |
103 | cmp/eq #(0xf0>>1), r0 | ||
103 | bt noresched | 104 | bt noresched |
104 | mov.l 3f, r0 | 105 | mov.l 3f, r0 |
105 | jsr @r0 ! call preempt_schedule_irq | 106 | jsr @r0 ! call preempt_schedule_irq |