Thread (27 messages) flat view 27 messages, 7 authors, 2016-01-28

Re: [RFC PATCH v2 1/3] getcpu_cache system call: cache CPU number of running thread

From: Andrew Hunter <hidden>
Date: 2016-01-27 18:02:08
Also in: lkml

On Wed, Jan 27, 2016 at 9:36 AM, Mathieu Desnoyers
[off-list ref] wrote:
----- On Jan 27, 2016, at 12:24 PM, Thomas Gleixner tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org wrote:
quoted
On Wed, 27 Jan 2016, Josh Triplett wrote:
quoted
With the dynamic allocation removed, this seems sensible to me.  One
minor nit: s/int32_t/uint32_t/g, since a location intended to hold a CPU
number should never need to hold a negative number.
You try to block the future of computing: https://lwn.net/Articles/638673/
Besides impossible architectures, there is actually a use-case for
signedness here. It makes it possible to initialize the cpu number
cache to a negative value, e.g. -1, in userspace. Then, a check for
value < 0 can be used to figure out cases where the getcpu_cache
system call is not implemented, and where a fallback (vdso or getcpu
syscall) needs to be used.

This is why I have chosen a signed type for the cpu cache so far.
In our internal version of this patch (part of the RSEQ system
discussed elsewhere) we have a signed CPU id for this reason.  I think
it's a good idea to keep that in userspace and it makes more sense to
match the user and kernel versions of the types.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help