aboutsummaryrefslogtreecommitdiffstats
path: root/fs/read_write.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2013-03-02 11:34:06 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2013-03-02 11:34:06 -0500
commit14cc0b55b70e297a4b5411733d58c6cdc2d7f1be (patch)
tree2aa0fe9d267d5ae1ab1b47a67d31fbbc1dbf928e /fs/read_write.c
parent3cfb07743a5bffecba83f0da26444e85c0a9bfbb (diff)
parent0e803bafbb7d1b8a9031104f1a982a01b45da4c6 (diff)
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal
Pull signal/compat fixes from Al Viro: "Fixes for several regressions introduced in the last signal.git pile, along with fixing bugs in truncate and ftruncate compat (on just about anything biarch at least one of those two had been done wrong)." * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal: compat: restore timerfd settime and gettime compat syscalls [regression] braino in "sparc: convert to ksignal" fix compat truncate/ftruncate switch lseek to COMPAT_SYSCALL_DEFINE lseek() and truncate() on sparc really need sign extension
Diffstat (limited to 'fs/read_write.c')
-rw-r--r--fs/read_write.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/fs/read_write.c b/fs/read_write.c
index 3ae6dbe828bf..a698eff457fb 100644
--- a/fs/read_write.c
+++ b/fs/read_write.c
@@ -15,6 +15,7 @@
15#include <linux/syscalls.h> 15#include <linux/syscalls.h>
16#include <linux/pagemap.h> 16#include <linux/pagemap.h>
17#include <linux/splice.h> 17#include <linux/splice.h>
18#include <linux/compat.h>
18#include "read_write.h" 19#include "read_write.h"
19 20
20#include <asm/uaccess.h> 21#include <asm/uaccess.h>
@@ -247,6 +248,13 @@ SYSCALL_DEFINE3(lseek, unsigned int, fd, off_t, offset, unsigned int, whence)
247 return retval; 248 return retval;
248} 249}
249 250
251#ifdef CONFIG_COMPAT
252COMPAT_SYSCALL_DEFINE3(lseek, unsigned int, fd, compat_off_t, offset, unsigned int, whence)
253{
254 return sys_lseek(fd, offset, whence);
255}
256#endif
257
250#ifdef __ARCH_WANT_SYS_LLSEEK 258#ifdef __ARCH_WANT_SYS_LLSEEK
251SYSCALL_DEFINE5(llseek, unsigned int, fd, unsigned long, offset_high, 259SYSCALL_DEFINE5(llseek, unsigned int, fd, unsigned long, offset_high,
252 unsigned long, offset_low, loff_t __user *, result, 260 unsigned long, offset_low, loff_t __user *, result,
@@ -278,7 +286,6 @@ out_putf:
278} 286}
279#endif 287#endif
280 288
281
282/* 289/*
283 * rw_verify_area doesn't like huge counts. We limit 290 * rw_verify_area doesn't like huge counts. We limit
284 * them to something that fits in "int" so that others 291 * them to something that fits in "int" so that others