On Aug 3, 2016 11:31 AM, "Christoph Lameter" <cl@xxxxxxxxx> wrote: > > On Wed, 3 Aug 2016, Andy Lutomirski wrote: > > > > Well, a CMPXCHG without LOCK prefix isn't all that expensive on x86. > > > > > > It is however on PPC and possibly other architectures, so in name of > > > simplicity supporting only the one variant makes sense. > > > > > > > I wouldn't want to depend on CMPXCHG. But imagine we had primitives > > that were narrower than the full abort-on-preemption primitive. > > Specifically, suppose we had abort if (actual cpu != expected_cpu || > > *aptr != aval). We could do things like: > > > > The latency issues that are addressed by restartable sequences require > minimim instruction overhead. Lockless CMPXCHG is very important in that > area and I would not simply remove it from consideration. What I mean is: I think the solution shouldn't depend on the x86-specific unlocked CMPXCHG instruction if it can be avoided. -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html