nohz_full: Add per-CPU idle-state tracking
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Fri, 21 Jun 2013 20:00:57 +0000 (13:00 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Mon, 19 Aug 2013 01:58:43 +0000 (18:58 -0700)
commiteb348b898290da242e46df75ab0b9772003e08b8
treef35ed4203ca3af3489e780430685a09bcb6a5f92
parent2333210b26cf7aaf48d71343029afb860103d9f9
nohz_full: Add per-CPU idle-state tracking

This commit adds the code that updates the rcu_dyntick structure's
new fields to track the per-CPU idle state based on interrupts and
transitions into and out of the idle loop (NMIs are ignored because NMI
handlers cannot cleanly read out the time anyway).  This code is similar
to the code that maintains RCU's idea of per-CPU idleness, but differs
in that RCU treats CPUs running in user mode as idle, where this new
code does not.

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Acked-by: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
kernel/rcutree.c
kernel/rcutree.h
kernel/rcutree_plugin.h