lkml.org 
[lkml]   [2016]   [Jan]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC PATCH v2 1/3] getcpu_cache system call: cache CPU number of running thread
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

\
 
 \ /
  Last update: 2016-01-27 18:41    [W:0.108 / U:2.108 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site