]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - arch/ia64/kernel/entry.S
ia64: Use preempt_schedule_irq
[karo-tx-linux.git] / arch / ia64 / kernel / entry.S
index 7a53530f22c219eb877d81d2392a85722e9503dc..ddea607f948aaa61932b022a14a390df9e816f8c 100644 (file)
@@ -1169,21 +1169,8 @@ skip_rbs_switch:
 .work_pending:
        tbit.z p6,p0=r31,TIF_NEED_RESCHED       // is resched not needed?
 (p6)   br.cond.sptk.few .notify
-#ifdef CONFIG_PREEMPT
-(pKStk) dep r21=-1,r0,PREEMPT_ACTIVE_BIT,1
-       ;;
-(pKStk) st4 [r20]=r21
-#endif
-       SSM_PSR_I(p0, p6, r2)   // enable interrupts
-       br.call.spnt.many rp=schedule
+       br.call.spnt.many rp=preempt_schedule_irq
 .ret9: cmp.eq p6,p0=r0,r0      // p6 <- 1 (re-check)
-       RSM_PSR_I(p0, r2, r20)  // disable interrupts
-       ;;
-#ifdef CONFIG_PREEMPT
-(pKStk)        adds r20=TI_PRE_COUNT+IA64_TASK_SIZE,r13
-       ;;
-(pKStk)        st4 [r20]=r0            // preempt_count() <- 0
-#endif
 (pLvSys)br.cond.sptk.few  __paravirt_pending_syscall_end
        br.cond.sptk.many .work_processed_kernel