diff mbox series

[f2fs-dev] f2fs: allow parallel DIO reads

Message ID 20241010000923.1278817-1-jaegeuk@kernel.org (mailing list archive)
State Accepted
Commit bdab38b79199316a35e5123b0f703d6a96909716
Headers show
Series [f2fs-dev] f2fs: allow parallel DIO reads | expand

Commit Message

Jaegeuk Kim Oct. 10, 2024, 12:09 a.m. UTC
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 <jaegeuk@kernel.org>
---
 fs/f2fs/file.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Daeho Jeong Oct. 10, 2024, 7:56 p.m. UTC | #1
Reviewed-by: Daeho Jeong <daehojeong@google.com>

Thanks,

On Wed, Oct 9, 2024 at 5:10 PM Jaegeuk Kim via Linux-f2fs-devel
<linux-f2fs-devel@lists.sourceforge.net> wrote:
>
> 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 <jaegeuk@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
patchwork-bot+f2fs--- via Linux-f2fs-devel Oct. 10, 2024, 8:10 p.m. UTC | #2
Hello:

This patch was applied to jaegeuk/f2fs.git (dev)
by Jaegeuk Kim <jaegeuk@kernel.org>:

On Thu, 10 Oct 2024 00:09:23 +0000 you wrote:
> 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 <jaegeuk@kernel.org>
> ---
>  fs/f2fs/file.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)

Here is the summary with links:
  - [f2fs-dev] f2fs: allow parallel DIO reads
    https://git.kernel.org/jaegeuk/f2fs/c/bdab38b79199

You are awesome, thank you!
diff mbox series

Patch

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)) {