Re: [PATCH RFC -tip 0/4] v3 RCU cleanups and simplified preemptable RCU

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Paul E. McKenney
Date: Monday, August 24, 2009 - 8:59 am

On Mon, Aug 24, 2009 at 09:21:59AM +0200, Peter Zijlstra wrote:

Longer term, CONFIG_PREEMPT will imply CONFIG_TREE_PREEMPT_RCU and
!CONFIG_PREEMPT will imply CONFIG_TREE_RCU.  This will reduce the
number of combinations in need of testing.  So then the question is
"what does call_rcu_preempt() mean in !CONFIG_PREEMPT"?

If we permit things like mutex_lock(), we have the possibility of
indefinitely extended RCU read-side critical sections, which leads us to:


This is in fact what SRCU does.  Of course, it also requires
that the return value from rcu_preempt_read_lock() be passed into
rcu_preempt_read_unlock() (AKA srcu_read_lock() and srcu_read_unlock()),
in order to handle the case where there are a number of nested SRCU
read-side critical sections with different domains.  I suppose that we
could instead dynamically allocate space for this information, but...


The other thing in -tip for this purpose is synchronize_rcu_expedited().


I would very much appreciate that!!!  My next patch set (hopefully later
today Pacific time) will fix CPU hotplug for the single-node-tree case,
with full support later this week.

							Thanx, Paul
--
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH RFC -tip 0/4] v2 RCU cleanups and simplified preemp ..., Paul E. McKenney, (Mon Jul 27, 11:14 am)
[PATCH RFC -tip 1/4] v2 Move private definitions from incl ..., Paul E. McKenney, (Mon Jul 27, 11:16 am)
[PATCH RFC -tip 2/4] v2 Renamings to increase RCU clarity., Paul E. McKenney, (Mon Jul 27, 11:16 am)
[PATCH RFC -tip 3/4] v2 Consolidate sparse and lockdep dec ..., Paul E. McKenney, (Mon Jul 27, 11:16 am)
[PATCH RFC -tip 4/4] v2 Merge preemptable-RCU functionalit ..., Paul E. McKenney, (Mon Jul 27, 11:16 am)
[PATCH -tip] v3 Renamings to increase RCU clarity., Paul E. McKenney, (Sat Aug 22, 1:56 pm)
[PATCH -tip] v3 Use debugfs_remove_recursive() simplify code., Paul E. McKenney, (Sat Aug 22, 1:56 pm)
[PATCH -tip] v3 Remove CONFIG_PREEMPT_RCU, Paul E. McKenney, (Sat Aug 22, 1:56 pm)
[tip:core/rcu] rcu: Move private definitions from include/ ..., tip-bot for Paul E. ..., (Sun Aug 23, 2:01 am)
[tip:core/rcu] rcu: Renamings to increase RCU clarity, tip-bot for Paul E. ..., (Sun Aug 23, 2:01 am)
[tip:core/rcu] rcu: Consolidate sparse and lockdep declara ..., tip-bot for Paul E. ..., (Sun Aug 23, 2:02 am)
[tip:core/rcu] rcu: Fix online/offline indication for rcud ..., tip-bot for Paul E. ..., (Sun Aug 23, 2:02 am)
[tip:core/rcu] rcu: Merge per-RCU-flavor initialization in ..., tip-bot for Paul E. ..., (Sun Aug 23, 2:02 am)
[tip:core/rcu] rcu: Use debugfs_remove_recursive() simplif ..., tip-bot for Paul E. ..., (Sun Aug 23, 2:02 am)
[tip:core/rcu] rcu: Simplify rcu_pending()/rcu_check_callb ..., tip-bot for Paul E. ..., (Sun Aug 23, 2:02 am)
[tip:core/rcu] rcu: Merge preemptable-RCU functionality in ..., tip-bot for Paul E. ..., (Sun Aug 23, 2:03 am)
[tip:core/rcu] rcu: Remove CONFIG_PREEMPT_RCU, tip-bot for Paul E. ..., (Sun Aug 23, 2:03 am)
Re: [tip:core/rcu] rcu: Consolidate sparse and lockdep dec ..., Paul E. McKenney, (Sun Aug 23, 12:33 pm)
Re: [PATCH -tip] v3 Renamings to increase RCU clarity., Lai Jiangshan, (Mon Aug 24, 12:17 am)
Re: [PATCH -tip] v3 Renamings to increase RCU clarity., Paul E. McKenney, (Mon Aug 24, 8:36 am)
Re: [PATCH RFC -tip 0/4] v3 RCU cleanups and simplified pr ..., Paul E. McKenney, (Mon Aug 24, 8:59 am)