From 1d45bb7f9d2a5cbae1e5d9a5f72adad84db4d318 Mon Sep 17 00:00:00 2001 From: Andreas Gruenbacher Date: Wed, 27 Jun 2018 01:59:18 +0100 Subject: [PATCH] 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 Reviewed-by: Bob Peterson --- fs/gfs2/file.c | 6 ------ 1 file changed, 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);