Messages in this thread | | | Date | Tue, 10 Apr 2012 13:15:12 -0700 | From | "Paul E. McKenney" <> | Subject | Re: [RFC PATCH 5/5 single-thread-version] implement per-domain single-thread state machine call_srcu() |
| |
On Wed, Mar 14, 2012 at 03:47:06PM +0800, Lai Jiangshan wrote: > On 03/13/2012 02:03 AM, Paul E. McKenney wrote: > > >> > >> In mb()-based srcu, synchronize_srcu() is very fast, > >> synchronize_srcu_expedited() makes less sense than before. > > > > I am worried about expedited callbacks getting backed up behind > > non-expedited callbacks (especially given Peter's point about per-VMA > > SRCU callbacks) and behind other workqueue uses. > > > >> But when wait_srcu_gp() is move back here, I will use > >> a bigger "trycount" for synchronize_srcu_expedited(). > >> > >> And any problem for srcu_advance_batches()? > > > > I prefer the use of "return" that you and Peter discussed later. > > > > What sort of testing are you doing? > > rcutorture in my box for several days on my daily used machine.
OK, good!
> What would you prefer for next round of patches, single-thread or per-cpu? > I will send them soon. > (per-cpu approach will be also "batches, in-sleepable, reuse rcu_head"....) > > I prefer the single-thread approach until high-callback-rate-per-domain-era > comes, but I don't know how long when it comes. Peter?
Well, the price for sticking with the single-thread approach is a commitment on your part to create a high-callback-rate-per-domain version at a moment's notice, should it be needed.
Can you commit to that? If not, then the initial version needs to be able to handle a high callback rate.
Thanx, Paul
| |