Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1344431
| From | Thomas Gleixner <tglx@linutronix.de> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread |
| Date | 2016-02-26 17:40 +0100 |
| Message-ID | <r6tAS-640-25@gated-at.bofh.it> (permalink) |
| References | (2 earlier) <r60Sg-1Sg-47@gated-at.bofh.it> <r67qH-6DX-25@gated-at.bofh.it> <r67An-6XN-31@gated-at.bofh.it> <r67K2-71c-15@gated-at.bofh.it> <r6oUy-2x3-17@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Fri, 26 Feb 2016, Peter Zijlstra wrote: > On Thu, Feb 25, 2016 at 05:17:51PM +0000, Mathieu Desnoyers wrote: > > ----- On Feb 25, 2016, at 12:04 PM, Peter Zijlstra peterz@infradead.org wrote: > > > > > On Thu, Feb 25, 2016 at 04:55:26PM +0000, Mathieu Desnoyers wrote: > > >> ----- On Feb 25, 2016, at 4:56 AM, Peter Zijlstra peterz@infradead.org wrote: > > >> The restartable sequences are intrinsically designed to work > > >> on per-cpu data, so they need to fetch the current CPU number > > >> within the rseq critical section. This is where the getcpu_cache > > >> system call becomes very useful when combined with rseq: > > >> getcpu_cache allows reading the current CPU number in a > > >> fraction of cycle. > > > > > > Yes yes, I know how restartable sequences work. > > > > > > But what I worry about is that they want a cpu number and a sequence > > > number, and for performance it would be very good if those live in the > > > same cacheline. > > > > > > That means either getcpu needs to grow a seq number, or restartable > > > sequences need to _also_ provide the cpu number. > > > > If we plan things well, we could have both the cpu number and the > > seqnum in the same cache line, registered by two different system > > calls. It's up to user-space to organize those two variables > > to fit within the same cache-line. > > I feel this is more fragile than needed. Why not do a single systemcall > that does both? Right. There is no point in having two calls and two update mechanisms for a very similar purpose. So let userspace have one struct where cpu/seq and whatever is required for rseq is located and flag at register time which parts of the struct need to be updated. Thanks, tglx
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-02-24 00:30 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Thomas Gleixner <tglx@linutronix.de> - 2016-02-24 12:20 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-02-24 18:20 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Rasmus Villemoes <linux@rasmusvillemoes.dk> - 2016-02-26 00:40 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-02-26 18:50 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Peter Zijlstra <peterz@infradead.org> - 2016-02-25 11:00 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-02-25 18:00 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Peter Zijlstra <peterz@infradead.org> - 2016-02-25 18:10 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-02-25 18:20 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Peter Zijlstra <peterz@infradead.org> - 2016-02-26 12:40 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Thomas Gleixner <tglx@linutronix.de> - 2016-02-26 17:40 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-02-26 18:30 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Thomas Gleixner <tglx@linutronix.de> - 2016-02-26 19:10 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-02-26 21:30 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread "H. Peter Anvin" <hpa@zytor.com> - 2016-02-27 00:10 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-02-27 01:50 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread "H. Peter Anvin" <hpa@zytor.com> - 2016-02-27 07:30 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-02-27 15:20 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Peter Zijlstra <peterz@infradead.org> - 2016-02-27 16:00 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Linus Torvalds <torvalds@linux-foundation.org> - 2016-02-27 19:40 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread "H. Peter Anvin" <hpa@zytor.com> - 2016-02-27 20:10 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-02-28 01:00 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Linus Torvalds <torvalds@linux-foundation.org> - 2016-02-28 02:00 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-02-28 15:40 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Peter Zijlstra <peterz@infradead.org> - 2016-02-29 11:40 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-03-01 21:30 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Peter Zijlstra <peterz@infradead.org> - 2016-03-01 22:40 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Peter Zijlstra <peterz@infradead.org> - 2016-03-01 22:40 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread "H. Peter Anvin" <hpa@zytor.com> - 2016-03-01 23:00 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Peter Zijlstra <peterz@infradead.org> - 2016-03-02 11:40 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Peter Zijlstra <peterz@infradead.org> - 2016-02-29 11:40 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Arnd Bergmann <arnd@arndb.de> - 2016-02-29 11:50 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-02-29 13:50 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Arnd Bergmann <arnd@arndb.de> - 2016-02-29 14:20 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread "H. Peter Anvin" <hpa@zytor.com> - 2016-02-29 19:30 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Geert Uytterhoeven <geert@linux-m68k.org> - 2016-03-02 11:50 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread "H. Peter Anvin" <hpa@zytor.com> - 2016-03-01 19:30 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-03-01 19:50 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Geert Uytterhoeven <geert@linux-m68k.org> - 2016-02-28 14:10 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Linus Torvalds <torvalds@linux-foundation.org> - 2016-02-28 17:30 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread Peter Zijlstra <peterz@infradead.org> - 2016-02-29 11:10 +0100
Re: [PATCH v4 1/5] getcpu_cache system call: cache CPU number of running thread "H. Peter Anvin" <hpa@zytor.com> - 2016-02-27 16:10 +0100
csiph-web