mn10300: Fix crash just after starting userspace on !CONFIG_PREEMPT
[pandora-kernel.git] / arch / mn10300 / kernel / entry.S
index 222152a..177d61d 100644 (file)
@@ -171,10 +171,10 @@ ret_from_intr:
        mov     (REG_EPSW,fp),d0        # need to deliver signals before
                                        # returning to userspace
        and     EPSW_nSL,d0
-       beq     resume_kernel           # returning to supervisor mode
+       bne     resume_userspace        # returning to userspace
 
 #ifdef CONFIG_PREEMPT
-ENTRY(resume_kernel)
+resume_kernel:
        LOCAL_IRQ_DISABLE
        mov     (TI_preempt_count,a2),d0        # non-zero preempt_count ?
        cmp     0,d0
@@ -189,6 +189,8 @@ need_resched:
        bne     restore_all
        call    preempt_schedule_irq[],0
        jmp     need_resched
+#else
+       jmp     resume_kernel
 #endif