From: Greg Kroah-Hartman Date: Sat, 4 Jun 2022 10:02:53 +0000 (+0200) Subject: drop exfat patch from all trees X-Git-Tag: v4.9.317~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=dbd890bc1b9327ebe633397186384b30ccf09e4e;p=thirdparty%2Fkernel%2Fstable-queue.git drop exfat patch from all trees --- diff --git a/queue-5.10/exfat-fix-referencing-wrong-parent-directory-information-after-renaming.patch b/queue-5.10/exfat-fix-referencing-wrong-parent-directory-information-after-renaming.patch deleted file mode 100644 index 172347950a2..00000000000 --- a/queue-5.10/exfat-fix-referencing-wrong-parent-directory-information-after-renaming.patch +++ /dev/null @@ -1,98 +0,0 @@ -From d8dad2588addd1d861ce19e7df3b702330f0c7e3 Mon Sep 17 00:00:00 2001 -From: Yuezhang Mo -Date: Mon, 4 Apr 2022 11:58:06 +0900 -Subject: exfat: fix referencing wrong parent directory information after renaming - -From: Yuezhang Mo - -commit d8dad2588addd1d861ce19e7df3b702330f0c7e3 upstream. - -During renaming, the parent directory information maybe -updated. But the file/directory still references to the -old parent directory information. - -This bug will cause 2 problems. - -(1) The renamed file can not be written. - - [10768.175172] exFAT-fs (sda1): error, failed to bmap (inode : 7afd50e4 iblock : 0, err : -5) - [10768.184285] exFAT-fs (sda1): Filesystem has been set read-only - ash: write error: Input/output error - -(2) Some dentries of the renamed file/directory are not set - to deleted after removing the file/directory. - -exfat_update_parent_info() is a workaround for the wrong parent -directory information being used after renaming. Now that bug is -fixed, this is no longer needed, so remove it. - -Fixes: 5f2aa075070c ("exfat: add inode operations") -Cc: stable@vger.kernel.org # v5.7+ -Signed-off-by: Yuezhang Mo -Reviewed-by: Andy Wu -Reviewed-by: Aoyama Wataru -Reviewed-by: Daniel Palmer -Reviewed-by: Sungjong Seo -Signed-off-by: Namjae Jeon -Signed-off-by: Greg Kroah-Hartman ---- - fs/exfat/namei.c | 27 +-------------------------- - 1 file changed, 1 insertion(+), 26 deletions(-) - ---- a/fs/exfat/namei.c -+++ b/fs/exfat/namei.c -@@ -1061,6 +1061,7 @@ static int exfat_rename_file(struct inod - - exfat_remove_entries(inode, p_dir, oldentry, 0, - num_old_entries); -+ ei->dir = *p_dir; - ei->entry = newentry; - } else { - if (exfat_get_entry_type(epold) == TYPE_FILE) { -@@ -1151,28 +1152,6 @@ static int exfat_move_file(struct inode - return 0; - } - --static void exfat_update_parent_info(struct exfat_inode_info *ei, -- struct inode *parent_inode) --{ -- struct exfat_sb_info *sbi = EXFAT_SB(parent_inode->i_sb); -- struct exfat_inode_info *parent_ei = EXFAT_I(parent_inode); -- loff_t parent_isize = i_size_read(parent_inode); -- -- /* -- * the problem that struct exfat_inode_info caches wrong parent info. -- * -- * because of flag-mismatch of ei->dir, -- * there is abnormal traversing cluster chain. -- */ -- if (unlikely(parent_ei->flags != ei->dir.flags || -- parent_isize != EXFAT_CLU_TO_B(ei->dir.size, sbi) || -- parent_ei->start_clu != ei->dir.dir)) { -- exfat_chain_set(&ei->dir, parent_ei->start_clu, -- EXFAT_B_TO_CLU_ROUND_UP(parent_isize, sbi), -- parent_ei->flags); -- } --} -- - /* rename or move a old file into a new file */ - static int __exfat_rename(struct inode *old_parent_inode, - struct exfat_inode_info *ei, struct inode *new_parent_inode, -@@ -1203,8 +1182,6 @@ static int __exfat_rename(struct inode * - return -ENOENT; - } - -- exfat_update_parent_info(ei, old_parent_inode); -- - exfat_chain_dup(&olddir, &ei->dir); - dentry = ei->entry; - -@@ -1225,8 +1202,6 @@ static int __exfat_rename(struct inode * - goto out; - } - -- exfat_update_parent_info(new_ei, new_parent_inode); -- - p_dir = &(new_ei->dir); - new_entry = new_ei->entry; - ep = exfat_get_dentry(sb, p_dir, new_entry, &new_bh, NULL); diff --git a/queue-5.10/series b/queue-5.10/series index edf5de90179..81555d29fc2 100644 --- a/queue-5.10/series +++ b/queue-5.10/series @@ -20,7 +20,6 @@ xfs-fix-an-abba-deadlock-in-xfs_rename.patch xfs-fix-cil-throttle-hang-when-cil-space-used-going-backwards.patch drm-i915-fix-wstringop-overflow-warning-in-call-to-intel_read_wm_latency.patch exfat-check-if-cluster-num-is-valid.patch -exfat-fix-referencing-wrong-parent-directory-information-after-renaming.patch lib-crypto-add-prompts-back-to-crypto-libraries.patch crypto-drbg-prepare-for-more-fine-grained-tracking-of-seeding-state.patch crypto-drbg-track-whether-drbg-was-seeded-with-rng_is_initialized.patch diff --git a/queue-5.15/exfat-fix-referencing-wrong-parent-directory-information-after-renaming.patch b/queue-5.15/exfat-fix-referencing-wrong-parent-directory-information-after-renaming.patch deleted file mode 100644 index 1e3d6f846b1..00000000000 --- a/queue-5.15/exfat-fix-referencing-wrong-parent-directory-information-after-renaming.patch +++ /dev/null @@ -1,98 +0,0 @@ -From d8dad2588addd1d861ce19e7df3b702330f0c7e3 Mon Sep 17 00:00:00 2001 -From: Yuezhang Mo -Date: Mon, 4 Apr 2022 11:58:06 +0900 -Subject: exfat: fix referencing wrong parent directory information after renaming - -From: Yuezhang Mo - -commit d8dad2588addd1d861ce19e7df3b702330f0c7e3 upstream. - -During renaming, the parent directory information maybe -updated. But the file/directory still references to the -old parent directory information. - -This bug will cause 2 problems. - -(1) The renamed file can not be written. - - [10768.175172] exFAT-fs (sda1): error, failed to bmap (inode : 7afd50e4 iblock : 0, err : -5) - [10768.184285] exFAT-fs (sda1): Filesystem has been set read-only - ash: write error: Input/output error - -(2) Some dentries of the renamed file/directory are not set - to deleted after removing the file/directory. - -exfat_update_parent_info() is a workaround for the wrong parent -directory information being used after renaming. Now that bug is -fixed, this is no longer needed, so remove it. - -Fixes: 5f2aa075070c ("exfat: add inode operations") -Cc: stable@vger.kernel.org # v5.7+ -Signed-off-by: Yuezhang Mo -Reviewed-by: Andy Wu -Reviewed-by: Aoyama Wataru -Reviewed-by: Daniel Palmer -Reviewed-by: Sungjong Seo -Signed-off-by: Namjae Jeon -Signed-off-by: Greg Kroah-Hartman ---- - fs/exfat/namei.c | 27 +-------------------------- - 1 file changed, 1 insertion(+), 26 deletions(-) - ---- a/fs/exfat/namei.c -+++ b/fs/exfat/namei.c -@@ -1069,6 +1069,7 @@ static int exfat_rename_file(struct inod - - exfat_remove_entries(inode, p_dir, oldentry, 0, - num_old_entries); -+ ei->dir = *p_dir; - ei->entry = newentry; - } else { - if (exfat_get_entry_type(epold) == TYPE_FILE) { -@@ -1159,28 +1160,6 @@ static int exfat_move_file(struct inode - return 0; - } - --static void exfat_update_parent_info(struct exfat_inode_info *ei, -- struct inode *parent_inode) --{ -- struct exfat_sb_info *sbi = EXFAT_SB(parent_inode->i_sb); -- struct exfat_inode_info *parent_ei = EXFAT_I(parent_inode); -- loff_t parent_isize = i_size_read(parent_inode); -- -- /* -- * the problem that struct exfat_inode_info caches wrong parent info. -- * -- * because of flag-mismatch of ei->dir, -- * there is abnormal traversing cluster chain. -- */ -- if (unlikely(parent_ei->flags != ei->dir.flags || -- parent_isize != EXFAT_CLU_TO_B(ei->dir.size, sbi) || -- parent_ei->start_clu != ei->dir.dir)) { -- exfat_chain_set(&ei->dir, parent_ei->start_clu, -- EXFAT_B_TO_CLU_ROUND_UP(parent_isize, sbi), -- parent_ei->flags); -- } --} -- - /* rename or move a old file into a new file */ - static int __exfat_rename(struct inode *old_parent_inode, - struct exfat_inode_info *ei, struct inode *new_parent_inode, -@@ -1211,8 +1190,6 @@ static int __exfat_rename(struct inode * - return -ENOENT; - } - -- exfat_update_parent_info(ei, old_parent_inode); -- - exfat_chain_dup(&olddir, &ei->dir); - dentry = ei->entry; - -@@ -1233,8 +1210,6 @@ static int __exfat_rename(struct inode * - goto out; - } - -- exfat_update_parent_info(new_ei, new_parent_inode); -- - p_dir = &(new_ei->dir); - new_entry = new_ei->entry; - ep = exfat_get_dentry(sb, p_dir, new_entry, &new_bh, NULL); diff --git a/queue-5.15/series b/queue-5.15/series index 20fe10b25fe..c4216f21591 100644 --- a/queue-5.15/series +++ b/queue-5.15/series @@ -15,7 +15,6 @@ pipe-fix-missing-lock-in-pipe_resize_ring.patch net-ipa-compute-proper-aggregation-limit.patch drm-i915-fix-wstringop-overflow-warning-in-call-to-intel_read_wm_latency.patch exfat-check-if-cluster-num-is-valid.patch -exfat-fix-referencing-wrong-parent-directory-information-after-renaming.patch lib-crypto-add-prompts-back-to-crypto-libraries.patch crypto-drbg-prepare-for-more-fine-grained-tracking-of-seeding-state.patch crypto-drbg-track-whether-drbg-was-seeded-with-rng_is_initialized.patch diff --git a/queue-5.17/exfat-fix-referencing-wrong-parent-directory-information-after-renaming.patch b/queue-5.17/exfat-fix-referencing-wrong-parent-directory-information-after-renaming.patch deleted file mode 100644 index a8275598121..00000000000 --- a/queue-5.17/exfat-fix-referencing-wrong-parent-directory-information-after-renaming.patch +++ /dev/null @@ -1,98 +0,0 @@ -From d8dad2588addd1d861ce19e7df3b702330f0c7e3 Mon Sep 17 00:00:00 2001 -From: Yuezhang Mo -Date: Mon, 4 Apr 2022 11:58:06 +0900 -Subject: exfat: fix referencing wrong parent directory information after renaming - -From: Yuezhang Mo - -commit d8dad2588addd1d861ce19e7df3b702330f0c7e3 upstream. - -During renaming, the parent directory information maybe -updated. But the file/directory still references to the -old parent directory information. - -This bug will cause 2 problems. - -(1) The renamed file can not be written. - - [10768.175172] exFAT-fs (sda1): error, failed to bmap (inode : 7afd50e4 iblock : 0, err : -5) - [10768.184285] exFAT-fs (sda1): Filesystem has been set read-only - ash: write error: Input/output error - -(2) Some dentries of the renamed file/directory are not set - to deleted after removing the file/directory. - -exfat_update_parent_info() is a workaround for the wrong parent -directory information being used after renaming. Now that bug is -fixed, this is no longer needed, so remove it. - -Fixes: 5f2aa075070c ("exfat: add inode operations") -Cc: stable@vger.kernel.org # v5.7+ -Signed-off-by: Yuezhang Mo -Reviewed-by: Andy Wu -Reviewed-by: Aoyama Wataru -Reviewed-by: Daniel Palmer -Reviewed-by: Sungjong Seo -Signed-off-by: Namjae Jeon -Signed-off-by: Greg Kroah-Hartman ---- - fs/exfat/namei.c | 27 +-------------------------- - 1 file changed, 1 insertion(+), 26 deletions(-) - ---- a/fs/exfat/namei.c -+++ b/fs/exfat/namei.c -@@ -1062,6 +1062,7 @@ static int exfat_rename_file(struct inod - - exfat_remove_entries(inode, p_dir, oldentry, 0, - num_old_entries); -+ ei->dir = *p_dir; - ei->entry = newentry; - } else { - if (exfat_get_entry_type(epold) == TYPE_FILE) { -@@ -1149,28 +1150,6 @@ static int exfat_move_file(struct inode - return 0; - } - --static void exfat_update_parent_info(struct exfat_inode_info *ei, -- struct inode *parent_inode) --{ -- struct exfat_sb_info *sbi = EXFAT_SB(parent_inode->i_sb); -- struct exfat_inode_info *parent_ei = EXFAT_I(parent_inode); -- loff_t parent_isize = i_size_read(parent_inode); -- -- /* -- * the problem that struct exfat_inode_info caches wrong parent info. -- * -- * because of flag-mismatch of ei->dir, -- * there is abnormal traversing cluster chain. -- */ -- if (unlikely(parent_ei->flags != ei->dir.flags || -- parent_isize != EXFAT_CLU_TO_B(ei->dir.size, sbi) || -- parent_ei->start_clu != ei->dir.dir)) { -- exfat_chain_set(&ei->dir, parent_ei->start_clu, -- EXFAT_B_TO_CLU_ROUND_UP(parent_isize, sbi), -- parent_ei->flags); -- } --} -- - /* rename or move a old file into a new file */ - static int __exfat_rename(struct inode *old_parent_inode, - struct exfat_inode_info *ei, struct inode *new_parent_inode, -@@ -1201,8 +1180,6 @@ static int __exfat_rename(struct inode * - return -ENOENT; - } - -- exfat_update_parent_info(ei, old_parent_inode); -- - exfat_chain_dup(&olddir, &ei->dir); - dentry = ei->entry; - -@@ -1223,8 +1200,6 @@ static int __exfat_rename(struct inode * - goto out; - } - -- exfat_update_parent_info(new_ei, new_parent_inode); -- - p_dir = &(new_ei->dir); - new_entry = new_ei->entry; - ep = exfat_get_dentry(sb, p_dir, new_entry, &new_bh); diff --git a/queue-5.17/series b/queue-5.17/series index 6bd295d9f7b..83d204c1ef7 100644 --- a/queue-5.17/series +++ b/queue-5.17/series @@ -17,7 +17,6 @@ pipe-fix-missing-lock-in-pipe_resize_ring.patch net-ipa-compute-proper-aggregation-limit.patch drm-i915-fix-wstringop-overflow-warning-in-call-to-intel_read_wm_latency.patch exfat-check-if-cluster-num-is-valid.patch -exfat-fix-referencing-wrong-parent-directory-information-after-renaming.patch netfilter-nft_limit-clone-packet-limits-cost-value.patch netfilter-nf_tables-sanitize-nft_set_desc_concat_parse.patch netfilter-nf_tables-hold-mutex-on-netns-pre_exit-path.patch diff --git a/queue-5.18/exfat-fix-referencing-wrong-parent-directory-information-after-renaming.patch b/queue-5.18/exfat-fix-referencing-wrong-parent-directory-information-after-renaming.patch deleted file mode 100644 index 58cf7d88c85..00000000000 --- a/queue-5.18/exfat-fix-referencing-wrong-parent-directory-information-after-renaming.patch +++ /dev/null @@ -1,98 +0,0 @@ -From d8dad2588addd1d861ce19e7df3b702330f0c7e3 Mon Sep 17 00:00:00 2001 -From: Yuezhang Mo -Date: Mon, 4 Apr 2022 11:58:06 +0900 -Subject: exfat: fix referencing wrong parent directory information after renaming - -From: Yuezhang Mo - -commit d8dad2588addd1d861ce19e7df3b702330f0c7e3 upstream. - -During renaming, the parent directory information maybe -updated. But the file/directory still references to the -old parent directory information. - -This bug will cause 2 problems. - -(1) The renamed file can not be written. - - [10768.175172] exFAT-fs (sda1): error, failed to bmap (inode : 7afd50e4 iblock : 0, err : -5) - [10768.184285] exFAT-fs (sda1): Filesystem has been set read-only - ash: write error: Input/output error - -(2) Some dentries of the renamed file/directory are not set - to deleted after removing the file/directory. - -exfat_update_parent_info() is a workaround for the wrong parent -directory information being used after renaming. Now that bug is -fixed, this is no longer needed, so remove it. - -Fixes: 5f2aa075070c ("exfat: add inode operations") -Cc: stable@vger.kernel.org # v5.7+ -Signed-off-by: Yuezhang Mo -Reviewed-by: Andy Wu -Reviewed-by: Aoyama Wataru -Reviewed-by: Daniel Palmer -Reviewed-by: Sungjong Seo -Signed-off-by: Namjae Jeon -Signed-off-by: Greg Kroah-Hartman ---- - fs/exfat/namei.c | 27 +-------------------------- - 1 file changed, 1 insertion(+), 26 deletions(-) - ---- a/fs/exfat/namei.c -+++ b/fs/exfat/namei.c -@@ -1080,6 +1080,7 @@ static int exfat_rename_file(struct inod - - exfat_remove_entries(inode, p_dir, oldentry, 0, - num_old_entries); -+ ei->dir = *p_dir; - ei->entry = newentry; - } else { - if (exfat_get_entry_type(epold) == TYPE_FILE) { -@@ -1167,28 +1168,6 @@ static int exfat_move_file(struct inode - return 0; - } - --static void exfat_update_parent_info(struct exfat_inode_info *ei, -- struct inode *parent_inode) --{ -- struct exfat_sb_info *sbi = EXFAT_SB(parent_inode->i_sb); -- struct exfat_inode_info *parent_ei = EXFAT_I(parent_inode); -- loff_t parent_isize = i_size_read(parent_inode); -- -- /* -- * the problem that struct exfat_inode_info caches wrong parent info. -- * -- * because of flag-mismatch of ei->dir, -- * there is abnormal traversing cluster chain. -- */ -- if (unlikely(parent_ei->flags != ei->dir.flags || -- parent_isize != EXFAT_CLU_TO_B(ei->dir.size, sbi) || -- parent_ei->start_clu != ei->dir.dir)) { -- exfat_chain_set(&ei->dir, parent_ei->start_clu, -- EXFAT_B_TO_CLU_ROUND_UP(parent_isize, sbi), -- parent_ei->flags); -- } --} -- - /* rename or move a old file into a new file */ - static int __exfat_rename(struct inode *old_parent_inode, - struct exfat_inode_info *ei, struct inode *new_parent_inode, -@@ -1219,8 +1198,6 @@ static int __exfat_rename(struct inode * - return -ENOENT; - } - -- exfat_update_parent_info(ei, old_parent_inode); -- - exfat_chain_dup(&olddir, &ei->dir); - dentry = ei->entry; - -@@ -1241,8 +1218,6 @@ static int __exfat_rename(struct inode * - goto out; - } - -- exfat_update_parent_info(new_ei, new_parent_inode); -- - p_dir = &(new_ei->dir); - new_entry = new_ei->entry; - ep = exfat_get_dentry(sb, p_dir, new_entry, &new_bh); diff --git a/queue-5.18/series b/queue-5.18/series index af2566b274f..f7cda20b29f 100644 --- a/queue-5.18/series +++ b/queue-5.18/series @@ -6,7 +6,6 @@ pipe-fix-missing-lock-in-pipe_resize_ring.patch net-ipa-compute-proper-aggregation-limit.patch drm-i915-fix-wstringop-overflow-warning-in-call-to-intel_read_wm_latency.patch exfat-check-if-cluster-num-is-valid.patch -exfat-fix-referencing-wrong-parent-directory-information-after-renaming.patch netfilter-nft_limit-clone-packet-limits-cost-value.patch netfilter-nf_tables-sanitize-nft_set_desc_concat_parse.patch netfilter-nf_tables-hold-mutex-on-netns-pre_exit-path.patch