[PATCH 0/3 v3] hrtimer: Fix timers queued locally from offline CPUs

Frederic Weisbecker
2024-12-31T17:07:24Z

5c0930ccaad5 ("hrtimers: Push pending hrtimers away from outgoing CPU earlier")
was introduced to fix stalls with scheduler bandwidth timers getting
migrated while some kthreads handling CPU hotplug rely on bandwidth.

However this has introduced several other issues which used to be
confined to RCU. But not anymore as it is spreading to hotplug code
itself (https://lore.kernel.org/all/20241213203739.1519801-1-usamaarif642@gmail.com/)

Instead of introducing yet another new hackery, fix the problem in
hrtimers for everyone.

Changes since v2:

* Fix and add some tags
* Fix extra newlines

Frederic Weisbecker (3):
hrtimers: Force migrate away hrtimers queued after
CPUHP_AP_HRTIMERS_DYING
rcu: Remove swake_up_one_online() bandaid
Revert "rcu/nocb: Fix rcuog wake-up from offline softirq"

include/linux/hrtimer_defs.h | 1 +
kernel/rcu/tree.c | 34 +----------------------
kernel/rcu/tree_exp.h | 2 +-
kernel/rcu/tree_nocb.h | 10 ++-----
kernel/time/hrtimer.c | 53 +++++++++++++++++++++++++++++++++---
5 files changed, 54 insertions(+), 46 deletions(-)

--
2.46.0