ext4: include journal blocks in df overhead calcs
authorEric Sandeen <sandeen@redhat.com>
Tue, 25 Dec 2012 18:56:01 +0000 (13:56 -0500)
committerTheodore Ts'o <tytso@mit.edu>
Tue, 25 Dec 2012 18:56:01 +0000 (13:56 -0500)
To more accurately calculate overhead for "bsd" style
df reporting, we should count the journal blocks as
overhead as well.

Signed-off-by: Eric Sandeen <sandeen@redhat.com>
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Tested-by: Eric Whitney <enwlinux@gmail.com>
fs/ext4/super.c

index e09f7d1646bab1b14f906222ff60fd7fd107e6e1..4969167ac2676e011d230560274cded4d845bb55 100644 (file)
@@ -3231,6 +3231,10 @@ int ext4_calculate_overhead(struct super_block *sb)
                        memset(buf, 0, PAGE_SIZE);
                cond_resched();
        }
+       /* Add the journal blocks as well */
+       if (sbi->s_journal)
+               overhead += EXT4_B2C(sbi, sbi->s_journal->j_maxlen);
+
        sbi->s_overhead = overhead;
        smp_wmb();
        free_page((unsigned long) buf);