rcu/nohz: Turn off tick for offloaded CPUs
authorPaul E. McKenney <paulmck@linux.ibm.com>
Mon, 12 Aug 2019 17:28:08 +0000 (10:28 -0700)
committerPaul E. McKenney <paulmck@linux.ibm.com>
Tue, 13 Aug 2019 21:35:49 +0000 (14:35 -0700)
commit0bd55c693617cd2488378d011b66b92e1dd66ecf
tree82c4f4c0b338421be2ad2835e9541fb97281936d
parent969974e5c51e717fc9070b00eb2f61ae589ed13d
rcu/nohz: Turn off tick for offloaded CPUs

Historically, no-CBs CPUs allowed the scheduler-clock tick to be
unconditionally disabled on any transition to idle or nohz_full userspace
execution (see the rcu_needs_cpu() implementations).  Unfortunately,
the checks used by rcu_needs_cpu() are defeated now that no-CBs CPUs
use ->cblist, which might make users of battery-powered devices rather
unhappy.  This commit therefore adds explicit rcu_segcblist_is_offloaded()
checks to return to the historical energy-efficient semantics.

Signed-off-by: Paul E. McKenney <paulmck@linux.ibm.com>
kernel/rcu/tree_plugin.h