From: Paul E. McKenney on
Hello!

This patchset includes three fixes for problems in tip/core/rcu:

1. Convert grace-period acceleration for the last non-dynticked
RCU to a trivial state machine in order to avoid illegally
invoking __rcu_process_callbacks() with irqs disabled.

2. Make the non-PROVE_RCU variant of rcu_read_lock_sched_held()
understand that preemption is disabled during boot before
the scheduler starts. (The earlier patch did the PROVE_RCU
variant, but missed the non-PROVE_RCU variant.)

3. Add some irq-disabling to the grace-period acceleration
in #1 above and also enforce a hold-off period so that the
last non-dynticked CPU doesn't softirq itself to death when
there are multiple RCU callbacks in flight.

Thanx, Paul

b/include/linux/rcupdate.h | 3 -
b/kernel/rcutree.c | 3 +
b/kernel/rcutree.h | 1
b/kernel/rcutree_plugin.h | 74 ++++++++++++++++++++++++++++++++-------------
kernel/rcutree_plugin.h | 11 +++++-
5 files changed, 67 insertions(+), 25 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/