linux-ext4.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: bugzilla-daemon@bugzilla.kernel.org
To: linux-ext4@vger.kernel.org
Subject: [Bug 13930] non-contiguous files (64.9%) on a ext4 fs
Date: Sat, 8 Aug 2009 01:30:25 GMT	[thread overview]
Message-ID: <200908080130.n781UPPx014934@demeter.kernel.org> (raw)
In-Reply-To: <bug-13930-13602@http.bugzilla.kernel.org/>

http://bugzilla.kernel.org/show_bug.cgi?id=13930





--- Comment #4 from Theodore Tso <tytso@mit.edu>  2009-08-08 01:30:24 ---
There are so many extents because as discussed in the linux-ext4 mailing list
thread I referenced above, when you write multiple large files close together
in time, the large files get interleaved with each other.   

"cp -R /cifs /ext4" doesn't call fsync() between writing each file, so the
dirty pages for multiple files are left dirty in the page cache during the
copy.   The VM page flush daemon doesn't write one file out completely, and
then another, but instead round-robins between different inodes.   The ext4
delayed allocation code tries to work around this by trying to find adjacent
dirty pages and then trying to do a large block allocation; but currently the
ext4 multiblock allocator only tries to grab up to 8 megabytes at a time, to
avoid spending too much CPU time in what might be a fruitless attempt to find
that many contiguous free blocks.

It's a known bug, but fixing is a bit complicated.  It's on our TODO list.

-- 
Configure bugmail: http://bugzilla.kernel.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching the assignee of the bug.

  parent reply	other threads:[~2009-08-08  1:30 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-08-07  9:58 [Bug 13930] New: non-contiguous files (64.9%) on a ext4 fs bugzilla-daemon
2009-08-07 14:40 ` [Bug 13930] " bugzilla-daemon
2009-08-07 18:58 ` [Bug 13930] New: " Andreas Dilger
2009-08-07 19:08   ` Eric Sandeen
2009-08-08  0:16     ` Theodore Tso
2009-08-07 22:20 ` [Bug 13930] " bugzilla-daemon
2009-08-07 22:38 ` bugzilla-daemon
2009-08-08  1:30 ` bugzilla-daemon [this message]
2009-08-10 12:04 ` bugzilla-daemon
2009-08-10 13:11 ` bugzilla-daemon
2009-10-19  5:55 ` bugzilla-daemon
     [not found] <bug-13930-13602@https.bugzilla.kernel.org/>
2012-06-13 14:42 ` bugzilla-daemon
2012-06-13 14:42 ` bugzilla-daemon

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=200908080130.n781UPPx014934@demeter.kernel.org \
    --to=bugzilla-daemon@bugzilla.kernel.org \
    --cc=linux-ext4@vger.kernel.org \
    /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;
as well as URLs for NNTP newsgroup(s).