Messages in this thread | | | Date | Wed, 1 Jun 2016 19:13:22 +0200 | From | Peter Zijlstra <> | Subject | Re: [PATCH -v3 7/8] locking: Move smp_cond_load_acquire() and friends into asm-generic/barrier.h |
| |
On Wed, Jun 01, 2016 at 03:07:14PM +0100, Will Deacon wrote: > On Wed, Jun 01, 2016 at 02:45:41PM +0200, Peter Zijlstra wrote: > > On Wed, Jun 01, 2016 at 01:13:33PM +0100, Will Deacon wrote: > > > On Wed, Jun 01, 2016 at 02:06:54PM +0200, Peter Zijlstra wrote: > > > > > > Works for me; but that would loose using cmpwait() for > > > > !smp_cond_load_acquire() spins, you fine with that? > > > > > > > > The two conversions in the patch were both !acquire spins. > > > > > > Maybe we could go the whole hog and add smp_cond_load_relaxed? > > > > What about say the cmpxchg loops in queued_write_lock_slowpath() > > ? Would that be something you'd like to use wfe for? > > Without actually running the code on real hardware, it's hard to say > for sure. I notice that those loops are using cpu_relax_lowlatency > at present and we *know* that we're next in the queue (i.e. we're just > waiting for existing readers to drain), so the benefit of wfe is somewhat > questionable here and I don't think we'd want to add that initially.
OK, we can always change our minds anyway. OK I'll respin/fold/massage the series to make it go away.
| |