linux/include/trace
Paul E. McKenney 486e259340 rcu: Avoid waking up CPUs having only kfree_rcu() callbacks
When CONFIG_RCU_FAST_NO_HZ is enabled, RCU will allow a given CPU to
enter dyntick-idle mode even if it still has RCU callbacks queued.
RCU avoids system hangs in this case by scheduling a timer for several
jiffies in the future.  However, if all of the callbacks on that CPU
are from kfree_rcu(), there is no reason to wake the CPU up, as it is
not a problem to defer freeing of memory.

This commit therefore tracks the number of callbacks on a given CPU
that are from kfree_rcu(), and avoids scheduling the timer if all of
a given CPU's callbacks are from kfree_rcu().

Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
2012-02-21 09:03:25 -08:00
..
events rcu: Avoid waking up CPUs having only kfree_rcu() callbacks 2012-02-21 09:03:25 -08:00
define_trace.h Revert "tracing: Include module.h in define_trace.h" 2011-10-31 19:32:35 -04:00
ftrace.h perf: Fix counter of ftrace events 2011-10-04 11:07:54 +02:00
syscall.h tracing: Use a global field list for all syscall exit events 2010-06-28 17:12:44 -04:00