[PATCH tip/core/rcu 0/14] NOCBs and NO_HZ_FULL changes for 3.18
From: Paul E. McKenney
Date: Thu Aug 28 2014 - 14:38:07 EST
Hello!
This series includes changes affecting NOCBs and NO_HZ_FULL operation.
1. Fix for bug in earlier patch (b58cc46c5f6b, Don't offload
callbacks unless specifically requested) that properly handles
early-boot callbacks. (This bug affects unusual configurations,
see commit log for more information.)
2. Properly check the return value of zalloc_cpumask_var(), courtesy
of Pranith Kumar.
3. Use bool constant for __call_rcu_nocb() return value, courtesy
of Pranith Kumar.
4. Use bool constant for rcu_nocb_adopt_orphan_cbs() return value,
courtesy of Pranith Kumar.
5. Use bool constant for __call_rcu_nocb() return value in the case
where callbacks are not offloaded, courtesy of Pranith Kumar.
6. Use bool constant for rcu_nocb_adopt_orphan_cbs() return value in
the case where callbacks are not offloaded, courtesy of Pranith
Kumar.
7. Aggregate RCU's kthread creation so that it is all done from a
single early_initcall() function.
8. Create rcuo kthreads only for CPUs that actually have come online
at least once since boot.
9. Check have_rcu_nocb_mask instead of for a NULL rcu_nocb_mask,
given that this latter is not necessarily a pointer, courtesy
of Pranith Kumar.
10. Eliminate redundant rcu_sysidle_state variable.
11. Don't bother tracking sysidle state if there are no nohz_full=
CPUs in the system.
12. Avoid misordering in __call_rcu_nocb_enqueue().
13. Handle NOCB callbacks from irq-disabled idle code.
14. Avoid misordering in nocb_leader_wait().
Thanx, Paul
------------------------------------------------------------------------
b/include/linux/rcupdate.h | 8 +
b/init/Kconfig | 4
b/init/main.c | 1
b/kernel/rcu/tree.c | 4
b/kernel/rcu/tree.h | 1
b/kernel/rcu/tree_plugin.h | 92 +++++++++++++++-------
kernel/rcu/tree.c | 3
kernel/rcu/tree.h | 6 +
kernel/rcu/tree_plugin.h | 182 ++++++++++++++++++++++++++++++++-------------
9 files changed, 216 insertions(+), 85 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/