On Jun 28, 2022, at 10:00 PM, Theodore Ts'o <tytso@xxxxxxx> wrote: > > When doing an online resize, the on-disk superblock on-disk wasn't > updated. This means that when the file system is unmounted and > remounted, and the on-disk overhead value is non-zero, this would > result in the results of statfs(2) to be incorrect. > > This was partially fixed by Commits 10b01ee92df5 ("ext4: fix overhead > calculation to account for the reserved gdt blocks"), 85d825dbf489 > ("ext4: force overhead calculation if the s_overhead_cluster makes no > sense"), and eb7054212eac ("ext4: update the cached overhead value in > the superblock"). Would these be better referenced by Fixes: labels? > However, since it was too expensive to forcibly recalculate the > overhead for bigalloc file systems at every mount, this didn't fix the > problem for bigalloc file systems. This commit should address the > problem when resizing file systems with the bigalloc feature enabled. > > Signed-off-by: Theodore Ts'o <tytso@xxxxxxx> > Cc: stable@xxxxxxxxxx Reviewed-by: Andreas Dilger <adilger@xxxxxxxxx> > --- > fs/ext4/resize.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/fs/ext4/resize.c b/fs/ext4/resize.c > index 8b70a4701293..e5c2713aa11a 100644 > --- a/fs/ext4/resize.c > +++ b/fs/ext4/resize.c > @@ -1484,6 +1484,7 @@ static void ext4_update_super(struct super_block *sb, > * Update the fs overhead information > */ > ext4_calculate_overhead(sb); > + es->s_overhead_clusters = cpu_to_le32(sbi->s_overhead); > > if (test_opt(sb, DEBUG)) > printk(KERN_DEBUG "EXT4-fs: added group %u:" > -- > 2.31.0 > Cheers, Andreas
Attachment:
signature.asc
Description: Message signed with OpenPGP