summaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorZqiang <qiang1.zhang@intel.com>2022-12-20 22:16:25 +0800
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2023-05-11 23:03:06 +0900
commitae6803b66365e00739b3066da8f0f6356e50241f (patch)
tree7f16680af5a0b3eff9ab57f2920f9e41f4095be1 /kernel
parent05f437eba011a140191b2064561abc45703f8049 (diff)
downloadlinux-stable-ae6803b66365e00739b3066da8f0f6356e50241f.tar.gz
linux-stable-ae6803b66365e00739b3066da8f0f6356e50241f.tar.bz2
linux-stable-ae6803b66365e00739b3066da8f0f6356e50241f.zip
rcu: Fix missing TICK_DEP_MASK_RCU_EXP dependency check
[ Upstream commit db7b464df9d820186e98a65aa6a10f0d51fbf8ce ] This commit adds checks for the TICK_DEP_MASK_RCU_EXP bit, thus enabling RCU expedited grace periods to actually force-enable scheduling-clock interrupts on holdout CPUs. Fixes: df1e849ae455 ("rcu: Enable tick for nohz_full CPUs slow to provide expedited QS") Signed-off-by: Zqiang <qiang1.zhang@intel.com> Cc: Steven Rostedt <rostedt@goodmis.org> Cc: Masami Hiramatsu <mhiramat@kernel.org> Cc: Frederic Weisbecker <fweisbec@gmail.com> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@kernel.org> Cc: Anna-Maria Behnsen <anna-maria@linutronix.de> Acked-by: Frederic Weisbecker <frederic@kernel.org> Signed-off-by: Paul E. McKenney <paulmck@kernel.org> Signed-off-by: Joel Fernandes (Google) <joel@joelfernandes.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/time/tick-sched.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c
index 68d81a4283c8..a46506f7ec6d 100644
--- a/kernel/time/tick-sched.c
+++ b/kernel/time/tick-sched.c
@@ -281,6 +281,11 @@ static bool check_tick_dependency(atomic_t *dep)
return true;
}
+ if (val & TICK_DEP_MASK_RCU_EXP) {
+ trace_tick_stop(0, TICK_DEP_MASK_RCU_EXP);
+ return true;
+ }
+
return false;
}