mbox series

[GIT,PULL] RCU regression fix for v6.8

Message ID 20240124224319.GA36728@neeraj.linux (mailing list archive)
State Accepted
Commit 3cb9871f8160a4789189701eda5af582f3414e55
Headers show
Series [GIT,PULL] RCU regression fix for v6.8 | expand

Pull-request

https://github.com/neeraju/linux.git tags/urgent-rcu.2024.01.24a

Message

Neeraj upadhyay Jan. 24, 2024, 10:43 p.m. UTC
Hi Linus,

The following changes since commit 6613476e225e090cc9aad49be7fa504e290dd33d:

  Linux 6.8-rc1 (2024-01-21 14:11:32 -0800)

are available in the Git repository at:

  https://github.com/neeraju/linux.git tags/urgent-rcu.2024.01.24a

for you to fetch changes up to e787644caf7628ad3269c1fbd321c3255cf51710:

  rcu: Defer RCU kthreads wakeup when CPU is dying (2024-01-24 22:46:17 +0530)

----------------------------------------------------------------
Urgent RCU pull request for v6.8

This commit fixes RCU grace period stalls, which are observed when
an outgoing CPU's quiescent state reporting results in wakeup of
one of the grace period kthreads, to complete the grace period. If
those kthreads have SCHED_FIFO policy, the wake up can indirectly
arm the RT bandwith timer to the local offline CPU. Earlier migration
of the hrtimers from the CPU introduced in commit 5c0930ccaad5
("hrtimers: Push pending hrtimers away from outgoing CPU earlier")
results in this timer getting ignored. If the RCU grace period
kthreads are waiting for RT bandwidth to be available, they may
never be actually scheduled, resulting in RCU stall warnings.

----------------------------------------------------------------
Frederic Weisbecker (1):
      rcu: Defer RCU kthreads wakeup when CPU is dying

 kernel/rcu/tree.c     | 34 +++++++++++++++++++++++++++++++++-
 kernel/rcu/tree_exp.h |  3 +--
 2 files changed, 34 insertions(+), 3 deletions(-)

Comments

pr-tracker-bot@kernel.org Jan. 25, 2024, 8 p.m. UTC | #1
The pull request you sent on Thu, 25 Jan 2024 04:13:19 +0530:

> https://github.com/neeraju/linux.git tags/urgent-rcu.2024.01.24a

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/3cb9871f8160a4789189701eda5af582f3414e55

Thank you!