mirror of https://gitee.com/openkylin/linux.git
ext4: fix overhead calculations in ext4_stats, again
"overhead" was a write-only variable in this function after commit 952fc18e; we set it to 0 for minixdf, or to sbi->s_overhead if !minixdf, but never read it again after that. We need to use it, not sbi->s_overhead, when subtracting out overhead for f_blocks, or we get the wrong answer for minixdf. Signed-off-by: Eric Sandeen <sandeen@redhat.com> Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
This commit is contained in:
parent
ffb5387e85
commit
b72f78cb63
|
@ -4790,7 +4790,7 @@ static int ext4_statfs(struct dentry *dentry, struct kstatfs *buf)
|
|||
|
||||
buf->f_type = EXT4_SUPER_MAGIC;
|
||||
buf->f_bsize = sb->s_blocksize;
|
||||
buf->f_blocks = ext4_blocks_count(es) - EXT4_C2B(sbi, sbi->s_overhead);
|
||||
buf->f_blocks = ext4_blocks_count(es) - EXT4_C2B(sbi, overhead);
|
||||
bfree = percpu_counter_sum_positive(&sbi->s_freeclusters_counter) -
|
||||
percpu_counter_sum_positive(&sbi->s_dirtyclusters_counter);
|
||||
/* prevent underflow in case that few free space is available */
|
||||
|
|
Loading…
Reference in New Issue