* [PATCH 5.15 v2 0/1] ext4: backport online resize fix @ 2023-01-30 23:52 Oleksandr Tymoshenko 2023-01-30 23:52 ` [PATCH 5.15 v2 1/1] ext4: fix bad checksum after online resize Oleksandr Tymoshenko 0 siblings, 1 reply; 3+ messages in thread From: Oleksandr Tymoshenko @ 2023-01-30 23:52 UTC (permalink / raw) To: stable; +Cc: Oleksandr Tymoshenko The following patch is required to fix the ext4 online resize in 5.15. Baokun Li (1): ext4: fix bad checksum after online resize fs/ext4/resize.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- 2.39.1.456.gfc5497dd1b-goog ^ permalink raw reply [flat|nested] 3+ messages in thread
* [PATCH 5.15 v2 1/1] ext4: fix bad checksum after online resize 2023-01-30 23:52 [PATCH 5.15 v2 0/1] ext4: backport online resize fix Oleksandr Tymoshenko @ 2023-01-30 23:52 ` Oleksandr Tymoshenko 2023-02-02 3:07 ` Sasha Levin 0 siblings, 1 reply; 3+ messages in thread From: Oleksandr Tymoshenko @ 2023-01-30 23:52 UTC (permalink / raw) To: stable Cc: Baokun Li, Darrick J . Wong, Jan Kara, stable, Theodore Ts'o, Oleksandr Tymoshenko From: Baokun Li <libaokun1@huawei.com> commit a408f33e895e455f16cf964cb5cd4979b658db7b upstream. When online resizing is performed twice consecutively, the error message "Superblock checksum does not match superblock" is displayed for the second time. Here's the reproducer: mkfs.ext4 -F /dev/sdb 100M mount /dev/sdb /tmp/test resize2fs /dev/sdb 5G resize2fs /dev/sdb 6G To solve this issue, we moved the update of the checksum after the es->s_overhead_clusters is updated. Fixes: 026d0d27c488 ("ext4: reduce computation of overhead during resize") Fixes: de394a86658f ("ext4: update s_overhead_clusters in the superblock during an on-line resize") Signed-off-by: Baokun Li <libaokun1@huawei.com> Reviewed-by: Darrick J. Wong <djwong@kernel.org> Reviewed-by: Jan Kara <jack@suse.cz> Cc: stable@kernel.org Link: https://lore.kernel.org/r/20221117040341.1380702-2-libaokun1@huawei.com Signed-off-by: Theodore Ts'o <tytso@mit.edu> Signed-off-by: Oleksandr Tymoshenko <ovt@google.com> --- fs/ext4/resize.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/fs/ext4/resize.c b/fs/ext4/resize.c index 405c68085055..589ed99856f3 100644 --- a/fs/ext4/resize.c +++ b/fs/ext4/resize.c @@ -1445,8 +1445,6 @@ static void ext4_update_super(struct super_block *sb, * active. */ ext4_r_blocks_count_set(es, ext4_r_blocks_count(es) + reserved_blocks); - ext4_superblock_csum_set(sb); - unlock_buffer(sbi->s_sbh); /* Update the free space counts */ percpu_counter_add(&sbi->s_freeclusters_counter, @@ -1474,6 +1472,8 @@ static void ext4_update_super(struct super_block *sb, ext4_calculate_overhead(sb); es->s_overhead_clusters = cpu_to_le32(sbi->s_overhead); + ext4_superblock_csum_set(sb); + unlock_buffer(sbi->s_sbh); if (test_opt(sb, DEBUG)) printk(KERN_DEBUG "EXT4-fs: added group %u:" "%llu blocks(%llu free %llu reserved)\n", flex_gd->count, -- 2.39.1.456.gfc5497dd1b-goog ^ permalink raw reply related [flat|nested] 3+ messages in thread
* Re: [PATCH 5.15 v2 1/1] ext4: fix bad checksum after online resize 2023-01-30 23:52 ` [PATCH 5.15 v2 1/1] ext4: fix bad checksum after online resize Oleksandr Tymoshenko @ 2023-02-02 3:07 ` Sasha Levin 0 siblings, 0 replies; 3+ messages in thread From: Sasha Levin @ 2023-02-02 3:07 UTC (permalink / raw) To: Oleksandr Tymoshenko Cc: stable, Baokun Li, Darrick J . Wong, Jan Kara, stable, Theodore Ts'o On Mon, Jan 30, 2023 at 11:52:12PM +0000, Oleksandr Tymoshenko wrote: >From: Baokun Li <libaokun1@huawei.com> > >commit a408f33e895e455f16cf964cb5cd4979b658db7b upstream. > >When online resizing is performed twice consecutively, the error message >"Superblock checksum does not match superblock" is displayed for the >second time. Here's the reproducer: > > mkfs.ext4 -F /dev/sdb 100M > mount /dev/sdb /tmp/test > resize2fs /dev/sdb 5G > resize2fs /dev/sdb 6G > >To solve this issue, we moved the update of the checksum after the >es->s_overhead_clusters is updated. > >Fixes: 026d0d27c488 ("ext4: reduce computation of overhead during resize") >Fixes: de394a86658f ("ext4: update s_overhead_clusters in the superblock during an on-line resize") >Signed-off-by: Baokun Li <libaokun1@huawei.com> >Reviewed-by: Darrick J. Wong <djwong@kernel.org> >Reviewed-by: Jan Kara <jack@suse.cz> >Cc: stable@kernel.org >Link: https://lore.kernel.org/r/20221117040341.1380702-2-libaokun1@huawei.com >Signed-off-by: Theodore Ts'o <tytso@mit.edu> >Signed-off-by: Oleksandr Tymoshenko <ovt@google.com> I've grabbed it, thanks! -- Thanks, Sasha ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2023-02-02 3:07 UTC | newest] Thread overview: 3+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2023-01-30 23:52 [PATCH 5.15 v2 0/1] ext4: backport online resize fix Oleksandr Tymoshenko 2023-01-30 23:52 ` [PATCH 5.15 v2 1/1] ext4: fix bad checksum after online resize Oleksandr Tymoshenko 2023-02-02 3:07 ` Sasha Levin
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox