This fixes a regression which prevents parallel DIO reads.

Fixes: 0cac51185e65 ("f2fs: fix to avoid racing in between read and OPU dio 
write")
Signed-off-by: Jaegeuk Kim <jaeg...@kernel.org>
---
 fs/f2fs/file.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/fs/f2fs/file.c b/fs/f2fs/file.c
index 71d5ded9eeda..adc7d64a6f47 100644
--- a/fs/f2fs/file.c
+++ b/fs/f2fs/file.c
@@ -4647,7 +4647,8 @@ static ssize_t f2fs_file_read_iter(struct kiocb *iocb, 
struct iov_iter *to)
                                        iov_iter_count(to), READ);
 
        /* In LFS mode, if there is inflight dio, wait for its completion */
-       if (f2fs_lfs_mode(F2FS_I_SB(inode)))
+       if (f2fs_lfs_mode(F2FS_I_SB(inode)) &&
+           get_pages(F2FS_I_SB(inode), F2FS_DIO_WRITE))
                inode_dio_wait(inode);
 
        if (f2fs_should_use_dio(inode, iocb, to)) {
-- 
2.47.0.rc1.288.g06298d1525-goog



_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to