[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 3/5] xen: RCU/x86/ARM: discount CPUs that were idle when grace period started.
At 18:21 +0200 on 14 Aug (1502734919), Dario Faggioli wrote: > On Mon, 2017-08-14 at 14:54 +0100, Tim Deegan wrote: > > At 15:24 +0200 on 14 Aug (1502724279), Dario Faggioli wrote: > > > About the former... I'm not sure which check of rcp->cur you're > > > referring to. I think it's the one in rcu_check_quiescent_state(), > > > but > > > then, I'm not sure where to actually put the barrier... > > > > I mean whatever one causes the CPU to DTRT about the new grace > > period. > > AFAICT that's the one in __rcu_pending(). The important thing is > > that > > that read mustn't be allowed to happen before the write to the > > idle_cpumask. > > > Interestingly enough, someone seems to have had a very similar > discussion before: > > https://lkml.org/lkml/2005/12/8/155 > > > I'd be inclined to put the barrier right after the > > cpumask_set_cpu() in rcu_idle_enter(). > > > And with conclusions similar to these: :-) > > https://lkml.org/lkml/2005/12/8/308 > > I've no idea why they then didn't put an actual barrier in place. This > thread mention s390's ordering, as at the time, this mechanism was only > in used there, but they've not added one when making things general. > > IAC, I'm fine putting down one. :-) Sounds good to me. :) I think it's required (even on s390!) but of course there may be other barriers on those paths that happen to DTRT. E.g. cpumask_set_cpu() itself is implicitly a mb() on x86, (but not, AFAICT, on ARM). Cheers, Tim. _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |