Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1459877

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

Path csiph.com!eternal-september.org!feeder.eternal-september.org!news.mixmin.net!news.unit0.net!news.panservice.it!bofh.it!news.nic.it!robomod
From Christoph Lameter <cl@linux.com>
Newsgroups linux.kernel
Subject Re: [RFC PATCH v7 1/7] Restartable sequences system call
Date Wed, 10 Aug 2016 22:40:03 +0200
Message-ID <s4Isb-1A3-63@gated-at.bofh.it> (permalink)
References <rXtxT-4A4-3@gated-at.bofh.it> <rXtxU-4A4-31@gated-at.bofh.it> <rYXax-2Cq-1@gated-at.bofh.it> <rZ0UN-53b-11@gated-at.bofh.it> <s29fb-6dM-7@gated-at.bofh.it> <s4HZ7-1pa-3@gated-at.bofh.it>
X-Original-To Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
X-X-Sender cl@east.gentwo.org
Content-Type text/plain; charset=US-ASCII
X-Cmae-Envelope MS4wfOUdPzXS87SLrnbSwOIAFKNvZfOUhryeLHYbo5fC9ULTzk/VJCNB2qWxl89ek7PDAt2tqbyX/lvrWGanz3zEF9FRfF0uvvfr59P0RxjDuJvfcRqw1xyv LgQlOZG33q/bgp8a2Og8il+Na5cQiMbjC0OH6JyYvPQoqJFb4WsuOu7XFX9JTaInuQ+FOhsgeDXnaFUnwNBMVOVlL/tYpI7J5nnX3Ttju6lbAyzoQ0F6B+mS 0/JtQmzqcQ4ZnOh6gskHCD7IMFuU+aTm0MFsfwdEBFuKUimvp11XFvHaxOgn7JzMCbDqBRtzpthIsSqzHp66olmYxnbTla3z7fQxn7U3CdMGyjP6QLBaSTAo BL4SBSMFogMNEr8DoCbFoLyiZto7Miu9qtJSWprIAq/EzXN0XjCpV95CPWkAu9ZfE5sc2dQ50N2DBR8y7iBpu8P6KyKS1KanRNv3NHgc+loYmWLpPqAKbzkZ ImpI4Sg91kYRk1iT4jvY9FAvMmfHBE1gB+jdu+O3aDBIXnEfAB9VvkKW5Pj0wPyiBxL2iYQQX9jM+nBqhliprrKkseholReC6N5kcvgnv6lpGx6UClluNWcQ w1BHWhUgOB/i4mVUNHyxLkboLr78+uZy+25qrdoT6msPzAV5bz2kpKiaXkdiKWDn6nyRiJ9PyQFj8YPlMIYKDWuaYif0TYlej9ZgXUi6uyBOgj6MD3Nnw5ON eEqAwUPXn+zMkeru0peXZs5JnibT2BVk5L4jN/zHhV9JRXP1xJk4R4o7gBMDV6be0YuwHCOWjeVTDxtCvFDdXQVQPSw1cMHxkpzM0jgfV0Wjuv1hGJtbkXUq W9ILvtE03Mce/xKTBGS7GfK0MB6hhZ60MeFyXAkJo0FN1GMI2pca5Y+QEmaUag==
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 29
Organization linux.* mail to news gateway
X-Original-Cc Andy Lutomirski <luto@amacapital.net>, Andrew Morton <akpm@linux-foundation.org>, Russell King <linux@arm.linux.org.uk>, Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, "H. Peter Anvin" <hpa@zytor.com>, linux-kernel <linux-kernel@vger.kernel.org>, linux-api <linux-api@vger.kernel.org>, Paul Turner <pjt@google.com>, Andrew Hunter <ahh@google.com>, Peter Zijlstra <peterz@infradead.org>, Andi Kleen <andi@firstfloor.org>, Dave Watson <davejwatson@fb.com>, Ben Maurer <bmaurer@fb.com>, rostedt <rostedt@goodmis.org>, "Paul E. McKenney" <paulmck@linux.vnet.ibm.com>, Josh Triplett <josh@joshtriplett.org>, Linus Torvalds <torvalds@linux-foundation.org>, Catalin Marinas <catalin.marinas@arm.com>, Will Deacon <will.deacon@arm.com>, Michael Kerrisk <mtk.manpages@gmail.com>, Boqun Feng <boqun.feng@gmail.com>
X-Original-Date Wed, 10 Aug 2016 11:59:23 -0500 (CDT)
X-Original-Message-ID <alpine.DEB.2.20.1608101155230.14336@east.gentwo.org>
X-Original-References <1469135662-31512-1-git-send-email-mathieu.desnoyers@efficios.com> <1469135662-31512-2-git-send-email-mathieu.desnoyers@efficios.com> <CALCETrVq3hgLbADcx_4g6gGgp7Hf-WnnWA8gg68tPZTv2wfbDg@mail.gmail.com> <1806206514.82247.1469502139408.JavaMail.zimbra@efficios.com> <alpine.DEB.2.20.1608031325040.14875@east.gentwo.org> <2119563927.7329.1470847662641.JavaMail.zimbra@efficios.com>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref csiph.com linux.kernel:1459877

Show key headers only | View raw


On Wed, 10 Aug 2016, Mathieu Desnoyers wrote:

> - preemption of kernel code (for atomicity wrt other threads). This would
>   replace preempt_disable()/preempt_enable() critical sections touching
>   per-cpu data shared with other threads. We would have to do the event_counter
>   increment and ip fixup directly in the sched_out hook when preempting
>   kernel code.

What we would need is special handling when returning from a context
switch so that we recognize in what type of code section we are in and
continue execution at the proper retry site. This can be done by putting
code into special sections or other methods that do not require additional
coee.

> - possibly interrupt handlers (for atomicity wrt interrupts). This would
>   replace local irq save/restore when touching per-cpu data shared with
>   interrupt handlers. We would have to increment the event_counter and
>   fixup on the pre-irq kernel frame.

Same thing as before. Test if we are in a section by testing the return
address and then maybe continue elsewhere.

> Those supplementary hooks may add significant overall performance overhead,
> so careful benchmarking would be required to figure out if it's worth it.

We need a design that does not need these hooks. If we check the return
IP address for a special range then we would not need those. Any hooks
would bloat the code in such a way that the implementation would not be
acceptable for the kernel code.

Back to linux.kernel | Previous | Next — Previous in thread | Find similar | Unroll thread


Thread

Re: [RFC PATCH v7 1/7] Restartable sequences system call Andy Lutomirski <luto@amacapital.net> - 2016-07-26 01:10 +0200
  Re: [RFC PATCH v7 1/7] Restartable sequences system call Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-07-26 05:10 +0200
    Re: [RFC PATCH v7 1/7] Restartable sequences system call Peter Zijlstra <peterz@infradead.org> - 2016-08-03 14:30 +0200
      Re: [RFC PATCH v7 1/7] Restartable sequences system call Andy Lutomirski <luto@amacapital.net> - 2016-08-03 18:50 +0200
        Re: [RFC PATCH v7 1/7] Restartable sequences system call Christoph Lameter <cl@linux.com> - 2016-08-03 20:40 +0200
          Re: [RFC PATCH v7 1/7] Restartable sequences system call Andy Lutomirski <luto@amacapital.net> - 2016-08-04 07:10 +0200
        Re: [RFC PATCH v7 1/7] Restartable sequences system call Boqun Feng <boqun.feng@gmail.com> - 2016-08-04 06:30 +0200
          Re: [RFC PATCH v7 1/7] Restartable sequences system call Andy Lutomirski <luto@amacapital.net> - 2016-08-04 07:20 +0200
            Re: [RFC PATCH v7 1/7] Restartable sequences system call Boqun Feng <boqun.feng@gmail.com> - 2016-08-09 18:20 +0200
              Re: [RFC PATCH v7 1/7] Restartable sequences system call Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-08-10 20:20 +0200
              Re: [RFC PATCH v7 1/7] Restartable sequences system call Andy Lutomirski <luto@amacapital.net> - 2016-08-10 21:10 +0200
              Re: [RFC PATCH v7 1/7] Restartable sequences system call Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-08-10 22:50 +0200
                Re: [RFC PATCH v7 1/7] Restartable sequences system call Boqun Feng <boqun.feng@gmail.com> - 2016-08-11 07:00 +0200
            Re: [RFC PATCH v7 1/7] Restartable sequences system call Andy Lutomirski <luto@amacapital.net> - 2016-08-10 21:40 +0200
    Re: [RFC PATCH v7 1/7] Restartable sequences system call Christoph Lameter <cl@linux.com> - 2016-08-03 20:40 +0200
      Re: [RFC PATCH v7 1/7] Restartable sequences system call Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-08-10 22:10 +0200
        Re: [RFC PATCH v7 1/7] Restartable sequences system call Christoph Lameter <cl@linux.com> - 2016-08-10 22:40 +0200

csiph-web