From: Eric Sandeen <sandeen@redhat.com>
To: Adil Mujeeb <mujeeb.adil@gmail.com>
Cc: linux-ext4@vger.kernel.org, linux-fsdevel@vger.kernel.org
Subject: Re: ext4: Used block count in df
Date: Thu, 07 Feb 2013 10:49:49 -0600 [thread overview]
Message-ID: <5113DB2D.4000305@redhat.com> (raw)
In-Reply-To: <CANBXnM=H0ghqzQ5aJ_O+1C_sMJ850LQ9TOHLncOYkCKVSnUrAw@mail.gmail.com>
On 2/7/13 12:39 AM, Adil Mujeeb wrote:
> Hi,
>
> I have an observation on EXT4 filesystem. I created filesystem of size
> 1TB, 4TB, and 7TB and then checked the output of df command.
Telling us which version of e2fsprogs and which kernel would be helpful,
but:
> df command showed the number of 1KB blocks used. The result was:
> 1TB: 204056
> 4TB: 198680
> 7TB: 181784
extN makes df complicated in several ways.
It reserves blocks for the superuser (5% by default) and also uses a lot
of blocks up-front for filesytem metadata - inode tables, block bitmaps,
and the like.
But what you are seeing here is this:
It also defaults to "bsd df" which does not count filesystem
metadata when telling you about the number of blocks used. So in theory,
a freshly made fs should actually tell you 0 blocks used, I think.
Looking at the dumpe2fs output for the 4t file, I see:
# dumpe2fs -h 4tfile-ext4 | grep -i block
dumpe2fs 1.41.12 (17-May-2010)
Block count: 1073741824
Reserved block count: 53687091
Free blocks: 1056843748
...
and 1073741824-1056843748 is 16898076 4k blocks, or 67592304 1k blocks
actually used.
If we ask for "minix df" by mounting with -o minixdf which is true blocks used, we get:
# df 4t-ext4/
Filesystem 1K-blocks Used Available Use% Mounted on
/mnt/test2/mkfs-test/4tfile-ext4
4294967296 67592304 4012626628 2% /mnt/test2/mkfs-test/4t-ext4
I'd say this appears to be a slight inaccuracy in ext4_statfs, coupled with
the strangeness of the "bsd df" reporting. It is apparently miscalculating
the filesystem metadata "overhead."
> I performed the same on XFS and the result was:
> 1TB: 32928
> 4TB: 32928
> 7TB: 33024
XFS is straightforward; blocks used for metadata count as "used."
Every other block is free and available.
No fiddling around, just like with the minixdf mount option for extN.
-Eric
> EXT4 result shows with increasing filesystem size, the number of used
> blocks decreased. I dont have idea about low level implementation but
> I am curious why it is so?
>
> Thanks.
>
> Regards,
> Adil
> --
> To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
next prev parent reply other threads:[~2013-02-07 16:49 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-07 6:39 ext4: Used block count in df Adil Mujeeb
2013-02-07 16:49 ` Eric Sandeen [this message]
2013-02-11 6:36 ` Adil Mujeeb
2013-02-11 17:32 ` Eric Sandeen
2013-02-11 17:53 ` Eric Sandeen
2013-02-12 6:14 ` Adil Mujeeb
2013-02-12 16:01 ` Eric Sandeen
2013-02-13 5:16 ` Adil Mujeeb
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5113DB2D.4000305@redhat.com \
--to=sandeen@redhat.com \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=mujeeb.adil@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.