hc
2023-12-11 6778948f9de86c3cfaf36725a7c87dcff9ba247f
kernel/arch/arm64/kernel/entry.S
....@@ -626,18 +626,9 @@
626626 mrs x0, daif
627627 orr x24, x24, x0
628628 alternative_else_nop_endif
629
-
630
- cbz x24, 1f // (need_resched + count) == 0
631
- cbnz w24, 2f // count != 0
632
-
633
- ldr w24, [tsk, #TSK_TI_PREEMPT_LAZY] // get preempt lazy count
634
- cbnz w24, 2f // preempt lazy count != 0
635
-
636
- ldr x0, [tsk, #TSK_TI_FLAGS] // get flags
637
- tbz x0, #TIF_NEED_RESCHED_LAZY, 2f // needs rescheduling?
629
+ cbnz x24, 1f // preempt count != 0 || NMI return path
630
+ bl arm64_preempt_schedule_irq // irq en/disable is done inside
638631 1:
639
- bl arm64_preempt_schedule_irq // irq en/disable is done inside
640
-2:
641632 #endif
642633
643634 mov x0, sp