diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c index ca53da5686336517eb70a1c4d66592bfd499d2f3..996b9aef94cebc3f246564299dba8a08bb370012 100644 --- a/fs/f2fs/data.c +++ b/fs/f2fs/data.c @@ -1732,7 +1732,7 @@ static ssize_t f2fs_direct_IO(struct kiocb *iocb, struct iov_iter *iter) if (f2fs_encrypted_inode(inode) && S_ISREG(inode->i_mode)) return 0; - if (test_opt(F2FS_I_SB(inode), LFS)) + if (rw == WRITE && test_opt(F2FS_I_SB(inode), LFS)) return 0; trace_f2fs_direct_IO_enter(inode, offset, count, rw);