# Re: \[RFC PATCH v7 1/7\] Restartable sequences system call

- From: Andy Lutomirski \<hidden\>
- Date: 2016-08-04 05:01:44 
- List: linux-api
- Page: https://ratatoskr.run/linux-api/2016/08/4807809
- Thread: https://ratatoskr.run/linux-api/2016/07/4799699/t.md

```text
On Aug 3, 2016 11:31 AM, "Christoph Lameter" [ref] 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.
```
