rk: revert 20f3d0b+v3.0.66 to v3.0
[firefly-linux-kernel-4.4.55.git] / arch / sparc / kernel / rtrap_64.S
index 9171fc238def230e6e14e92852f2ee2d9b33a8f2..77f1b95e0806bb92dc19fd421acd6f159e7dfab0 100644 (file)
 
                .text
                .align                  32
+__handle_softirq:
+               call                    do_softirq
+                nop
+               ba,a,pt                 %xcc, __handle_softirq_continue
+                nop
 __handle_preemption:
                call                    schedule
                 wrpr                   %g0, RTRAP_PSTATE, %pstate
@@ -84,7 +89,9 @@ rtrap:
                cmp                     %l1, 0
 
                /* mm/ultra.S:xcall_report_regs KNOWS about this load. */
+               bne,pn                  %icc, __handle_softirq
                 ldx                    [%sp + PTREGS_OFF + PT_V9_TSTATE], %l1
+__handle_softirq_continue:
 rtrap_xcall:
                sethi                   %hi(0xf << 20), %l4
                and                     %l1, %l4, %l4