Since the enabling and disabling of IRQs within preempt_schedule_irq()
is contained in a need_resched() loop, we don't need the outer arch
code loop.

Signed-off-by: Valentin Schneider <valentin.schnei...@arm.com>
Cc: Yoshinori Sato <ys...@users.sourceforge.jp>
Cc: Rich Felker <dal...@libc.org>
Cc: linux...@vger.kernel.org
---
 arch/sh/kernel/entry-common.S | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/arch/sh/kernel/entry-common.S b/arch/sh/kernel/entry-common.S
index d31f66e82ce5..65a105de52a0 100644
--- a/arch/sh/kernel/entry-common.S
+++ b/arch/sh/kernel/entry-common.S
@@ -93,7 +93,7 @@ ENTRY(resume_kernel)
        mov.l   @(TI_PRE_COUNT,r8), r0  ! current_thread_info->preempt_count
        tst     r0, r0
        bf      noresched
-need_resched:
+
        mov.l   @(TI_FLAGS,r8), r0      ! current_thread_info->flags
        tst     #_TIF_NEED_RESCHED, r0  ! need_resched set?
        bt      noresched
@@ -107,8 +107,6 @@ need_resched:
        mov.l   1f, r0
        jsr     @r0                     ! call preempt_schedule_irq
         nop
-       bra     need_resched
-        nop
 
 noresched:
        bra     __restore_all
-- 
2.20.1

Reply via email to