summaryrefslogtreecommitdiffstats
path: root/fs/gfs2
diff options
context:
space:
mode:
authorAndreas Gruenbacher <agruenba@redhat.com>2018-06-27 01:59:18 +0100
committerAndreas Gruenbacher <agruenba@redhat.com>2018-07-25 00:08:40 +0200
commit1d45bb7f9d2a5cbae1e5d9a5f72adad84db4d318 (patch)
treec739c8934de8817353140b42e9dc3d37df9a81d4 /fs/gfs2
parent0ed91eca1130e6c0fe66e01fa6ea92965e81900c (diff)
downloadlinux-1d45bb7f9d2a5cbae1e5d9a5f72adad84db4d318.tar.gz
linux-1d45bb7f9d2a5cbae1e5d9a5f72adad84db4d318.tar.bz2
linux-1d45bb7f9d2a5cbae1e5d9a5f72adad84db4d318.zip
gfs2: Use iomap for stuffed direct I/O reads
Remove the fallback code from direct to buffered I/O for stuffed reads. For stuffed writes, we must keep the fallback code: the deferred glock we are holding under direct I/O doesn't allow to write to the inode or change the file size. Signed-off-by: Andreas Gruenbacher <agruenba@redhat.com> Reviewed-by: Bob Peterson <rpeterso@redhat.com>
Diffstat (limited to 'fs/gfs2')
-rw-r--r--fs/gfs2/file.c6
1 files changed, 0 insertions, 6 deletions
diff --git a/fs/gfs2/file.c b/fs/gfs2/file.c
index 6d895d39158a..08369c6cd127 100644
--- a/fs/gfs2/file.c
+++ b/fs/gfs2/file.c
@@ -706,14 +706,8 @@ static ssize_t gfs2_file_direct_read(struct kiocb *iocb, struct iov_iter *to)
if (ret)
goto out_uninit;
- /* fall back to buffered I/O for stuffed files */
- ret = -ENOTBLK;
- if (gfs2_is_stuffed(ip))
- goto out;
-
ret = iomap_dio_rw(iocb, to, &gfs2_iomap_ops, NULL);
-out:
gfs2_glock_dq(&gh);
out_uninit:
gfs2_holder_uninit(&gh);