diff options
author | Eric Biggers <ebiggers3@gmail.com> | 2014-03-16 14:24:08 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2014-03-23 00:03:12 -0400 |
commit | d7a15f8d0777955986a2ab00ab181795cab14b01 (patch) | |
tree | 7c0d0639d278669cf81571a4c8b7aa0357d47db3 /fs/read_write.c | |
parent | 774868c7094d35b4518be3d0e654de000a5d11fc (diff) | |
download | lwn-d7a15f8d0777955986a2ab00ab181795cab14b01.tar.gz lwn-d7a15f8d0777955986a2ab00ab181795cab14b01.zip |
vfs: atomic f_pos access in llseek()
Commit 9c225f2655e36a4 ("vfs: atomic f_pos accesses as per POSIX") changed
several system calls to use fdget_pos() instead of fdget(), but missed
sys_llseek(). Fix it.
Signed-off-by: Eric Biggers <ebiggers3@gmail.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/read_write.c')
-rw-r--r-- | fs/read_write.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/read_write.c b/fs/read_write.c index 54e19b9392dc..28cc9c810744 100644 --- a/fs/read_write.c +++ b/fs/read_write.c @@ -307,7 +307,7 @@ SYSCALL_DEFINE5(llseek, unsigned int, fd, unsigned long, offset_high, unsigned int, whence) { int retval; - struct fd f = fdget(fd); + struct fd f = fdget_pos(fd); loff_t offset; if (!f.file) @@ -327,7 +327,7 @@ SYSCALL_DEFINE5(llseek, unsigned int, fd, unsigned long, offset_high, retval = 0; } out_putf: - fdput(f); + fdput_pos(f); return retval; } #endif |