diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2013-06-23 14:45:30 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2013-06-29 04:57:53 -0400 |
commit | 2142914e3eb1168978e842f65cfd182be7582861 (patch) | |
tree | f84e269e7a849b36ccd11789473fd580a4d1265e /fs | |
parent | 5d48f3a2de568ba2c9d06ecbdf995e0702748f22 (diff) |
lseek_execute() doesn't need an inode passed to it
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/read_write.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/fs/read_write.c b/fs/read_write.c index fd72b592aa1b..37d16e82b575 100644 --- a/fs/read_write.c +++ b/fs/read_write.c | |||
@@ -41,8 +41,7 @@ static inline int unsigned_offsets(struct file *file) | |||
41 | return file->f_mode & FMODE_UNSIGNED_OFFSET; | 41 | return file->f_mode & FMODE_UNSIGNED_OFFSET; |
42 | } | 42 | } |
43 | 43 | ||
44 | static loff_t lseek_execute(struct file *file, struct inode *inode, | 44 | static loff_t lseek_execute(struct file *file, loff_t offset, loff_t maxsize) |
45 | loff_t offset, loff_t maxsize) | ||
46 | { | 45 | { |
47 | if (offset < 0 && !unsigned_offsets(file)) | 46 | if (offset < 0 && !unsigned_offsets(file)) |
48 | return -EINVAL; | 47 | return -EINVAL; |
@@ -76,8 +75,6 @@ loff_t | |||
76 | generic_file_llseek_size(struct file *file, loff_t offset, int whence, | 75 | generic_file_llseek_size(struct file *file, loff_t offset, int whence, |
77 | loff_t maxsize, loff_t eof) | 76 | loff_t maxsize, loff_t eof) |
78 | { | 77 | { |
79 | struct inode *inode = file->f_mapping->host; | ||
80 | |||
81 | switch (whence) { | 78 | switch (whence) { |
82 | case SEEK_END: | 79 | case SEEK_END: |
83 | offset += eof; | 80 | offset += eof; |
@@ -97,8 +94,7 @@ generic_file_llseek_size(struct file *file, loff_t offset, int whence, | |||
97 | * like SEEK_SET. | 94 | * like SEEK_SET. |
98 | */ | 95 | */ |
99 | spin_lock(&file->f_lock); | 96 | spin_lock(&file->f_lock); |
100 | offset = lseek_execute(file, inode, file->f_pos + offset, | 97 | offset = lseek_execute(file, file->f_pos + offset, maxsize); |
101 | maxsize); | ||
102 | spin_unlock(&file->f_lock); | 98 | spin_unlock(&file->f_lock); |
103 | return offset; | 99 | return offset; |
104 | case SEEK_DATA: | 100 | case SEEK_DATA: |
@@ -120,7 +116,7 @@ generic_file_llseek_size(struct file *file, loff_t offset, int whence, | |||
120 | break; | 116 | break; |
121 | } | 117 | } |
122 | 118 | ||
123 | return lseek_execute(file, inode, offset, maxsize); | 119 | return lseek_execute(file, offset, maxsize); |
124 | } | 120 | } |
125 | EXPORT_SYMBOL(generic_file_llseek_size); | 121 | EXPORT_SYMBOL(generic_file_llseek_size); |
126 | 122 | ||