From: Dave Chinner <david@fromorbit.com>
To: Matthias Schniedermeyer <ms@citd.de>
Cc: xfs@oss.sgi.com
Subject: Re: Files appear too big in `du`
Date: Tue, 17 May 2011 18:38:04 +1000 [thread overview]
Message-ID: <20110517083804.GU19446@dastard> (raw)
In-Reply-To: <20110512100153.GA19381@citd.de>
On Thu, May 12, 2011 at 12:01:53PM +0200, Matthias Schniedermeyer wrote:
> On 10.05.2011 17:33, Matthias Schniedermeyer wrote:
> >
> > > > Any idea how to debug this, or is this a known bug and waiting a few
> > > > days for 2.6.39 should fix this?
> > >
> > > It doesn't appear to be doing anything wrong from your description.
> > > Remember that XFS is optimised for high end storage and server
> > > configurations and workloads, not typical desktop usage...
> >
> > I would call it a regression.
> > I reguarly follow copying/downloading with `du`, the speculative
> > preallocation makes that more or less useless.
There's no guarantee that what du reports is in any way relevant to
the size of the file that is being written. e.g. the filesystem
might be compressing the file, doing inline deduplication,
speculative preallocation, filling holes with preallocated space,
etc. Indeed, XFS reports delayed allocation reservations in du -
blocks that haven't even been allocated yet - but it's always done
that and the behaviour you describe is what you always seen when
using the allocsize mount option....
In essence, a filesystem is free to allocate blocks in any way it
desires - you cannot rely on different filesystems to behave the
same way, and even different releases of the same filesystem to
behave the same way. It's just a bad assumption to make.
> > Especially downloading
> > someting big from the internet which @ 231kb/s isn't exactly fast and
> > shows identical `du`s for increasingly longer periods of time.
> > (Or "--apparent-size" should be made default, but that falls short with
> > sparse-files)
Use an application that shows download progress?
> > IMHO `du`/`ls -l` should not be able to 'see' the speculative
> > preallocation.
ls -l cannot see speculative preallocation beyond EOF of any kind.
Never has, never will - it only reports the file size, not the
number of blocks allocated. du _should_ report it because it is
supposed to report the number of blocks allocated to the inode.
IOWs, they report two different things, so they should have
different behaviour....
> After digging into the log of v2.6.37..v2.6.38 i stumbled upon:
>
> - snip -
> The allocsize mount option turns off the dynamic behaviour and fixes
> the prealloc size to whatever the mount option specifies. i.e. the
> behaviour is unchanged.
> - snip -
>
> I think Documentation/filesystems/xfs.txt is in need of an update. All
> that information in the commit-log is a little "out-of-reach" for most
> people.
Patches welcome.
> --
> Real Programmers consider "what you see is what you get" to be just as
> bad a concept in Text Editors as it is in women. No, the Real Programmer
> wants a "you asked for it, you got it" text editor -- complicated,
> cryptic, powerful, unforgiving, dangerous.
s/text editor/file system/
Cheers,
Dave.
--
Dave Chinner
david@fromorbit.com
_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs
prev parent reply other threads:[~2011-05-17 8:38 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-05-10 10:57 Files appear too big in `du` Matthias Schniedermeyer
2011-05-10 13:17 ` Dave Chinner
2011-05-10 15:33 ` Matthias Schniedermeyer
2011-05-12 10:01 ` Matthias Schniedermeyer
2011-05-17 8:38 ` Dave Chinner [this message]
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=20110517083804.GU19446@dastard \
--to=david@fromorbit.com \
--cc=ms@citd.de \
--cc=xfs@oss.sgi.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox