hc
2023-12-11 6778948f9de86c3cfaf36725a7c87dcff9ba247f
kernel/arch/powerpc/kernel/syscall_64.c
....@@ -193,7 +193,7 @@
193193 ti_flags = READ_ONCE(*ti_flagsp);
194194 while (unlikely(ti_flags & (_TIF_USER_WORK_MASK & ~_TIF_RESTORE_TM))) {
195195 local_irq_enable();
196
- if (ti_flags & _TIF_NEED_RESCHED_MASK) {
196
+ if (ti_flags & _TIF_NEED_RESCHED) {
197197 schedule();
198198 } else {
199199 /*
....@@ -277,7 +277,7 @@
277277 ti_flags = READ_ONCE(*ti_flagsp);
278278 while (unlikely(ti_flags & (_TIF_USER_WORK_MASK & ~_TIF_RESTORE_TM))) {
279279 local_irq_enable(); /* returning to user: may enable */
280
- if (ti_flags & _TIF_NEED_RESCHED_MASK) {
280
+ if (ti_flags & _TIF_NEED_RESCHED) {
281281 schedule();
282282 } else {
283283 if (ti_flags & _TIF_SIGPENDING)
....@@ -361,14 +361,10 @@
361361 /* Returning to a kernel context with local irqs enabled. */
362362 WARN_ON_ONCE(!(regs->msr & MSR_EE));
363363 again:
364
- if (IS_ENABLED(CONFIG_PREEMPTION)) {
364
+ if (IS_ENABLED(CONFIG_PREEMPT)) {
365365 /* Return to preemptible kernel context */
366366 if (unlikely(*ti_flagsp & _TIF_NEED_RESCHED)) {
367367 if (preempt_count() == 0)
368
- preempt_schedule_irq();
369
- } else if (unlikely(*ti_flagsp & _TIF_NEED_RESCHED_LAZY)) {
370
- if ((preempt_count() == 0) &&
371
- (current_thread_info()->preempt_lazy_count == 0))
372368 preempt_schedule_irq();
373369 }
374370 }