Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1319172
| From | Thomas Gleixner <tglx@linutronix.de> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [RFC PATCH v2 1/3] getcpu_cache system call: cache CPU number of running thread |
| Date | 2016-01-27 18:30 +0100 |
| Message-ID | <qVC4P-6X5-47@gated-at.bofh.it> (permalink) |
| References | <qVBBL-6sQ-3@gated-at.bofh.it> <qVBBN-6sQ-27@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Wed, 27 Jan 2016, Mathieu Desnoyers wrote:
> +/*
> + * sys_getcpu_cache - setup getcpu cache for caller thread
> + */
> +SYSCALL_DEFINE2(getcpu_cache, int32_t __user **, cpu_cachep, int, flags)
> +{
> + int32_t __user *cpu_cache;
> +
> + if (unlikely(flags))
> + return -EINVAL;
> + /* Check if cpu_cache is already registered. */
> + if (current->cpu_cache) {
> + if (put_user(current->cpu_cache, cpu_cachep))
> + return -EFAULT;
> + return 0;
> + }
This is really odd. How is the caller supposed to differentiate between:
1) Get the installed cpucache pointer
2) Set the cpucache pointer
We really want clearly seperated functionality here.
getcpu_cache(ptr, GET_CACHEP);
and
getcpu_cache(ptr, SET_CACHEP);
Returns -EBUSY if current->cpu_cache is already set, except we allow
replacing the pointer.
Thanks,
tglx
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[RFC PATCH v2 0/3] getcpu_cache system call Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-01-27 18:00 +0100
[RFC PATCH v2 3/3] getcpu_cache: wire up x86 32/64 system call Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-01-27 18:00 +0100
[RFC PATCH v2 1/3] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-01-27 18:00 +0100
Re: [RFC PATCH v2 1/3] getcpu_cache system call: cache CPU number of running thread Thomas Gleixner <tglx@linutronix.de> - 2016-01-27 18:30 +0100
Re: [RFC PATCH v2 1/3] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-01-27 18:40 +0100
Re: [RFC PATCH v2 1/3] getcpu_cache system call: cache CPU number of running thread Josh Triplett <josh@joshtriplett.org> - 2016-01-27 19:10 +0100
Re: [RFC PATCH v2 1/3] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-01-27 19:50 +0100
Re: [RFC PATCH v2 1/3] getcpu_cache system call: cache CPU number of running thread Josh Triplett <josh@joshtriplett.org> - 2016-01-27 20:40 +0100
Re: [RFC PATCH v2 1/3] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-01-27 22:10 +0100
Re: [RFC PATCH v2 1/3] getcpu_cache system call: cache CPU number of running thread Josh Triplett <josh@joshtriplett.org> - 2016-01-27 22:40 +0100
Re: [RFC PATCH v2 1/3] getcpu_cache system call: cache CPU number of running thread Andrew Hunter <ahh@google.com> - 2016-01-27 19:10 +0100
Re: [RFC PATCH v2 1/3] getcpu_cache system call: cache CPU number of running thread Thomas Gleixner <tglx@linutronix.de> - 2016-01-27 18:30 +0100
Re: [RFC PATCH v2 1/3] getcpu_cache system call: cache CPU number of running thread Thomas Gleixner <tglx@linutronix.de> - 2016-01-27 18:40 +0100
Re: [RFC PATCH v2 1/3] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-01-27 22:40 +0100
Re: [RFC PATCH v2 1/3] getcpu_cache system call: cache CPU number of running thread Thomas Gleixner <tglx@linutronix.de> - 2016-01-27 18:40 +0100
Re: [RFC PATCH v2 1/3] getcpu_cache system call: cache CPU number of running thread Mathieu Desnoyers <mathieu.desnoyers@efficios.com> - 2016-01-27 18:40 +0100
Re: [RFC PATCH v2 1/3] getcpu_cache system call: cache CPU number of running thread Josh Triplett <josh@joshtriplett.org> - 2016-01-27 18:30 +0100
csiph-web