From 48d045aa205f5225921ae9065b55b14c3f976d8c Mon Sep 17 00:00:00 2001 From: Greg Kroah-Hartman Date: Thu, 6 Aug 2020 12:26:35 +0200 Subject: [PATCH] 4.9-stable patches added patches: ext4-fix-direct-i-o-read-error-for-kernel-stable-rc4.4.patch --- ...-read-error-for-kernel-stable-rc4.4.patch} | 35 ++++++++++--------- queue-4.9/series | 2 +- 2 files changed, 19 insertions(+), 18 deletions(-) rename queue-4.9/{ext4-fix-direct-i-o-read-error.patch => ext4-fix-direct-i-o-read-error-for-kernel-stable-rc4.4.patch} (84%) diff --git a/queue-4.9/ext4-fix-direct-i-o-read-error.patch b/queue-4.9/ext4-fix-direct-i-o-read-error-for-kernel-stable-rc4.4.patch similarity index 84% rename from queue-4.9/ext4-fix-direct-i-o-read-error.patch rename to queue-4.9/ext4-fix-direct-i-o-read-error-for-kernel-stable-rc4.4.patch index 2b3f6e1f50b..3a63ce0afb6 100644 --- a/queue-4.9/ext4-fix-direct-i-o-read-error.patch +++ b/queue-4.9/ext4-fix-direct-i-o-read-error-for-kernel-stable-rc4.4.patch @@ -1,10 +1,10 @@ -From jiangying8582@126.com Wed Aug 5 16:29:58 2020 +From jiangying8582@126.com Thu Aug 6 12:24:48 2020 From: Jiang Ying -Date: Wed, 5 Aug 2020 15:57:21 +0800 -Subject: ext4: fix direct I/O read error -To: tytso@mit.edu, adilger.kernel@dilger.ca, linux-ext4@vger.kernel.org, linux-kernel@vger.kernel.org, stable@vger.kernel.org -Cc: wanglong19@meituan.com, heguanjun@meituan.com, jack@suse.cz -Message-ID: <1596614241-178185-1-git-send-email-jiangying8582@126.com> +Date: Thu, 6 Aug 2020 17:38:11 +0800 +Subject: ext4: fix direct I/O read error for kernel stable rc4.4 +To: tytso@mit.edu, adilger.kernel@dilger.ca, linux-ext4@vger.kernel.org, linux-kernel@vger.kernel.org, jack@suse.cz, stable@vger.kernel.org +Cc: wanglong19@meituan.com, heguanjun@meituan.com +Message-ID: <1596706691-82760-1-git-send-email-jiangying8582@126.com> From: Jiang Ying @@ -119,26 +119,27 @@ on kernel 5.5 to fix this problem. Fixes: 9fe55eea7e4b ("Fix race when checking i_size on direct i/o read") Reviewed-by: Jan Kara -Co-developed-by: Wang Long -Signed-off-by: Wang Long +Reviewed-by: Wang Long Signed-off-by: Jiang Ying Signed-off-by: Greg Kroah-Hartman --- - fs/ext4/inode.c | 5 +++++ - 1 file changed, 5 insertions(+) + fs/ext4/inode.c | 7 +++++++ + 1 file changed, 7 insertions(+) --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c -@@ -3607,6 +3607,11 @@ static ssize_t ext4_direct_IO(struct kio - size_t count = iov_iter_count(iter); +@@ -3608,6 +3608,13 @@ static ssize_t ext4_direct_IO(struct kio loff_t offset = iocb->ki_pos; ssize_t ret; -+ loff_t offset = iocb->ki_pos; -+ loff_t size = i_size_read(inode); -+ -+ if (offset >= size) -+ return 0; ++ if (iov_iter_rw(iter) == READ) { ++ loff_t size = i_size_read(inode); ++ ++ if (offset >= size) ++ return 0; ++ } ++ #ifdef CONFIG_EXT4_FS_ENCRYPTION if (ext4_encrypted_inode(inode) && S_ISREG(inode->i_mode)) + return 0; diff --git a/queue-4.9/series b/queue-4.9/series index b7e40b8b3a2..f5e72a6999a 100644 --- a/queue-4.9/series +++ b/queue-4.9/series @@ -47,4 +47,4 @@ arm-percpu.h-fix-build-error.patch random-fix-circular-include-dependency-on-arm64-after-addition-of-percpu.h.patch random32-remove-net_rand_state-from-the-latent-entropy-gcc-plugin.patch random32-move-the-pseudo-random-32-bit-definitions-to-prandom.h.patch -ext4-fix-direct-i-o-read-error.patch +ext4-fix-direct-i-o-read-error-for-kernel-stable-rc4.4.patch -- 2.47.3