Message ID | 20240119061154.1525781-1-yi.zhang@huaweicloud.com |
---|---|
State | Accepted |
Headers | show |
Series | ext4: add a hint for block bitmap corrupt state in mb_groups | expand |
On Fri 19-01-24 14:11:54, Zhang Yi wrote: > From: Zhang Yi <yi.zhang@huawei.com> > > If one group is marked as block bitmap corrupted, its free blocks cannot > be used and its free count is also deducted from the global > sbi->s_freeclusters_counter. User might be confused about the absent > free space because we can't query the information about corrupted block > groups except unreliable error messages in syslog. So add a hint to show > block bitmap corrupted groups in mb_groups. > > Signed-off-by: Zhang Yi <yi.zhang@huawei.com> Looks good. Feel free to add: Reviewed-by: Jan Kara <jack@suse.cz> Honza > --- > fs/ext4/mballoc.c | 5 ++++- > 1 file changed, 4 insertions(+), 1 deletion(-) > > diff --git a/fs/ext4/mballoc.c b/fs/ext4/mballoc.c > index d72b5e3c92ec..641c9be8e25e 100644 > --- a/fs/ext4/mballoc.c > +++ b/fs/ext4/mballoc.c > @@ -3035,7 +3035,10 @@ static int ext4_mb_seq_groups_show(struct seq_file *seq, void *v) > for (i = 0; i <= 13; i++) > seq_printf(seq, " %-5u", i <= blocksize_bits + 1 ? > sg.info.bb_counters[i] : 0); > - seq_puts(seq, " ]\n"); > + seq_puts(seq, " ]"); > + if (EXT4_MB_GRP_BBITMAP_CORRUPT(&sg.info)) > + seq_puts(seq, " Block bitmap corrupted!"); > + seq_puts(seq, "\n"); > > return 0; > } > -- > 2.39.2 >
On Fri, 19 Jan 2024 14:11:54 +0800, Zhang Yi wrote: > If one group is marked as block bitmap corrupted, its free blocks cannot > be used and its free count is also deducted from the global > sbi->s_freeclusters_counter. User might be confused about the absent > free space because we can't query the information about corrupted block > groups except unreliable error messages in syslog. So add a hint to show > block bitmap corrupted groups in mb_groups. > > [...] Applied, thanks! [1/1] ext4: add a hint for block bitmap corrupt state in mb_groups commit: 68ee261fb15457ecb17e3683cb4e6a4792ca5b71 Best regards,
diff --git a/fs/ext4/mballoc.c b/fs/ext4/mballoc.c index d72b5e3c92ec..641c9be8e25e 100644 --- a/fs/ext4/mballoc.c +++ b/fs/ext4/mballoc.c @@ -3035,7 +3035,10 @@ static int ext4_mb_seq_groups_show(struct seq_file *seq, void *v) for (i = 0; i <= 13; i++) seq_printf(seq, " %-5u", i <= blocksize_bits + 1 ? sg.info.bb_counters[i] : 0); - seq_puts(seq, " ]\n"); + seq_puts(seq, " ]"); + if (EXT4_MB_GRP_BBITMAP_CORRUPT(&sg.info)) + seq_puts(seq, " Block bitmap corrupted!"); + seq_puts(seq, "\n"); return 0; }