mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-14 15:54:15 +08:00
arch/tile: fix futex sanitization definition/prototype mismatch
Commit 8d7718aa08
changed "int"
to "u32" in the prototypes but not the definition.
I missed this when I saw the patch go by on LKML.
We cast "u32 *" to "int *" since we are tying into the underlying
atomics framework, and atomic_t uses int as its value type.
Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
Reviewed-by: Michel Lespinasse <walken@google.com>
This commit is contained in:
parent
5bab188a31
commit
5b4787719f
@ -202,32 +202,32 @@ static inline int *__futex_setup(int __user *v)
|
||||
return __atomic_hashed_lock((int __force *)v);
|
||||
}
|
||||
|
||||
struct __get_user futex_set(int __user *v, int i)
|
||||
struct __get_user futex_set(u32 __user *v, int i)
|
||||
{
|
||||
return __atomic_xchg((int __force *)v, __futex_setup(v), i);
|
||||
}
|
||||
|
||||
struct __get_user futex_add(int __user *v, int n)
|
||||
struct __get_user futex_add(u32 __user *v, int n)
|
||||
{
|
||||
return __atomic_xchg_add((int __force *)v, __futex_setup(v), n);
|
||||
}
|
||||
|
||||
struct __get_user futex_or(int __user *v, int n)
|
||||
struct __get_user futex_or(u32 __user *v, int n)
|
||||
{
|
||||
return __atomic_or((int __force *)v, __futex_setup(v), n);
|
||||
}
|
||||
|
||||
struct __get_user futex_andn(int __user *v, int n)
|
||||
struct __get_user futex_andn(u32 __user *v, int n)
|
||||
{
|
||||
return __atomic_andn((int __force *)v, __futex_setup(v), n);
|
||||
}
|
||||
|
||||
struct __get_user futex_xor(int __user *v, int n)
|
||||
struct __get_user futex_xor(u32 __user *v, int n)
|
||||
{
|
||||
return __atomic_xor((int __force *)v, __futex_setup(v), n);
|
||||
}
|
||||
|
||||
struct __get_user futex_cmpxchg(int __user *v, int o, int n)
|
||||
struct __get_user futex_cmpxchg(u32 __user *v, int o, int n)
|
||||
{
|
||||
return __atomic_cmpxchg((int __force *)v, __futex_setup(v), o, n);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user