On Fri, Dec 27, 2024 at 12:30:49AM +0100, Frederic Weisbecker wrote:
> 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.
Tested-by: Paul E. McKenney <paulmck@kernel.org>
I expect that this result applies to v3 as well. ;-)
Thanx, Paul
> Changes since v1:
>
> _ Fix a build issue when CONFIG_HOTPLUG_CPU=n (folded #ifdeffery by Paul)
>
> _ Remove the unconditionaly base lock within the IPI when both nohz and
> high resolution are off. There is really nothing to do for the IPI in
> such case.
>
> 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 | 55 +++++++++++++++++++++++++++++++++---
> 5 files changed, 56 insertions(+), 46 deletions(-)
>
> --
> 2.46.0
>