rcu: Avoid unnecessary self-wakeup of per-CPU kthreads
authorShaohua Li <shaohua.li@intel.com>
Thu, 16 Jun 2011 23:02:54 +0000 (16:02 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Thu, 29 Sep 2011 04:36:34 +0000 (21:36 -0700)
commit1eb521210a8c9823038abe4ddfe8c69e713ec17d
treef9fc70df7c25f80def12aeb231475405043eb1ed
parent1f288094807861ec1e48c428d2c49ccf7aaf3767
rcu: Avoid unnecessary self-wakeup of per-CPU kthreads

There are a number of cases where the RCU can find additional work
for the per-CPU kthread within the context of that per-CPU kthread.
In such cases, the per-CPU kthread is already running, so attempting
to wake itself up does nothing except waste CPU cycles.  This commit
therefore checks to see if it is in the per-CPU kthread context,
omitting the wakeup in this case.

Signed-off-by: Shaohua Li <shaohua.li@intel.com>
Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
kernel/rcutree_plugin.h