[PATCH 0/4] rcu: Fix PF_IDLE related issues v3

From: Frederic Weisbecker
Date: Fri Oct 27 2023 - 10:41:05 EST


Hi,

The modification of PF_IDLE semantics lately to fix a bug in rcutiny
eventually introduced new bugs in RCU-tasks. This v3 carries the
following changes:

* Use per_cpu_ptr() to correctly handle the remote CPU on [1/4] (Thanks Zqiang)

* Test is_idle_task() even for non-idle task (idle injection) [2/4] (Thanks Peterz)

* No need to use WRITE_ONCE() / READ_ONCE() on PF_IDLE modification [4/4]
(Thanks Peterz)

git://git.kernel.org/pub/scm/linux/kernel/git/frederic/linux-dynticks.git
rcu/tasks-dev

HEAD: afb666ef0fcde0b2ec30b007b0b30e5622ea30f0

Thanks,
Frederic
---

Frederic Weisbecker (4):
rcu: Introduce rcu_cpu_online()
rcu/tasks: Handle new PF_IDLE semantics
rcu/tasks-trace: Handle new PF_IDLE semantics
sched: Exclude CPU boot code from PF_IDLE area


kernel/cpu.c | 4 ++++
kernel/rcu/rcu.h | 2 ++
kernel/rcu/tasks.h | 32 +++++++++++++++++++++++++++++---
kernel/rcu/tree.c | 7 +++++++
kernel/sched/idle.c | 1 -
5 files changed, 42 insertions(+), 4 deletions(-)