diff options
author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2014-01-29 14:05:46 -0800 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2014-02-13 13:48:00 -0800 |
commit | 7462402eae491665f58f434dbf45bd964cbf8b79 (patch) | |
tree | 234f8b697bbcf45ca7fd4a9aea1368a862fc5961 /include | |
parent | 9580348ce827b7026c12f2fde1da7d064c338dc6 (diff) | |
download | lwn-7462402eae491665f58f434dbf45bd964cbf8b79.tar.gz lwn-7462402eae491665f58f434dbf45bd964cbf8b79.zip |
fs/compat: fix lookup_dcookie() parameter handling
commit d8d14bd09cddbaf0168d61af638455a26bd027ff upstream.
Commit d5dc77bfeeab ("consolidate compat lookup_dcookie()") coverted all
architectures to the new compat_sys_lookup_dcookie() syscall.
The "len" paramater of the new compat syscall must have the type
compat_size_t in order to enforce zero extension for architectures where
the ABI requires that the caller of a function performed zero and/or
sign extension to 64 bit of all parameters.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Al Viro <viro@zeniv.linux.org.uk>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: Hendrik Brueckner <brueckner@linux.vnet.ibm.com>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/compat.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/compat.h b/include/linux/compat.h index caa53856571c..df7060083d85 100644 --- a/include/linux/compat.h +++ b/include/linux/compat.h @@ -421,7 +421,7 @@ extern long compat_arch_ptrace(struct task_struct *child, compat_long_t request, asmlinkage long compat_sys_ptrace(compat_long_t request, compat_long_t pid, compat_long_t addr, compat_long_t data); -asmlinkage long compat_sys_lookup_dcookie(u32, u32, char __user *, size_t); +asmlinkage long compat_sys_lookup_dcookie(u32, u32, char __user *, compat_size_t); /* * epoll (fs/eventpoll.c) compat bits follow ... */ |