rcu: Add last-CPU to GP-kthread starvation messages
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Tue, 18 Jul 2017 20:52:18 +0000 (13:52 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Mon, 24 Jul 2017 23:04:18 +0000 (16:04 -0700)
This commit augments the grace-period-kthread starvation debugging
messages by adding the last CPU that ran the kthread.

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
kernel/rcu/tree.c

index 51d4c3acf32d40dff46610919602909f3372fd27..48c6ab5ca164f454bd69ec83ab3931874b2e8e80 100644 (file)
@@ -1358,12 +1358,13 @@ static void rcu_check_gp_kthread_starvation(struct rcu_state *rsp)
        j = jiffies;
        gpa = READ_ONCE(rsp->gp_activity);
        if (j - gpa > 2 * HZ) {
-               pr_err("%s kthread starved for %ld jiffies! g%lu c%lu f%#x %s(%d) ->state=%#lx\n",
+               pr_err("%s kthread starved for %ld jiffies! g%lu c%lu f%#x %s(%d) ->state=%#lx ->cpu=%d\n",
                       rsp->name, j - gpa,
                       rsp->gpnum, rsp->completed,
                       rsp->gp_flags,
                       gp_state_getname(rsp->gp_state), rsp->gp_state,
-                      rsp->gp_kthread ? rsp->gp_kthread->state : ~0);
+                      rsp->gp_kthread ? rsp->gp_kthread->state : ~0,
+                      rsp->gp_kthread ? task_cpu(rsp->gp_kthread) : -1);
                if (rsp->gp_kthread) {
                        sched_show_task(rsp->gp_kthread);
                        wake_up_process(rsp->gp_kthread);