Prev: [PATCH tip/core/rcu 1/3] rcu: fixes for accelerated grace periods for last non-dynticked CPU
Next: [PATCH tip/core/rcu 2/3] rcu: Make non-RCU_PROVE_LOCKING rcu_read_lock_sched_held() understand boot
From: Paul E. McKenney on 26 Feb 2010 19:40 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/ |