Re: [RFC PATCH for 4.15 v12 00/22] Restartable sequences and CPU op vector

From: Andy Lutomirski
Date: Wed Nov 22 2017 - 10:28:50 EST


On Tue, Nov 21, 2017 at 2:05 PM, Mathieu Desnoyers
<mathieu.desnoyers@xxxxxxxxxxxx> wrote:
> ----- On Nov 21, 2017, at 12:21 PM, Andi Kleen andi@xxxxxxxxxxxxxx wrote:
>
>> On Tue, Nov 21, 2017 at 09:18:38AM -0500, Mathieu Desnoyers wrote:
>>> Hi,
>>>
>>> Following changes based on a thorough coding style and patch changelog
>>> review from Thomas Gleixner and Peter Zijlstra, I'm respinning this
>>> series for another RFC.
>>>
>> My suggestion would be that you also split out the opv system call.
>> That seems to be main contention point currently, and the restartable
>> sequences should be useful without it.
>
> I consider rseq to be incomplete and a pain to use in various scenarios
> without cpu_opv.
>
> About the contention point you refer to:
>
> Using vDSO as an example of how things should be done is just wrong: the
> vDSO interaction with debugger instruction single-stepping is broken,
> as I detailed in my previous email.
>

If anyone ever reports that as a problem, I'll gladly fix it in the
kernel. That's doable without an ABI change. If rseq-like things
started breaking single-stepping, we can't just fix it in the kernel.

Also, there is one and only one vclock_gettime. Debuggers can easily
special-case it. For all I know, they already do.