[tip/core/rcu,02/12] time: Export tick start/stop functions for rcutorture
diff mbox series

Message ID 20191003013903.13079-2-paulmck@kernel.org
State New
Headers show
  • NO_HZ fixes for v5.5
Related show

Commit Message

Paul E. McKenney Oct. 3, 2019, 1:38 a.m. UTC
From: "Paul E. McKenney" <paulmck@linux.ibm.com>

It turns out that rcutorture needs to ensure that the scheduling-clock
interrupt is enabled in CONFIG_NO_HZ_FULL kernels before starting on
CPU-bound in-kernel processing.  This commit therefore exports
tick_nohz_dep_set_task(), tick_nohz_dep_clear_task(), and
tick_nohz_full_setup() to GPL kernel modules.

Reported-by: kbuild test robot <lkp@intel.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.ibm.com>
 kernel/time/tick-sched.c | 4 ++++
 1 file changed, 4 insertions(+)

diff mbox series

diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c
index d1b0a84..1ffdb4b 100644
--- a/kernel/time/tick-sched.c
+++ b/kernel/time/tick-sched.c
@@ -172,6 +172,7 @@  static void tick_sched_handle(struct tick_sched *ts, struct pt_regs *regs)
 cpumask_var_t tick_nohz_full_mask;
 bool tick_nohz_full_running;
 static atomic_t tick_dep_mask;
 static bool check_tick_dependency(atomic_t *dep)
@@ -351,11 +352,13 @@  void tick_nohz_dep_set_task(struct task_struct *tsk, enum tick_dep_bits bit)
 	tick_nohz_dep_set_all(&tsk->tick_dep_mask, bit);
 void tick_nohz_dep_clear_task(struct task_struct *tsk, enum tick_dep_bits bit)
 	atomic_andnot(BIT(bit), &tsk->tick_dep_mask);
  * Set a per-taskgroup tick dependency. Posix CPU timers need this in order to elapse
@@ -404,6 +407,7 @@  void __init tick_nohz_full_setup(cpumask_var_t cpumask)
 	cpumask_copy(tick_nohz_full_mask, cpumask);
 	tick_nohz_full_running = true;
 static int tick_nohz_cpu_down(unsigned int cpu)