aboutsummaryrefslogtreecommitdiffstats
path: root/fs/ocfs2/file.c
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2016-09-22 23:35:42 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2016-10-05 18:23:56 -0400
commit82c156f853840645604acd7c2cebcb75ed1b6652 (patch)
tree19d74fbaafb300aa05523ad0ecb60f24f82c5d1f /fs/ocfs2/file.c
parent241699cd72a8489c9446ae3910ddd243e9b9061b (diff)
switch generic_file_splice_read() to use of ->read_iter()
... and kill the ->splice_read() instances that can be switched to it Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/ocfs2/file.c')
-rw-r--r--fs/ocfs2/file.c34
1 files changed, 2 insertions, 32 deletions
diff --git a/fs/ocfs2/file.c b/fs/ocfs2/file.c
index 0b055bfb8e86..8f91639f8364 100644
--- a/fs/ocfs2/file.c
+++ b/fs/ocfs2/file.c
@@ -2321,36 +2321,6 @@ out_mutex:
2321 return ret; 2321 return ret;
2322} 2322}
2323 2323
2324static ssize_t ocfs2_file_splice_read(struct file *in,
2325 loff_t *ppos,
2326 struct pipe_inode_info *pipe,
2327 size_t len,
2328 unsigned int flags)
2329{
2330 int ret = 0, lock_level = 0;
2331 struct inode *inode = file_inode(in);
2332
2333 trace_ocfs2_file_splice_read(inode, in, in->f_path.dentry,
2334 (unsigned long long)OCFS2_I(inode)->ip_blkno,
2335 in->f_path.dentry->d_name.len,
2336 in->f_path.dentry->d_name.name, len);
2337
2338 /*
2339 * See the comment in ocfs2_file_read_iter()
2340 */
2341 ret = ocfs2_inode_lock_atime(inode, in->f_path.mnt, &lock_level);
2342 if (ret < 0) {
2343 mlog_errno(ret);
2344 goto bail;
2345 }
2346 ocfs2_inode_unlock(inode, lock_level);
2347
2348 ret = generic_file_splice_read(in, ppos, pipe, len, flags);
2349
2350bail:
2351 return ret;
2352}
2353
2354static ssize_t ocfs2_file_read_iter(struct kiocb *iocb, 2324static ssize_t ocfs2_file_read_iter(struct kiocb *iocb,
2355 struct iov_iter *to) 2325 struct iov_iter *to)
2356{ 2326{
@@ -2509,7 +2479,7 @@ const struct file_operations ocfs2_fops = {
2509#endif 2479#endif
2510 .lock = ocfs2_lock, 2480 .lock = ocfs2_lock,
2511 .flock = ocfs2_flock, 2481 .flock = ocfs2_flock,
2512 .splice_read = ocfs2_file_splice_read, 2482 .splice_read = generic_file_splice_read,
2513 .splice_write = iter_file_splice_write, 2483 .splice_write = iter_file_splice_write,
2514 .fallocate = ocfs2_fallocate, 2484 .fallocate = ocfs2_fallocate,
2515}; 2485};
@@ -2554,7 +2524,7 @@ const struct file_operations ocfs2_fops_no_plocks = {
2554 .compat_ioctl = ocfs2_compat_ioctl, 2524 .compat_ioctl = ocfs2_compat_ioctl,
2555#endif 2525#endif
2556 .flock = ocfs2_flock, 2526 .flock = ocfs2_flock,
2557 .splice_read = ocfs2_file_splice_read, 2527 .splice_read = generic_file_splice_read,
2558 .splice_write = iter_file_splice_write, 2528 .splice_write = iter_file_splice_write,
2559 .fallocate = ocfs2_fallocate, 2529 .fallocate = ocfs2_fallocate,
2560}; 2530};