Messages in this thread | | | Date | Tue, 8 Sep 2009 15:53:49 -0700 | From | "Paul E. McKenney" <> | Subject | [PATCH tip/core/rcu 0/3] increase rcutorture intensity and fix a couple resulting bugs |
| |
This patch series increases the intensity of rcutorture testing for TREE_PREEMPT_RCU and provides fixes for a couple resulting bugs.
o Make rcutorture's RCU read-side critical sections occasionally spin for a few tens of milliseconds, which greatly increases the probability that they will be preempted and that quiescent states will be forced. Yes, this does uncover some bugs in TREE_PREEMPT_RCU (though TREE_RCU passes with flying colors).
o Fix a bug where rnp->gpnum was not being updated. This increases TREE_PREEMPT_RCU's reliability considerably, though bugs still remain.
o Make the initialization of multi-node trees of rcu_node structures unconditionally acquire rnp->lock. This simplifies the code a bit and will make it easier to allow grace-period initialization become preemptable, should this be needed.
Next steps include applying review comments, adding expedited grace periods, and chasing down remaining bugs. Longer term, RCU priority boosting.
b/kernel/rcutorture.c | 16 +++++++++------- b/kernel/rcutree.c | 7 +++++-- kernel/rcutree.c | 42 ++++++++++++------------------------------ 3 files changed, 26 insertions(+), 39 deletions(-)
| |