diff options
author | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2016-02-17 14:54:28 -0500 |
---|---|---|
committer | Paul E. McKenney <paulmck@linux.vnet.ibm.com> | 2016-03-31 16:36:37 -0400 |
commit | 5dffed1e5721f6deae4fd67d32386ef037c5fc56 (patch) | |
tree | 58b771abe1f2344ac4a97454b4d405d8f7a685d7 | |
parent | 293e2421fe25839500207eda123cc4475f8d17b8 (diff) |
rcu: Dump ftrace buffer when kicking grace-period kthread
If it is necessary to kick the grace-period kthread, that is a good
time to dump the trace buffer in order to learn why kicking was needed.
This commit therefore does the dump.
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
-rw-r--r-- | kernel/rcu/tree.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c index a739292be605..86edb92276d3 100644 --- a/kernel/rcu/tree.c +++ b/kernel/rcu/tree.c | |||
@@ -1266,6 +1266,7 @@ static void rcu_stall_kick_kthreads(struct rcu_state *rsp) | |||
1266 | j = READ_ONCE(rsp->jiffies_kick_kthreads); | 1266 | j = READ_ONCE(rsp->jiffies_kick_kthreads); |
1267 | if (time_after(jiffies, j) && rsp->gp_kthread) { | 1267 | if (time_after(jiffies, j) && rsp->gp_kthread) { |
1268 | WARN_ONCE(1, "Kicking %s grace-period kthread\n", rsp->name); | 1268 | WARN_ONCE(1, "Kicking %s grace-period kthread\n", rsp->name); |
1269 | rcu_ftrace_dump(DUMP_ALL); | ||
1269 | wake_up_process(rsp->gp_kthread); | 1270 | wake_up_process(rsp->gp_kthread); |
1270 | WRITE_ONCE(rsp->jiffies_kick_kthreads, j + HZ); | 1271 | WRITE_ONCE(rsp->jiffies_kick_kthreads, j + HZ); |
1271 | } | 1272 | } |