On 2019-07-17 18:28:51 [-0400], Paul Thomas wrote: > On Wed, Jul 17, 2019 at 6:21 AM Thomas Gleixner <tglx@xxxxxxxxxxxxx> wrote: > > > > On Wed, 17 Jul 2019, Thomas Gleixner wrote: > > > On Wed, 17 Jul 2019, Thomas Gleixner wrote: > > > > > > The one below should fix it for real. > > > > That still has an issue which needs deeper investigation. Just keep the > > offending patch reverted for now. > > OK, sounds good. could you please try the following hunk? diff --git a/arch/arm64/kernel/entry.S b/arch/arm64/kernel/entry.S index 6808cd9526c67..63c6960262861 100644 --- a/arch/arm64/kernel/entry.S +++ b/arch/arm64/kernel/entry.S @@ -648,7 +648,8 @@ alternative_if ARM64_HAS_IRQ_PRIO_MASKING orr x24, x24, x0 alternative_else_nop_endif - cbnz x24, 2f // preempt count != 0 + cbz x24, 1f // (need_resched + count) == 0 + cbnz w24, 2f // count != 0 ldr w24, [tsk, #TSK_TI_PREEMPT_LAZY] // get preempt lazy count cbnz w24, 2f // preempt lazy count != 0 > -Paul Sebastian